Mercurial > hgrepos > Python2 > PyMuPDF
comparison mupdf-source/thirdparty/curl/lib/Makefile.m32 @ 2:b50eed0cc0ef upstream
ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4.
The directory name has changed: no version number in the expanded directory now.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 15 Sep 2025 11:43:07 +0200 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1:1d09e1dec1d9 | 2:b50eed0cc0ef |
|---|---|
| 1 #*************************************************************************** | |
| 2 # _ _ ____ _ | |
| 3 # Project ___| | | | _ \| | | |
| 4 # / __| | | | |_) | | | |
| 5 # | (__| |_| | _ <| |___ | |
| 6 # \___|\___/|_| \_\_____| | |
| 7 # | |
| 8 # Copyright (C) 1999 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al. | |
| 9 # | |
| 10 # This software is licensed as described in the file COPYING, which | |
| 11 # you should have received as part of this distribution. The terms | |
| 12 # are also available at https://curl.haxx.se/docs/copyright.html. | |
| 13 # | |
| 14 # You may opt to use, copy, modify, merge, publish, distribute and/or sell | |
| 15 # copies of the Software, and permit persons to whom the Software is | |
| 16 # furnished to do so, under the terms of the COPYING file. | |
| 17 # | |
| 18 # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | |
| 19 # KIND, either express or implied. | |
| 20 # | |
| 21 #*************************************************************************** | |
| 22 | |
| 23 ########################################################################### | |
| 24 # | |
| 25 ## Makefile for building libcurl.a with MingW (GCC-3.2 or later or LLVM/Clang) | |
| 26 ## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4), | |
| 27 ## brotli (1.0.1) | |
| 28 ## | |
| 29 ## Usage: mingw32-make -f Makefile.m32 CFG=-feature1[-feature2][-feature3][...] | |
| 30 ## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-sspi-winidn | |
| 31 ## | |
| 32 ## Hint: you can also set environment vars to control the build, f.e.: | |
| 33 ## set ZLIB_PATH=c:/zlib-1.2.8 | |
| 34 ## set ZLIB=1 | |
| 35 # | |
| 36 ########################################################################### | |
| 37 | |
| 38 # Edit the path below to point to the base of your Zlib sources. | |
| 39 ifndef ZLIB_PATH | |
| 40 ZLIB_PATH = ../../zlib-1.2.8 | |
| 41 endif | |
| 42 # Edit the path below to point to the base of your Brotli sources. | |
| 43 ifndef BROTLI_PATH | |
| 44 BROTLI_PATH = ../../brotli-1.0.1 | |
| 45 endif | |
| 46 # Edit the path below to point to the base of your OpenSSL package. | |
| 47 ifndef OPENSSL_PATH | |
| 48 OPENSSL_PATH = ../../openssl-1.0.2a | |
| 49 endif | |
| 50 # Edit the path below to point to the base of your LibSSH2 package. | |
| 51 ifndef LIBSSH2_PATH | |
| 52 LIBSSH2_PATH = ../../libssh2-1.5.0 | |
| 53 endif | |
| 54 # Edit the path below to point to the base of your librtmp package. | |
| 55 ifndef LIBRTMP_PATH | |
| 56 LIBRTMP_PATH = ../../librtmp-2.4 | |
| 57 endif | |
| 58 # Edit the path below to point to the base of your libidn2 package. | |
| 59 ifndef LIBIDN2_PATH | |
| 60 LIBIDN2_PATH = ../../libidn2-2.0.3 | |
| 61 endif | |
| 62 # Edit the path below to point to the base of your MS IDN package. | |
| 63 # Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1 | |
| 64 # https://www.microsoft.com/en-us/download/details.aspx?id=734 | |
| 65 ifndef WINIDN_PATH | |
| 66 WINIDN_PATH = ../../Microsoft IDN Mitigation APIs | |
| 67 endif | |
| 68 # Edit the path below to point to the base of your Novell LDAP NDK. | |
| 69 ifndef LDAP_SDK | |
| 70 LDAP_SDK = c:/novell/ndk/cldapsdk/win32 | |
| 71 endif | |
| 72 # Edit the path below to point to the base of your nghttp2 package. | |
| 73 ifndef NGHTTP2_PATH | |
| 74 NGHTTP2_PATH = ../../nghttp2-1.0.0 | |
| 75 endif | |
| 76 | |
| 77 PROOT = .. | |
| 78 | |
| 79 # Edit the path below to point to the base of your c-ares package. | |
| 80 ifndef LIBCARES_PATH | |
| 81 LIBCARES_PATH = $(PROOT)/ares | |
| 82 endif | |
| 83 | |
| 84 ifeq ($(CURL_CC),) | |
| 85 CURL_CC := $(CROSSPREFIX)gcc | |
| 86 endif | |
| 87 ifeq ($(CURL_AR),) | |
| 88 CURL_AR := $(CROSSPREFIX)ar | |
| 89 endif | |
| 90 ifeq ($(CURL_RANLIB),) | |
| 91 CURL_RANLIB := $(CROSSPREFIX)ranlib | |
| 92 endif | |
| 93 | |
| 94 CC = $(CURL_CC) | |
| 95 CFLAGS = $(CURL_CFLAG_EXTRAS) -g -O2 -Wall -W | |
| 96 CFLAGS += -fno-strict-aliasing | |
| 97 # comment LDFLAGS below to keep debug info | |
| 98 LDFLAGS = $(CURL_LDFLAG_EXTRAS) $(CURL_LDFLAG_EXTRAS_DLL) -s | |
| 99 AR = $(CURL_AR) | |
| 100 RANLIB = $(CURL_RANLIB) | |
| 101 RC = $(CROSSPREFIX)windres | |
| 102 RCFLAGS = --include-dir=$(PROOT)/include -DDEBUGBUILD=0 -O COFF | |
| 103 STRIP = $(CROSSPREFIX)strip -g | |
| 104 | |
| 105 # Set environment var ARCH to your architecture to override autodetection. | |
| 106 ifndef ARCH | |
| 107 ifeq ($(findstring x86_64,$(shell $(CC) -dumpmachine)),x86_64) | |
| 108 ARCH = w64 | |
| 109 else | |
| 110 ARCH = w32 | |
| 111 endif | |
| 112 endif | |
| 113 | |
| 114 ifeq ($(ARCH),w64) | |
| 115 CFLAGS += -m64 -D_AMD64_ | |
| 116 LDFLAGS += -m64 | |
| 117 RCFLAGS += -F pe-x86-64 | |
| 118 else | |
| 119 CFLAGS += -m32 | |
| 120 LDFLAGS += -m32 | |
| 121 RCFLAGS += -F pe-i386 | |
| 122 endif | |
| 123 | |
| 124 # Platform-dependent helper tool macros | |
| 125 ifeq ($(findstring /sh,$(SHELL)),/sh) | |
| 126 DEL = rm -f $1 | |
| 127 RMDIR = rm -fr $1 | |
| 128 MKDIR = mkdir -p $1 | |
| 129 COPY = -cp -afv $1 $2 | |
| 130 #COPYR = -cp -afr $1/* $2 | |
| 131 COPYR = -rsync -aC $1/* $2 | |
| 132 TOUCH = touch $1 | |
| 133 CAT = cat | |
| 134 ECHONL = echo "" | |
| 135 DL = ' | |
| 136 else | |
| 137 ifeq "$(OS)" "Windows_NT" | |
| 138 DEL = -del 2>NUL /q /f $(subst /,\,$1) | |
| 139 RMDIR = -rd 2>NUL /q /s $(subst /,\,$1) | |
| 140 else | |
| 141 DEL = -del 2>NUL $(subst /,\,$1) | |
| 142 RMDIR = -deltree 2>NUL /y $(subst /,\,$1) | |
| 143 endif | |
| 144 MKDIR = -md 2>NUL $(subst /,\,$1) | |
| 145 COPY = -copy 2>NUL /y $(subst /,\,$1) $(subst /,\,$2) | |
| 146 COPYR = -xcopy 2>NUL /q /y /e $(subst /,\,$1) $(subst /,\,$2) | |
| 147 TOUCH = copy 2>&1>NUL /b $(subst /,\,$1) +,, | |
| 148 CAT = type | |
| 149 ECHONL = $(ComSpec) /c echo. | |
| 150 endif | |
| 151 | |
| 152 ######################################################## | |
| 153 ## Nothing more to do below this line! | |
| 154 | |
| 155 ifeq ($(findstring -dyn,$(CFG)),-dyn) | |
| 156 DYN = 1 | |
| 157 endif | |
| 158 ifeq ($(findstring -ares,$(CFG)),-ares) | |
| 159 ARES = 1 | |
| 160 endif | |
| 161 ifeq ($(findstring -sync,$(CFG)),-sync) | |
| 162 SYNC = 1 | |
| 163 endif | |
| 164 ifeq ($(findstring -rtmp,$(CFG)),-rtmp) | |
| 165 RTMP = 1 | |
| 166 SSL = 1 | |
| 167 ZLIB = 1 | |
| 168 endif | |
| 169 ifeq ($(findstring -ssh2,$(CFG)),-ssh2) | |
| 170 SSH2 = 1 | |
| 171 SSL = 1 | |
| 172 ZLIB = 1 | |
| 173 endif | |
| 174 ifeq ($(findstring -ssl,$(CFG)),-ssl) | |
| 175 SSL = 1 | |
| 176 endif | |
| 177 ifeq ($(findstring -srp,$(CFG)),-srp) | |
| 178 SRP = 1 | |
| 179 endif | |
| 180 ifeq ($(findstring -zlib,$(CFG)),-zlib) | |
| 181 ZLIB = 1 | |
| 182 endif | |
| 183 ifeq ($(findstring -brotli,$(CFG)),-brotli) | |
| 184 BROTLI = 1 | |
| 185 endif | |
| 186 ifeq ($(findstring -idn2,$(CFG)),-idn2) | |
| 187 IDN2 = 1 | |
| 188 endif | |
| 189 ifeq ($(findstring -winidn,$(CFG)),-winidn) | |
| 190 WINIDN = 1 | |
| 191 endif | |
| 192 ifeq ($(findstring -sspi,$(CFG)),-sspi) | |
| 193 SSPI = 1 | |
| 194 endif | |
| 195 ifeq ($(findstring -ldaps,$(CFG)),-ldaps) | |
| 196 LDAPS = 1 | |
| 197 endif | |
| 198 ifeq ($(findstring -ipv6,$(CFG)),-ipv6) | |
| 199 IPV6 = 1 | |
| 200 endif | |
| 201 ifeq ($(findstring -winssl,$(CFG)),-winssl) | |
| 202 WINSSL = 1 | |
| 203 SSPI = 1 | |
| 204 endif | |
| 205 ifeq ($(findstring -nghttp2,$(CFG)),-nghttp2) | |
| 206 NGHTTP2 = 1 | |
| 207 endif | |
| 208 | |
| 209 INCLUDES = -I. -I../include | |
| 210 CFLAGS += -DBUILDING_LIBCURL | |
| 211 ifdef SSL | |
| 212 ifdef WINSSL | |
| 213 CFLAGS += -DCURL_WITH_MULTI_SSL | |
| 214 endif | |
| 215 endif | |
| 216 | |
| 217 ifdef SYNC | |
| 218 CFLAGS += -DUSE_SYNC_DNS | |
| 219 else | |
| 220 ifdef ARES | |
| 221 INCLUDES += -I"$(LIBCARES_PATH)" | |
| 222 CFLAGS += -DUSE_ARES -DCARES_STATICLIB | |
| 223 DLL_LIBS += -L"$(LIBCARES_PATH)" -lcares | |
| 224 libcurl_dll_DEPENDENCIES = $(LIBCARES_PATH)/libcares.a | |
| 225 endif | |
| 226 endif | |
| 227 ifdef RTMP | |
| 228 INCLUDES += -I"$(LIBRTMP_PATH)" | |
| 229 CFLAGS += -DUSE_LIBRTMP | |
| 230 DLL_LIBS += -L"$(LIBRTMP_PATH)/librtmp" -lrtmp -lwinmm | |
| 231 endif | |
| 232 ifdef NGHTTP2 | |
| 233 INCLUDES += -I"$(NGHTTP2_PATH)/include" | |
| 234 CFLAGS += -DUSE_NGHTTP2 | |
| 235 DLL_LIBS += -L"$(NGHTTP2_PATH)/lib" -lnghttp2 | |
| 236 endif | |
| 237 ifdef SSH2 | |
| 238 INCLUDES += -I"$(LIBSSH2_PATH)/include" -I"$(LIBSSH2_PATH)/win32" | |
| 239 CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H | |
| 240 DLL_LIBS += -L"$(LIBSSH2_PATH)/win32" -lssh2 | |
| 241 ifdef WINSSL | |
| 242 ifndef DYN | |
| 243 DLL_LIBS += -lbcrypt -lcrypt32 | |
| 244 endif | |
| 245 endif | |
| 246 endif | |
| 247 ifdef SSL | |
| 248 ifndef OPENSSL_INCLUDE | |
| 249 ifeq "$(wildcard $(OPENSSL_PATH)/outinc)" "$(OPENSSL_PATH)/outinc" | |
| 250 OPENSSL_INCLUDE = $(OPENSSL_PATH)/outinc | |
| 251 endif | |
| 252 ifeq "$(wildcard $(OPENSSL_PATH)/include)" "$(OPENSSL_PATH)/include" | |
| 253 OPENSSL_INCLUDE = $(OPENSSL_PATH)/include | |
| 254 endif | |
| 255 endif | |
| 256 ifneq "$(wildcard $(OPENSSL_INCLUDE)/openssl/opensslv.h)" "$(OPENSSL_INCLUDE)/openssl/opensslv.h" | |
| 257 $(error Invalid path to OpenSSL package: $(OPENSSL_PATH)) | |
| 258 endif | |
| 259 ifndef OPENSSL_LIBPATH | |
| 260 ifeq "$(wildcard $(OPENSSL_PATH)/out)" "$(OPENSSL_PATH)/out" | |
| 261 OPENSSL_LIBPATH = $(OPENSSL_PATH)/out | |
| 262 OPENSSL_LIBS = -leay32 -lssl32 | |
| 263 endif | |
| 264 ifeq "$(wildcard $(OPENSSL_PATH)/lib)" "$(OPENSSL_PATH)/lib" | |
| 265 OPENSSL_LIBPATH = $(OPENSSL_PATH)/lib | |
| 266 OPENSSL_LIBS = -lcrypto -lssl | |
| 267 endif | |
| 268 endif | |
| 269 ifndef DYN | |
| 270 OPENSSL_LIBS += -lgdi32 -lcrypt32 | |
| 271 endif | |
| 272 INCLUDES += -I"$(OPENSSL_INCLUDE)" | |
| 273 CFLAGS += -DUSE_OPENSSL -DHAVE_OPENSSL_ENGINE_H -DHAVE_OPENSSL_PKCS12_H \ | |
| 274 -DHAVE_ENGINE_LOAD_BUILTIN_ENGINES -DOPENSSL_NO_KRB5 | |
| 275 DLL_LIBS += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS) | |
| 276 ifdef SRP | |
| 277 ifeq "$(wildcard $(OPENSSL_INCLUDE)/openssl/srp.h)" "$(OPENSSL_INCLUDE)/openssl/srp.h" | |
| 278 CFLAGS += -DHAVE_OPENSSL_SRP -DUSE_TLS_SRP | |
| 279 endif | |
| 280 endif | |
| 281 endif | |
| 282 ifdef WINSSL | |
| 283 CFLAGS += -DUSE_SCHANNEL | |
| 284 DLL_LIBS += -lcrypt32 | |
| 285 endif | |
| 286 ifdef ZLIB | |
| 287 INCLUDES += -I"$(ZLIB_PATH)" | |
| 288 CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H | |
| 289 DLL_LIBS += -L"$(ZLIB_PATH)" -lz | |
| 290 endif | |
| 291 ifdef BROTLI | |
| 292 INCLUDES += -I"$(BROTLI_PATH)/include" | |
| 293 CFLAGS += -DHAVE_BROTLI | |
| 294 DLL_LIBS += -L"$(BROTLI_PATH)/lib" | |
| 295 ifdef BROTLI_LIBS | |
| 296 DLL_LIBS += $(BROTLI_LIBS) | |
| 297 else | |
| 298 DLL_LIBS += -lbrotlidec | |
| 299 endif | |
| 300 endif | |
| 301 ifdef IDN2 | |
| 302 INCLUDES += -I"$(LIBIDN2_PATH)/include" | |
| 303 CFLAGS += -DUSE_LIBIDN2 | |
| 304 DLL_LIBS += -L"$(LIBIDN2_PATH)/lib" -lidn2 | |
| 305 else | |
| 306 ifdef WINIDN | |
| 307 CFLAGS += -DUSE_WIN32_IDN | |
| 308 CFLAGS += -DWANT_IDN_PROTOTYPES | |
| 309 DLL_LIBS += -L"$(WINIDN_PATH)" -lnormaliz | |
| 310 endif | |
| 311 endif | |
| 312 ifdef SSPI | |
| 313 CFLAGS += -DUSE_WINDOWS_SSPI | |
| 314 endif | |
| 315 ifdef SPNEGO | |
| 316 CFLAGS += -DHAVE_SPNEGO | |
| 317 endif | |
| 318 ifdef IPV6 | |
| 319 CFLAGS += -DENABLE_IPV6 -D_WIN32_WINNT=0x0501 | |
| 320 endif | |
| 321 ifdef LDAPS | |
| 322 CFLAGS += -DHAVE_LDAP_SSL | |
| 323 endif | |
| 324 ifdef USE_LDAP_NOVELL | |
| 325 INCLUDES += -I"$(LDAP_SDK)/inc" | |
| 326 CFLAGS += -DCURL_HAS_NOVELL_LDAPSDK | |
| 327 DLL_LIBS += -L"$(LDAP_SDK)/lib/mscvc" -lldapsdk -lldapssl -lldapx | |
| 328 endif | |
| 329 ifdef USE_LDAP_OPENLDAP | |
| 330 INCLUDES += -I"$(LDAP_SDK)/include" | |
| 331 CFLAGS += -DCURL_HAS_OPENLDAP_LDAPSDK | |
| 332 DLL_LIBS += -L"$(LDAP_SDK)/lib" -lldap -llber | |
| 333 endif | |
| 334 ifndef USE_LDAP_NOVELL | |
| 335 ifndef USE_LDAP_OPENLDAP | |
| 336 DLL_LIBS += -lwldap32 | |
| 337 endif | |
| 338 endif | |
| 339 DLL_LIBS += -lws2_32 | |
| 340 | |
| 341 # Makefile.inc provides the CSOURCES and HHEADERS defines | |
| 342 include Makefile.inc | |
| 343 | |
| 344 ifeq ($(CURL_DLL_A_SUFFIX),) | |
| 345 CURL_DLL_A_SUFFIX := dll | |
| 346 endif | |
| 347 | |
| 348 libcurl_dll_LIBRARY = libcurl$(CURL_DLL_SUFFIX).dll | |
| 349 libcurl_dll_a_LIBRARY = libcurl$(CURL_DLL_A_SUFFIX).a | |
| 350 libcurl_a_LIBRARY = libcurl.a | |
| 351 | |
| 352 libcurl_a_OBJECTS := $(patsubst %.c,%.o,$(strip $(CSOURCES))) | |
| 353 libcurl_a_DEPENDENCIES := $(strip $(CSOURCES) $(HHEADERS)) | |
| 354 | |
| 355 RESOURCE = libcurl.res | |
| 356 | |
| 357 | |
| 358 all: $(libcurl_a_LIBRARY) $(libcurl_dll_LIBRARY) | |
| 359 | |
| 360 $(libcurl_a_LIBRARY): $(libcurl_a_OBJECTS) $(libcurl_a_DEPENDENCIES) | |
| 361 @$(call DEL, $@) | |
| 362 $(AR) cru $@ $(libcurl_a_OBJECTS) | |
| 363 $(RANLIB) $@ | |
| 364 $(STRIP) $@ | |
| 365 | |
| 366 # remove the last line above to keep debug info | |
| 367 | |
| 368 $(libcurl_dll_LIBRARY): $(libcurl_a_OBJECTS) $(RESOURCE) $(libcurl_dll_DEPENDENCIES) | |
| 369 @$(call DEL, $@) | |
| 370 $(CC) $(LDFLAGS) -shared -o $@ \ | |
| 371 -Wl,--output-def,$(@:.dll=.def),--out-implib,$(libcurl_dll_a_LIBRARY) \ | |
| 372 $(libcurl_a_OBJECTS) $(RESOURCE) $(DLL_LIBS) | |
| 373 | |
| 374 %.o: %.c | |
| 375 $(CC) $(INCLUDES) $(CFLAGS) -c $< -o $@ | |
| 376 | |
| 377 %.res: %.rc | |
| 378 $(RC) $(RCFLAGS) -i $< -o $@ | |
| 379 | |
| 380 clean: | |
| 381 @$(call DEL, $(libcurl_a_OBJECTS) $(RESOURCE)) | |
| 382 | |
| 383 distclean vclean: clean | |
| 384 @$(call DEL, $(libcurl_a_LIBRARY) $(libcurl_dll_LIBRARY) $(libcurl_dll_LIBRARY:.dll=.def) $(libcurl_dll_a_LIBRARY)) | |
| 385 | |
| 386 $(LIBCARES_PATH)/libcares.a: | |
| 387 $(MAKE) -C $(LIBCARES_PATH) -f Makefile.m32 |
