Magellan Linux

Contents of /smage/branches/alx08x-stable/core/curl/curl-8.5.0-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 17679 - (show annotations) (download)
Wed Dec 13 13:04:59 2023 UTC (6 months ago) by niro
File size: 7034 byte(s)
-release branches/alx08x-stable
1 # $Id$
2
3 PNAME="curl"
4 PVER="8.5.0"
5 PBUILD="r1"
6
7 SPLIT_PACKAGES="libcurl curl"
8
9 # 1=enable http2 support via libnghttp2
10 # 0=disable htp2 support
11 HTTP2_SUPPORT=0
12
13 # 1=enable ldap support
14 # 0=disable ldap support
15 LDAP_SUPPORT=0
16
17 # 1=enable lib32 split packages
18 # 0=disable lib32 split packages
19 ENABLE_LIB32_PACKAGES="1"
20
21 # 1=enable dev split packages
22 # 0=disable dev split packages
23 ENABLE_DEV_PACKAGES="1"
24
25 PCAT="net-misc"
26 HOMEPAGE="http://curl.haxx.se/"
27
28 # x86_64 specific dependencies
29 DEPEND_x86_64=">= sys-apps/multiarch-wrapper-1"
30 SPECIAL_VARS="DEPEND_x86_64"
31
32 LIB_DEPEND="$(marchdepend)
33 >= dev-libs/openssl-3.1
34 >= net-dns/libidn2-2.3
35 >= sys-libs/zlib-1.2
36 >= app-arch/zstd-1.5"
37 if [[ ${HTTP2_SUPPORT} = 1 ]]
38 then
39 LIB_DEPEND="${LIB_DEPEND}
40 >= net-libs/libnghttp2-1.58"
41 fi
42 if [[ ${LDAP_SUPPORT} = 1 ]]
43 then
44 LIB_DEPEND="${LIB_DEPEND}
45 >= net-nds/libldap-2.6"
46 fi
47
48 LIB_LIB32_DEPEND="$(marchdepend)
49 >= dev-libs/openssl-lib32-3.1
50 >= net-dns/libidn2-lib32-2.3
51 >= sys-libs/zlib-lib32-1.2
52 >= app-arch/zstd-lib32-1.5"
53 if [[ ${HTTP2_SUPPORT} = 1 ]]
54 then
55 LIB_LIB32_DEPEND="${LIB_LIB32_DEPEND}
56 >= net-libs/libnghttp2-lib32-1.58"
57 fi
58 if [[ ${LDAP_SUPPORT} = 1 ]]
59 then
60 LIB_LIB32_DEPEND="${LIB_LIB32_DEPEND}
61 >= net-nds/libldap-lib32-2.6"
62 fi
63
64 CURL_DEPEND=">= app-crypt/ca-certificates-2023"
65
66 SDEPEND="${LIB_DEPEND}
67 ${CURL_DEPEND}
68 >= dev-libs/openssl-dev-3.1
69 >= net-dns/libidn2-dev-2.3
70 >= sys-libs/zlib-dev-1.2
71 >= app-arch/zstd-dev-1.5"
72
73 if [[ ${ENABLE_LIB32_PACKAGES} = 1 ]]
74 then
75 SDEPEND="${SDEPEND}
76 ${LIB_LIB32_DEPEND}"
77
78 SPLIT_PACKAGES+=" libcurl-lib32"
79 fi
80
81 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
82 then
83 SPLIT_PACKAGES+=" libcurl-dev curl-dev"
84
85 if [[ ${HTTP2_SUPPORT} = 1 ]]
86 then
87 SDEPEND="${SDEPEND}
88 >= net-libs/libnghttp2-dev-1.58"
89 fi
90 if [[ ${LDAP_SUPPORT} = 1 ]]
91 then
92 SDEPEND="${SDEPEND}
93 >= net-nds/openldap-dev-2.6"
94 fi
95 fi
96
97 SRCFILE="${PNAME}-${PVER}.tar.bz2"
98 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
99
100 sminclude multilib mbuild
101 msetfeature "!check" # one test fails with version 7.33.0 - remove me
102
103 SRC_URI=(
104 http://curl.haxx.se/download/${SRCFILE}
105 mirror://${PNAME}/${SRCFILE}
106 )
107
108 UP2DATE="updatecmd ${HOMEPAGE}/download | grep ${PNAME}- | highesttarball"
109
110 split_info_libcurl()
111 {
112 DESCRIPTION="A library for getting files from web servers."
113 DEPEND="${LIB_DEPEND}"
114 PCAT="net-libs"
115 }
116
117 if [[ ${ENABLE_LIB32_PACKAGES} = 1 ]]
118 then
119 split_info_libcurl-lib32()
120 {
121 DESCRIPTION="A library for getting files from web servers - 32bit."
122 DEPEND="== net-libs/libcurl-${PVER}
123 ${LIB_LIB32_DEPEND}"
124 PCAT="net-libs"
125 }
126 fi
127
128 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
129 then
130 split_info_libcurl-dev()
131 {
132 DESCRIPTION="Development files for net-libs/libcurl."
133 DEPEND="== net-libs/libcurl-${PVER}"
134 if [[ ${ENABLE_LIB32_PACKAGES} = 1 ]]
135 then
136 DEPEND="${DEPEND}
137 == net-libs/libcurl-lib32-${PVER}"
138 fi
139 PCAT="net-libs"
140 }
141 fi
142
143 split_info_curl()
144 {
145 DESCRIPTION="curl is a command line tool for transferring files with URL syntax, supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and LDAP."
146 DEPEND="== net-libs/libcurl-${PVER}
147 {CURL_DEPEND}"
148 }
149
150 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
151 then
152 split_info_curl-dev()
153 {
154 DESCRIPTION="Development files for net-misc/curl."
155 DEPEND="== net-libs/libcurl-dev-${PVER}
156 == net-misc/curl-${PVER}"
157 }
158 fi
159
160 src_prepare()
161 {
162 munpack ${SRCFILE} || die
163
164 # fix link issues with as-needed - fixme
165 all-abis 'sed -i "s:LDADD = $(LIBDIR)/libcurl.la:& -lssl -lcrypto:" docs/examples/Makefile.am || die'
166 all-abis 'sed -i "s:@USE_EXPLICIT_LIB_DEPS_FALSE@LDADD = $(LIBDIR)/libcurl.la:& -lssl -lcrypto:" docs/examples/Makefile.in || die'
167 }
168
169 src_compile()
170 {
171 local myconf
172 [[ ${HTTP2_SUPPORT} = 1 ]] && myconf+=" --with-nghttp2" || myconf+=" --without-nghttp2"
173 [[ ${LDAP_SUPPORT} = 1 ]] && myconf+=" --enable-ldap --enable-ldaps" || myconf+=" --disable-ldap --disable-ldaps"
174
175 mconfigure \
176 --with-gnu-ld \
177 --enable-http \
178 --enable-ftp \
179 --enable-gopher \
180 --enable-file \
181 --enable-dict \
182 --enable-telnet \
183 --enable-nonblocking \
184 --with-ssl \
185 --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt \
186 --enable-hidden-symbols \
187 --disable-ldap \
188 --disable-ldaps \
189 ${myconf} \
190 || die
191
192 mmake || die
193 }
194
195 src_install_libcurl()
196 {
197 mmake DESTDIR=${BINDIR} -C lib install || die
198
199 if [[ ${ENABLE_DEV_PACKAGES} != 1 ]]
200 then
201 src_install_libcurl-dev
202 fi
203
204 if [[ ${ENABLE_LIB32_PACKAGES} = 1 ]] && [[ $(MABI=m32 mlibdir) != lib ]]
205 then
206 mdelete -r /usr/$(MABI=m32 mlibdir) || die
207 if [[ ${ENABLE_DEV_PACKAGES} != 1 ]]
208 then
209 mdelete /usr/bin/curl-config-m32 || die
210 fi
211 fi
212 }
213
214 src_install_libcurl-lib32()
215 {
216 mmake DESTDIR=${BINDIR} -C lib install || die
217
218 if [[ ${ENABLE_DEV_PACKAGES} != 1 ]]
219 then
220 mmake DESTDIR=${BINDIR} install-pkgconfigDATA || die
221
222 if [[ ${ARCH} = x86_64 ]]
223 then
224 # 32bit
225 only-m32 mmake DESTDIR=${BINDIR} install-binSCRIPTS || die
226 only-m32 mmove ${BINDIR}/usr/bin/curl-config /usr/bin/curl-config-$(mabi) || die
227 fi
228 fi
229
230 mdelete -r /usr/$(MABI=m64 mlibdir) || die
231 }
232
233 src_install_libcurl-dev()
234 {
235 mmake DESTDIR=${BINDIR} -C docs/libcurl install || die
236 mmake DESTDIR=${BINDIR} -C docs install-man1 || die
237 mmake DESTDIR=${BINDIR} install-pkgconfigDATA || die
238
239 # provided by curl
240 mdelete /usr/share/man/man1/curl.1 || die
241
242 # install and move abi related headers and config-scripts
243 if [[ ${ARCH} = x86_64 ]]
244 then
245 # 32bit
246 only-m32 mmake DESTDIR=${BINDIR} install-binSCRIPTS || die
247 only-m32 mmove ${BINDIR}/usr/bin/curl-config /usr/bin/curl-config-$(mabi) || die
248 # only-m32 mmake DESTDIR=${BINDIR} -C include install || die
249 # only-m32 mmove ${BINDIR}/usr/include/curl/curlbuild.h /usr/include/curl/curlbuild-$(mabi).h || die
250 # 64 bit
251 only-m64 mmake DESTDIR=${BINDIR} install-binSCRIPTS || die
252 only-m64 mmove ${BINDIR}/usr/bin/curl-config /usr/bin/curl-config-$(mabi) || die
253 only-m64 mmake DESTDIR=${BINDIR} -C include install || die
254 # only-m64 mmove ${BINDIR}/usr/include/curl/curlbuild.h /usr/include/curl/curlbuild-$(mabi).h || die
255
256 # # create a wrapper header
257 # cat > ${BINDIR}/usr/include/curl/curlbuild.h << "EOF"
258 #/* curlbuild.h - Stub Header */
259 ##ifndef __STUB__CURLBUILD_H__
260 ##define __STUB__CURLBUILD_H__
261 #
262 ##if defined(__x86_64__) || \
263 # defined(__sparc64__) || \
264 # defined(__arch64__) || \
265 # defined(__powerpc64__) || \
266 # defined (__s390x__)
267 ## include "curlbuild-m64.h"
268 ##else
269 ## include "curlbuild-m32.h"
270 ##endif
271 #
272 ##endif /* __STUB__CURLBUILD_H__ */
273 #EOF
274 mlink multiarch-wrapper /usr/bin/curl-config || die
275 else
276 mmake DESTDIR=${BINDIR} install-binSCRIPTS || die
277 mmake DESTDIR=${BINDIR} -C include install || die
278 fi
279 }
280
281 src_install_curl()
282 {
283 mmake DESTDIR=${BINDIR} -C src install || die
284
285 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
286 then
287 # provided by libcurl-dev
288 mdelete /usr/share/man/man1/curl-config.1 || die
289 # provided by curl-dev
290 mdelete /usr/share/man/man1/curl.1 || die
291 else
292 src_install_curl-dev
293 fi
294 }
295
296 src_install_curl-dev()
297 {
298 mmake DESTDIR=${BINDIR} -C docs install-man1 || die
299
300 # provided by libcurl
301 mdelete /usr/share/man/man1/curl-config.1 || die
302 }