4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
21 # Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
22 # Copyright (c) 2018, Michal Nowak
23 # Copyright (c) 2022, Niklas Poslovski
26 USE_DEFAULT_TEST_TRANSFORMS
= yes
27 include ..
/..
/..
/make-rules
/shared-macros.mk
30 COMPONENT_VERSION
= 8.11.1
31 COMPONENT_SUMMARY
= The CURL Network Utility and Library
32 COMPONENT_DESCRIPTION
= A command-line tool and library for transforming data with URL syntax
33 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
34 COMPONENT_PROJECT_URL
= https
://curl.haxx.se
35 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.xz
36 # COMPONENT_ARCHIVE_HASH= sha256:f292f6cc051d5bbabf725ef85d432dfeacc8711dd717ea97612ae590643801e5
37 COMPONENT_ARCHIVE_URL
= $(COMPONENT_PROJECT_URL
)/download
/$(COMPONENT_ARCHIVE
)
38 COMPONENT_SIG_URL
= $(COMPONENT_ARCHIVE_URL
).asc
39 COMPONENT_FMRI
= web
/$(COMPONENT_NAME
)
40 COMPONENT_CLASSIFICATION
=System
/Libraries
41 COMPONENT_LICENSE
= CURL
42 COMPONENT_LICENSE_FILE
= COPYING
44 include $(WS_MAKE_RULES
)/common.mk
46 # Community code uses different defs
47 #$(BUILD_DIR_32)/.configured: CPPFLAGS += -D__ILP32=32
48 $(BUILD_DIR_64
)/.configured
: CPPFLAGS
+= -D__LP64
=64
50 CPPFLAGS
+= $(CPP_LARGEFILES
)
51 CPPFLAGS
+= $(CC_PIC_ENABLE
)
52 CPPFLAGS
+= -DNAME_MAX
=256
54 CPPFLAGS
+= -I
/usr
/include/openldap
55 CPPFLAGS
+= $(shell pkg-config
--cflags libidn2
)
56 # GSS MECH's API is in /usr/include/kerberosv5/gssapi/
57 CPPFLAGS
+= $(shell krb5-config
--cflags)
58 LIBS
+= $(shell krb5-config
--libs gssapi
)
60 #GSSAPI_LIBDIR_32= /usr/lib
61 GSSAPI_LIBDIR_64
= /usr
/lib
/$(MACH64
)
64 LDFLAGS
+= $(LD_Z_DEFS
)
66 CONFIGURE_ENV
+= CFLAGS
="-I$(OPENSSL_INCDIR) $(CFLAGS)"
67 CONFIGURE_ENV
+= CPPFLAGS
="-I$(OPENSSL_INCDIR) $(CPPFLAGS) -I/usr/include/openldap"
69 CONFIGURE_OPTIONS
+= LDFLAGS
="-L$(OPENSSL_LIBDIR.$(BITS)) $(LDFLAGS)"
70 CONFIGURE_OPTIONS
+= --disable-dependency-tracking
71 CONFIGURE_OPTIONS
+= --localstatedir
=$(VARDIR
)
72 CONFIGURE_OPTIONS
+= --enable-shared
73 CONFIGURE_OPTIONS
+= --disable-static
74 CONFIGURE_OPTIONS
+= --enable-http
--enable-ftp
75 CONFIGURE_OPTIONS
+= --enable-file
--enable-dict
76 CONFIGURE_OPTIONS
+= --enable-manual
--disable-libgcc
77 CONFIGURE_OPTIONS
+= --enable-rtsp
--enable-proxy
78 CONFIGURE_OPTIONS
+= --enable-telnet
--enable-tftp
--enable-pop3
79 CONFIGURE_OPTIONS
+= --enable-imap
--enable-smtp
80 CONFIGURE_OPTIONS
+= --enable-ipv6
--enable-nonblocking
81 CONFIGURE_OPTIONS
+= --enable-thread
--enable-verbose
82 CONFIGURE_OPTIONS
+= --disable-sspi
--enable-crypto-auth
83 CONFIGURE_OPTIONS
+= --enable-cookies
--disable-hidden-symbols
84 CONFIGURE_OPTIONS
+= --disable-soname-bump
85 CONFIGURE_OPTIONS
+= --enable-ldap
--with-random
=/dev
/urandom
86 CONFIGURE_OPTIONS
+= --enable-ares
87 CONFIGURE_OPTIONS
+= --enable-websockets
88 CONFIGURE_OPTIONS
+= --with-openssl
=$(OPENSSL_PREFIX
)
89 CONFIGURE_OPTIONS
+= --with-ldap-lib
=ldap_r-2.4
90 CONFIGURE_OPTIONS
+= --with-lber-lib
=lber-2.4
91 CONFIGURE_OPTIONS
+= --with-gssapi-includes
=/usr
/include/gssapi
92 CONFIGURE_OPTIONS
+= --with-gssapi-libs
=$(GSSAPI_LIBDIR_
$(BITS
))
93 CONFIGURE_OPTIONS
+= --with-gssapi
=/usr
--without-ca-bundle
94 CONFIGURE_OPTIONS
+= --with-ca-path
=/etc
/openssl
/certs
95 CONFIGURE_OPTIONS
+= --with-zlib
=/usr
--with-libidn
=/usr
96 CONFIGURE_OPTIONS
+= --with-pic
97 CONFIGURE_OPTIONS
+= --with-libssh2
98 CONFIGURE_OPTIONS
+= --without-librtmp
99 CONFIGURE_OPTIONS
+= "curl_disallow_getifaddrs=yes"
101 # Generate configuration scripts form .am-files
102 COMPONENT_PREP_ACTION
= (cd
$(@D
) ; PATH
="$(PATH)" autoreconf
-fi
)
104 ENV
= /usr
/bin
/env
-i
105 COMPONENT_TEST_ENV
+= CC
="$(CC)"
106 COMPONENT_TEST_ENV
+= USER
=`id -un`
107 COMPONENT_TEST_ENV
+= PATH
="$(GCC_ROOT)/bin:$(GNUBIN):$(PATH)"
108 COMPONENT_TEST_ENV
+= CFLAGS
="$(CFLAGS)"
109 COMPONENT_TEST_ENV
+= LC_ALL
=C
110 COMPONENT_TEST_ARGS
+= -k
-i
112 # Only the #'s of passed/failed tests are verified for change
113 # Note that we have many broken tests if valgrind is installed.
114 COMPONENT_TEST_TRANSFORMS
+= \
115 '-e "s/ during [0-9]* seconds.//" ' \
118 # Auto-generated dependencies
119 REQUIRED_PACKAGES
+= $(OPENSSL_PKG
)
120 REQUIRED_PACKAGES
+= compress
/zstd
121 REQUIRED_PACKAGES
+= library
/brotli
122 REQUIRED_PACKAGES
+= library
/libcares
123 REQUIRED_PACKAGES
+= library
/libgsasl
124 REQUIRED_PACKAGES
+= library
/libidn2
125 REQUIRED_PACKAGES
+= library
/libpsl
126 REQUIRED_PACKAGES
+= library
/libssh2
127 REQUIRED_PACKAGES
+= library
/nghttp2
128 REQUIRED_PACKAGES
+= library
/openldap
129 REQUIRED_PACKAGES
+= library
/zlib
130 REQUIRED_PACKAGES
+= shell/ksh93
131 REQUIRED_PACKAGES
+= system
/library
132 REQUIRED_PACKAGES
+= system
/library
/security
/gss