xref: /trunk/main/curl/makefile.mk (revision bb956dfd85428dd08d991a01ee6a6c4e966bf431)
17871dc3eSAndrew Rist#**************************************************************
2cdf0e10cSrcweir#
37871dc3eSAndrew Rist#  Licensed to the Apache Software Foundation (ASF) under one
47871dc3eSAndrew Rist#  or more contributor license agreements.  See the NOTICE file
57871dc3eSAndrew Rist#  distributed with this work for additional information
67871dc3eSAndrew Rist#  regarding copyright ownership.  The ASF licenses this file
77871dc3eSAndrew Rist#  to you under the Apache License, Version 2.0 (the
87871dc3eSAndrew Rist#  "License"); you may not use this file except in compliance
97871dc3eSAndrew Rist#  with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir#
117871dc3eSAndrew Rist#    http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir#
137871dc3eSAndrew Rist#  Unless required by applicable law or agreed to in writing,
147871dc3eSAndrew Rist#  software distributed under the License is distributed on an
157871dc3eSAndrew Rist#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
167871dc3eSAndrew Rist#  KIND, either express or implied.  See the License for the
177871dc3eSAndrew Rist#  specific language governing permissions and limitations
187871dc3eSAndrew Rist#  under the License.
19cdf0e10cSrcweir#
207871dc3eSAndrew Rist#**************************************************************
217871dc3eSAndrew Rist
227871dc3eSAndrew Rist
23cdf0e10cSrcweirPRJ=.
24cdf0e10cSrcweir
25cdf0e10cSrcweirPRJNAME=so_curl
26cdf0e10cSrcweirTARGET=so_curl
27cdf0e10cSrcweir
28cdf0e10cSrcweir# --- Settings -----------------------------------------------------
29cdf0e10cSrcweir
30cdf0e10cSrcweir.INCLUDE :  settings.mk
31cdf0e10cSrcweir
32cdf0e10cSrcweir.IF "$(SYSTEM_CURL)" == "YES"
33cdf0e10cSrcweirall:
34cdf0e10cSrcweir    @echo "An already available installation of curl should exist on your system."
35cdf0e10cSrcweir    @echo "Therefore the version provided here does not need to be built in addition."
36cdf0e10cSrcweir.ENDIF
37cdf0e10cSrcweir
38cdf0e10cSrcweir# --- Files --------------------------------------------------------
39cdf0e10cSrcweir
40bc614383SDon LewisTARFILE_NAME=curl-7.72.0
41bc614383SDon LewisTARFILE_MD5=7422feb126df677d2d33294a1fd079ea
4251ba086bSDamjan JovanovicPATCH_FILES=curl-wnt.patch
43cdf0e10cSrcweir
44cdf0e10cSrcweir#ADDITIONAL_FILES= lib$/config-os2.h lib$/Makefile.os2
45cdf0e10cSrcweir
46cdf0e10cSrcweir.IF "$(GUI)"=="UNX"
47cdf0e10cSrcweir
48cdf0e10cSrcweir.IF "$(SYSBASE)"!=""
49cdf0e10cSrcweircurl_CFLAGS+=-I$(SYSBASE)$/usr$/include
50cdf0e10cSrcweircurl_LDFLAGS+=-L$(SYSBASE)$/usr$/lib
51cdf0e10cSrcweir.ENDIF          # "$(SYSBASE)"!=""
52cdf0e10cSrcweir
53cdf0e10cSrcweir.IF "$(OS)$(CPU)"=="SOLARISU"
54cdf0e10cSrcweircurl_CFLAGS+:=$(ARCH_FLAGS)
55cdf0e10cSrcweircurl_LDFLAGS+:=$(ARCH_FLAGS)
56cdf0e10cSrcweir.ENDIF
57cdf0e10cSrcweir
58*bb956dfdSArrigo Marchiori.IF "$(SYSTEM_OPENSSL)"=="YES"
59*bb956dfdSArrigo Marchiorissl_param=--with-ssl
60*bb956dfdSArrigo Marchiori.ELSE
61*bb956dfdSArrigo Marchiorissl_param=--with-ssl=$(OUTDIR)
62*bb956dfdSArrigo MarchioriPATCH_FILES+= curl-bundled_openssl.patch
63*bb956dfdSArrigo Marchiori.ENDIF
64*bb956dfdSArrigo Marchiori
65cdf0e10cSrcweirCONFIGURE_DIR=.$/
66cdf0e10cSrcweir#relative to CONFIGURE_DIR
67cdf0e10cSrcweirCONFIGURE_ACTION=.$/configure
68*bb956dfdSArrigo MarchioriCONFIGURE_FLAGS= $(ssl_param) --without-libidn --enable-ftp --enable-ipv6 --enable-http --disable-gopher --disable-file --disable-ldap --disable-telnet --disable-dict --disable-static CPPFLAGS="$(curl_CFLAGS)"  LDFLAGS="$(curl_LDFLAGS)"
69cdf0e10cSrcweir
70cdf0e10cSrcweirBUILD_DIR=$(CONFIGURE_DIR)$/lib
71cdf0e10cSrcweirBUILD_ACTION=$(GNUMAKE)
72cdf0e10cSrcweirBUILD_FLAGS+= -j$(EXTMAXPROCESS)
73cdf0e10cSrcweir
74cdf0e10cSrcweirOUT2LIB=$(BUILD_DIR)$/.libs$/libcurl$(DLLPOST).4
75cdf0e10cSrcweir.ENDIF          # "$(GUI)"=="UNX"
76cdf0e10cSrcweir
77cdf0e10cSrcweir
78cdf0e10cSrcweir.IF "$(GUI)"=="WNT"
79cdf0e10cSrcweir.IF "$(COM)"=="GCC"
80cdf0e10cSrcweircurl_CC=$(CC) -mthreads
81cdf0e10cSrcweir.IF "$(MINGW_SHARED_GCCLIB)"=="YES"
82cdf0e10cSrcweircurl_CC+=-shared-libgcc
83cdf0e10cSrcweir.ENDIF
84cdf0e10cSrcweircurl_LIBS=-lws2_32 -lwinmm
85cdf0e10cSrcweir.IF "$(MINGW_SHARED_GXXLIB)"=="YES"
86cdf0e10cSrcweircurl_LIBS+=$(MINGW_SHARED_LIBSTDCPP)
87cdf0e10cSrcweir.ENDIF
88cdf0e10cSrcweirCONFIGURE_DIR=.$/
89cdf0e10cSrcweir#relative to CONFIGURE_DIR
90cdf0e10cSrcweirCONFIGURE_ACTION=.$/configure
9151ba086bSDamjan JovanovicCONFIGURE_FLAGS= --with-ssl --enable-ftp --enable-ipv6 --enable-http --disable-gopher --disable-file --disable-ldap --disable-telnet --disable-dict --build=i586-pc-mingw32 --host=i586-pc-mingw32 CC="$(curl_CC)" CPPFLAGS="$(INCLUDE)" OBJDUMP="objdump" LDFLAGS="-L$(ILIB:s/;/ -L/)" LIBS="$(curl_LIBS)"
92cdf0e10cSrcweirBUILD_DIR=$(CONFIGURE_DIR)$/lib
93cdf0e10cSrcweirBUILD_ACTION=make
94cdf0e10cSrcweirOUT2BIN=$(BUILD_DIR)$/.libs$/libcurl*.dll
95cdf0e10cSrcweirOUT2LIB=$(BUILD_DIR)$/.libs$/libcurl*.dll.a
96cdf0e10cSrcweir.ELSE
97cdf0e10cSrcweir# make use of stlport headerfiles
98cdf0e10cSrcweirEXT_USE_STLPORT=TRUE
99cdf0e10cSrcweir
100cdf0e10cSrcweir.IF "$(CCNUMVER)" > "001399999999"
101cdf0e10cSrcweirEXCFLAGS="/EHa /Zc:wchar_t- /D "_CRT_SECURE_NO_DEPRECATE""
102cdf0e10cSrcweir.ELSE
103cdf0e10cSrcweirEXCFLAGS="/EHsc /YX"
104cdf0e10cSrcweir.ENDIF
105cdf0e10cSrcweir
106e35fcbcfSDamjan Jovanovic.IF "$(CPUNAME)"=="INTEL"
107e35fcbcfSDamjan Jovanoviccurl_MACHINE:="X86"
108e35fcbcfSDamjan Jovanovic.ELIF "$(CPUNAME)"=="X86_64"
109e35fcbcfSDamjan Jovanoviccurl_MACHINE:="X64"
110e35fcbcfSDamjan Jovanovic.ENDIF
111e35fcbcfSDamjan Jovanovic
11268576893SDon LewisBUILD_DIR=.$/winbuild
113cdf0e10cSrcweir.IF "$(debug)"==""
11451ba086bSDamjan JovanovicBUILD_ACTION=CC="cl.exe" nmake -f Makefile.vc mode=dll VC=9 EXCFLAGS=$(EXCFLAGS) MACHINE=$(curl_MACHINE) RTLIBCFG=static WITH_DEVEL=$(OUTDIR) WITH_ZLIB=dll WITH_SSL=dll
115cdf0e10cSrcweir.ELSE
11651ba086bSDamjan JovanovicBUILD_ACTION=CC="cl.exe" nmake -f Makefile.vc mode=dll VC=9 DEBUG=yes EXCFLAGS=$(EXCFLAGS) MACHINE=$(curl_MACHINE) RTLIBCFG=static WITH_DEVEL=$(OUTDIR) WITH_ZLIB=dll WITH_SSL=dll
117cdf0e10cSrcweir.ENDIF
118cdf0e10cSrcweir
1198c07c6ecSDamjan Jovanovic.IF "$(CPUNAME)"=="INTEL"
12051ba086bSDamjan JovanovicOUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-release-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl.dll
12151ba086bSDamjan JovanovicOUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-release-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl.lib
1228c07c6ecSDamjan Jovanovic.ELIF "$(CPUNAME)"=="X86_64"
12351ba086bSDamjan JovanovicOUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-release-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl.dll
12451ba086bSDamjan JovanovicOUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-release-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl.lib
1258c07c6ecSDamjan Jovanovic.ENDIF
126cdf0e10cSrcweir
127cdf0e10cSrcweir.ENDIF
128cdf0e10cSrcweir.ENDIF          # "$(GUI)"=="WNT"
129cdf0e10cSrcweir
130cdf0e10cSrcweir.IF "$(GUI)"=="OS2"
131cdf0e10cSrcweir# make use of stlport headerfiles
132cdf0e10cSrcweirEXT_USE_STLPORT=TRUE
133cdf0e10cSrcweir
134cdf0e10cSrcweirBUILD_DIR=.$/lib
135cdf0e10cSrcweir.IF "$(debug)"==""
136cdf0e10cSrcweirBUILD_ACTION=make -f Makefile.os2
137cdf0e10cSrcweir.ELSE
138cdf0e10cSrcweirBUILD_ACTION=make -f Makefile.os2
139cdf0e10cSrcweir.ENDIF
140cdf0e10cSrcweir
141cdf0e10cSrcweirOUT2BIN=$(BUILD_DIR)$/libcurl.dll
142cdf0e10cSrcweirOUT2LIB=$(BUILD_DIR)$/libcurl.lib
143cdf0e10cSrcweir
144cdf0e10cSrcweir.ENDIF          # "$(GUI)"=="OS2"
145cdf0e10cSrcweir
146cdf0e10cSrcweirOUT2INC= \
147cdf0e10cSrcweir    include$/curl$/easy.h           \
148cdf0e10cSrcweir    include$/curl$/multi.h          \
149cdf0e10cSrcweir    include$/curl$/curl.h           \
150cdf0e10cSrcweir    include$/curl$/curlver.h        \
151a2c60cbdStruckman    include$/curl$/typecheck-gcc.h      \
152cdf0e10cSrcweir    include$/curl$/stdcheaders.h    \
153cdf0e10cSrcweir    include$/curl$/mprintf.h        \
15449c55ee5SDon Lewis    include$/curl$/system.h         \
15549c55ee5SDon Lewis    include$/curl$/urlapi.h
15668576893SDon Lewis
157cdf0e10cSrcweir
158cdf0e10cSrcweir# --- Targets ------------------------------------------------------
159cdf0e10cSrcweir
160cdf0e10cSrcweir.INCLUDE : set_ext.mk
161cdf0e10cSrcweir.INCLUDE : target.mk
162cdf0e10cSrcweir.INCLUDE : tg_ext.mk
163