1
# Makefile.win for Win32 APR alone
5
# buildall - compile everything
6
# checkall - run APR regression tests
7
# install - compile everything
8
# clean - mop up everything
10
# You can override the build mechansim, choose only one;
12
# USEMAK=1 - compile from exported make files
13
# USEDSW=1 - compile from .dsw / .dsp VC6 projects
14
# USESLN=1 - compile from converted .sln / .vcproj VC7+ files
16
# Define ARCH to your desired preference (your PATH must point
17
# to the correct compiler tools!) Choose only one;
19
# ARCH="Win32 Release"
21
# ARCH="Win32 ReleaseNT"
22
# ARCH="Win32 DebugNT"
28
# nmake -f Makefile.win PREFIX=C:\APR buildall checkall installall clean
31
!IF EXIST("apr.sln") && ([devenv /help > NUL 2>&1] == 0) \
32
&& !defined(USEMAK) && !defined(USEDSW)
36
!ELSEIF EXIST("apr.mak") && !defined(USEDSW)
48
!IF [$(COMSPEC) /c cl /nologo /? | find "x64" >NUL ] == 0
54
!MESSAGE ARCH = $(ARCH)
55
!MESSAGE PREFIX = $(PREFIX) (install path)
58
# Utility and Translation things, nothing here for the user
60
!IF "$(ARCH)" == "Win32 Release"
64
!ELSEIF "$(ARCH)" == "Win32 Debug"
68
!ELSEIF "$(ARCH)" == "Win32 ReleaseNT"
69
SLNARCH=ReleaseNT|Win32
72
!ELSEIF "$(ARCH)" == "Win32 DebugNT"
76
!ELSEIF "$(ARCH)" == "x64 Release"
78
ARCHOSPATH=x64\Release
80
!ELSEIF "$(ARCH)" == "x64 Debug"
87
# Only default the behavior if MAKEOPT= is omitted
89
# Microsoft NMake options
91
!ELSEIF "$(MAKE)" == "make"
92
# Borland make options? Not really supported (yet)
98
all: buildall checkall
103
$(MAKE) $(MAKEOPT) -f Makefile.win ARCH="$(ARCH)" \
104
CTARGET=CLEAN buildall
107
$(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - $(ARCH)" RECURSE=0 $(CTARGET)
108
$(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - $(ARCH)" RECURSE=0 $(CTARGET)
110
$(MAKE) $(MAKEOPT) -f apr_app.mak CFG="apr_app - $(ARCH)" RECURSE=0 $(CTARGET)
111
$(MAKE) $(MAKEOPT) -f libapr_app.mak CFG="libapr_app - $(ARCH)" RECURSE=0 $(CTARGET)
114
!ELSEIF $(USESLN) == 1
117
-devenv apr.sln /useenv /clean "$(SLNARCH)" /project libapr_app
118
-devenv apr.sln /useenv /clean "$(SLNARCH)" /project libapr
119
-devenv apr.sln /useenv /clean "$(SLNARCH)" /project apr_app
120
-devenv apr.sln /useenv /clean "$(SLNARCH)" /project apr
123
devenv apr.sln /useenv /build "$(SLNARCH)" /project apr
124
devenv apr.sln /useenv /build "$(SLNARCH)" /project apr_app
125
devenv apr.sln /useenv /build "$(SLNARCH)" /project libapr
126
devenv apr.sln /useenv /build "$(SLNARCH)" /project libapr_app
132
-msdev apr.dsw /USEENV /MAKE "libapr_app - $(ARCH)" /CLEAN
133
-msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)" /CLEAN
134
-msdev apr.dsw /USEENV /MAKE "apr_app - $(ARCH)" /CLEAN
135
-msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)" /CLEAN
138
@msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)"
139
@msdev apr.dsw /USEENV /MAKE "apr_app - $(ARCH)"
140
@msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)"
141
@msdev apr.dsw /USEENV /MAKE "libapr_app - $(ARCH)"
148
$(MAKE) $(MAKEOPT) -f Makefile.win MODEL=static \
149
OUTDIR=$(LIBSOSPATH) check
150
$(MAKE) $(MAKEOPT) -f Makefile.win MODEL=dynamic \
151
OUTDIR=$(ARCHOSPATH) check
160
@if NOT EXIST "$(PREFIX)\." mkdir "$(PREFIX)"
161
@if NOT EXIST "$(PREFIX)\bin\." mkdir "$(PREFIX)\bin"
162
@if NOT EXIST "$(PREFIX)\include\." mkdir "$(PREFIX)\include"
163
@if NOT EXIST "$(PREFIX)\lib\." mkdir "$(PREFIX)\lib"
164
copy CHANGES "$(PREFIX)\CHANGES.txt" <.y
165
copy LICENSE "$(PREFIX)\LICENSE.txt" <.y
166
copy NOTICE "$(PREFIX)\NOTICE.txt" <.y
167
xcopy include\*.h "$(PREFIX)\include\" /d < .a
168
copy $(LIBSOSPATH)\apr-1.lib "$(PREFIX)\lib\" <.y
169
copy $(LIBSOSPATH)\apr-1.pdb "$(PREFIX)\lib\" <.y
170
copy $(ARCHOSPATH)\libapr-1.lib "$(PREFIX)\lib\" <.y
171
copy $(ARCHOSPATH)\libapr-1.exp "$(PREFIX)\lib\" <.y
172
copy $(ARCHOSPATH)\libapr-1.dll "$(PREFIX)\bin\" <.y
173
copy $(ARCHOSPATH)\libapr-1.pdb "$(PREFIX)\bin\" <.y