blob: d396ae4820dfe2bc31990916b37350c44148ad2d [file] [log] [blame]
#**************************************************************
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
#**************************************************************
PRJ=.
PRJNAME=so_curl
TARGET=so_curl
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
.IF "$(SYSTEM_CURL)" == "YES"
all:
@echo "An already available installation of curl should exist on your system."
@echo "Therefore the version provided here does not need to be built in addition."
.ENDIF
# --- Files --------------------------------------------------------
TARFILE_NAME=curl-8.7.1
TARFILE_MD5=92f7a11836678b725e2cb59fef10c273
PATCH_FILES=curl-wnt.patch
#ADDITIONAL_FILES= lib$/config-os2.h lib$/Makefile.os2
.IF "$(GUI)"=="UNX"
.IF "$(SYSBASE)"!=""
curl_CFLAGS+=-I$(SYSBASE)$/usr$/include
curl_LDFLAGS+=-L$(SYSBASE)$/usr$/lib
.ENDIF # "$(SYSBASE)"!=""
.IF "$(OS)$(CPU)"=="SOLARISU"
curl_CFLAGS+:=$(ARCH_FLAGS)
curl_LDFLAGS+:=$(ARCH_FLAGS)
.ENDIF
.IF "$(SYSTEM_OPENSSL)"=="YES"
ssl_param=--with-ssl
.ELSE
ssl_param=--with-ssl=$(OUTDIR)
curl_CFLAGS+=-I$(SOLARINCDIR)$/external
curl_LDFLAGS+=-L$(SOLARLIBDIR) -Wl,-z,origin -Wl,-rpath,\\\$$\$$ORIGIN
PATCH_FILES+= curl-bundled_openssl.patch
.ENDIF
CONFIGURE_DIR=.$/
#relative to CONFIGURE_DIR
CONFIGURE_ACTION=.$/configure
CONFIGURE_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)"
BUILD_DIR=$(CONFIGURE_DIR)$/lib
BUILD_ACTION=$(GNUMAKE)
BUILD_FLAGS+= -j$(EXTMAXPROCESS)
OUT2LIB=$(BUILD_DIR)$/.libs$/libcurl$(DLLPOST).4
.ENDIF # "$(GUI)"=="UNX"
.IF "$(GUI)"=="WNT"
.IF "$(COM)"=="GCC"
curl_CC=$(CC) -mthreads
.IF "$(MINGW_SHARED_GCCLIB)"=="YES"
curl_CC+=-shared-libgcc
.ENDIF
curl_LIBS=-lws2_32 -lwinmm
.IF "$(MINGW_SHARED_GXXLIB)"=="YES"
curl_LIBS+=$(MINGW_SHARED_LIBSTDCPP)
.ENDIF
CONFIGURE_DIR=.$/
#relative to CONFIGURE_DIR
CONFIGURE_ACTION=.$/configure
CONFIGURE_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)"
BUILD_DIR=$(CONFIGURE_DIR)$/lib
BUILD_ACTION=make
OUT2BIN=$(BUILD_DIR)$/.libs$/libcurl*.dll
OUT2LIB=$(BUILD_DIR)$/.libs$/libcurl*.dll.a
.ELSE
# make use of stlport headerfiles
EXT_USE_STLPORT=TRUE
.IF "$(CCNUMVER)" > "001399999999"
EXCFLAGS="/EHa /Zc:wchar_t- /D "_CRT_SECURE_NO_DEPRECATE""
.ELSE
EXCFLAGS="/EHsc /YX"
.ENDIF
.IF "$(CPUNAME)"=="INTEL"
curl_MACHINE:="X86"
.ELIF "$(CPUNAME)"=="X86_64"
curl_MACHINE:="X64"
.ENDIF
BUILD_DIR=.$/winbuild
.IF "$(debug)"==""
BUILD_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
.ELSE
BUILD_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
.ENDIF
.IF "$(CPUNAME)"=="INTEL"
.IF "$(debug)"==""
OUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-release-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl.dll
OUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-release-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl.lib
.ELSE
OUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-debug-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl_debug.dll
OUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X86-debug-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl_debug.lib
.ENDIF
.ELIF "$(CPUNAME)"=="X86_64"
.IF "$(debug)"==""
OUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-release-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl.dll
OUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-release-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl.lib
.ELSE
OUT2BIN=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-debug-dll-ssl-dll-zlib-dll-ipv6-sspi/bin/libcurl_debug.dll
OUT2LIB=$(BUILD_DIR)$/../builds/libcurl-vc9-X64-debug-dll-ssl-dll-zlib-dll-ipv6-sspi/lib/libcurl_debug.lib
.ENDIF
.ENDIF
.ENDIF
.ENDIF # "$(GUI)"=="WNT"
.IF "$(GUI)"=="OS2"
# make use of stlport headerfiles
EXT_USE_STLPORT=TRUE
BUILD_DIR=.$/lib
.IF "$(debug)"==""
BUILD_ACTION=make -f Makefile.os2
.ELSE
BUILD_ACTION=make -f Makefile.os2
.ENDIF
OUT2BIN=$(BUILD_DIR)$/libcurl.dll
OUT2LIB=$(BUILD_DIR)$/libcurl.lib
.ENDIF # "$(GUI)"=="OS2"
OUT2INC= \
include$/curl$/curl.h \
include$/curl$/curlver.h \
include$/curl$/easy.h \
include$/curl$/header.h \
include$/curl$/mprintf.h \
include$/curl$/multi.h \
include$/curl$/options.h \
include$/curl$/stdcheaders.h \
include$/curl$/system.h \
include$/curl$/typecheck-gcc.h \
include$/curl$/urlapi.h \
include$/curl$/websockets.h
# --- Targets ------------------------------------------------------
.INCLUDE : set_ext.mk
.INCLUDE : target.mk
.INCLUDE : tg_ext.mk