summaryrefslogtreecommitdiff
path: root/package/libgcc
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-06-28 21:51:24 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2014-06-28 21:52:30 +0200
commit7d9f958d550ee7ac394794738eaa35086a64545d (patch)
treec92855ba8ae7c86d89cd0d5d8d83acdd0755e86d /package/libgcc
parentdcd6c2ef08fc808fbb99fcc1ba326505b612360e (diff)
enable shared libgcc for uClibc/glibc
unfortunately uClibc/glibc uses dlopen to access exception handling code from libgcc_s.so.1. Pure static build is only provided by musl.
Diffstat (limited to 'package/libgcc')
-rw-r--r--package/libgcc/Makefile42
1 files changed, 42 insertions, 0 deletions
diff --git a/package/libgcc/Makefile b/package/libgcc/Makefile
new file mode 100644
index 000000000..13274d203
--- /dev/null
+++ b/package/libgcc/Makefile
@@ -0,0 +1,42 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include ${ADK_TOPDIR}/rules.mk
+
+ifeq ($(ADK_TARGET_LIB_GLIBC),y)
+include ${ADK_TOPDIR}/toolchain/glibc/Makefile.inc
+endif
+ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
+include ${ADK_TOPDIR}/toolchain/uclibc/Makefile.inc
+endif
+
+PKG_NAME:= libgcc
+PKG_DESCR:= gcc library
+PKG_SECTION:= base/libs
+PKG_OPTS:= noremove
+
+PKG_DFLT_LIBGCC:= y if !(ADK_TOOLCHAIN_ONLY)
+PKG_LIBC_DEPENDS:= uclibc glibc
+
+
+NO_DISTFILES:= 1
+
+include ${ADK_TOPDIR}/mk/package.mk
+
+$(eval $(call PKG_template,LIBGCC,libgcc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
+
+CONFIG_STYLE:= manual
+BUILD_STYLE:= manual
+INSTALL_STYLE:= manual
+
+libgcc-install:
+ $(INSTALL_DIR) ${IDIR_LIBGCC}/$(ADK_TARGET_LIBC_PATH)
+ifeq ($(ADK_LINUX_SH),y)
+ifeq ($(ADK_TARGET_LIB_GLIBC),)
+ ${CP} ${STAGING_TARGET_DIR}/lib/m4-nofpu/libgcc*.so* ${IDIR_LIBGCC}/$(ADK_TARGET_LIBC_PATH)
+endif
+else
+ ${CP} ${STAGING_TARGET_DIR}/lib/libgcc*.so* ${IDIR_LIBGCC}/$(ADK_TARGET_LIBC_PATH)
+endif
+
+include ${ADK_TOPDIR}/mk/pkg-bottom.mk