Bug 188320

Summary: devel/boehm-gc: update to 7.4
Product: Ports & Packages Reporter: Oleksii <oleksii.tsai>
Component: Individual Port(s)Assignee: Dmitry Marakasov <amdmi3>
Status: Closed Overcome By Events    
Severity: Affects Only Me CC: 1wkmmr, cjpm, oleksii.tsai
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.diff
none
patch.txt none

Description Oleksii 2014-04-06 18:40:01 UTC
Provided patch updates the port to the latest stable release 7.4

Fix: Patch is in the attachment.

Patch attached with submission follows:
How-To-Repeat: # cd /usr/ports/devel/boehm-gc && make
# cd /usr/ports/devel/boehm-gc-redirect && make
# cd /usr/ports/devel/boehm-gc-threaded && make
Comment 1 Dmitry Marakasov freebsd_committer freebsd_triage 2014-04-23 16:59:34 UTC
Responsible Changed
From-To: freebsd-ports-bugs->amdmi3

I'll take it.
Comment 2 Dmitry Marakasov 2014-04-23 18:50:18 UTC
* Oleksii Tsai (oleksii.tsai@googlemail.com) wrote:
> 
> >Number:         188320
> >Category:       ports
> >Synopsis:       [devel/boehm-gc] update to 7.4
> >Confidential:   no
> >Severity:       non-critical
> >Priority:       low
> >Responsible:    freebsd-ports-bugs
> >State:          open
> >Quarter:        
> >Keywords:       
> >Date-Required:
> >Class:          change-request
> >Submitter-Id:   current-users
> >Arrival-Date:   Sun Apr 06 17:40:01 UTC 2014
> >Closed-Date:
> >Last-Modified:
> >Originator:     Oleksii Tsai
> >Release:        FreeBSD 10
> >Organization:
> >Environment:
> FreeBSD 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260975: Mon Jan 20 23:05:19 PST 2014 user@nb:/usr/obj/usr/src/sys/CUSTOM  amd64
> >Description:
> Provided patch updates the port to the latest stable release 7.4
> >How-To-Repeat:
> # cd /usr/ports/devel/boehm-gc && make
> # cd /usr/ports/devel/boehm-gc-redirect && make
> # cd /usr/ports/devel/boehm-gc-threaded && make
> >Fix:
> Patch is in the attachment.
> 
> > 
> Index: Makefile
> ===================================================================
> --- Makefile	(revision 350374)
> +++ Makefile	(working copy)
> @@ -2,7 +2,7 @@
>  # $FreeBSD$
>  
>  PORTNAME=	gc
> -PORTVERSION=	7.2e
> +PORTVERSION=	7.4.0
>  PORTREVISION?=	0
>  CATEGORIES=	devel
>  MASTER_SITES=	http://www.hboehm.info/gc/gc_source/
> @@ -16,7 +16,7 @@
>  
>  LICENSE=	BDWGC
>  LICENSE_NAME=	Boehm-Demers-Weiser Garbage Collector License
> -LICENSE_FILE=	${WRKSRC}/doc/README
> +LICENSE_FILE=	${WRKSRC}/README.QUICK
>  LICENSE_PERMS=	dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
>  
>  GNU_CONFIGURE=	yes
> @@ -25,6 +25,7 @@
>  CONFIGURE_ARGS=	--enable-cplusplus --disable-static
>  MAKE_JOBS_UNSAFE=	yes
>  
> +BUILD_DEPENDS+=	libatomic_ops:${PORTSDIR}/devel/libatomic_ops
>  WRKSRC=		${WRKDIR}/${DISTNAME:C/[a-z]$//}
>  
>  OPTIONS_DEFINE=	DEBUG
> Index: distinfo
> ===================================================================
> --- distinfo	(revision 350374)
> +++ distinfo	(working copy)
> @@ -1,2 +1,2 @@
> -SHA256 (gc-7.2e.tar.gz) = 09315b48a82d600371207691126ad058c04677281ac318d86fa84c98c3c9af4b
> -SIZE (gc-7.2e.tar.gz) = 1291186
> +SHA256 (gc-7.4.0.tar.gz) = 61f8fc6991f8cb003a0d3c7d251c5b9a76093615ef793e0c588a4661e0b5e283
> +SIZE (gc-7.4.0.tar.gz) = 1060884
> Index: pkg-plist
> ===================================================================
> --- pkg-plist	(revision 350374)
> +++ pkg-plist	(working copy)
> @@ -2,10 +2,10 @@
>  include/gc/cord.h
>  include/gc/gc.h
>  include/gc/gc_allocator.h
> -include/gc/gc_amiga_redirects.h
>  include/gc/gc_backptr.h
>  include/gc/gc_config_macros.h
>  include/gc/gc_cpp.h
> +include/gc/gc_disclaim.h
>  include/gc/gc_gcj.h
>  include/gc/gc_inline.h
>  include/gc/gc_mark.h
> @@ -13,8 +13,8 @@
>  include/gc/gc_tiny_fl.h
>  include/gc/gc_typed.h
>  include/gc/gc_version.h
> +include/gc/javaxfc.h
>  include/gc/leak_detector.h
> -include/gc/new_gc_alloc.h
>  include/gc/weakpointer.h
>  include/gc_cpp.h
>  lib/libcord.so
> 
> 
> >Release-Note:
> >Audit-Trail:
> >Unformatted:
> _______________________________________________
> freebsd-ports-bugs@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-ports-bugs
> To unsubscribe, send any mail to "freebsd-ports-bugs-unsubscribe@freebsd.org"

1. This needs USES+=	pkgconfig, instead libatomic_ops detection will
   fail
2. Some dependent ports fail to build with 7.4.0.
   Namely, graphics/inkscape
   
--- configure
checking for GC_init in -lgc... yes
checking libgc version 6.4+... no
configure: error: libgc (the Boehm Conservative Collector) 6.4+, is
needed to compile inkscape --
http://www.hpl.hp.com/personal/Hans_Boehm/gc
--- config.log
configure:8970: c++ -o conftest -O2 -pipe -march=nocona -fno-strict-aliasing -Werror=format-security -DG_DISABLE_SINGLE_INCLUDES -Wall -Wformat -Wformat-security -W -D_FORTIFY_SOURCE=2 -I/usr/local/include -Wno-mismatched-tags -Wl,-z,relro  -L/usr/local/lib conft
est.cpp -lgc   >&5
/tmp/conftest-os4GEB.o: In function `main':
conftest.cpp:(.text+0x8): undefined reference to `GC_version'
c++: error: linker command failed with exit code 1 (use -v to see invocation)
---
   
   and lang/ecl:

---
if [ -f CROSS-COMPILER ]; then \
        touch ecl_min; \
else \  
        cc -L/usr/local/lib -pthread -Wl,--rpath,/usr/local/lib -L/usr/local/lib -o ecl_min cinit.o c/all_symbols.o -L./ libeclmin.a -leclatomic  -lgmp -lgc-threaded -lffi -pthread   -lm ;\
fi
libeclmin.a(cosh.o): In function `ecl_cosh_long_float':
numbers/cosh.o.c:(.text+0x151): warning: coshl has lower than advertised precision
libeclmin.a(sinh.o): In function `ecl_sinh_long_float':
numbers/sinh.o.c:(.text+0x151): warning: sinhl has lower than advertised precision
libeclmin.a(tanh.o): In function `ecl_tanh_long_float':
numbers/tanh.o.c:(.text+0x151): warning: tanhl has lower than advertised precision
libeclmin.a(alloc_2.o): In function `init_alloc':
alloc_2.o.c:(.text+0x614): undefined reference to `GC_start_call_back'
libeclmin.a(alloc_2.o): In function `si_gc_stats':
alloc_2.o.c:(.text+0xcfb): undefined reference to `GC_print_stats'
alloc_2.o.c:(.text+0xdf6): undefined reference to `GC_print_stats'
alloc_2.o.c:(.text+0xe30): undefined reference to `GC_print_stats'
---

maybe more, haven't checked them all. Probably an exp-run is needed.

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3@amdmi3.ru  ..:  jabber: amdmi3@jabber.ru    http://www.amdmi3.ru
Comment 3 Dmitry Marakasov freebsd_committer freebsd_triage 2014-04-23 18:50:27 UTC
State Changed
From-To: open->feedback

Ask for submitter fix.
Comment 4 Mamoru IWAKI 2014-07-09 17:27:06 UTC
The latest version of inkscape 0.48.5 have fixed the compilation failure. 
Please check the following site: 

   http://bazaar.launchpad.net/~inkscape.dev/inkscape/RELEASE_0_48_BRANCH/revision/10039

and the relevant description in ChangLog: 

   2014-01-13  ~suv  <suv-sf@users.sourceforge.net>

           Backport fix for bug #1265072 (Inkscape 0.48.4 fails to compile with boehm-gc 7.4.0+)


It looks better to move graphics/inkscape to the lateset one.
Comment 5 Mamoru IWAKI 2014-07-09 18:06:05 UTC
How about the following list  from NetBSD's pkgsrc: 

   http://pkgsrc.se/files.php?messageId=20140421132555.1CF7896@cvs.netbsd.org

It looks useful to check which ports should be tweaked for the new boehm-gc.
Comment 6 oleksii.tsai 2014-07-12 06:00:48 UTC
Looks like the port was updated in this revision:

http://svnweb.freebsd.org/ports/head/devel/boehm-gc/Makefile?revision=361320&view=markup
Comment 7 Carlos J Puga Medina 2014-08-05 14:06:24 UTC
devel/boehm-gc was updated to 7.4.2. So this bug can be closed.