]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/apr/Makefile.win
amd64: use register macros for gdb_cpu_getreg()
[FreeBSD/FreeBSD.git] / contrib / apr / Makefile.win
1 # Makefile.win for Win32 APR alone
2 #
3 # Targets are:
4 #
5 #     buildall - compile everything
6 #     checkall - run APR regression tests
7 #     install  - compile everything
8 #     clean    - mop up everything
9 #
10 # You can override the build mechanism, choose only one;
11 #
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
15 #
16 # Define ARCH to your desired preference (your PATH must point
17 # to the correct compiler tools!)  Choose only one;
18 #
19 #     ARCH="Win32 Release"
20 #     ARCH="Win32 Debug"
21 #     ARCH="x64 Release"
22 #     ARCH="x64 Debug"
23 #
24 # For example;
25 #
26 #   nmake -f Makefile.win PREFIX=C:\APR buildall checkall install clean
27 #
28
29 !IF EXIST("apr.sln") && ([devenv /help > NUL 2>&1] == 0) \
30     && !defined(USEMAK) && !defined(USEDSW)
31 USESLN=1
32 USEMAK=0
33 USEDSW=0
34 !ELSEIF EXIST("apr.mak") && !defined(USEDSW)
35 USESLN=0
36 USEMAK=1
37 USEDSW=0
38 !ELSE
39 USESLN=0
40 USEMAK=0
41 USEDSW=1
42 !ENDIF
43
44 PREFIX=..\apr-dist
45
46 !IF [$(COMSPEC) /c cl /nologo /? \
47         | $(SystemRoot)\System32\find.exe "x64" >NUL ] == 0
48 ARCH=x64 Release
49 !ELSE
50 ARCH=Win32 Release
51 !ENDIF
52
53 !MESSAGE ARCH        = $(ARCH)
54 !MESSAGE PREFIX      = $(PREFIX)  (install path)
55
56
57 # Utility and Translation things, nothing here for the user
58 #
59 !IF "$(ARCH)" == "Win32 Release"
60 SLNARCH=Release|Win32
61 ARCHOSPATH=Release
62 LIBSOSPATH=LibR
63 !ELSEIF "$(ARCH)" == "Win32 Debug"
64 SLNARCH=Debug|Win32
65 ARCHOSPATH=Debug
66 LIBSOSPATH=LibD
67 !ELSEIF "$(ARCH)" == "x64 Release"
68 SLNARCH=Release|x64
69 ARCHOSPATH=x64\Release
70 LIBSOSPATH=x64\LibR
71 !ELSEIF "$(ARCH)" == "x64 Debug"
72 SLNARCH=Debug|x64
73 ARCHOSPATH=x64\Debug
74 LIBSOSPATH=x64\LibD
75 !ENDIF
76
77 !IFNDEF MAKEOPT
78 # Only default the behavior if MAKEOPT= is omitted
79 !IFDEF _NMAKE_VER
80 # Microsoft NMake options
81 MAKEOPT=-nologo
82 !ELSEIF "$(MAKE)" == "make"
83 # Borland make options?  Not really supported (yet)
84 MAKEOPT=-s -N
85 !ENDIF
86 !ENDIF
87
88
89 all: buildall checkall
90
91 !IF $(USEMAK) == 1
92
93 clean:
94         $(MAKE) $(MAKEOPT) -f Makefile.win ARCH="$(ARCH)" \
95                 CTARGET=CLEAN buildall
96
97 buildall:
98         $(MAKE) $(MAKEOPT) -f apr.mak         CFG="apr - $(ARCH)" RECURSE=0 $(CTARGET)
99         $(MAKE) $(MAKEOPT) -f libapr.mak      CFG="libapr - $(ARCH)" RECURSE=0 $(CTARGET)
100         cd build
101          $(MAKE) $(MAKEOPT) -f aprapp.mak     CFG="aprapp - $(ARCH)" RECURSE=0 $(CTARGET)
102          $(MAKE) $(MAKEOPT) -f libaprapp.mak  CFG="libaprapp - $(ARCH)" RECURSE=0 $(CTARGET)
103         cd ..
104
105 !ELSEIF $(USESLN) == 1
106
107 clean:
108         -devenv apr.sln /useenv /clean "$(SLNARCH)" /project libaprapp
109         -devenv apr.sln /useenv /clean "$(SLNARCH)" /project libapr
110         -devenv apr.sln /useenv /clean "$(SLNARCH)" /project aprapp
111         -devenv apr.sln /useenv /clean "$(SLNARCH)" /project apr
112
113 buildall:
114         devenv apr.sln /useenv /build "$(SLNARCH)" /project apr
115         devenv apr.sln /useenv /build "$(SLNARCH)" /project aprapp
116         devenv apr.sln /useenv /build "$(SLNARCH)" /project libapr
117         devenv apr.sln /useenv /build "$(SLNARCH)" /project libaprapp
118
119 !ELSE
120 #       $(USEDSP) == 1
121
122 clean:
123         -msdev apr.dsw /USEENV /MAKE "libaprapp - $(ARCH)" /CLEAN
124         -msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)" /CLEAN
125         -msdev apr.dsw /USEENV /MAKE "aprapp - $(ARCH)" /CLEAN
126         -msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)" /CLEAN
127
128 buildall:
129         @msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)"
130         @msdev apr.dsw /USEENV /MAKE "aprapp - $(ARCH)"
131         @msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)"
132         @msdev apr.dsw /USEENV /MAKE "libaprapp - $(ARCH)"
133
134 !ENDIF
135
136
137 checkapr:
138         cd test
139          $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=static \
140                 OUTDIR=$(LIBSOSPATH) check
141          $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=dynamic \
142                 OUTDIR=$(ARCHOSPATH) check
143          cd ..
144
145 checkall: checkapr
146
147
148 install:
149         echo Y >.y
150         echo A >.A
151         @if NOT EXIST "$(PREFIX)\."             mkdir "$(PREFIX)"
152         @if NOT EXIST "$(PREFIX)\bin\."         mkdir "$(PREFIX)\bin"
153         @if NOT EXIST "$(PREFIX)\include\."     mkdir "$(PREFIX)\include"
154         @if NOT EXIST "$(PREFIX)\lib\."         mkdir "$(PREFIX)\lib"
155         copy CHANGES "$(PREFIX)\APR-CHANGES.txt" <.y
156         copy LICENSE "$(PREFIX)\APR-LICENSE.txt" <.y
157         copy NOTICE  "$(PREFIX)\APR-NOTICE.txt"  <.y
158         xcopy include\*.h               "$(PREFIX)\include\" /d < .a
159         copy $(LIBSOSPATH)\apr-1.lib            "$(PREFIX)\lib\" <.y
160         copy $(LIBSOSPATH)\apr-1.pdb            "$(PREFIX)\lib\" <.y
161         copy $(LIBSOSPATH)\aprapp-1.lib         "$(PREFIX)\lib\" <.y
162         copy $(LIBSOSPATH)\aprapp-1.pdb         "$(PREFIX)\lib\" <.y
163         copy $(ARCHOSPATH)\libaprapp-1.lib      "$(PREFIX)\lib\" <.y
164         copy $(ARCHOSPATH)\libaprapp-1.pdb      "$(PREFIX)\lib\" <.y
165         copy $(ARCHOSPATH)\libapr-1.lib         "$(PREFIX)\lib\" <.y
166         copy $(ARCHOSPATH)\libapr-1.exp         "$(PREFIX)\lib\" <.y
167         copy $(ARCHOSPATH)\libapr-1.dll         "$(PREFIX)\bin\" <.y
168         copy $(ARCHOSPATH)\libapr-1.pdb         "$(PREFIX)\bin\" <.y
169         del .y
170         del .a
171