mirror of
https://github.com/moparisthebest/curl
synced 2025-02-28 09:21:50 -05:00
Architecture selection for winbuild and minor makefiles refactoring
This commit is contained in:
parent
34ff881ece
commit
8f61e5cea7
@ -68,3 +68,4 @@ where <options> is one or many of:
|
|||||||
ENABLE_WINSSL=<yes or no> - Enable native Windows SSL support, defaults to yes
|
ENABLE_WINSSL=<yes or no> - Enable native Windows SSL support, defaults to yes
|
||||||
GEN_PDB=<yes or no> - Generate Program Database (debug symbols for release build)
|
GEN_PDB=<yes or no> - Generate Program Database (debug symbols for release build)
|
||||||
DEBUG=<yes or no> - Debug builds
|
DEBUG=<yes or no> - Debug builds
|
||||||
|
MACHINE=<X86 or X64> - Target architecture (default is X86)
|
@ -54,6 +54,10 @@ ENABLE_SSPI = $(USE_SSPI)
|
|||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
# default options
|
# default options
|
||||||
|
!IFNDEF MACHINE
|
||||||
|
MACHINE = X86
|
||||||
|
!ENDIF
|
||||||
|
|
||||||
!IFNDEF ENABLE_IDN
|
!IFNDEF ENABLE_IDN
|
||||||
USE_IDN = true
|
USE_IDN = true
|
||||||
!ELSEIF "$(ENABLE_IDN)"=="yes"
|
!ELSEIF "$(ENABLE_IDN)"=="yes"
|
||||||
@ -120,6 +124,8 @@ USE_SSH2 = true
|
|||||||
SSH2 = static
|
SSH2 = static
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
|
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-$(MACHINE)
|
||||||
|
|
||||||
!IF "$(DEBUG)"=="yes"
|
!IF "$(DEBUG)"=="yes"
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-debug
|
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-debug
|
||||||
!ELSE
|
!ELSE
|
||||||
@ -168,14 +174,18 @@ CURL_DIROBJ = ..\builds\$(CONFIG_NAME_LIB)-obj-curl
|
|||||||
DIRDIST = ..\builds\$(CONFIG_NAME_LIB)\
|
DIRDIST = ..\builds\$(CONFIG_NAME_LIB)\
|
||||||
|
|
||||||
$(MODE):
|
$(MODE):
|
||||||
@SET LIBCURL_DIROBJ=$(LIBCURL_DIROBJ)
|
@SET DIROBJ=$(LIBCURL_DIROBJ)
|
||||||
@SET MACRO_NAME=LIBCURL_OBJS
|
@SET MACRO_NAME=LIBCURL_OBJS
|
||||||
@SET OUTFILE=LIBCURL_OBJS.inc
|
@SET OUTFILE=LIBCURL_OBJS.inc
|
||||||
@gen_resp_file.bat $(LIBCURL_OBJS)
|
@gen_resp_file.bat $(LIBCURL_OBJS)
|
||||||
@SET LIBCURL_DIROBJ=$(CURL_DIROBJ)
|
|
||||||
|
@SET DIROBJ=$(CURL_DIROBJ)
|
||||||
@SET MACRO_NAME=CURL_OBJS
|
@SET MACRO_NAME=CURL_OBJS
|
||||||
@SET OUTFILE=CURL_OBJS.inc
|
@SET OUTFILE=CURL_OBJS.inc
|
||||||
@gen_resp_file.bat $(CURL_OBJS)
|
@gen_resp_file.bat $(CURL_OBJS)
|
||||||
|
|
||||||
|
@SET CONFIG_NAME_LIB=$(CONFIG_NAME_LIB)
|
||||||
|
@SET MACHINE=$(MACHINE)
|
||||||
@SET USE_IDN=$(USE_IDN)
|
@SET USE_IDN=$(USE_IDN)
|
||||||
@SET USE_IPV6=$(USE_IPV6)
|
@SET USE_IPV6=$(USE_IPV6)
|
||||||
@SET USE_SSPI=$(USE_SSPI)
|
@SET USE_SSPI=$(USE_SSPI)
|
||||||
|
@ -211,9 +211,6 @@ SSPI_CFLAGS = $(SSPI_CFLAGS) /DUSE_SCHANNEL
|
|||||||
GEN_PDB = true
|
GEN_PDB = true
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IFNDEF MACHINE
|
|
||||||
MACHINE = X86
|
|
||||||
!ENDIF
|
|
||||||
|
|
||||||
!IFDEF EMBEND_MANIFEST
|
!IFDEF EMBEND_MANIFEST
|
||||||
MANIFESTTOOL = mt -manifest $(DIRDIST)\$(PROGRAM_NAME).manifest -outputresource:$(DIRDIST)\$(PROGRAM_NAME);1
|
MANIFESTTOOL = mt -manifest $(DIRDIST)\$(PROGRAM_NAME).manifest -outputresource:$(DIRDIST)\$(PROGRAM_NAME);1
|
||||||
@ -245,7 +242,7 @@ WIN_LIBS = ws2_32.lib wldap32.lib advapi32.lib
|
|||||||
!ERROR please choose a valid mode
|
!ERROR please choose a valid mode
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
CONFIG_NAME_LIB = libcurl
|
|
||||||
|
|
||||||
# CURL_XX macros are for the curl.exe command
|
# CURL_XX macros are for the curl.exe command
|
||||||
|
|
||||||
@ -255,14 +252,12 @@ CC = $(CC_DEBUG) $(RTLIB_DEBUG)
|
|||||||
|
|
||||||
CURL_CC = $(CC)
|
CURL_CC = $(CC)
|
||||||
CURL_RC_FLAGS = /i../include /dDEBUGBUILD=1 /Fo $@ $(CURL_SRC_DIR)\curl.rc
|
CURL_RC_FLAGS = /i../include /dDEBUGBUILD=1 /Fo $@ $(CURL_SRC_DIR)\curl.rc
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-debug
|
|
||||||
!ELSE
|
!ELSE
|
||||||
RC_FLAGS = /dDEBUGBUILD=0 /Fo $@ $(LIBCURL_SRC_DIR)\libcurl.rc
|
RC_FLAGS = /dDEBUGBUILD=0 /Fo $@ $(LIBCURL_SRC_DIR)\libcurl.rc
|
||||||
CC = $(CC_NODEBUG) $(RTLIB)
|
CC = $(CC_NODEBUG) $(RTLIB)
|
||||||
|
|
||||||
CURL_CC = $(CC)
|
CURL_CC = $(CC)
|
||||||
CURL_RC_FLAGS = /i../include /dDEBUGBUILD=0 /Fo $@ $(CURL_SRC_DIR)\curl.rc
|
CURL_RC_FLAGS = /i../include /dDEBUGBUILD=0 /Fo $@ $(CURL_SRC_DIR)\curl.rc
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-release
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
CURL_CC = $(CURL_CC) $(CURL_CFLAGS)
|
CURL_CC = $(CURL_CC) $(CURL_CFLAGS)
|
||||||
@ -280,7 +275,6 @@ LNK = $(LNK) /IMPLIB:$(LIB_DIROBJ)\$(LIB_NAME_IMP)
|
|||||||
CURL_LIBS = /IMPLIB:$(LIB_DIROBJ)\$(LIB_NAME_IMP)
|
CURL_LIBS = /IMPLIB:$(LIB_DIROBJ)\$(LIB_NAME_IMP)
|
||||||
!ENDIF
|
!ENDIF
|
||||||
RESOURCE = $(LIB_DIROBJ)\libcurl.res
|
RESOURCE = $(LIB_DIROBJ)\libcurl.res
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-dll
|
|
||||||
|
|
||||||
# AS_DLL
|
# AS_DLL
|
||||||
!ELSE
|
!ELSE
|
||||||
@ -292,7 +286,6 @@ TARGET = $(LIB_NAME_STATIC)
|
|||||||
!ENDIF
|
!ENDIF
|
||||||
LNK = $(LNKLIB) $(WIN_LIBS) /out:$(LIB_DIROBJ)\$(TARGET)
|
LNK = $(LNKLIB) $(WIN_LIBS) /out:$(LIB_DIROBJ)\$(TARGET)
|
||||||
CC = $(CC) $(CFLAGS_LIBCURL_STATIC)
|
CC = $(CC) $(CFLAGS_LIBCURL_STATIC)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-static
|
|
||||||
|
|
||||||
# AS_DLL
|
# AS_DLL
|
||||||
!ENDIF
|
!ENDIF
|
||||||
@ -300,38 +293,32 @@ CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-static
|
|||||||
!IF "$(USE_SSL)"=="true"
|
!IF "$(USE_SSL)"=="true"
|
||||||
CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
|
CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
|
||||||
LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(SSL_LIBS)
|
LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(SSL_LIBS)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ssl-$(SSL)
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(USE_ZLIB)"=="true"
|
!IF "$(USE_ZLIB)"=="true"
|
||||||
CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
|
CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
|
||||||
LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS) $(ZLIB_LIBS)
|
LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS) $(ZLIB_LIBS)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-zlib-$(ZLIB)
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(USE_SSH2)"=="true"
|
!IF "$(USE_SSH2)"=="true"
|
||||||
CFLAGS = $(CFLAGS) $(SSH2_CFLAGS)
|
CFLAGS = $(CFLAGS) $(SSH2_CFLAGS)
|
||||||
LFLAGS = $(LFLAGS) $(SSH2_LFLAGS) $(SSH2_LIBS)
|
LFLAGS = $(LFLAGS) $(SSH2_LFLAGS) $(SSH2_LIBS)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ssh2-$(SSH2)
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(USE_IPV6)"=="true"
|
!IF "$(USE_IPV6)"=="true"
|
||||||
CFLAGS = $(CFLAGS) $(IPV6_CFLAGS)
|
CFLAGS = $(CFLAGS) $(IPV6_CFLAGS)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ipv6
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(USE_SSPI)"=="true"
|
!IF "$(USE_SSPI)"=="true"
|
||||||
CFLAGS = $(CFLAGS) $(SSPI_CFLAGS)
|
CFLAGS = $(CFLAGS) $(SSPI_CFLAGS)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-sspi
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(USE_SPNEGO)"=="true"
|
!IF "$(USE_SPNEGO)"=="true"
|
||||||
CFLAGS = $(CFLAGS) $(SPNEGO_CFLAGS)
|
CFLAGS = $(CFLAGS) $(SPNEGO_CFLAGS)
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-spnego
|
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(USE_WINSSL)"=="true"
|
!IF "$(USE_WINSSL)"=="true"
|
||||||
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-winssl
|
#
|
||||||
!ENDIF
|
!ENDIF
|
||||||
|
|
||||||
!IF "$(GEN_PDB)"=="true"
|
!IF "$(GEN_PDB)"=="true"
|
||||||
@ -397,6 +384,7 @@ $(TARGET): $(LIB_OBJS) $(LIB_DIROBJ) $(DISTDIR)
|
|||||||
@echo LFLAGS: $(LFLAGS)
|
@echo LFLAGS: $(LFLAGS)
|
||||||
@echo GenPDB: $(GEN_PDB)
|
@echo GenPDB: $(GEN_PDB)
|
||||||
@echo Debug: $(DEBUG)
|
@echo Debug: $(DEBUG)
|
||||||
|
@echo Machine: $(MACHINE)
|
||||||
$(LNK) $(LFLAGS) $(LIB_OBJS)
|
$(LNK) $(LFLAGS) $(LIB_OBJS)
|
||||||
@echo Copying libs...
|
@echo Copying libs...
|
||||||
@if exist $(LIB_DIROBJ)\$(LIB_NAME_DLL) copy $(LIB_DIROBJ)\$(LIB_NAME_DLL) $(DIRDIST)\bin\ /y >nul 2<&1
|
@if exist $(LIB_DIROBJ)\$(LIB_NAME_DLL) copy $(LIB_DIROBJ)\$(LIB_NAME_DLL) $(DIRDIST)\bin\ /y >nul 2<&1
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
@echo OFF
|
@echo OFF
|
||||||
@del %OUTFILE%
|
@del %OUTFILE%
|
||||||
@echo %MACRO_NAME% = \> %OUTFILE%
|
@echo %MACRO_NAME% = \> %OUTFILE%
|
||||||
@for %%i in (%*) do @echo %LIBCURL_DIROBJ%/%%i \>> %OUTFILE%
|
@for %%i in (%*) do @echo %DIROBJ%/%%i \>> %OUTFILE%
|
||||||
@echo. >> %OUTFILE%
|
@echo. >> %OUTFILE%
|
||||||
:END
|
:END
|
||||||
|
Loading…
x
Reference in New Issue
Block a user