Sync from SUSE:SLFO:Main gc revision 405a6cb9fd34959c2304967ff1e2e45e
This commit is contained in:
commit
4f4d0dcc91
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
BIN
gc-8.2.4.tar.gz
(Stored with Git LFS)
Normal file
BIN
gc-8.2.4.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
294
gc.changes
Normal file
294
gc.changes
Normal file
@ -0,0 +1,294 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri May 26 20:42:53 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 8.2.4
|
||||
* Avoid potential race between realloc and GC_block_was_dirty
|
||||
* Fix comparisons to heap boundary in GC_get_back_ptr_info and
|
||||
GC_mark_from
|
||||
* Fix data race in GC_heapsize_at_forced_unmap variable
|
||||
* Workaround a malfunction of soft-dirty bits clearing on Power9
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 26 19:56:22 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 8.2.2
|
||||
* Avoid potential race in GC_init_real_syms after
|
||||
GC_allow_register_threads
|
||||
* Do not count unmapped regions if GC_unmap is madvise-based
|
||||
(Linux)
|
||||
* Fix assertion violation of GC_thread_key alignment if
|
||||
pthread-based TLS
|
||||
* Fix hang on sem_wait in GC_suspend_thread if thread was
|
||||
resumed recently
|
||||
- Delete 0001-Distribute-gc_gcj.h-and-some-other-headers-in-single.patch
|
||||
(applied)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 2 17:28:08 UTC 2021 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Add 0001-Distribute-gc_gcj.h-and-some-other-headers-in-single.patch
|
||||
to repair `make install` forgetting to install gc_pthread.h.
|
||||
- Drop C++98 build mode; just use what g++ uses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Sep 29 22:03:07 UTC 2021 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 8.2.0
|
||||
* Add API for accessing incremental GC time limit with
|
||||
nanosecond precision
|
||||
* Add API function to force start of incremental collection
|
||||
* Add GC_get/set_disable_automatic_collection API
|
||||
* New API (GC_set_markers_count) to control number of parallel
|
||||
markers
|
||||
* New API function to clear GC exclusion table
|
||||
* New API function to get size of object debug header
|
||||
* New API standalone functions to acquire and release the
|
||||
allocator lock
|
||||
* Always abort on failure to access /proc/self/maps
|
||||
* Avoid initial 3ms pause on world stop/start with GC_retry_signals
|
||||
* Enable mprotect-based incremental GC for Linux/arm and
|
||||
Linux/aarch64
|
||||
* Enable true incremental collection even if parallel marker is on
|
||||
* Fix mmap(PROT_NONE) failure if RLIMIT_AS value is low (Linux)
|
||||
* Report memory region bounds and errno on GC_unmap/remap failure
|
||||
* Use mprotect-based VDB on PowerPC and S390 (Linux)
|
||||
* Use soft dirty bits on Linux (i386, powerpc, s390, x86_64)
|
||||
* Fix copyright message in de_win.rc, gc_cpp.cc, ec.h and
|
||||
specific.h
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 28 22:27:54 UTC 2021 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 8.0.6
|
||||
* Allocate start_info struct on the stack in GC_pthread_create.
|
||||
* Allow GC_PAUSE_TIME_TARGET environment variable values
|
||||
smaller than 5 ms.
|
||||
* Disable mprotect-based incremental GC if /proc roots are used.
|
||||
* Enable sbrk-to-mmap fallback on major supported Unix-like
|
||||
platforms.
|
||||
* Ensure process is running on one CPU core if AO ops are
|
||||
emulated with locks.
|
||||
* Fix data race regarding *rlh value in generic_malloc_many.
|
||||
* Fix handling of areas smaller than page size in
|
||||
GC_scratch_recycle.
|
||||
* Limit number of unmapped regions.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 15 09:35:41 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to new upstream release 8.0.4
|
||||
* Avoid a full GC when growing finalizer tables if in
|
||||
incremental mode.
|
||||
* Avoid potential race in hb_sz access between realloc and
|
||||
reclaim_block.
|
||||
* Ensure result of every variant of MS_TIME_DIFF has unsigned
|
||||
long type.
|
||||
* Fix 'unexpected mark stack overflow' abort in push_all_stack.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 8 13:51:13 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Add libatomic_ops-devel as a package require, since it shows up
|
||||
in bdw-gc.pc.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 8 02:37:16 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to new upstream release 8.0.2
|
||||
* Explicitly unblock GC signals on GC initialization.
|
||||
* Add initial RISC-V support.
|
||||
* Never return null by C++ GC allocators and gc_cpp
|
||||
operator new.
|
||||
* Add AO primitives implementation to GC based on C11 atomic
|
||||
intrinsic.
|
||||
* Change pointer arguments of push_all[_eager]/conditional API
|
||||
to void * type.
|
||||
* Change type of hb_sz field (of hblkhdr) from size_t to word.
|
||||
* Decide between memory unmapping and mprotect-based dirty bits
|
||||
at runtime.
|
||||
* New API function (GC_dump_named) to produce named dumps.
|
||||
* New API function (get_size_map_at) to get content of size_map
|
||||
table.
|
||||
* New API to stop and start the GC world externally.
|
||||
* New API to turn on manual VDB at runtime.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 30 00:23:41 UTC 2018 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 7.6.4
|
||||
* Also enable the TSX workaround for i386 (Linux)
|
||||
* Relax mark_mutex attribute needed to disable elision (Linux/x64)
|
||||
* Process all PT_LOAD segments before PT_GNU_RELRO segments (Glibc)
|
||||
* Add API function to calculate total memory in use by all GC blocks
|
||||
* Add API function to set/modify GC log file descriptor (Unix)
|
||||
* Add alt-stack registration support
|
||||
* Implement the finalization extension API
|
||||
* Implement thread suspend/resume API (Linux threads only)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 1 10:03:41 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Force -std=gnu++98 for C++ testcases.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 5 09:42:40 UTC 2015 - jengelh@inai.de
|
||||
|
||||
- Update homepage URLs
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Dec 29 17:51:02 UTC 2014 - p.drouand@gmail.com
|
||||
|
||||
- Update to version 7.4.2
|
||||
* Add config option to use STGRTMIN-based signals for thread
|
||||
suspend/resume.
|
||||
* Allow parallel mark to be enabled on powerpc-linux systems.
|
||||
* Fix 'Array subscript is above array bounds' GCC warning in
|
||||
GC_new_kind/proc.
|
||||
* Fix 'attribute declaration must precede definition' warning.
|
||||
* Fix GC_finalized_malloc failure on disclaim_test.
|
||||
* Fix GC_sig_suspend initialization when non-constant SIGRTMIN used.
|
||||
* Fix data roots registration for Android/x86 and NDK ARM 'gold'
|
||||
linker.
|
||||
* Fix find stackbottom on BlueGene P/Q systems.
|
||||
* Fix machdep .lo files path in configure (SPARC, IA-64).
|
||||
* Fix ok_init assignment (missing cast) in GC_new_kind_inner.
|
||||
- Remove aarch64-support.patch; merged on upstream release
|
||||
- gc project has a new home; update URL tag and download source URL
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun May 26 20:09:26 UTC 2013 - jengelh@inai.de
|
||||
|
||||
- Make use of external libatomic_ops --
|
||||
openSUSE has it in a separate source package
|
||||
- Fix version: 7.2d is not a prerelease, so there is no need to
|
||||
call it 7.1*
|
||||
- More portable make install call; more robust file list
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 25 19:16:48 UTC 2013 - root@localhost
|
||||
|
||||
- libatomic_ops-aarch64.patch: update makefile to install missing headers,
|
||||
don't use AO_EXPECT_FALSE.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 18 08:10:09 UTC 2013 - schwab@suse.de
|
||||
|
||||
- aarch64-support.patch: aarch64 support for gc from upstream
|
||||
- libatomic_ops-aarch64.patch: aarch64 support for libatomic_ops from
|
||||
upstream add-aarch64-support branch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 25 14:50:51 UTC 2013 - dmueller@suse.com
|
||||
|
||||
- update to 7.2d
|
||||
+ no upstream changelog available, but bring it two years
|
||||
further up to date
|
||||
- remove all patches. All upstream meanwhile
|
||||
- fix packaging of atomic_ops.pc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Mar 3 20:42:59 UTC 2013 - jengelh@inai.de
|
||||
|
||||
- Record autoconf requirements in spec file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 7 15:23:30 UTC 2012 - uli@suse.com
|
||||
|
||||
- fix for malloc()/calloc() overflows (CVE-2012-2673, bnc#765444)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Feb 11 08:55:11 UTC 2012 - coolo@suse.com
|
||||
|
||||
- put the provides for libatomic-ops-devel in a package actually
|
||||
in existance
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Dec 25 16:02:21 UTC 2011 - idonmez@suse.com
|
||||
|
||||
- Provide libatomic-ops-devel package too
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 13 09:55:10 UTC 2011 - werner@suse.de
|
||||
|
||||
- To use this with asymptote from TeX Live large config is required.
|
||||
Also fast garbage collection iby using pthread-based parallel mark
|
||||
implementation will help a lot.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Oct 1 05:39:10 UTC 2011 - coolo@suse.com
|
||||
|
||||
- add libtool as buildrequire to make the spec file more reliable
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 30 19:06:55 UTC 2011 - crrodriguez@opensuse.org
|
||||
|
||||
- Workaround qemu-arm bugs.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 22 11:26:47 UTC 2011 - jengelh@medozas.de
|
||||
|
||||
- Implement shlib policy
|
||||
- Resolve rpmlint warning "no-pkg-config-provides"
|
||||
- Remove redundant/obsolete tags (cf. specfile guidelines;
|
||||
License field is inherited from (main) subpackage)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 20 15:08:02 UTC 2011 - pgajdos@novell.com
|
||||
|
||||
- updated to 7.2alpha6
|
||||
* many bug fixes and new features from 6.6, see doc/README.changes
|
||||
for older changes and ChangeLog for recent changes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 2 15:40:11 CEST 2009 - crrodriguez@suse.de
|
||||
|
||||
- remove static libraries and "la" files
|
||||
- run make check
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 10 12:34:56 CET 2008 - olh@suse.de
|
||||
|
||||
- use Obsoletes: -XXbit only for ppc64 to help solver during distupgrade
|
||||
(bnc#437293)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 11 09:35:00 CET 2008 - olh@suse.de
|
||||
|
||||
- use gcc built-in atomic functions, to fix w3m build
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 30 12:34:56 CET 2008 - olh@suse.de
|
||||
|
||||
- obsolete old -XXbit packages (bnc#437293)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 25 06:37:27 CET 2008 - crrodriguez@suse.de
|
||||
|
||||
- fix library-without-ldconfig-postin errors
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 21 18:00:27 CET 2007 - uli@suse.de
|
||||
|
||||
- implicit malloc() redirection breaks some apps (bug #335123)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 26 23:51:37 CEST 2007 - ro@suse.de
|
||||
|
||||
- split off devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 30 15:45:19 CET 2006 - uli@suse.de
|
||||
|
||||
- enabled malloc redirection, C++ support
|
||||
- fixed shared libs
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 25 21:36:07 CET 2006 - mls@suse.de
|
||||
|
||||
- converted neededforbuild to BuildRequires
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 11 13:42:27 CET 2006 - uli@suse.de
|
||||
|
||||
- initial package
|
||||
|
124
gc.spec
Normal file
124
gc.spec
Normal file
@ -0,0 +1,124 @@
|
||||
#
|
||||
# spec file for package gc
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
Name: gc
|
||||
Version: 8.2.4
|
||||
Release: 0
|
||||
Summary: A garbage collector for C and C++
|
||||
License: BSD-3-Clause
|
||||
Group: Development/Libraries/C and C++
|
||||
URL: http://www.hboehm.info/gc/
|
||||
|
||||
#Git-Clone: https://github.com/ivmai/bdwgc
|
||||
Source: https://github.com/ivmai/bdwgc/releases/download/v%version/%name-%version.tar.gz
|
||||
BuildRequires: autoconf >= 2.64
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkg-config
|
||||
BuildRequires: pkgconfig(atomic_ops)
|
||||
|
||||
%description
|
||||
The Boehm-Demers-Weiser conservative garbage collector can be used as a
|
||||
garbage collecting replacement for C malloc or C++ new. It allows you
|
||||
to allocate memory basically as you normally would, without explicitly
|
||||
deallocating memory that is no longer useful. The collector
|
||||
automatically recycles memory when it determines that it can no longer
|
||||
be otherwise accessed.
|
||||
|
||||
%package -n libgc1
|
||||
Summary: A garbage collector for C and C++
|
||||
Group: System/Libraries
|
||||
%ifarch ppc64
|
||||
# bug437293
|
||||
Obsoletes: boehm-gc-64bit
|
||||
%endif
|
||||
|
||||
%description -n libgc1
|
||||
The Boehm-Demers-Weiser conservative garbage collector can be used as a
|
||||
garbage collecting replacement for C malloc or C++ new. It allows you
|
||||
to allocate memory basically as you normally would, without explicitly
|
||||
deallocating memory that is no longer useful. The collector
|
||||
automatically recycles memory when it determines that it can no longer
|
||||
be otherwise accessed.
|
||||
|
||||
%package devel
|
||||
Summary: A garbage collector for C and C++
|
||||
Group: Development/Libraries/C and C++
|
||||
Provides: gc:/usr/include/gc/gc.h
|
||||
Requires: glibc-devel
|
||||
Requires: libatomic_ops-devel
|
||||
Requires: libgc1 = %version
|
||||
|
||||
%description devel
|
||||
The Boehm-Demers-Weiser conservative garbage collector can be used as a
|
||||
garbage collecting replacement for C malloc or C++ new. It allows you
|
||||
to allocate memory basically as you normally would, without explicitly
|
||||
deallocating memory that is no longer useful. The collector
|
||||
automatically recycles memory when it determines that it can no longer
|
||||
be otherwise accessed.
|
||||
|
||||
%prep
|
||||
%autosetup -p0
|
||||
|
||||
%build
|
||||
autoreconf -fi
|
||||
|
||||
# see bugzilla.redhat.com/689877
|
||||
export CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"
|
||||
export CXXFLAGS="%optflags"
|
||||
%configure --disable-static --docdir="%_docdir/%name" \
|
||||
--with-gnu-ld \
|
||||
--enable-cplusplus \
|
||||
--enable-large-config \
|
||||
--enable-threads=posix \
|
||||
--enable-parallel-mark \
|
||||
--with-libatomic-ops=yes
|
||||
# --with-libatomic-ops=yes means to use the system library
|
||||
|
||||
%make_build
|
||||
|
||||
%install
|
||||
%make_install
|
||||
rm -Rf "%buildroot/%_datadir/gc" "%buildroot/%_libdir"/*.la
|
||||
for i in README.Mac README.OS2 README.win32; do
|
||||
rm -f "%buildroot/%_docdir/%name/$i"
|
||||
done
|
||||
|
||||
%check
|
||||
%if !0%{?qemu_user_space_build}
|
||||
make check -j1
|
||||
%endif
|
||||
|
||||
%post -n libgc1 -p /sbin/ldconfig
|
||||
%postun -n libgc1 -p /sbin/ldconfig
|
||||
|
||||
%files -n libgc1
|
||||
%_libdir/libcord.so.1*
|
||||
%_libdir/libgc*.so.1*
|
||||
|
||||
%files devel
|
||||
%_docdir/%name/
|
||||
%_libdir/libcord.so
|
||||
%_libdir/libgc*.so
|
||||
%_libdir/pkgconfig/bdw-gc.pc
|
||||
%_mandir/man3/gc.3*
|
||||
%_includedir/gc.h
|
||||
%_includedir/gc_cpp.h
|
||||
%_includedir/gc/
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user