Updating curl

Kubilay Kocak koobs.freebsd at gmail.com
Sun Mar 24 12:50:42 UTC 2013


On 24/03/2013 10:04 PM, Jerry wrote:
> On Sat, 23 Mar 2013 22:08:16 -0400
> Robert Huff articulated:
> 
>>>  The port version of curl is "7.24.0_2". On February
>>>  6th. curl-7.29.0 was released. Is there any possibility that this
>>>  port might be updated.
>>
>> 	Of course.
>> 	However: my system alone has around two dozen ports that list 
>>
>> curl as a dependency.  No update will happen without sufficient
>> testing to make sure there's no breakage.
>> 	Volunteers for testing should probably contact the maintainer.
> 
> That is an excuse, not a reason. If the maintainer, who has not bothered
> to reply, were to issue an experimental or devel port of curl, I
> would be happy to try it. The fact that curl is a dependent of
> numerous ports is also irrelevant. There are ports that are in far
> greater demand on the system that get updated in less than a year, and
> multiple versions, time.
> 
> There have been several versions released since the one in the port's
> system and over a years time. The KDE and GNOME team often state why
> they are not updating a particular port and what to expect in its
> regards. If the curl maintainer either has lost interest in maintaining
> the port or has a specific reason for not keeping it relatively
> current, then I think he|she|they have an obligation to at least make
> that know to the FreeBSD community. I can totally understand a
> maintainer walking away from a port, it happens here all the time.
> However, if the maintainer no longer desires to keep the port current,
> it would behoove them to state so, so that another individual who might
> have the knowledge and time to do so can take over maintainer ship.
> 
> I am not upset at the maintainer, I just want to know what the future
> of the curl port is. I use it extensively. Your statement regarding
> "testing" is a non-starter Robert. Other versions of this port were
> released sans any formal testing that I am aware of. Plus, the
> maintainer, again to the best of my knowledge, has not offered any of
> the versions of curl issued since the port's version, for public
> testing. It appears to me that the port is abandoned.
> 
> We have ports like "Postfix" that are updated in virtual real time and
> then we have ports that seem to orphaned. It is too bad we cannot find
> a nice happy medium.
> 

To get this going, find attached a <emphasis>work in progress</emphasis>
patch updating curl to 7.29.0, with the following notes:

1) I've moved patch-configure to DONT-patch-configure

Note A: You may assist by merging the patch against 7.29.0
Note B: This change means the port doesn't honour debug/opt flags

2) OPTIONS need to be converted to OPTIONSng

Note: You can assist by merging the changes from this PR:
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/172325

3) It fails `make test` (from port dir) with regressions:

-----------
test 2030...OK (782 out of 784, remaining: 00:00)
test 2031...OK (783 out of 784, remaining: 00:00)
test 2032...OK (784 out of 784, remaining: 00:00)
TESTDONE: 624 tests out of 626 reported OK: 99%
TESTFAIL: These test cases failed: 591 1316
TESTDONE: 787 tests were considered during 291 seconds.
*** [quiet-test] Error code 1
-----------

You may assist by testing and identifying the causes and providing
patches for changes

4) This will require an exp-run when its considered 'ready'

5) I ran the port test with default OPTIONS

A final comment that I was inspired to do this because of my desire to
improve FreeBSD and the experience of our (my) community, and the
satisfaction I get from contributing.

A commitment to reporting issues is appreciated (so thank you), and is
more than what most do. It is also however, a minimum expectation.

Perhaps a more mindful, positive approach to encouraging action from
others will garner a higher incidence of favourable responses in the future.

I hope my work helps.

--
Ta,

Koobs



-------------- next part --------------
Index: Makefile
===================================================================
--- Makefile	(revision 315110)
+++ Makefile	(working copy)
@@ -1,13 +1,8 @@
-# New ports collection makefile for:	curl
-# Date created:		12 December 1998
-# Whom:			Neil Blakey-Milner <nbm at rucus.ru.ac.za>
-#
+# Created by: Neil Blakey-Milner <nbm at rucus.ru.ac.za>
 # $FreeBSD$
-#
 
 PORTNAME=	curl
-PORTVERSION=	7.24.0
-PORTREVISION=	2
+PORTVERSION=	7.29.0
 CATEGORIES=	ftp ipv6 www
 MASTER_SITES=	http://curl.haxx.se/download/ \
 		LOCAL/sunpoet
@@ -52,7 +47,7 @@
 		MANUAL README.netware README.win32 RESOURCES SSLCERTS THANKS \
 		TODO TheArtOfHttpScripting VERSIONS curl-config.html \
 		curl-config.pdf curl.html curl.pdf index.html
-MAN1=		curl.1 curl-config.1
+MAN1=		curl.1 curl-config.1 mk-ca-bundle.1
 MAN3=		curl_easy_cleanup.3 curl_easy_duphandle.3 curl_easy_escape.3 \
 		curl_easy_getinfo.3 curl_easy_init.3 curl_easy_pause.3 \
 		curl_easy_perform.3 curl_easy_recv.3 curl_easy_reset.3 \
@@ -65,7 +60,7 @@
 		curl_multi_info_read.3 curl_multi_init.3 curl_multi_perform.3 \
 		curl_multi_remove_handle.3 curl_multi_setopt.3 \
 		curl_multi_socket.3 curl_multi_socket_action.3 \
-	       	curl_multi_strerror.3 curl_multi_timeout.3 \
+	       	curl_multi_strerror.3 curl_multi_timeout.3 curl_multi_wait.3 \
 		curl_share_cleanup.3 curl_share_init.3 curl_share_setopt.3 \
 		curl_share_strerror.3 curl_slist_append.3 \
 		curl_slist_free_all.3 curl_strequal.3 curl_unescape.3 \
@@ -74,7 +69,7 @@
 		libcurl-tutorial.3
 PLIST_SUB=	SHLIB_VER="${SHLIB_VER}"
 
-SHLIB_VER=	6
+SHLIB_VER=	7
 .endif
 
 .include <bsd.port.options.mk>
@@ -220,7 +215,7 @@
 .endif
 .if !defined(NOPORTEXAMPLES)
 	${MKDIR} ${EXAMPLESDIR}/
-	cd ${WRKSRC}/docs/examples/ && ${INSTALL_DATA} README Makefile.example makefile* *.c *.cc ${EXAMPLESDIR}/
+	cd ${WRKSRC}/docs/examples/ && ${INSTALL_DATA} README Makefile.example makefile* *.c ${EXAMPLESDIR}/
 .endif
 .endif
 
Index: distinfo
===================================================================
--- distinfo	(revision 315110)
+++ distinfo	(working copy)
@@ -1,2 +1,2 @@
-SHA256 (curl-7.24.0.tar.lzma) = cd683ee8be137ed8a8e97d42fd3cc94f88f63d478b83d4abe38e31b6281e2268
-SIZE (curl-7.24.0.tar.lzma) = 1973811
+SHA256 (curl-7.29.0.tar.lzma) = 4ae953ef144bc6cb7c8c0a054ce80f93ea174318cf9b18a2e2cc3cbf062d9b21
+SIZE (curl-7.29.0.tar.lzma) = 2100412
Index: files/patch-configure
===================================================================
--- files/patch-configure	(revision 315110)
+++ files/patch-configure	(working copy)
@@ -1,109 +0,0 @@
-Description: Tweak the build for a FreeBSD environment.
- Respect user-supplied CFLAGS
- Use the FreeBSD location of pkg-config's library directory.
- Check for librtmp in sensible locations in all cases.
-Forwarded: not-needed
-Author: Peter Pentchev <roam at FreeBSD.org>
-Last-Update: 2010-12-19
-
---- configure.orig	2012-02-26 17:52:21.904908587 +0800
-+++ configure	2012-02-26 17:52:21.929909948 +0800
-@@ -15049,10 +15049,10 @@
-     flags_dbg_all="$flags_dbg_all -gdwarf-2"
-     flags_dbg_all="$flags_dbg_all -gvms"
-     flags_dbg_yes="-g"
--    flags_dbg_off="-g0"
-+    flags_dbg_off=""
-     flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-     flags_opt_yes="-O2"
--    flags_opt_off="-O0"
-+    flags_opt_off=""
-   else
-     { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
- $as_echo "no" >&6; }
-@@ -15892,6 +15892,9 @@
-     tmp_CFLAGS="$CFLAGS"
-     tmp_CPPFLAGS="$CPPFLAGS"
- 
-+# Do not remove the user-supplied debug flags in CFLAGS
-+# PR: 150854
-+if false; then
-     ac_var_stripped=""
-   for word1 in $tmp_CFLAGS; do
-     ac_var_strip_word="no"
-@@ -15922,6 +15925,7 @@
-   done
-     tmp_CPPFLAGS="$ac_var_stripped"
-   squeeze tmp_CPPFLAGS
-+fi
- 
-     #
-     if test "$want_debug" = "yes"; then
-@@ -16139,6 +16143,9 @@
-     #
-     if test "$honor_optimize_option" = "yes"; then
- 
-+# Do not remove the user-supplied optimization flags in CFLAGS
-+# PR: 150854
-+if false; then
-     ac_var_stripped=""
-   for word1 in $tmp_CFLAGS; do
-     ac_var_strip_word="no"
-@@ -16169,6 +16176,7 @@
-   done
-     tmp_CPPFLAGS="$ac_var_stripped"
-   squeeze tmp_CPPFLAGS
-+fi
- 
-       if test "$want_optimize" = "yes"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer enabling options" >&5
-@@ -20137,7 +20145,8 @@
-         PKGTEST="no"
-     PREFIX_OPENSSL=$OPT_SSL
- 
--                OPENSSL_PCDIR="$OPT_SSL/lib/pkgconfig"
-+                # Use the FreeBSD location of the pkg-config libdir
-+                OPENSSL_PCDIR="$LOCALBASE/libdata/pkgconfig"
-     { $as_echo "$as_me:${as_lineno-$LINENO}: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&5
- $as_echo "$as_me: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&6;}
-     if test -f "$OPENSSL_PCDIR/openssl.pc"; then
-@@ -23231,29 +23240,30 @@
-     ;;
-   off)
-         LIB_RTMP="-lrtmp"
-+        LD_RTMP=""
-+        CPP_RTMP=""
-+        DIR_RTMP=""
-     ;;
-   *)
-         PREFIX_RTMP=$OPT_LIBRTMP
-+        LIB_RTMP="-lrtmp"
-+        LD_RTMP=-L${PREFIX_RTMP}/lib$libsuff
-+        CPP_RTMP=-I${PREFIX_RTMP}/include
-+        DIR_RTMP=${PREFIX_RTMP}/lib$libsuff
-     ;;
-   esac
- 
--    if test -n "$PREFIX_RTMP"; then
--    LD_RTMP=-L${PREFIX_RTMP}/lib$libsuff
--    CPP_RTMP=-I${PREFIX_RTMP}/include
--    DIR_RTMP=${PREFIX_RTMP}/lib$libsuff
--  fi
--
-   LDFLAGS="$LDFLAGS $LD_RTMP"
-   CPPFLAGS="$CPPFLAGS $CPP_RTMP"
-   LIBS="$LIBS $LIB_RTMP"
- 
--  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RTMP_Init in -lrtmp" >&5
--$as_echo_n "checking for RTMP_Init in -lrtmp... " >&6; }
-+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RTMP_Init in $LIB_RTMP" >&5
-+$as_echo_n "checking for RTMP_Init in $LIB_RTMP... " >&6; }
- if test "${ac_cv_lib_rtmp_RTMP_Init+set}" = set; then :
-   $as_echo_n "(cached) " >&6
- else
-   ac_check_lib_save_LIBS=$LIBS
--LIBS="-lrtmp  $LIBS"
-+LIBS="$LIBS"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h.  */
- 
Index: pkg-plist
===================================================================
--- pkg-plist	(revision 315110)
+++ pkg-plist	(working copy)
@@ -117,6 +117,8 @@
 %%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_multi_strerror.pdf
 %%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_multi_timeout.html
 %%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_multi_timeout.pdf
+%%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_multi_wait.html
+%%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_multi_wait.pdf
 %%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_share_cleanup.html
 %%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_share_cleanup.pdf
 %%PORTDOCS%%%%DOCSDIR%%/libcurl/curl_share_init.html
@@ -172,12 +174,14 @@
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpget.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpgetinfo.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpgetresp.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpsget.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpupload.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ftpuploadresume.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/getinfo.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/getinmemory.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ghiper.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/hiperfifo.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/href_extractor.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/htmltidy.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/htmltitle.cc
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/http-post.c
@@ -203,6 +207,7 @@
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/rtsp.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/sampleconv.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/sepheaders.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/sftpget.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/sendrecv.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/simple.c
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/simplepost.c


More information about the freebsd-ports mailing list