From 108dbac584a1ffc505dc2d02d95ebb2c5e3ddaf7 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb <wbx@openadk.org> Date: Sat, 8 Feb 2014 14:50:14 +0100 Subject: fix musl compile --- package/squeezelite/Makefile | 3 ++- package/squeezelite/patches/patch-output_alsa_c | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 package/squeezelite/patches/patch-output_alsa_c diff --git a/package/squeezelite/Makefile b/package/squeezelite/Makefile index f200cfee4..aee2b2b70 100644 --- a/package/squeezelite/Makefile +++ b/package/squeezelite/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= squeezelite PKG_VERSION:= 1.5 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= 7605af4d64291495645f88575a564475 PKG_DESCR:= headless squeezebox emulator PKG_SECTION:= multimedia @@ -22,6 +22,7 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,SQUEEZELITE,squeezelite,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +TARGET_CPPFLAGS+= -D_GNU_SOURCE -D_POSIX_SOURCE CONFIG_STYLE:= manual INSTALL_STYLE:= manual diff --git a/package/squeezelite/patches/patch-output_alsa_c b/package/squeezelite/patches/patch-output_alsa_c new file mode 100644 index 000000000..7a3e8f836 --- /dev/null +++ b/package/squeezelite/patches/patch-output_alsa_c @@ -0,0 +1,13 @@ +--- squeezelite-1.5.orig/output_alsa.c 2014-01-24 11:24:16.000000000 +0100 ++++ squeezelite-1.5/output_alsa.c 2014-02-08 13:36:12.000000000 +0100 +@@ -670,8 +670,10 @@ void output_init_alsa(log_level level, c + LOG_INFO("memory locked"); + } + ++#if defined(__GLIBC__) + mallopt(M_TRIM_THRESHOLD, -1); + mallopt(M_MMAP_MAX, 0); ++#endif + + touch_memory(silencebuf, MAX_SILENCE_FRAMES * BYTES_PER_FRAME); + touch_memory(outputbuf->buf, outputbuf->size); -- cgit v1.2.3 From 4e93572589af66eee723efafa3939f6c5e0dd7cc Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb <wbx@openadk.org> Date: Sun, 9 Feb 2014 11:52:08 +0100 Subject: fix openjdk7 toolchain workaround, add symlinks to reduce size of toolchains --- TODO | 5 ++++- package/libstdcxx/Makefile | 11 +---------- package/openjdk7/Makefile | 2 +- toolchain/gcc/Makefile | 20 ++++++++++++++------ toolchain/kernel-headers/Makefile | 2 ++ 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 @@ -7,6 +7,8 @@ include $(TOPDIR)/mk/linux.mk 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 -- cgit v1.2.3