Currently, building czmq statically fails for some architectures with undefined
references to the math library:
/usr/powerpc-buildroot-linux-uclibc/sysroot/usr/lib/libstdc++.a(compatibility-ldbl.o): In function `std::tr1::hash<long double>::operator()(long double) const':
compatibility-ldbl.cc:(.text._ZNKSt3tr14hashIeEclEe+0x3c): undefined reference to `frexpl'
It turns out that this is actually a problem with libstdc++. Depending on the
arch, some functions will be in compatibility-ldbl.o. If you use any of these
functions, that file will be linked in. And when that file is linked in, all
the _other_ functions, which you actually don't use, are also linked in. And
one of these functions is the template function hash<long double>::operator(),
which uses frexpl.
Requiring czmq to link with -lm is a bit weird, given that neither itself,
nor any of its dependencies really need it...
So ideally it should be fixed in libstdc++ itself. However, as upstream
accepted a patch to link with -lm, we use this patch to fix static linking.
Fixes:
http://autobuild.buildroot.net/results/206/2061238affb685db998100a56c6571538d089a5b/http://autobuild.buildroot.net/results/caf/caf002d213c9dd09df07858c5c199411ca8ddfa3/http://autobuild.buildroot.net/results/568/568ac92d2f6d0604b9bf354ea9dca0a7cb5341f6/http://autobuild.buildroot.net/results/945/9452982fc14f579c61b45a1a189db5f89aab3b80/
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A 'Libs.private' field needs to be present and properly defined in the
pkg-config file in order for static linking against SDL_mixer to work.
Besides adding the mentioned field, the included patch also modifies
configure.in so that EXTRA_LDFLAGS (which is now also used as the value
of 'Libs.private') no longer includes SDL_LIBS. This is done so as to
prevent libraries required by SDL from being listed twice when
'pkg-config --libs --static SDL_mixer' is run (they're already shown
because of the 'Requires: sdl' line in SDL_mixer.pc). Makefile.in is
adjusted accordingly as well.
Also enable autoreconf for this package since we're patching
configure.in.
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Drop
0001-cmake-disable-shared-library-build-when-BUILD_SHARED.patch,
since CMakeLists has been reworked. Static/shared build can now be
configured via configuration options.
- Add support for optional libev and libuv.
- Use the github macro for download.
- Update hash.
Signed-off-by: Sagaert Johan <sagaert.johan@proximus.be>
[Thomas: tweak the commit log a bit.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- 0001-sched-workaround-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch is
removed because it was merged upstream. Since this patch is
removed, autoreconfiguring the package is no longer needed.
- the ncurses dependency is dropped because the ncurses-related
functionality from luaposix was removed, and moved to a separate
project.
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[Thomas: write a proper commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the patches to use a python variable and instead force python2
into the PATH.
Upstream the python variable was recently removed
(see https://github.com/nodejs/node/commit/c3e50ca) and due to dependencies
directly calling python there is a reluctance to change this. Instead it
is recommended to add python2 into PATH as the nodejs build machines do
(see https://github.com/nodejs/node/issues/418 and
https://github.com/nodejs/node/issues/2735).
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This comment is outdated since the assignment of $(2)_MANIFEST_TARBALL
and $(2)_MANIFEST_SITE have been removed, which happened in
b9f4727ff4.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[Thomas: adjust comment as suggested by Yann E. MORIN.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The ifneq ($$($(2)_SITE_METHOD),override) test will always match
because SITE_METHOD is never set to "override". The result is that
some packages are downloaded and extracted unnecessarily, although
they are (correctly) not saved in output/legal-info/.
Fix by simply testing $(2)_OVERRIDE_SRCDIR instead: when empty, it
indicates that the packages is neither a "local" site-method package
nor a package that has its source directory overridden.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Multicat select bitstream package without adding it as build dependencies.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also remove patch from upstream.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The CS nios2 2015.11 is based on kernel header 4.2 which must now
provide the setns syscall for nios2.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The _gp link issue has been fixed in CS nios2 2015.11.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The compiler bug has been fixed in CS nios2 2015.11.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Move to the latest release of linux-pam. This allows us to remove
a number of patches and consolidate the existing ones :
- 0001-configure.patch
- 0007-rhosts.patch
these two patches deal with the ruserok function, which is not
usable with uclibc. Consolidated into
0002-Conditionally-compile-per-ruserok-availability.patch.
- 0003-group.patch
- 0005-succeed.patch
- 0006-time.patch
these three patches deal with the innetgr function, which is not
usable with uclibc. Consolidated into
0003-Conditionally-compile-per-innetgr-availability.patch.
- 0004-mkdir.patch
Fixed in upstream, no longer required.
- 0002-doc-makefile-am.patch
renamed to 0001-doc-makefile-am.patch.
- 0008-fix-CVE-2014-2583.patch
- 0009-fix-CVE-2013-7041.patch
These patches are already included in the new release and so
can be safely deleted.
Signed-off-by: Brendan Heading <brendanheading@gmail.com>
Tested-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
While the prebuilt musl toolchains provided by http://musl.codu.org/
had not been updated in a while, a new release based on musl 1.1.12
has been put online in December 2015. This commit updates our external
toolchain package to use this new pre-built toolchain.
Compared to the previous 1.1.6 toolchain, there are some changes:
- The MIPS big endian soft-float variant is no longer available.
- The Microblaze variant is no longer available.
- SuperH 4, both little and big endian, variants have been added.
- The components have been updated: gcc 5.3 is used, binutils 2.25.1,
and of course musl 1.1.12.
Besides the update itself, in this commit, we are:
- Making the musl toolchain non-selectable on MIPS big endian
soft-float.
- Making the musl toolchain actually work on MIPS little endian
soft-float, by downloading the right tarball and setting up the
right symbolic link.
- Removing support for the Microblaze variant, and adding support for
the SH4 variants.
All variants except armeb have been boot tested under Qemu, up to a
Busybox shell prompt. armeb has not been tested due to the lack of a
Qemu configuration for this architecture.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>