Stuart Henderson writes:

> On 2019/05/14 23:31, Ivan Maidanski wrote:
>> Hello,
>> 
>> Here's a patch to update boehm-gc to v7.6.12 and libatomic_ops to v7.6.10.
>> 
>> gc v7.6.0 was an experimental release not intended for the production code.
>
>
>
> On which arches has this been tested?

I can't download 7.6.12. Was this a typo?

Pasting my diff for 8.0.4 (from
https://marc.info/?l=openbsd-ports&m=155721770419329&w=2). An important
change is the new configure flag `--enable-static=yes'

Removed maintainer request since I don't understand the
platform-dependent parts. Feel free to merge it with what you have if it
helps.

Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/boehm-gc/Makefile,v
retrieving revision 1.70
diff -u -p -u -p -r1.70 Makefile
--- Makefile    30 Dec 2018 17:08:09 -0000      1.70
+++ Makefile    14 May 2019 21:12:26 -0000
@@ -3,50 +3,50 @@
 COMMENT-main=  garbage collection and memory leak detection for C and C++
 COMMENT-atomic=        access to hardware provided atomic memory operations
 
-VERSION=       7.6.0
-LIBAO_VERSION= 7.6.6
+VERSION=       8.0.4
+LIBAO_VERSION= 7.6.10
 
 DISTNAME=      gc-${VERSION}
 
 PKGNAME-atomic=        libatomic_ops-${LIBAO_VERSION}
 PKGNAME-main=  boehm-gc-${VERSION}
-REVISION-main= 2
 
 DISTFILES=     ${DISTNAME}${EXTRACT_SUFX} \
                libatomic_ops-${LIBAO_VERSION}${EXTRACT_SUFX}
 
 MULTI_PACKAGES=        -main -atomic
 
-SHARED_LIBS += gc              4.0     # 1.3
-SHARED_LIBS += gccpp           0.0     # 1.3
-SHARED_LIBS += cord            2.3     # 1.3
-SHARED_LIBS +=  atomic_ops     2.0     # 1.3
-SHARED_LIBS +=  atomic_ops_gpl 2.0     # 1.3
+SHARED_LIBS+=  gc              5.0     # 5.3
+SHARED_LIBS+=  gccpp           0.1     # 5.0
+SHARED_LIBS+=  cord            2.3     # 5.0
+SHARED_LIBS+=  atomic_ops      2.0     # 2.1
+SHARED_LIBS+=  atomic_ops_gpl  2.0     # 2.2
 
 CATEGORIES=    devel
 
 MASTER_SITES=  ${HOMEPAGE}gc_source/
 
-HOMEPAGE=      http://hboehm.info/gc/
+HOMEPAGE=      https://hboehm.info/gc/
 
 # currently works only on most ELF archs
 NOT_FOR_ARCHS= m88k
 
 PERMIT_PACKAGE_CDROM=  Yes
 
-WANTLIB-main += m pthread ${COMPILER_LIBCXX}
+WANTLIB-main+= m pthread ${COMPILER_LIBCXX}
 
-COMPILER =             base-clang ports-gcc base-gcc
+COMPILER=              base-clang ports-gcc base-gcc
 
 MAKE_ENV=      CP="cp" \
                INSTALL_DATA="${INSTALL_DATA}" \
                INSTALL_MAN="${INSTALL_MAN}"
 
-CONFIGURE_STYLE= gnu
+CONFIGURE_STYLE=       gnu
 
-CONFIGURE_ARGS= --with-libatomic-ops=no \
+CONFIGURE_ARGS=        --with-libatomic-ops=no \
                --enable-cplusplus \
-               --enable-threads=pthreads
+               --enable-threads=pthreads \
+               --enable-static=yes
 
 post-extract:
        @perl -pi -e "s,/usr/local,${PREFIX},g" ${WRKSRC}/doc/gc.man
Index: distinfo
===================================================================
RCS file: /cvs/ports/devel/boehm-gc/distinfo,v
retrieving revision 1.11
diff -u -p -u -p -r1.11 distinfo
--- distinfo    30 Dec 2018 17:08:09 -0000      1.11
+++ distinfo    14 May 2019 21:12:26 -0000
@@ -1,4 +1,4 @@
-SHA256 (gc-7.6.0.tar.gz) = oUoosRKb6Q5VzW9xEn/8VZThCR1dVBMVKMJM0MA7fZA=
-SHA256 (libatomic_ops-7.6.6.tar.gz) = 
mf6rxfVId/MU20+t6xCfCz4dGlSvtrSz37oecH444HQ=
-SIZE (gc-7.6.0.tar.gz) = 1111751
-SIZE (libatomic_ops-7.6.6.tar.gz) = 498187
+SHA256 (gc-8.0.4.tar.gz) = Q2oN3GexrAsEBbYalnW8qeB1yBVvTevR0G86VsfNKJ0=
+SHA256 (libatomic_ops-7.6.10.tar.gz) = 
WH7fYIF/Vtrx4as4pLPHKbjoRv9ntPYqYVcYNwjwma8=
+SIZE (gc-8.0.4.tar.gz) = 1160528
+SIZE (libatomic_ops-7.6.10.tar.gz) = 503734
Index: patches/patch-bdw-gc_pc_in
===================================================================
RCS file: /cvs/ports/devel/boehm-gc/patches/patch-bdw-gc_pc_in,v
retrieving revision 1.1
diff -u -p -u -p -r1.1 patch-bdw-gc_pc_in
--- patches/patch-bdw-gc_pc_in  9 Dec 2009 20:36:49 -0000       1.1
+++ patches/patch-bdw-gc_pc_in  14 May 2019 21:12:26 -0000
@@ -1,10 +1,11 @@
 $OpenBSD: patch-bdw-gc_pc_in,v 1.1 2009/12/09 20:36:49 sthen Exp $
---- bdw-gc.pc.in.orig  Mon Dec  7 10:57:34 2009
-+++ bdw-gc.pc.in       Mon Dec  7 10:57:46 2009
+Index: bdw-gc.pc.in
+--- bdw-gc.pc.in.orig
++++ bdw-gc.pc.in
 @@ -6,5 +6,5 @@ includedir=@includedir@
  Name: Boehm-Demers-Weiser Conservative Garbage Collector
  Description: A garbage collector for C and C++
  Version: @PACKAGE_VERSION@
--Libs: -L${libdir} -lgc
-+Libs: -L${libdir} -lgc -pthread
+-Libs: -L${libdir} @ATOMIC_OPS_LIBS@ -lgc
++Libs: -L${libdir} @ATOMIC_OPS_LIBS@ -lgc -pthread
  Cflags: -I${includedir}
Index: patches/patch-include_gc_config_macros_h
===================================================================
RCS file: /cvs/ports/devel/boehm-gc/patches/patch-include_gc_config_macros_h,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-include_gc_config_macros_h
--- patches/patch-include_gc_config_macros_h    9 Feb 2014 06:01:54 -0000       
1.3
+++ patches/patch-include_gc_config_macros_h    14 May 2019 21:12:26 -0000
@@ -1,21 +1,23 @@
 $OpenBSD: patch-include_gc_config_macros_h,v 1.3 2014/02/09 06:01:54 shadchin 
Exp $
---- include/gc_config_macros.h.orig    Sat Jan 18 23:56:01 2014
-+++ include/gc_config_macros.h Sat Jan 18 23:54:59 2014
-@@ -87,14 +87,14 @@
- # if defined(__mips) && !defined(__linux__)
- #   define GC_IRIX_THREADS
+Index: include/gc_config_macros.h
+--- include/gc_config_macros.h.orig
++++ include/gc_config_macros.h
+@@ -81,15 +81,15 @@
+ #   define GC_THREADS
  # endif
--# if defined(__sparc) && !defined(__linux__) \
+ #elif defined(GC_THREADS)
+-# if defined(__linux__)
 +# if defined(__OpenBSD__)
 +#   define GC_OPENBSD_THREADS
-+# elif defined(__sparc) && !defined(__linux__) \
-      || defined(sun) && (defined(i386) || defined(__i386__) \
-                          || defined(__amd64__))
- #   define GC_SOLARIS_THREADS
- # elif defined(__APPLE__) && defined(__MACH__)
- #   define GC_DARWIN_THREADS
++# elif defined(__linux__)
+ #   define GC_LINUX_THREADS
+ # elif defined(_PA_RISC1_1) || defined(_PA_RISC2_0) || defined(hppa) \
+        || defined(__HPPA) || (defined(__ia64) && defined(_HPUX_SOURCE))
+ #   define GC_HPUX_THREADS
+ # elif defined(__HAIKU__)
+ #   define GC_HAIKU_THREADS
 -# elif defined(__OpenBSD__)
 -#   define GC_OPENBSD_THREADS
- # elif !defined(GC_LINUX_THREADS) && !defined(GC_HPUX_THREADS) \
-        && !defined(GC_OSF1_THREADS) && !defined(GC_IRIX_THREADS)
-     /* FIXME: Should we really need for FreeBSD and NetBSD to check     */
+ # elif defined(__DragonFly__) || defined(__FreeBSD_kernel__) \
+        || (defined(__FreeBSD__) && !defined(SN_TARGET_ORBIS))
+ #   define GC_FREEBSD_THREADS
Index: patches/patch-include_private_gcconfig_h
===================================================================
RCS file: /cvs/ports/devel/boehm-gc/patches/patch-include_private_gcconfig_h,v
retrieving revision 1.22
diff -u -p -u -p -r1.22 patch-include_private_gcconfig_h
--- patches/patch-include_private_gcconfig_h    15 Apr 2017 14:02:46 -0000      
1.22
+++ patches/patch-include_private_gcconfig_h    14 May 2019 21:12:26 -0000
@@ -1,22 +1,22 @@
 $OpenBSD: patch-include_private_gcconfig_h,v 1.22 2017/04/15 14:02:46 naddy 
Exp $
 
 - All OpenBSD mips platforms are 64-bit, so correct the wordsize and alignment
-- use __data_start instead of _fdata on OpenBSD/mips64
 - add support for OpenBSD/aarch64
 
---- include/private/gcconfig.h.orig    Tue Aug  2 21:36:14 2016
-+++ include/private/gcconfig.h Fri Apr 14 17:44:40 2017
-@@ -102,7 +102,8 @@
- # endif
+Index: include/private/gcconfig.h
+--- include/private/gcconfig.h.orig
++++ include/private/gcconfig.h
+@@ -160,7 +160,8 @@ EXTERN_C_BEGIN
  # if defined(__aarch64__)
  #    define AARCH64
--#    if !defined(LINUX) && !defined(DARWIN) && !defined(FREEBSD)
-+#    if !defined(LINUX) && !defined(DARWIN) && !defined(FREEBSD) \
-+      && !defined(OPENBSD)
+ #    if !defined(LINUX) && !defined(DARWIN) && !defined(FREEBSD) \
+-        && !defined(NETBSD) && !defined(NN_BUILD_TARGET_PLATFORM_NX)
++        && !defined(NETBSD) && !defined(OPENBSD) \
++      && !defined(NN_BUILD_TARGET_PLATFORM_NX)
  #      define NOSYS
  #      define mach_type_known
  #    endif
-@@ -137,6 +138,10 @@
+@@ -196,6 +197,10 @@ EXTERN_C_BEGIN
  #    define ARM32
  #    define mach_type_known
  # endif
@@ -27,26 +27,17 @@ $OpenBSD: patch-include_private_gcconfig
  # if defined(OPENBSD) && defined(__sh__)
  #    define SH
  #    define mach_type_known
-@@ -1712,14 +1717,15 @@
- #  endif
- #  ifdef OPENBSD
- #    define OS_TYPE "OPENBSD"
--#    define ALIGNMENT 4
-+#    define CPP_WORDSZ 64
-+#    define ALIGNMENT 8
+@@ -1076,7 +1081,8 @@ EXTERN_C_BEGIN
+ #   endif
+ #   ifdef OPENBSD
+ #     define OS_TYPE "OPENBSD"
+-#     define ALIGNMENT 4
++#     define CPP_WORDSZ 64
++#     define ALIGNMENT 8
  #     ifndef GC_OPENBSD_THREADS
- #      include <sys/param.h>
- #      include <uvm/uvm_extern.h>
- #      define STACKBOTTOM ((ptr_t)USRSTACK)
- #    endif
--     extern int _fdata[];
--#    define DATASTART ((ptr_t)_fdata)
-+     extern int __data_start[];
-+#    define DATASTART ((ptr_t)__data_start)
-      extern int _end[];
- #    define DATAEND ((ptr_t)(&_end))
- #    define DYNAMIC_LOADING
-@@ -2165,6 +2171,19 @@
+         EXTERN_C_END
+ #       include <sys/param.h>
+@@ -2328,6 +2334,19 @@ EXTERN_C_BEGIN
        extern char etext[];
  #     define DATASTART GC_FreeBSDGetDataStart(0x1000, (ptr_t)etext)
  #     define DATASTART_USES_BSDGETDATASTART
@@ -64,5 +55,5 @@ $OpenBSD: patch-include_private_gcconfig
 +#     define DATAEND ((ptr_t)(&_end))
 +#     define DYNAMIC_LOADING
  #   endif
- #   ifdef NOSYS
-       /* __data_start is usually defined in the target linker script.   */
+ #   ifdef NETBSD
+ #     define OS_TYPE "NETBSD"
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/devel/boehm-gc/pkg/PLIST-main,v
retrieving revision 1.5
diff -u -p -u -p -r1.5 PLIST-main
--- pkg/PLIST-main      12 Nov 2016 10:33:04 -0000      1.5
+++ pkg/PLIST-main      14 May 2019 21:12:26 -0000
@@ -20,7 +20,6 @@ include/gc/gc_typed.h
 include/gc/gc_version.h
 include/gc/javaxfc.h
 include/gc/leak_detector.h
-include/gc/weakpointer.h
 include/gc_cpp.h
 lib/libcord.a
 lib/libcord.la
@@ -33,38 +32,37 @@ lib/libgccpp.la
 @lib lib/libgccpp.so.${LIBgccpp_VERSION}
 lib/pkgconfig/bdw-gc.pc
 @man man/man3/gc.3
-share/gc/
-share/gc/AUTHORS
-share/gc/README.DGUX386
-share/gc/README.Mac
-share/gc/README.OS2
-share/gc/README.amiga
-share/gc/README.arm.cross
-share/gc/README.autoconf
-share/gc/README.cmake
-share/gc/README.cords
-share/gc/README.darwin
-share/gc/README.environment
-share/gc/README.ews4800
-share/gc/README.hp
-share/gc/README.linux
-share/gc/README.macros
-share/gc/README.md
-share/gc/README.rs6000
-share/gc/README.sgi
-share/gc/README.solaris2
-share/gc/README.symbian
-share/gc/README.uts
-share/gc/README.win32
-share/gc/README.win64
-share/gc/debugging.html
-share/gc/finalization.html
-@comment share/gc/gc.man
-share/gc/gcdescr.html
-share/gc/gcinterface.html
-share/gc/leak.html
-share/gc/overview.html
-share/gc/porting.html
-share/gc/scale.html
-share/gc/simple_example.html
-share/gc/tree.html
+share/doc/gc/
+share/doc/gc/AUTHORS
+share/doc/gc/README.DGUX386
+share/doc/gc/README.Mac
+share/doc/gc/README.OS2
+share/doc/gc/README.amiga
+share/doc/gc/README.arm.cross
+share/doc/gc/README.autoconf
+share/doc/gc/README.cmake
+share/doc/gc/README.cords
+share/doc/gc/README.darwin
+share/doc/gc/README.environment
+share/doc/gc/README.ews4800
+share/doc/gc/README.hp
+share/doc/gc/README.linux
+share/doc/gc/README.macros
+share/doc/gc/README.md
+share/doc/gc/README.rs6000
+share/doc/gc/README.sgi
+share/doc/gc/README.solaris2
+share/doc/gc/README.symbian
+share/doc/gc/README.uts
+share/doc/gc/README.win32
+share/doc/gc/README.win64
+share/doc/gc/debugging.md
+share/doc/gc/finalization.md
+share/doc/gc/gcdescr.md
+share/doc/gc/gcinterface.md
+share/doc/gc/leak.md
+share/doc/gc/overview.md
+share/doc/gc/porting.md
+share/doc/gc/scale.md
+share/doc/gc/simple_example.md
+share/doc/gc/tree.md


Reply via email to