Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Oct 2013 14:14:58 +0200 (CEST)
From:      Oliver Fromme <oliver.fromme@secnetix.de>
To:        FreeBSD-gnats-submit@freebsd.org
Cc:        Oliver Fromme <olli@secnetix.de>
Subject:   ports/183156: [patch] www/w3m: fix to work with updated boehm-gc port
Message-ID:  <201310211214.r9LCEw8d061786@grabthar.secnetix.de>
Resent-Message-ID: <201310211220.r9LCK1rj040089@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         183156
>Category:       ports
>Synopsis:       [patch] www/w3m: fix to work with updated boehm-gc port
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 21 12:20:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Oliver Fromme
>Release:        FreeBSD 9.1-STABLE-20130621 i386
>Organization:
secnetix GmbH & Co. KG
		http://www.secnetix.de/bsd
>Environment:
System: FreeBSD grabthar.secnetix.de 9.1-STABLE-20130621 FreeBSD 9.1-STABLE-20130621 #0: Fri Jun 21 18:42:21 CEST 2013 olli@grabthar.secnetix.de:/usr/obj/usr/src/sys/GRABTHAR i386

>Description:

With the recend update of devel/boehm-gc, www/w3m does not
compile anymore.  The reason is that the API of boehm-gc
has changed slightly:

Previously, the GC_set_warn_proc() function returned the old
value.  Now it doesn't do that anymore, instead it returns
void, and you have to use the new GC_get_warn_proc() function
to retrieve the old value.

This API change breaks w3m.

>How-To-Repeat:

Make sure you have the updated version of devel/boehm-gc
(7.2d), then try to build w3m.  You'll get this error:

cc  -I. -I. -O2 -pipe -march=athlon-mp -fno-strict-aliasing -I./libwc  -I/usr/include/openssl -I/usr/local/include -I/usr/local/include -DHAVE_CONFIG_H -DAUXBIN_DIR=\"/usr/local/libexec/w3m\"  -DCGIBIN_DIR=\"/usr/local/libexec/w3m/cgi-bin\" -DHELP_DIR=\"/usr/local/share/w3m\"  -DETC_DIR=\"/usr/local/etc\" -DCONF_DIR=\"/usr/local/etc/w3m\"  -DRC_DIR=\"~/.w3m\"  -DLOCALEDIR=\"/usr/local/share/locale\" -c main.c
main.c: In function 'main':
main.c:836: error: void value not ignored as it ought to be

The patch below fixes that.

>Fix:

--- main.c.orig	2011-01-04 10:42:19.000000000 +0100
+++ main.c	2013-10-21 13:43:11.000000000 +0200
@@ -833,7 +833,8 @@
     mySignal(SIGPIPE, SigPipe);
 #endif
 
-    orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc);
+    orig_GC_warn_proc = GC_get_warn_proc();
+    GC_set_warn_proc(wrap_GC_warn_proc);
     err_msg = Strnew();
     if (load_argc == 0) {
 	/* no URL specified */
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310211214.r9LCEw8d061786>