Hi Nam, On amd64 latest snap, a recent w3m package installation segfaults on run:
(gdb) r Starting program: /usr/local/bin/w3m Program received signal SIGSEGV, Segmentation fault. 0x000016d1b18988e7 in GC_mark_from () from /usr/local/lib/libgc.so.4.0 Current language: auto; currently minimal (gdb) bt #0 0x000016d1b18988e7 in GC_mark_from () from /usr/local/lib/libgc.so.4.0 #1 0x000016d1b189847c in GC_mark_some () from /usr/local/lib/libgc.so.4.0 #2 0x000016d1b188d67d in GC_stopped_mark () from /usr/local/lib/libgc.so.4.0 #3 0x000016d1b188d520 in GC_try_to_collect_inner () from /usr/local/lib/libgc.so.4.0 #4 0x000016d1b189ce6e in GC_init () from /usr/local/lib/libgc.so.4.0 #5 0x000016cf2d1384ad in ?? () from /usr/local/bin/w3m #6 0x000016cf2d138148 in ?? () from /usr/local/bin/w3m #7 0x0000000000000000 in ?? () (gdb) q Please, test this again after the latest ports changes (gettext related). Kind regards, Anton Lazarov Tue, 7 May 2019 09:27:25 +0100 Stuart Henderson <[email protected]> > On 2019/05/06 05:45, Nam Nguyen wrote: > > This is an update for boehm-gc 8.0.4 (released March 2, 2019) and > > libatomic_ops 7.6.10 (released March 1, 2019). I tested on amd64 with > > w3m. I do not have access to aarch64 to test the patches. > > boehm-gc has many machine-dependent parts, it wants testing on more arches > than just amd64+aarch64. > > > Changelogs: > > https://github.com/ivmai/bdwgc/commit/d3dede3ce4462cd82a15f161af797ca51654546a > > https://github.com/ivmai/libatomic_ops/commit/7702826f7a8a0aa1b08293322adf49510f4438d1 > > > > - I am willing to become maintainer, although I do not understand the > > patches. I have familiarized myself with this port now. > > I would say that somebody maintaining boehm-gc should really understand > the patches a bit.. > > > - HOMEPAGE uses https:// > > - Fixed patches to apply cleanly, with the biggest change being > > patch-include_private_gcconfig_h where we no longer need "- use > > __data_start instead of _fdata on OpenBSD/mips64", as it has already > > been applied upstream. > > - --enable-static=yes is a new configure flag. > > How did I notice this new flag? First, I noticed some missing > > symbols. Next, am_libgc_la_OBJECTS is commented out in the generated > > Makefile, but the old behavior has the complement commented out. > > --8<---------------cut here---------------start------------->8--- > > #am_libgc_la_OBJECTS = allchblk.lo alloc.lo \ > > # blacklst.lo dbg_mlc.lo dyn_load.lo \ > > # finalize.lo gc_dlopen.lo gcj_mlc.lo \ > > # headers.lo mach_dep.lo malloc.lo \ > > # mallocx.lo mark.lo mark_rts.lo misc.lo \ > > # new_hblk.lo obj_map.lo os_dep.lo \ > > # ptr_chck.lo reclaim.lo specific.lo \ > > # typd_mlc.lo $(am__objects_1) \ > > # $(am__objects_2) $(am__objects_3) \ > > # $(am__objects_4) $(am__objects_5) \ > > # $(am__objects_6) $(am__objects_7) \ > > # $(am__objects_8) > > am_libgc_la_OBJECTS = extra/gc.lo $(am__objects_9) \ > > $(am__objects_1) $(am__objects_2) \ > > $(am__objects_3) $(am__objects_4) \ > > $(am__objects_5) $(am__objects_6) \ > > $(am__objects_7) $(am__objects_8) > > --8<---------------cut here---------------end--------------->8--- > > > > As the porting guide suggests under Handling Complex Situations > Know > > the Software, "Read the configure script options." Lesson learned. > > --8<---------------cut here---------------start------------->8--- > > $ ./configure --help > > old version: > > --enable-shared[=PKGS] build shared libraries [default=yes] > > --enable-static[=PKGS] build static libraries [default=yes] > > new version: > > --enable-static[=PKGS] build static libraries [default=no] > > --enable-shared[=PKGS] build shared libraries [default=yes] > > --8<---------------cut here---------------end--------------->8--- > > > > SHARED_LIBS += gc 4.0 -> 5.0 > > SHARED_LIBS += gccpp 0.0 -> 0.1 > > SHARED_LIBS += cord 2.3 > > SHARED_LIBS += atomic_ops 2.0 > > SHARED_LIBS += atomic_ops_gpl 2.0 > > > > gccpp: new symbols > > --8<---------------cut here---------------start------------->8--- > > --- /tmp/libgccpp.old Mon May 6 02:22:14 2019 > > +++ /tmp/libgccpp.new Mon May 6 02:21:53 2019 > > @@ -1,5 +1,8 @@ > > +T _Z18GC_throw_bad_allocv > > T _ZdaPv > > +T _ZdaPvm > > T _ZdlPv > > +T _ZdlPvm > > T _Znam > > T _Znwm > > T _fini > > --8<---------------cut here---------------end--------------->8--- > > > > gc: Removal of GC_unix_sbrk_get_mem behind a conditional macro means > > libgc 4.0 -> 5.0. > > --8<---------------cut here---------------start------------->8--- > > --- /tmp/libgc.old Mon May 6 02:18:37 2019 > > +++ /tmp/libgc.new Mon May 6 02:18:27 2019 > > @@ -3,6 +3,8 @@ > > T AO_pause > > T AO_store_full_emulation > > T GC_FirstDLOpenedLinkMap > > +T GC_abort_on_oom > > +T GC_acquire_mark_lock > > T GC_add_ext_descriptor > > T GC_add_map_entry > > T GC_add_roots > > @@ -69,6 +71,7 @@ > > T GC_cond_register_dynamic_libraries > > T GC_continue_reclaim > > T GC_copy_bl > > +T GC_core_gcj_malloc > > T GC_debug_change_stubborn > > T GC_debug_end_stubborn_change > > T GC_debug_free > > @@ -85,6 +88,7 @@ > > T GC_debug_malloc_stubborn > > T GC_debug_malloc_uncollectable > > T GC_debug_print_heap_obj_proc > > +T GC_debug_ptr_store_and_dirty > > T GC_debug_realloc > > T GC_debug_realloc_replacement > > T GC_debug_register_displacement > > @@ -102,10 +106,13 @@ > > T GC_default_push_other_roots > > T GC_default_same_obj_print_proc > > T GC_default_warn_proc > > +T GC_deinit > > T GC_delete_gc_thread > > T GC_delete_thread > > T GC_descr_obj_size > > +T GC_destroy_thread_local > > T GC_dirty_init > > +T GC_dirty_inner > > T GC_disable > > T GC_disclaim_and_reclaim > > T GC_disclaim_and_reclaim_or_free_small_block > > @@ -113,10 +120,13 @@ > > T GC_do_blocking > > T GC_do_blocking_inner > > T GC_do_enumerate_reachable_objects > > +T GC_do_local_mark > > +T GC_do_parallel_mark > > T GC_double_descr > > T GC_dump > > T GC_dump_finalization > > T GC_dump_finalization_links > > +T GC_dump_named > > T GC_dump_regions > > T GC_enable > > T GC_enable_incremental > > @@ -152,6 +162,7 @@ > > T GC_gcollect > > T GC_gcollect_and_unmap > > T GC_general_register_disappearing_link > > +T GC_generic_lock > > T GC_generic_malloc > > T GC_generic_malloc_ignore_off_page > > T GC_generic_malloc_inner > > @@ -165,6 +176,7 @@ > > T GC_get_bytes_since_gc > > T GC_get_dont_expand > > T GC_get_dont_precollect > > +T GC_get_expl_freed_bytes_since_gc > > T GC_get_finalize_on_demand > > T GC_get_finalizer_notifier > > T GC_get_find_leak > > @@ -173,14 +185,18 @@ > > T GC_get_free_bytes > > T GC_get_free_space_divisor > > T GC_get_full_freq > > +T GC_get_full_gc_total_time > > T GC_get_gc_no > > T GC_get_heap_size > > T GC_get_heap_usage_safe > > T GC_get_java_finalization > > T GC_get_kind_and_size > > T GC_get_main_stack_base > > +T GC_get_manual_vdb_allowed > > +T GC_get_max_prior_attempts > > T GC_get_max_retries > > T GC_get_memory_use > > +T GC_get_min_bytes_allocd > > T GC_get_no_dls > > T GC_get_non_gc_bytes > > T GC_get_nprocs > > @@ -193,6 +209,8 @@ > > T GC_get_prof_stats > > T GC_get_prof_stats_unsafe > > T GC_get_push_other_roots > > +T GC_get_rate > > +T GC_get_size_map_at > > T GC_get_stack_base > > T GC_get_start_callback > > T GC_get_stop_func > > @@ -208,6 +226,7 @@ > > T GC_has_other_debug_info > > T GC_hblk_fl_from_blocks > > T GC_header_cache_miss > > +T GC_help_marker > > T GC_ignore_self_finalize_mark_proc > > T GC_ignore_warn_proc > > T GC_incr_bytes_allocd > > @@ -220,6 +239,7 @@ > > T GC_init_headers > > T GC_init_parallel > > T GC_init_size_map > > +T GC_init_thread_local > > T GC_initialize_offsets > > T GC_initiate_gc > > T GC_inner_start_routine > > @@ -230,10 +250,14 @@ > > T GC_is_black_listed > > T GC_is_disabled > > T GC_is_heap_ptr > > +T GC_is_incremental_mode > > +T GC_is_init_called > > T GC_is_marked > > T GC_is_thread_suspended > > +T GC_is_tmp_root > > T GC_is_valid_displacement > > T GC_is_visible > > +T GC_key_create_inner > > T GC_lock > > T GC_log_printf > > T GC_lookup_thread > > @@ -257,10 +281,15 @@ > > T GC_mark_and_push_stack > > T GC_mark_from > > T GC_mark_init > > +T GC_mark_local > > T GC_mark_some > > +T GC_mark_thread > > +T GC_mark_thread_local_fls_for > > +T GC_mark_thread_local_free_lists > > T GC_mark_togglerefs > > T GC_maybe_gc > > T GC_memalign > > +T GC_merge_unmapped > > T GC_move_disappearing_link > > T GC_move_disappearing_link_inner > > T GC_move_long_link > > @@ -279,6 +308,8 @@ > > T GC_noop1 > > T GC_noop6 > > T GC_normal_finalize_mark_proc > > +T GC_notify_all_builder > > +T GC_notify_all_marker > > T GC_notify_or_invoke_finalizers > > T GC_null_finalize_mark_proc > > T GC_number_stack_black_listed > > @@ -307,6 +338,7 @@ > > T GC_pthread_create > > T GC_pthread_detach > > T GC_pthread_join > > +T GC_ptr_store_and_dirty > > T GC_push_all > > T GC_push_all_eager > > T GC_push_all_stack > > @@ -319,9 +351,6 @@ > > T GC_push_finalizer_structures > > T GC_push_gc_structures > > T GC_push_marked > > -T GC_push_marked1 > > -T GC_push_marked2 > > -T GC_push_marked4 > > T GC_push_next_marked > > T GC_push_next_marked_dirty > > T GC_push_next_marked_uncollectable > > @@ -364,6 +393,8 @@ > > T GC_register_main_static_data > > T GC_register_my_thread > > T GC_register_my_thread_inner > > +T GC_release_mark_lock > > +T GC_remap > > T GC_remove_all_threads_but_me > > T GC_remove_allowed_signals > > T GC_remove_counts > > @@ -373,14 +404,18 @@ > > T GC_remove_root_at_pos > > T GC_remove_roots > > T GC_remove_roots_inner > > +T GC_remove_specific_after_fork > > T GC_remove_tmp_roots > > T GC_reset_fault_handler > > T GC_reset_finalizer_nested > > +T GC_restart_all > > T GC_restart_handler > > T GC_resume_thread > > +T GC_return_mark_stack > > T GC_roots_present > > T GC_same_obj > > T GC_scratch_alloc > > +T GC_scratch_recycle_inner > > T GC_set_abort_func > > T GC_set_all_interior_pointers > > T GC_set_and_save_fault_handler > > @@ -398,9 +433,12 @@ > > T GC_set_hdr_marks > > T GC_set_java_finalization > > T GC_set_log_fd > > +T GC_set_manual_vdb_allowed > > T GC_set_mark_bit > > T GC_set_max_heap_size > > +T GC_set_max_prior_attempts > > T GC_set_max_retries > > +T GC_set_min_bytes_allocd > > T GC_set_no_dls > > T GC_set_non_gc_bytes > > T GC_set_on_collection_event > > @@ -409,6 +447,7 @@ > > T GC_set_oom_fn > > T GC_set_pages_executable > > T GC_set_push_other_roots > > +T GC_set_rate > > T GC_set_start_callback > > T GC_set_stop_func > > T GC_set_suspend_signal > > @@ -417,24 +456,29 @@ > > T GC_set_toggleref_func > > T GC_set_warn_proc > > T GC_setpagesize > > +T GC_setspecific > > T GC_setup_temporary_fault_handler > > T GC_should_collect > > T GC_should_invoke_finalizers > > T GC_signal_mark_stack_overflow > > T GC_size > > T GC_skip_hole_openbsd > > +T GC_slow_getspecific > > T GC_split_block > > -T GC_start_debugging > > T GC_start_debugging_inner > > T GC_start_mark_threads > > +T GC_start_mark_threads_inner > > +T GC_start_performance_measurement > > T GC_start_reclaim > > T GC_start_routine > > T GC_start_rtn_prepare_thread > > T GC_start_world > > +T GC_start_world_external > > +T GC_steal_mark_stack > > T GC_stop_init > > T GC_stop_world > > +T GC_stop_world_external > > T GC_stopped_mark > > -T GC_store_debug_info > > T GC_store_debug_info_inner > > T GC_strdup > > T GC_strndup > > @@ -452,14 +496,23 @@ > > T GC_try_to_collect_inner > > T GC_typed_mark_proc > > T GC_unix_get_mem > > -T GC_unix_sbrk_get_mem > > +T GC_unix_mmap_get_mem > > +T GC_unmap > > +T GC_unmap_end > > +T GC_unmap_gap > > +T GC_unmap_old > > +T GC_unmap_start > > T GC_unpromote_black_lists > > T GC_unreachable_finalize_mark_proc > > T GC_unregister_disappearing_link > > T GC_unregister_long_link > > T GC_unregister_my_thread > > T GC_unregister_my_thread_inner > > +T GC_wait_builder > > T GC_wait_for_gc_completion > > +T GC_wait_for_markers_init > > +T GC_wait_for_reclaim > > +T GC_wait_marker > > T GC_with_callee_saves_pushed > > T GC_write > > T _fini > > --8<---------------cut here---------------end--------------->8--- > > > > diff: > > Index: Makefile > > =================================================================== > > RCS file: /cvs/ports/devel/boehm-gc/Makefile,v > > retrieving revision 1.70 > > diff -u -p -r1.70 Makefile > > --- Makefile 30 Dec 2018 17:08:09 -0000 1.70 > > +++ Makefile 6 May 2019 12:00:07 -0000 > > @@ -3,50 +3,51 @@ > > 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/ > > +MAINTAINER= Nam Nguyen <[email protected]> > > > > # 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 -r1.11 distinfo > > --- distinfo 30 Dec 2018 17:08:09 -0000 1.11 > > +++ distinfo 6 May 2019 12:00:07 -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 -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 6 May 2019 12:00:07 -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 -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 6 May 2019 12:00:07 > > -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 -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 6 May 2019 12:00:07 > > -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 -r1.5 PLIST-main > > --- pkg/PLIST-main 12 Nov 2016 10:33:04 -0000 1.5 > > +++ pkg/PLIST-main 6 May 2019 12:00:07 -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 > > >
