When bdw-gc is linked with libatomic_ops, bdw-gc.pc must contain the
needed libraries (such as -latomic_ops) otherwise build of applications
such as guile will fail on link stage:
.libs/libguile_2.0_la-posix.o: In function `scm_tmpnam':
posix.c:(.text+0x2080): warning: the use of `tmpnam' is dangerous, better use `mkstemp'
CCLD guile
/home/buildroot/autobuild/run/instance-2/output/host/arm-buildroot-linux-gnueabi/sysroot/usr/lib/libgc.so: undefined reference to `AO_fetch_compare_and_swap_emulation'
/home/buildroot/autobuild/run/instance-2/output/host/arm-buildroot-linux-gnueabi/sysroot/usr/lib/libgc.so: undefined reference to `AO_store_full_emulation'
So set ATOMIC_OPS_LIBS to -latomic_ops when a system atomic_ops library
is used and use ATOMIC_OPS_LIBS in bdw-gc.pc.in
Fixes:
- http://autobuild.buildroot.org/results/2b23d445e57a5e0f417f5cb9417b0a668bb7bf1c
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since commit 4e1dbd063d ("package/bdwgc:
bump to version 8.0.0"), we no longer have any patch that requires
autoreconf. In addition, the libtool shipped with the package seems to
no longer be bogus, because it builds perfectly fine without
autoreconf. Therefore, let's drop this autoreconf.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Reviewed-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
- Remove first patch (already in version):
7c13fb8fcc
- Remove second patch (already in version)
- Update license hash: Update header copyright (add Ivan Maidanski), see
3bd265a64b
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Use CFLAGS_EXTRA to pass C and C++ flags in a single variable
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The code in gcconfig.h indicates that the list of supported architectures is
now a superset of BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS so we can drop
BR2_PACKAGE_BDWGC_ARCH_SUPPORTS.
Also, add a hash file.
Cc: Pedro Aguilar <paguilar@paguilar.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
bdwgc has support for a sub-set of the architectures we support.
Since there is roughly a 50-50 split of our architectures that have
support in bdwgc vs. those that do not, use a positive dependency logic,
rather than a negative one.
The list was constructed by visual inspection of the source code of
bdwgc, but the header doing the check is, to say it politely, a bit
difficult to read...
So, some working archotectures may be missing. Users needing it may
investigate if their architectures are indeed supported.
Fixes;
http://autobuild.buildroot.net/results/529/529b0b6dd47744c13f56e59a4c669a3f5d56530d/
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Pedro Aguilar <paguilar@paguilar.org>
Cc: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
bdwgc is a garbage collector for C and C++. The Boehm-Demers-Weiser
conservative garbage collector can be used as a garbage collecting
replacement for C 'malloc' or C++ 'new'.
[Thomas:
- drop the dependency on host-bdwgc, since it is not needed. Only
host-guile will need host-bdwgc, but bdwgc itself doesn't need
host-bdwgc.
- add dependency on host-pkgconf, needed to detect libatomic_ops
- add --with-libatomic-ops=yes to force bdwgc to use the system
libatomic_ops, and not the internal one.
- instead of using BDWGC_LIBTOOL_PATCH = NO (needed to avoid patching
libtool because the libtool version used by bdwgc does not have a
corresponding patch in Buildroot), use BDWGC_AUTORECONF = YES,
which generates a proper libtool (without this, some -L/usr/lib
flags are added by libtool).]
Signed-off-by: Pedro Aguilar <paguilar@paguilar.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>