summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-02-09 11:52:08 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2014-02-09 11:52:08 +0100
commit4e93572589af66eee723efafa3939f6c5e0dd7cc (patch)
tree6abbfe4af4c87f861c7d4126514279c079bb8928
parent8abe85c5a6920e3cea42c75193d22669285b84c7 (diff)
fix openjdk7 toolchain workaround, add symlinks to reduce size of toolchains
-rw-r--r--TODO5
-rw-r--r--package/libstdcxx/Makefile11
-rw-r--r--package/openjdk7/Makefile2
-rw-r--r--toolchain/gcc/Makefile20
-rw-r--r--toolchain/kernel-headers/Makefile2
5 files changed, 22 insertions, 18 deletions
diff --git a/TODO b/TODO
index a902a948b..eb515890b 100644
--- a/TODO
+++ b/TODO
@@ -1,6 +1,9 @@
+- cleanup toolchain building, add toolchain archiv creation target
+- update uclibc to git
+- update gcc to 4.8.2
+- port opkg with gpg signing
- add grsec kernel patch
- microblaze: add cfgfs partition to dts, add partition to spartan dts
-- use host-tools infrastructure for openjdk7
- evaluate libguestfs for image creation
- check for gcc and SSP again
- port w3m
diff --git a/package/libstdcxx/Makefile b/package/libstdcxx/Makefile
index 5c6cc2b2f..7910af6b7 100644
--- a/package/libstdcxx/Makefile
+++ b/package/libstdcxx/Makefile
@@ -16,12 +16,6 @@ endif
endif
endif
-ifeq ($(ADK_LINUX_MICROBLAZE),y)
-LIBSTDCXX_VER:= 18
-else
-LIBSTDCXX_VER:= 17
-endif
-
PKG_NAME:= libstdcxx
PKG_DESCR:= C++ support library
PKG_SECTION:= libs
@@ -41,10 +35,7 @@ do-install:
ifeq ($(ADK_NATIVE),y)
$(CP) /usr/lib/libstdc++.so* ${IDIR_LIBSTDCXX}/usr/lib
else
- (cd ${IDIR_LIBSTDCXX}/usr/${ADK_TARGET_LIBC_PATH}; ln -sf libstdc++.so.6.0.${LIBSTDCXX_VER} libstdc++.so.6)
- (cd ${IDIR_LIBSTDCXX}/usr/${ADK_TARGET_LIBC_PATH}; ln -sf libstdc++.so.6.0.${LIBSTDCXX_VER} libstdc++.so)
- (cd ${STAGING_TARGET_DIR}/${ADK_TARGET_LIBC_PATH}/; ln -sf libstdc++.so.6.0.${LIBSTDCXX_VER} libstdc++.so)
- $(CP) ${STAGING_TARGET_DIR}/${ADK_TARGET_LIBC_PATH}/libstdc++.so.6.0.${LIBSTDCXX_VER} ${IDIR_LIBSTDCXX}/usr/${ADK_TARGET_LIBC_PATH}
+ $(CP) ${STAGING_TARGET_DIR}/${ADK_TARGET_LIBC_PATH}/libstdc++.so* ${IDIR_LIBSTDCXX}/usr/${ADK_TARGET_LIBC_PATH}
-@rm ${IDIR_LIBSTDCXX}/usr/${ADK_TARGET_LIBC_PATH}/libstdc++.so.*-gdb.py
endif
diff --git a/package/openjdk7/Makefile b/package/openjdk7/Makefile
index d96e9ad53..b2371bb97 100644
--- a/package/openjdk7/Makefile
+++ b/package/openjdk7/Makefile
@@ -83,7 +83,7 @@ CONFIGURE_ARGS+= $(CONFIGURE_COMMON)
CONFIGURE_ARGS+= --disable-bootstrap
CONFIGURE_ENV+= LD_LIBRARY_PATH=$(STAGING_HOST_DIR)/usr/lib
-MAKE_ENV+= ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME) \
+MAKE_ENV+= ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/bin \
ALT_OPENWIN_HOME=$(STAGING_DIR)/usr/ \
ALT_CUPS_HEADERS_PATH=$(STAGING_DIR)/usr/include/ \
ALT_FREETYPE_HEADERS_PATH=$(STAGING_DIR)/usr/include/ \
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 6328585da..951684443 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -9,6 +9,7 @@ TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS))
include Makefile.inc
GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \
+ --with-bugurl="http://www.openadk.org/" \
--build=$(GNU_HOST_NAME) \
--host=$(GNU_HOST_NAME) \
--target=$(REAL_GNU_TARGET_NAME) \
@@ -118,7 +119,6 @@ endif
${GCC_CONFOPTS} \
--enable-languages=c \
--disable-shared \
- --with-newlib \
--without-headers
touch $@
@@ -166,9 +166,7 @@ $(WRKBUILD)/.compiled: $(GCC_BUILD_DIR_FINAL)/.configured
$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
PATH='$(TARGET_PATH)' $(MAKE) -C $(GCC_BUILD_DIR_FINAL) install
- # workaround if you cross-compile binutils
- @-rm $(STAGING_TARGET_DIR)/lib/libiberty.a $(STAGING_TARGET_DIR)/usr/lib/libiberty.a
- # Set up the symlinks to enable lying about target name.
+ # Set up the symlinks to enable lying about target name
set -e; \
cd $(STAGING_HOST_DIR); \
ln -sf $(REAL_GNU_TARGET_NAME) $(GNU_TARGET_NAME); \
@@ -177,8 +175,18 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
ln -sf $${app} \
$(GNU_TARGET_NAME)$${app##$(REAL_GNU_TARGET_NAME)}; \
done;
- # workaround for openjdk
- cd $(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/bin ; cp * ..
+ # remove duplicate tools
+ set -e; \
+ cd $(STAGING_HOST_DIR)/bin; \
+ for app in $(REAL_GNU_TARGET_NAME)-* ; do \
+ ln -sf ../$(REAL_GNU_TARGET_NAME)/bin/$${app##$(REAL_GNU_TARGET_NAME)-} $${app}; \
+ done;
+ # setup symlink, so that gcc/g++ find cc1plus
+ (cd $(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/ && \
+ ln -sf ../libexec .)
+ # setup symlink, so that gcc/g++ find stddef.h
+ (cd $(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/lib/ && \
+ ln -sf ../../host_${CPU_ARCH}_${ADK_TARGET_SUFFIX}_${ADK_TARGET_LIBC}/lib/gcc .)
# fix linking g++ apps with libtool
@-test -d $(STAGING_TARGET_DIR)/lib32 && \
cd $(STAGING_TARGET_DIR)/lib32 && \
diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile
index 2e5971f19..faa75336f 100644
--- a/toolchain/kernel-headers/Makefile
+++ b/toolchain/kernel-headers/Makefile
@@ -8,6 +8,8 @@ include ${TOPDIR}/mk/buildhlp.mk
$(WRKBUILD)/.headers:
$(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \
+ headers_check
+ $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \
INSTALL_HDR_PATH=$(STAGING_DIR)/usr \
headers_install
touch $@