opensaf: Add -latomic to LDFLAGS

* Add "-Wl,--as-needed -latomic -Wl,--no-as-needed"
  to LDFLAGS to let the libatomic handled automatically
  if required to fix below build error as atomic
  operations on some arch such as x86 are supplied by
  the compiler. For other arch which lacks the instructions,
  a standardized external call provided by external library
  libatomic will be made to perform the operation.

  | src/amf/amfd/bin_osafamfd-main.o: In function `std::__atomic_base<unsigned long long>::load(std::memory_order) const':
  | $Prj/build/tmp/work/ppc7400-wrs-linux/opensaf/5.2.0-r0/recipe-sysroot/usr/include/c++/6.3.0/bits/atomic_base.h:396: undefined reference to `__atomic_load_8'
  | $Prj/build/tmp/work/ppc7400-wrs-linux/opensaf/5.2.0-r0/recipe-sysroot/usr/include/c++/6.3.0/bits/atomic_base.h:396: undefined reference to `__atomic_load_8'
  | collect2: error: ld returned 1 exit status
  | make[2]: *** [Makefile:8200: bin/osafamfd] Error 1
  | make[2]: *** Waiting for unfinished jobs....
  | make[2]: Leaving directory '$Prj/build/tmp/work/ppc7400-wrs-linux/opensaf/5.2.0-r0/build'
  | make[1]: *** [Makefile:19749: all-recursive] Error 1
  | make[1]: Leaving directory '$Prj/build/tmp/work/ppc7400-wrs-linux/opensaf/5.2.0-r0/build'
  | make: *** [Makefile:6175: all] Error 2

 Reference: https://gcc.gnu.org/wiki/Atomic/GCCMM/LIbrary#line-23

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
This commit is contained in:
Mingli Yu
2017-05-22 17:42:08 +08:00
committed by Joe MacDonald
parent 8f7f3eb7f6
commit 0f9bd5642b

View File

@@ -43,6 +43,8 @@ PACKAGECONFIG_append = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' sys
PKGLIBDIR="${libdir}"
LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed"
do_install_append() {
cp -av --no-preserve=ownership ${B}/lib/.libs/*.so* ${D}${libdir}
rm -fr "${D}${localstatedir}/lock"