libssp-nonshared: Add recipe
PATCH v2 1/27 libssp-nonshared: Add recipe
libssp-nonshared is a minimal gcc runtime piece which is needed on non-glibc systems which do implement libssp APIs in libc
Use PIC for libssp_nonshared.a
Signed-off-by Khem Raj <[email protected]>
---
Changes since v1:
- Compile as PIC
meta/recipes-core/musl/libssp-nonshared.bb | 39 ++++++++++++++++ .../musl/libssp-nonshared/ssp-local.c | 45 +++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 meta/recipes-core/musl/libssp-nonshared.bb create mode 100644 meta/recipes-core/musl/libssp-nonshared/ssp-local.c
meta/recipes-core/musl/libssp-nonshared.bb new file +39 -0
@@ -0,0 +1,39 @@ +# Copyright (C) 2018 Khem Raj <[email protected]> +# Released under the MIT license (see COPYING.MIT for the terms) + +SUMMARY = "Minimal libssp_nonshared.a must needed for ssp to work with gcc on musl" +LICENSE = "GPL-3.0-with-GCC-exception" +LIC_FILES_CHKSUM = "file://ssp-local.c;beginline=1;endline=32;md5=c06d391208c0cfcbc541a6728ed65cc4" +SECTION = "libs" + +SRC_URI = "file://ssp-local.c" + +PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:" + +INHIBIT_DEFAULT_DEPS = "1" + +STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}" +STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}" + +DEPENDS = "virtual/${TARGET_PREFIX}binutils \ + virtual/${TARGET_PREFIX}gcc-initial \ +" + +do_configure[noexec] = "1" + +S = "${WORKDIR}" + +do_compile() { + ${CC} ${CPPFLAGS} ${CFLAGS} -fPIC -c ssp-local.c -o ssp-local.o + ${AR} r libssp_nonshared.a ssp-local.o +} +do_install() { + install -Dm 0644 ${B}/libssp_nonshared.a ${D}${base_libdir}/libssp_nonshared.a +} +# +# We will skip parsing for non-musl systems +# +COMPATIBLE_HOST = ".*-musl.*" +RDEPENDS_${PN}-staticdev = "" +RDEPENDS_${PN}-dev = "" +RRECOMMENDS_${PN}-dbg = "${PN}-staticdev (= ${EXTENDPKGV})"
meta/recipes-core/musl/libssp-nonshared/ssp-local.c new file +45 -0
45 lines not on this page · raw message
Signature · 1 line
2.17.0