OLD | NEW |
1 # Makefile for libxslt, specific for Windows, GCC (mingw) and GNU make. | 1 # Makefile for libxslt, specific for Windows, GCC (mingw) and GNU make. |
2 # | 2 # |
3 # Take a look at the beginning and modify the variables to suit your | 3 # Take a look at the beginning and modify the variables to suit your |
4 # environment. Having done that, you can do a | 4 # environment. Having done that, you can do a |
5 # | 5 # |
6 # make [all] to build the libxslt and the accompanying utilities. | 6 # make [all] to build the libxslt and the accompanying utilities. |
7 # make clean to remove all compiler output files and return to a | 7 # make clean to remove all compiler output files and return to a |
8 # clean state. | 8 # clean state. |
9 # make rebuild to rebuild everything from scratch. This basically does | 9 # make rebuild to rebuild everything from scratch. This basically does |
10 # a 'make clean' and then a 'make all'. | 10 # a 'make clean' and then a 'make all'. |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 | 148 |
149 libxslta : $(BINDIR)\$(XSLT_A) | 149 libxslta : $(BINDIR)\$(XSLT_A) |
150 | 150 |
151 libexslt : $(BINDIR)\$(EXSLT_SO) | 151 libexslt : $(BINDIR)\$(EXSLT_SO) |
152 | 152 |
153 libexslta : $(BINDIR)\$(EXSLT_A) | 153 libexslta : $(BINDIR)\$(EXSLT_A) |
154 | 154 |
155 utils : $(UTILS) | 155 utils : $(UTILS) |
156 | 156 |
157 clean : | 157 clean : |
158 » cmd.exe /C if exist $(XSLT_INTDIR) rmdir /S /Q $(XSLT_INTDIR) | 158 » cmd.exe /C "if exist $(XSLT_INTDIR) rmdir /S /Q $(XSLT_INTDIR)" |
159 » cmd.exe /C if exist $(XSLT_INTDIR_A) rmdir /S /Q $(XSLT_INTDIR_A) | 159 » cmd.exe /C "if exist $(XSLT_INTDIR_A) rmdir /S /Q $(XSLT_INTDIR_A)" |
160 » cmd.exe /C if exist $(EXSLT_INTDIR) rmdir /S /Q $(EXSLT_INTDIR) | 160 » cmd.exe /C "if exist $(EXSLT_INTDIR) rmdir /S /Q $(EXSLT_INTDIR)" |
161 » cmd.exe /C if exist $(EXSLT_INTDIR_A) rmdir /S /Q $(EXSLT_INTDIR_A) | 161 » cmd.exe /C "if exist $(EXSLT_INTDIR_A) rmdir /S /Q $(EXSLT_INTDIR_A)" |
162 » cmd.exe /C if exist $(UTILS_INTDIR) rmdir /S /Q $(UTILS_INTDIR) | 162 » cmd.exe /C "if exist $(UTILS_INTDIR) rmdir /S /Q $(UTILS_INTDIR)" |
163 » cmd.exe /C if exist $(BINDIR) rmdir /S /Q $(BINDIR) | 163 » cmd.exe /C "if exist $(BINDIR) rmdir /S /Q $(BINDIR)" |
164 » cmd.exe /C if exist depends.mingw del depends.mingw | 164 » cmd.exe /C "if exist depends.mingw del depends.mingw" |
165 | 165 |
166 rebuild : clean all | 166 rebuild : clean all |
167 | 167 |
168 distclean : clean | 168 distclean : clean |
169 » cmd.exe /C if exist config.* del config.* | 169 » cmd.exe /C "if exist config.* del config.*" |
170 » cmd.exe /C if exist depends.* del depends.* | 170 » cmd.exe /C "if exist depends.* del depends.*" |
171 » cmd.exe /C if exist Makefile del Makefile | 171 » cmd.exe /C "if exist Makefile del Makefile" |
172 | 172 |
173 install-libs : all | 173 install-libs : all |
174 » cmd.exe /C if not exist $(INCPREFIX)\$(XSLT_BASENAME) mkdir $(INCPREFIX)
\$(XSLT_BASENAME) | 174 » cmd.exe /C "if not exist $(INCPREFIX)\$(XSLT_BASENAME) mkdir $(INCPREFIX
)\$(XSLT_BASENAME)" |
175 » cmd.exe /C if not exist $(INCPREFIX)\$(EXSLT_BASENAME) mkdir $(INCPREFIX
)\$(EXSLT_BASENAME) | 175 » cmd.exe /C "if not exist $(INCPREFIX)\$(EXSLT_BASENAME) mkdir $(INCPREFI
X)\$(EXSLT_BASENAME)" |
176 » cmd.exe /C if not exist $(BINPREFIX) mkdir $(BINPREFIX) | 176 » cmd.exe /C "if not exist $(BINPREFIX) mkdir $(BINPREFIX)" |
177 » cmd.exe /C if not exist $(LIBPREFIX) mkdir $(LIBPREFIX) | 177 » cmd.exe /C "if not exist $(LIBPREFIX) mkdir $(LIBPREFIX)" |
178 » cmd.exe /C copy $(XSLT_SRCDIR)\*.h $(INCPREFIX)\$(XSLT_BASENAME) | 178 » cmd.exe /C "copy $(XSLT_SRCDIR)\*.h $(INCPREFIX)\$(XSLT_BASENAME)" |
179 » cmd.exe /C copy $(EXSLT_SRCDIR)\*.h $(INCPREFIX)\$(EXSLT_BASENAME) | 179 » cmd.exe /C "copy $(EXSLT_SRCDIR)\*.h $(INCPREFIX)\$(EXSLT_BASENAME)" |
180 » cmd.exe /C copy $(BINDIR)\$(XSLT_SO) $(SOPREFIX) | 180 » cmd.exe /C "copy $(BINDIR)\$(XSLT_SO) $(SOPREFIX)" |
181 » cmd.exe /C copy $(BINDIR)\$(XSLT_A) $(LIBPREFIX) | 181 » cmd.exe /C "copy $(BINDIR)\$(XSLT_A) $(LIBPREFIX)" |
182 » cmd.exe /C copy $(BINDIR)\$(XSLT_IMP) $(LIBPREFIX) | 182 » cmd.exe /C "copy $(BINDIR)\$(XSLT_IMP) $(LIBPREFIX)" |
183 » cmd.exe /C copy $(BINDIR)\$(EXSLT_SO) $(SOPREFIX) | 183 » cmd.exe /C "copy $(BINDIR)\$(EXSLT_SO) $(SOPREFIX)" |
184 » cmd.exe /C copy $(BINDIR)\$(EXSLT_A) $(LIBPREFIX) | 184 » cmd.exe /C "copy $(BINDIR)\$(EXSLT_A) $(LIBPREFIX)" |
185 » cmd.exe /C copy $(BINDIR)\$(EXSLT_IMP) $(LIBPREFIX) | 185 » cmd.exe /C "copy $(BINDIR)\$(EXSLT_IMP) $(LIBPREFIX)" |
186 | 186 |
187 install : install-libs | 187 install : install-libs |
188 » cmd.exe /C copy $(BINDIR)\*.exe $(BINPREFIX) | 188 » cmd.exe /C "copy $(BINDIR)\*.exe $(BINPREFIX)" |
189 | 189 |
190 install-dist : install | 190 install-dist : install |
191 | 191 |
192 # This is a target for me, to make a binary distribution. Not for the public use
, | 192 # This is a target for me, to make a binary distribution. Not for the public use
, |
193 # keep your hands off :-) | 193 # keep your hands off :-) |
194 BDVERSION = $(LIBXSLT_MAJOR_VERSION).$(LIBXSLT_MINOR_VERSION).$(LIBXSLT_MICRO_VE
RSION) | 194 BDVERSION = $(LIBXSLT_MAJOR_VERSION).$(LIBXSLT_MINOR_VERSION).$(LIBXSLT_MICRO_VE
RSION) |
195 BDPREFIX = $(XSLT_BASENAME)-$(BDVERSION).win32 | 195 BDPREFIX = $(XSLT_BASENAME)-$(BDVERSION).win32 |
196 bindist : all | 196 bindist : all |
197 $(MAKE) PREFIX=$(BDPREFIX) SOPREFIX=$(BDPREFIX)/bin install-dist | 197 $(MAKE) PREFIX=$(BDPREFIX) SOPREFIX=$(BDPREFIX)/bin install-dist |
198 cscript //NoLogo configure.js genreadme $(XSLT_BASENAME) $(BDVERSION) $(
BDPREFIX)\readme.txt | 198 cscript //NoLogo configure.js genreadme $(XSLT_BASENAME) $(BDVERSION) $(
BDPREFIX)\readme.txt |
199 | 199 |
200 | 200 |
201 # Creates the dependency files | 201 # Creates the dependency files |
202 dep : | 202 dep : |
203 $(CC) $(subst \,/,$(CFLAGS)) -MM $(subst \,/,$(XSLT_SRCS)) $(subst \,/,$
(EXSLT_SRCS)) > depends.mingw | 203 $(CC) $(subst \,/,$(CFLAGS)) -MM $(subst \,/,$(XSLT_SRCS)) $(subst \,/,$
(EXSLT_SRCS)) > depends.mingw |
204 | 204 |
205 | 205 |
206 # Makes the compiler output directory. | 206 # Makes the compiler output directory. |
207 $(BINDIR) : | 207 $(BINDIR) : |
208 » cmd.exe /C if not exist $(BINDIR) mkdir $(BINDIR) | 208 » cmd.exe /C "if not exist $(BINDIR) mkdir $(BINDIR)" |
209 | 209 |
210 | 210 |
211 # Makes the libxslt intermediate directory. | 211 # Makes the libxslt intermediate directory. |
212 $(XSLT_INTDIR) : | 212 $(XSLT_INTDIR) : |
213 » cmd.exe /C if not exist $(XSLT_INTDIR) mkdir $(XSLT_INTDIR) | 213 » cmd.exe /C "if not exist $(XSLT_INTDIR) mkdir $(XSLT_INTDIR)" |
214 | 214 |
215 # Makes the static libxslt intermediate directory. | 215 # Makes the static libxslt intermediate directory. |
216 $(XSLT_INTDIR_A) : | 216 $(XSLT_INTDIR_A) : |
217 » cmd.exe /C if not exist $(XSLT_INTDIR_A) mkdir $(XSLT_INTDIR_A) | 217 » cmd.exe /C "if not exist $(XSLT_INTDIR_A) mkdir $(XSLT_INTDIR_A)" |
218 | 218 |
219 # An implicit rule for libxslt compilation. | 219 # An implicit rule for libxslt compilation. |
220 $(XSLT_INTDIR)/%.o : $(XSLT_SRCDIR)/%.c | 220 $(XSLT_INTDIR)/%.o : $(XSLT_SRCDIR)/%.c |
221 $(CC) $(CFLAGS) -c -o $@ $< | 221 $(CC) $(CFLAGS) -c -o $@ $< |
222 | 222 |
223 # An implicit rule for static libxslt compilation. | 223 # An implicit rule for static libxslt compilation. |
224 $(XSLT_INTDIR_A)/%.o : $(XSLT_SRCDIR)/%.c | 224 $(XSLT_INTDIR_A)/%.o : $(XSLT_SRCDIR)/%.c |
225 $(CC) $(CFLAGS) -DLIBXML_STATIC -DLIBXSLT_STATIC -o $@ -c $< | 225 $(CC) $(CFLAGS) -DLIBXML_STATIC -DLIBXSLT_STATIC -o $@ -c $< |
226 | 226 |
227 # Compiles libxslt source. Uses the implicit rule for commands. | 227 # Compiles libxslt source. Uses the implicit rule for commands. |
228 $(XSLT_OBJS) : $(XSLT_INTDIR) | 228 $(XSLT_OBJS) : $(XSLT_INTDIR) |
229 | 229 |
230 # Compiles static libxslt source. Uses the implicit rule for commands. | 230 # Compiles static libxslt source. Uses the implicit rule for commands. |
231 $(XSLT_OBJS_A) : $(XSLT_INTDIR_A) | 231 $(XSLT_OBJS_A) : $(XSLT_INTDIR_A) |
232 | 232 |
233 # Creates the libxslt shared object. | 233 # Creates the libxslt shared object. |
234 XSLTSO_LDFLAGS = $(LDFLAGS) -shared -Wl,--dll -Wl,--out-implib,$(BINDIR)/$(XSLT_
IMP) | 234 XSLTSO_LDFLAGS = $(LDFLAGS) -shared -Wl,--dll -Wl,--out-implib,$(BINDIR)/$(XSLT_
IMP) |
235 XSLTSO_LDFLAGS += -Wl,--major-image-version,$(LIBXSLT_MAJOR_VERSION) | 235 XSLTSO_LDFLAGS += -Wl,--major-image-version,$(LIBXSLT_MAJOR_VERSION) |
236 XSLTSO_LDFLAGS += -Wl,--minor-image-version,$(LIBXSLT_MINOR_VERSION) | 236 XSLTSO_LDFLAGS += -Wl,--minor-image-version,$(LIBXSLT_MINOR_VERSION) |
237 $(BINDIR)\$(XSLT_SO) : $(BINDIR) $(XSLT_OBJS) | 237 $(BINDIR)\$(XSLT_SO) : $(BINDIR) $(XSLT_OBJS) |
238 $(LD) $(XSLTSO_LDFLAGS) -o $(BINDIR)/$(XSLT_SO) $(XSLT_OBJS) $(LIBS) -ll
ibxml2 | 238 $(LD) $(XSLTSO_LDFLAGS) -o $(BINDIR)/$(XSLT_SO) $(XSLT_OBJS) $(LIBS) -ll
ibxml2 |
239 | 239 |
240 # Creates the libxslt archive. | 240 # Creates the libxslt archive. |
241 $(BINDIR)\$(XSLT_A) : $(BINDIR) $(XSLT_OBJS_A) | 241 $(BINDIR)\$(XSLT_A) : $(BINDIR) $(XSLT_OBJS_A) |
242 $(AR) $(ARFLAGS) $(BINDIR)/$(XSLT_A) $(XSLT_OBJS_A) | 242 $(AR) $(ARFLAGS) $(BINDIR)/$(XSLT_A) $(XSLT_OBJS_A) |
243 | 243 |
244 | 244 |
245 # Creates the libexslt intermediate directory. | 245 # Creates the libexslt intermediate directory. |
246 $(EXSLT_INTDIR) : | 246 $(EXSLT_INTDIR) : |
247 » cmd.exe /C if not exist $(EXSLT_INTDIR) mkdir $(EXSLT_INTDIR) | 247 » cmd.exe /C "if not exist $(EXSLT_INTDIR) mkdir $(EXSLT_INTDIR)" |
248 | 248 |
249 # Creates the static libexslt intermediate directory. | 249 # Creates the static libexslt intermediate directory. |
250 $(EXSLT_INTDIR_A) : | 250 $(EXSLT_INTDIR_A) : |
251 » cmd.exe /C if not exist $(EXSLT_INTDIR_A) mkdir $(EXSLT_INTDIR_A) | 251 » cmd.exe /C "if not exist $(EXSLT_INTDIR_A) mkdir $(EXSLT_INTDIR_A)" |
252 | 252 |
253 # An implicit rule for libexslt compilation. | 253 # An implicit rule for libexslt compilation. |
254 $(EXSLT_INTDIR)/%.o : $(EXSLT_SRCDIR)/%.c | 254 $(EXSLT_INTDIR)/%.o : $(EXSLT_SRCDIR)/%.c |
255 $(CC) $(CFLAGS) -I$(EXSLT_SRCDIR) -o $@ -c $< | 255 $(CC) $(CFLAGS) -I$(EXSLT_SRCDIR) -o $@ -c $< |
256 | 256 |
257 # An implicit rule for static libexslt compilation. | 257 # An implicit rule for static libexslt compilation. |
258 $(EXSLT_INTDIR_A)/%.o : $(EXSLT_SRCDIR)/%.c | 258 $(EXSLT_INTDIR_A)/%.o : $(EXSLT_SRCDIR)/%.c |
259 $(CC) $(CFLAGS) -DLIBXML_STATIC -DLIBXSLT_STATIC -DLIBEXSLT_STATIC \ | 259 $(CC) $(CFLAGS) -DLIBXML_STATIC -DLIBXSLT_STATIC -DLIBEXSLT_STATIC \ |
260 -I$(EXSLT_SRCDIR) -o $@ -c $< | 260 -I$(EXSLT_SRCDIR) -o $@ -c $< |
261 | 261 |
(...skipping 10 matching lines...) Expand all Loading... |
272 $(BINDIR)\$(EXSLT_SO) : $(BINDIR) $(EXSLT_OBJS) libxslt | 272 $(BINDIR)\$(EXSLT_SO) : $(BINDIR) $(EXSLT_OBJS) libxslt |
273 $(LD) $(EXSLTSO_LDFLAGS) -o $(BINDIR)/$(EXSLT_SO) $(EXSLT_OBJS) $(LIBS)
-l$(XSLT_BASENAME) -llibxml2 | 273 $(LD) $(EXSLTSO_LDFLAGS) -o $(BINDIR)/$(EXSLT_SO) $(EXSLT_OBJS) $(LIBS)
-l$(XSLT_BASENAME) -llibxml2 |
274 | 274 |
275 # Creates the libexslt archive. | 275 # Creates the libexslt archive. |
276 $(BINDIR)\$(EXSLT_A) : $(BINDIR) $(EXSLT_OBJS_A) libxslta | 276 $(BINDIR)\$(EXSLT_A) : $(BINDIR) $(EXSLT_OBJS_A) libxslta |
277 $(AR) $(ARFLAGS) $(BINDIR)\$(EXSLT_A) $(EXSLT_OBJS_A) | 277 $(AR) $(ARFLAGS) $(BINDIR)\$(EXSLT_A) $(EXSLT_OBJS_A) |
278 | 278 |
279 | 279 |
280 # Creates the utils intermediate directory. | 280 # Creates the utils intermediate directory. |
281 $(UTILS_INTDIR) : | 281 $(UTILS_INTDIR) : |
282 » cmd.exe /C if not exist $(UTILS_INTDIR) mkdir $(UTILS_INTDIR) | 282 » cmd.exe /C "if not exist $(UTILS_INTDIR) mkdir $(UTILS_INTDIR)" |
283 | 283 |
284 # An implicit rule for xsltproc and friends. | 284 # An implicit rule for xsltproc and friends. |
285 APPLIBS = $(LIBS) | 285 APPLIBS = $(LIBS) |
286 APPLIBS += -llibxml2 -l$(XSLT_BASENAME) -l$(EXSLT_BASENAME) | 286 APPLIBS += -llibxml2 -l$(XSLT_BASENAME) -l$(EXSLT_BASENAME) |
287 APP_LDFLAGS = $(LDFLAGS) | 287 APP_LDFLAGS = $(LDFLAGS) |
288 APP_LDFLAGS += -Wl,--major-image-version,$(LIBXSLT_MAJOR_VERSION) | 288 APP_LDFLAGS += -Wl,--major-image-version,$(LIBXSLT_MAJOR_VERSION) |
289 APP_LDFLAGS += -Wl,--minor-image-version,$(LIBXSLT_MINOR_VERSION) | 289 APP_LDFLAGS += -Wl,--minor-image-version,$(LIBXSLT_MINOR_VERSION) |
290 ifeq ($(STATIC),1) | 290 ifeq ($(STATIC),1) |
291 CFLAGS += -DLIBXML_STATIC -DLIBXSLT_STATIC -DLIBEXSLT_STATIC | 291 CFLAGS += -DLIBXML_STATIC -DLIBXSLT_STATIC -DLIBEXSLT_STATIC |
292 APP_LDFLAGS += -Bstatic | 292 APP_LDFLAGS += -Bstatic |
293 $(BINDIR)/%.exe : $(UTILS_SRCDIR)/%.c | 293 $(BINDIR)/%.exe : $(UTILS_SRCDIR)/%.c |
294 $(CC) $(CFLAGS) -o $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) -c $< | 294 $(CC) $(CFLAGS) -o $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) -c $< |
295 $(LD) $(APP_LDFLAGS) -o $@ $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) $(APPLIB
S) | 295 $(LD) $(APP_LDFLAGS) -o $@ $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) $(APPLIB
S) |
296 else | 296 else |
297 $(BINDIR)/%.exe : $(UTILS_SRCDIR)/%.c | 297 $(BINDIR)/%.exe : $(UTILS_SRCDIR)/%.c |
298 $(CC) $(CFLAGS) -o $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) -c $< | 298 $(CC) $(CFLAGS) -o $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) -c $< |
299 $(LD) $(APP_LDFLAGS) -o $@ $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) $(APPLIB
S) | 299 $(LD) $(APP_LDFLAGS) -o $@ $(subst .c,.o,$(UTILS_INTDIR)/$(<F)) $(APPLIB
S) |
300 endif | 300 endif |
301 | 301 |
302 # Builds xsltproc and friends. Uses the implicit rule for commands. | 302 # Builds xsltproc and friends. Uses the implicit rule for commands. |
303 $(UTILS) : $(UTILS_INTDIR) $(BINDIR) libxslt libxslta libexslt libexslta | 303 $(UTILS) : $(UTILS_INTDIR) $(BINDIR) libxslt libxslta libexslt libexslta |
304 | 304 |
305 | 305 |
306 # Source dependencies, just how? | 306 # Source dependencies, just how? |
307 #-include depends.mingw | 307 #-include depends.mingw |
308 | 308 |
OLD | NEW |