xref: /trunk/main/curl/makefile.mk (revision bb956dfd)
1#**************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20#**************************************************************
21
22
23PRJ=.
24
25PRJNAME=so_curl
26TARGET=so_curl
27
28# --- Settings -----------------------------------------------------
29
30.INCLUDE :	settings.mk
31
32.IF "$(SYSTEM_CURL)" == "YES"
33all:
34	@echo "An already available installation of curl should exist on your system."
35	@echo "Therefore the version provided here does not need to be built in addition."
36.ENDIF
37
38# --- Files --------------------------------------------------------
39
40TARFILE_NAME=curl-7.72.0
41TARFILE_MD5=7422feb126df677d2d33294a1fd079ea
42PATCH_FILES=curl-wnt.patch
43
44#ADDITIONAL_FILES= lib$/config-os2.h lib$/Makefile.os2
45
46.IF "$(GUI)"=="UNX"
47
48.IF "$(SYSBASE)"!=""
49curl_CFLAGS+=-I$(SYSBASE)$/usr$/include
50curl_LDFLAGS+=-L$(SYSBASE)$/usr$/lib
51.ENDIF			# "$(SYSBASE)"!=""
52
53.IF "$(OS)$(CPU)"=="SOLARISU"
54curl_CFLAGS+:=$(ARCH_FLAGS)
55curl_LDFLAGS+:=$(ARCH_FLAGS)
56.ENDIF
57
58.IF "$(SYSTEM_OPENSSL)"=="YES"
59ssl_param=--with-ssl
60.ELSE
61ssl_param=--with-ssl=$(OUTDIR)
62PATCH_FILES+= curl-bundled_openssl.patch
63.ENDIF
64
65CONFIGURE_DIR=.$/
66#relative to CONFIGURE_DIR
67CONFIGURE_ACTION=.$/configure
68CONFIGURE_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)"
69
70BUILD_DIR=$(CONFIGURE_DIR)$/lib
71BUILD_ACTION=$(GNUMAKE)
72BUILD_FLAGS+= -j$(EXTMAXPROCESS)
73
74OUT2LIB=$(BUILD_DIR)$/.libs$/libcurl$(DLLPOST).4
75.ENDIF			# "$(GUI)"=="UNX"
76
77
78.IF "$(GUI)"=="WNT"
79.IF "$(COM)"=="GCC"
80curl_CC=$(CC) -mthreads
81.IF "$(MINGW_SHARED_GCCLIB)"=="YES"
82curl_CC+=-shared-libgcc
83.ENDIF
84curl_LIBS=-lws2_32 -lwinmm
85.IF "$(MINGW_SHARED_GXXLIB)"=="YES"
86curl_LIBS+=$(MINGW_SHARED_LIBSTDCPP)
87.ENDIF
88CONFIGURE_DIR=.$/
89#relative to CONFIGURE_DIR
90CONFIGURE_ACTION=.$/configure
91CONFIGURE_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)"
92BUILD_DIR=$(CONFIGURE_DIR)$/lib
93BUILD_ACTION=make
94OUT2BIN=$(BUILD_DIR)$/.libs$/libcurl*.dll
95OUT2LIB=$(BUILD_DIR)$/.libs$/libcurl*.dll.a
96.ELSE
97# make use of stlport headerfiles
98EXT_USE_STLPORT=TRUE
99
100.IF "$(CCNUMVER)" > "001399999999"
101EXCFLAGS="/EHa /Zc:wchar_t- /D "_CRT_SECURE_NO_DEPRECATE""
102.ELSE
103EXCFLAGS="/EHsc /YX"
104.ENDIF
105
106.IF "$(CPUNAME)"=="INTEL"
107curl_MACHINE:="X86"
108.ELIF "$(CPUNAME)"=="X86_64"
109curl_MACHINE:="X64"
110.ENDIF
111
112BUILD_DIR=.$/winbuild
113.IF "$(debug)"==""
114BUILD_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
115.ELSE
116BUILD_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
117.ENDIF
118
119.IF "$(CPUNAME)"=="INTEL"
120OUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-release-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl.dll
121OUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-release-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl.lib
122.ELIF "$(CPUNAME)"=="X86_64"
123OUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-release-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl.dll
124OUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-release-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl.lib
125.ENDIF
126
127.ENDIF
128.ENDIF			# "$(GUI)"=="WNT"
129
130.IF "$(GUI)"=="OS2"
131# make use of stlport headerfiles
132EXT_USE_STLPORT=TRUE
133
134BUILD_DIR=.$/lib
135.IF "$(debug)"==""
136BUILD_ACTION=make -f Makefile.os2
137.ELSE
138BUILD_ACTION=make -f Makefile.os2
139.ENDIF
140
141OUT2BIN=$(BUILD_DIR)$/libcurl.dll
142OUT2LIB=$(BUILD_DIR)$/libcurl.lib
143
144.ENDIF			# "$(GUI)"=="OS2"
145
146OUT2INC= \
147	include$/curl$/easy.h  			\
148	include$/curl$/multi.h  		\
149	include$/curl$/curl.h  			\
150	include$/curl$/curlver.h  		\
151	include$/curl$/typecheck-gcc.h  	\
152	include$/curl$/stdcheaders.h  	\
153	include$/curl$/mprintf.h	    \
154	include$/curl$/system.h			\
155	include$/curl$/urlapi.h
156
157
158# --- Targets ------------------------------------------------------
159
160.INCLUDE : set_ext.mk
161.INCLUDE : target.mk
162.INCLUDE : tg_ext.mk
163