[oe] [meta-networking][PATCH] opensaf: Add -latomic to LDFLAGS

Khem Raj raj.khem at gmail.com
Mon May 22 17:15:55 UTC 2017


On Mon, May 22, 2017 at 2:42 AM,  <mingli.yu at windriver.com> wrote:
> From: Mingli Yu <Mingli.Yu at windriver.com>
>
> * 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 at windriver.com>
> ---
>  meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb b/meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb
> index babf03e..be79ba8 100644
> --- a/meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb
> +++ b/meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb
> @@ -43,6 +43,8 @@ PACKAGECONFIG_append = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' sys
>
>  PKGLIBDIR="${libdir}"
>
> +LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed"
> +

it would be better if the configury could detect libatomic and then we
could use a PACKAGECONFIG knob to control it based on if libatomic
is avaliable in a given combination or not.

>  do_install_append() {
>      cp -av --no-preserve=ownership ${B}/lib/.libs/*.so* ${D}${libdir}
>      rm -fr "${D}${localstatedir}/lock"
> --
> 2.8.1
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



More information about the Openembedded-devel mailing list