Just like -lpthread was passed in LIBS, -latomic should also be passed
in LIBS. In order for this to work, we however need to first fix
cc-tool's Makefile.am so that it does not overwrite LIBS.
This is the first part of fixing the build of cc-tool in a static
linking scenario on SPARC, i.e to fix:
http://autobuild.buildroot.net/results/ed9f2524d0ccef318ff1bc99e5dea980111de989/
The patch has been merged upstream, in
553f9c6016.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Detecting the boost program_options library is broken:
checking for the Boost program_options library... no
configure: error: cannot find the flags to link with Boost program_options
config.log shows the reason, libatomic is missing:
conftest.o: In function `boost::detail::sp_counted_base::release()':
conftest.cpp:(.text._ZN5boost6detail15sp_counted_base7releaseEv[_ZN5boost6detail15sp_counted_base7releaseEv]+0xc):
undefined reference to `__atomic_fetch_sub_4'
conftest.cpp:(.text._ZN5boost6detail15sp_counted_base7releaseEv[_ZN5boost6detail15sp_counted_base7releaseEv]+0x38):
undefined reference to `__atomic_fetch_sub_4'
/home/buildroot/br4/output/host/sparc-buildroot-linux-uclibc/sysroot/usr/lib/libboost_program_options.so:
undefined reference to `__atomic_fetch_add_4'
Please note that using LIBS=-latomic is not enough, although it fixes
the configure check the bug reoccurs when linking cc-tool:
CXXLD cc-tool
src/application/cc_flasher.o: In function `boost::detail::sp_counted_base::weak_release()':
cc_flasher.cpp:(.text._ZN5boost6detail15sp_counted_base12weak_releaseEv[_ZN5boost6detail15sp_counted_base12weak_releaseEv]+0xc):
undefined reference to `__atomic_fetch_sub_4'
We need to add -latomic to CXXFLAGS to both fix configure and linking.
Fixes
http://autobuild.buildroot.net/results/596/596f97364bb2c7598b0646da8160939356f0d2c6/
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want to use SPDX identifier for license strings as much as possible.
SPDX short identifier for GPLv2/GPLv2+ is GPL-2.0/GPL-2.0+.
This change is done by using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/\<GPLv2\>/GPL-2.0/g'
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The version of boost.m4 initially included in cc-tool has an issue
with gcc5 (one of its tests fails due to the first change described in [1]
"Preprocessor issues").
This was fixed upstream (boost.m4 project) in Nov 2014 [2].
We add the latest commit [3] of upstream boost.m4 plus a patch from github PR
[4] to add detection for gcc 5.1.
Fixes:
http://autobuild.buildroot.net/results/a4c/a4c057e0b1ab6a2ffd69b27f6f5a79f98eb040f6/
[1]
https://gcc.gnu.org/gcc-5/porting_to.html
[2]
32553aaf4d
[3]
d9ff75b6af
[4]
b879eb85f1
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
cc-tool provides support for Texas Instruments CC Debugger
Signed-off-by: Marcin Bis <marcin@bis.org.pl>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Arnout: avoid adding /usr/local to library path]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>