diff options
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | mk/build.mk | 36 | ||||
-rw-r--r-- | mk/vars.mk | 11 | ||||
-rw-r--r-- | package/MesaLib/Makefile | 2 | ||||
-rw-r--r-- | package/busybox/Makefile | 16 | ||||
-rw-r--r-- | package/cyrus-sasl/Makefile | 4 | ||||
-rw-r--r-- | package/eglibc/Makefile | 2 | ||||
-rw-r--r-- | package/glibc/Makefile | 2 | ||||
-rw-r--r-- | package/libaudiofile/Makefile | 2 | ||||
-rw-r--r-- | package/ncurses/Makefile | 2 | ||||
-rw-r--r-- | package/postgresql/Makefile | 2 | ||||
-rw-r--r-- | package/tcpdump/Makefile | 2 | ||||
-rw-r--r-- | package/uclibc/Makefile | 2 | ||||
-rw-r--r-- | package/x11-headers/Makefile | 28 | ||||
-rw-r--r-- | scripts/scan-tools.sh | 3 |
15 files changed, 49 insertions, 69 deletions
@@ -191,7 +191,7 @@ NO_ERROR=0 echo "GMAKE:=$$(which gmake)" >>prereq.mk ;\ fi @echo "GNU_HOST_NAME:=$$(${CC} -dumpmachine)" >>prereq.mk - @echo "HOSTARCH:=$$(${CC} -dumpmachine | sed -e s'/-.*//' \ + @echo "ARCH_FOR_BUILD:=$$(${CC} -dumpmachine | sed -e s'/-.*//' \ -e 's/sparc.*/sparc/' \ -e 's/armeb.*/armeb/g' \ -e 's/arm.*/arm/g' \ @@ -205,8 +205,6 @@ NO_ERROR=0 )" >>prereq.mk @echo 'CC_FOR_BUILD:=${CC}' >>prereq.mk @echo 'CXX_FOR_BUILD:=${CXX}' >>prereq.mk - @echo 'HOSTCC:=${CC}' >>prereq.mk - @echo 'HOSTCXX:=${CXX}' >>prereq.mk @echo 'LANGUAGE:=C' >>prereq.mk @echo 'LC_ALL:=C' >>prereq.mk @echo 'MAKE:=$${GMAKE}' >>prereq.mk diff --git a/mk/build.mk b/mk/build.mk index 8ac41f3a5..708cb5cab 100644 --- a/mk/build.mk +++ b/mk/build.mk @@ -300,21 +300,21 @@ endif ifeq ($(ADKtype),ibm-x40) @echo ADK_LINUX_NATIVE=y >> $(TOPDIR)/.defconfig @echo ADK_TARGET_SYSTEM_IBM_X40=y >> $(TOPDIR)/.defconfig - @sed -e "s#config ADK_TARGET#config ADK_NATIVE#" target/$(HOSTARCH)/sys-available/$(ADKtype) > \ - target/$(HOSTARCH)/sys-enabled/.$(ADKtype) + @sed -e "s#config ADK_TARGET#config ADK_NATIVE#" target/$(ARCH_FOR_BUILD)/sys-available/$(ADKtype) > \ + target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype) @echo "choice" > $(TOPDIR)/target/config/Config.in.native @echo "prompt \"Target system (autodetected)\"" >> $(TOPDIR)/target/config/Config.in.native - @echo "source \"target/$(HOSTARCH)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native + @echo "source \"target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native @echo "endchoice" >> $(TOPDIR)/target/config/Config.in.native endif ifeq ($(ADKtype),lemote-yeelong) @echo ADK_LINUX_NATIVE=y >> $(TOPDIR)/.defconfig @echo ADK_TARGET_SYSTEM_LEMOTE_YEELONG=y >> $(TOPDIR)/.defconfig - @sed -e "s#config ADK_TARGET#config ADK_NATIVE#" target/$(HOSTARCH)/sys-available/$(ADKtype) > \ - target/$(HOSTARCH)/sys-enabled/.$(ADKtype) + @sed -e "s#config ADK_TARGET#config ADK_NATIVE#" target/$(ARCH_FOR_BUILD)/sys-available/$(ADKtype) > \ + target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype) @echo "choice" > $(TOPDIR)/target/config/Config.in.native @echo "prompt \"Target system (autodetected)\"" >> $(TOPDIR)/target/config/Config.in.native - @echo "source \"target/$(HOSTARCH)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native + @echo "source \"target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native @echo "endchoice" >> $(TOPDIR)/target/config/Config.in.native endif @echo 'source "target/config/Config.in.arch.default"' > target/config/Config.in.arch @@ -383,20 +383,20 @@ ifneq (,$(filter CYGWIN%,${OStype})) endif ifeq ($(ADKtype),ibmx-40) @echo ADK_TARGET_SYSTEM_IBM_X40=y >> $(TOPDIR)/all.config - @sed -e "s#TARGET#NATIVE#" target/$(HOSTARCH)/sys-available/$(ADKtype) > \ - target/$(HOSTARCH)/sys-enabled/.$(ADKtype) + @sed -e "s#TARGET#NATIVE#" target/$(ARCH_FOR_BUILD)/sys-available/$(ADKtype) > \ + target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype) @echo "choice" > $(TOPDIR)/target/config/Config.in.native @echo "prompt \"Target system (autodetected)\"" >> $(TOPDIR)/target/config/Config.in.native - @echo "source \"target/$(HOSTARCH)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native + @echo "source \"target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native @echo "endchoice" >> $(TOPDIR)/target/config/Config.in.native endif ifeq ($(ADKtype),lemote-yeelong) @echo ADK_TARGET_SYSTEM_LEMOTE_YEELONG=y >> $(TOPDIR)/all.config - @sed -e "s#TARGET#NATIVE#" target/$(HOSTARCH)/sys-available/$(ADKtype) > \ - target/$(HOSTARCH)/sys-enabled/.$(ADKtype) + @sed -e "s#TARGET#NATIVE#" target/$(ARCH_FOR_BUILD)/sys-available/$(ADKtype) > \ + target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype) @echo "choice" > $(TOPDIR)/target/config/Config.in.native @echo "prompt \"Target system (autodetected)\"" >> $(TOPDIR)/target/config/Config.in.native - @echo "source \"target/$(HOSTARCH)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native + @echo "source \"target/$(ARCH_FOR_BUILD)/sys-enabled/.$(ADKtype)\"" >> $(TOPDIR)/target/config/Config.in.native @echo "endchoice" >> $(TOPDIR)/target/config/Config.in.native endif @echo 'source "target/config/Config.in.arch.default"' > target/config/Config.in.arch @@ -549,20 +549,20 @@ bulkallmod: done <${TOPDIR}/target/arch.lst ;\ done -${TOPDIR}/bin/tools/pkgmaker: tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c +${TOPDIR}/bin/tools/pkgmaker: $(TOPDIR)/tools/adk/pkgmaker.c $(TOPDIR)/tools/adk/sortfile.c $(TOPDIR)/tools/adk/strmap.c @mkdir -p $(TOPDIR)/bin/tools - @$(HOSTCC) -Wall -g -o $@ tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c + @$(CC_FOR_BUILD) -Wall -g -o $@ tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c -${TOPDIR}/bin/tools/pkgrebuild: - @$(HOSTCC) -Wall -g -o $@ tools/adk/pkgrebuild.c tools/adk/strmap.c +${TOPDIR}/bin/tools/pkgrebuild: $(TOPDIR)/tools/adk/pkgrebuild.c $(TOPDIR)/tools/adk/strmap.c + @$(CC_FOR_BUILD) -Wall -g -o $@ tools/adk/pkgrebuild.c tools/adk/strmap.c package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) ${TOPDIR}/bin/tools/pkgmaker ${TOPDIR}/bin/tools/pkgrebuild @echo "Generating menu structure ..." @$(TOPDIR)/bin/tools/pkgmaker @:>.menu -${TOPDIR}/bin/tools/depmaker: - $(HOSTCC) -g -o $(TOPDIR)/bin/tools/depmaker $(TOPDIR)/tools/adk/depmaker.c +${TOPDIR}/bin/tools/depmaker: $(TOPDIR)/tools/adk/depmaker.c + $(CC_FOR_BUILD) -g -o $(TOPDIR)/bin/tools/depmaker $(TOPDIR)/tools/adk/depmaker.c dep: $(TOPDIR)/bin/tools/depmaker @echo "Generating dependencies ..." diff --git a/mk/vars.mk b/mk/vars.mk index 1bc167e52..284b2465b 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -87,12 +87,19 @@ TARGET_CFLAGS:= $(TARGET_OPTIMIZATION) $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident TARGET_LDFLAGS:= endif +# A nifty macro to make testing gcc features easier (from uClibc project) +check_gcc=$(shell \ + if $(CC) $(1) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; \ + then echo "$(1)"; else echo "$(2)"; fi) + +CF_FOR_BUILD=$(call check_gcc,-fhonour-copts,) + # host compiler flags CPPFLAGS_FOR_BUILD?= -CFLAGS_FOR_BUILD?= -O2 -Wall +CFLAGS_FOR_BUILD= -O2 -Wall $(CF_FOR_BUILD) CXXFLAGS_FOR_BUILD?= -O2 -Wall LDFLAGS_FOR_BUILD?= -FLAGS_FOR_BUILD:= ${CPPFLAGS_FOR_BUILD} ${CFLAGS_FOR_BUILD} ${LDFLAGS_FOR_BUILD} +FLAGS_FOR_BUILD= ${CPPFLAGS_FOR_BUILD} ${CFLAGS_FOR_BUILD} ${LDFLAGS_FOR_BUILD} PATCH= ${BASH} $(SCRIPT_DIR)/patch.sh SED:= sed -i -e diff --git a/package/MesaLib/Makefile b/package/MesaLib/Makefile index 6e752a8da..74b9cb474 100644 --- a/package/MesaLib/Makefile +++ b/package/MesaLib/Makefile @@ -42,7 +42,7 @@ CONFIGURE_ARGS+= --disable-static \ --with-dri-drivers=${DRI_DRIVERS},swrast \ --with-demos=xdemos -XAKE_FLAGS+= HOST_CC=${HOSTCC} GLSL_CL=${STAGING_HOST_DIR}/bin/glslcompile +XAKE_FLAGS+= HOST_CC=${CC_FOR_BUILD} GLSL_CL=${STAGING_HOST_DIR}/bin/glslcompile post-extract: (cd ${WRKBUILD}; rm -rf config.{cache,status}; \ diff --git a/package/busybox/Makefile b/package/busybox/Makefile index bcd582179..93098145a 100644 --- a/package/busybox/Makefile +++ b/package/busybox/Makefile @@ -35,30 +35,34 @@ ifeq ($(ADK_NATIVE),y) yes '' | \ $(MAKE) V=1 \ IPKG_ARCH="$(CPU_ARCH)" \ - ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE) + ARCH="$(ARCH)" HOSTCC="$(CC_FOR_BUILD)" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE) else yes '' | \ $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \ EXTRA_CFLAGS="$(TARGET_CFLAGS)" IPKG_ARCH="$(CPU_ARCH)" \ - ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE) + ARCH="$(ARCH)" HOSTCC="$(CC_FOR_BUILD)" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE) endif do-build: ifeq ($(ADK_NATIVE),y) $(MAKE) V=1 \ - IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox + IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(CC_FOR_BUILD)" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" \ + -C $(WRKBUILD) busybox else $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \ - IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox + IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(CC_FOR_BUILD)" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" \ + -C $(WRKBUILD) busybox endif do-install: ifeq ($(ADK_NATIVE),y) $(MAKE) V=1 \ - IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE) + IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(CC_FOR_BUILD)" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" \ + -C $(WRKBUILD) install $(MAKE_TRACE) else $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \ - IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE) + IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(CC_FOR_BUILD)" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" \ + -C $(WRKBUILD) install $(MAKE_TRACE) endif $(CP) $(WRKINST)/* $(IDIR_BUSYBOX)/ ifeq ($(ADK_DEBUG),y) diff --git a/package/cyrus-sasl/Makefile b/package/cyrus-sasl/Makefile index a7ce3a9c8..291186507 100644 --- a/package/cyrus-sasl/Makefile +++ b/package/cyrus-sasl/Makefile @@ -61,8 +61,8 @@ CONFIGURE_ARGS+= --disable-sample \ pre-build: ${MAKE} -C ${WRKBUILD}/include \ - CC="${HOSTCC}" \ - LINK="${HOSTCC} -o makemd5 -lc" \ + CC="${CC_FOR_BUILD}" \ + LINK="${CC_FOR_BUILD} -o makemd5 -lc" \ LIBS="" \ CFLAGS="" \ LDFLAGS="" \ diff --git a/package/eglibc/Makefile b/package/eglibc/Makefile index 60d35f1ee..4f72f2400 100644 --- a/package/eglibc/Makefile +++ b/package/eglibc/Makefile @@ -91,7 +91,7 @@ eglibc-dev-install: cd $(IDIR_EGLIBC_DEV)/lib && ln -sf libdl.so.2 libdl.so # header package $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-linux-$(KERNEL_VERSION)-$(KERNEL_RELEASE)/linux-$(KERNEL_VERSION) \ - HOSTCC=$(HOSTCC) ARCH=$(ARCH) V=1 \ + HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ INSTALL_HDR_PATH=$(IDIR_EGLIBC_DEV)/usr \ headers_install (cd $(WRKBUILD); \ diff --git a/package/glibc/Makefile b/package/glibc/Makefile index 7733cf7ca..43321ad22 100644 --- a/package/glibc/Makefile +++ b/package/glibc/Makefile @@ -62,7 +62,7 @@ glibc-dev-install: done # header package $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-linux-$(KERNEL_VERSION)-$(KERNEL_RELEASE)/linux-$(KERNEL_VERSION) \ - HOSTCC=$(HOSTCC) ARCH=$(ARCH) V=1 \ + HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ INSTALL_HDR_PATH=$(IDIR_GLIBC_DEV)/usr \ headers_install (cd $(WRKBUILD); \ diff --git a/package/libaudiofile/Makefile b/package/libaudiofile/Makefile index be4e93c61..e681dbee8 100644 --- a/package/libaudiofile/Makefile +++ b/package/libaudiofile/Makefile @@ -17,7 +17,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,LIBAUDIOFILE,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) CONFIGURE_ENV+= ac_cv_linux_vers=2 -CONFIGURE_ARGS+= --with-build-cc=${HOSTCC} +CONFIGURE_ARGS+= --with-build-cc=${CC_FOR_BUILD} post-install: ${INSTALL_DIR} ${IDIR_LIBAUDIOFILE}/usr/lib diff --git a/package/ncurses/Makefile b/package/ncurses/Makefile index 12259ddba..20f37ecac 100644 --- a/package/ncurses/Makefile +++ b/package/ncurses/Makefile @@ -27,7 +27,7 @@ $(eval $(call PKG_template,LIBNCURSES_DEV,libncurses-dev,${PKG_VERSION}-${PKG_RE CONFIGURE_ENV+= ac_cv_linux_vers=2 CONFIGURE_ARGS+= --without-cxx \ --without-cxx-binding \ - --with-build-cc=${HOSTCC} \ + --with-build-cc=${CC_FOR_BUILD} \ --without-progs \ --with-fallbacks \ --disable-termcap \ diff --git a/package/postgresql/Makefile b/package/postgresql/Makefile index f467cbaf0..4f6f1c671 100644 --- a/package/postgresql/Makefile +++ b/package/postgresql/Makefile @@ -41,7 +41,7 @@ pre-configure: ${PKG_CONFIGURE_ARGS} \ ); ${MAKE} -C "${WRKBUILD}/src/bin/pg_config" \ - CC="${HOSTCC}" \ + CC="${CC_FOR_BUILD}" \ DESTDIR="${WRKINST}" \ all install diff --git a/package/tcpdump/Makefile b/package/tcpdump/Makefile index 6eb5d62d3..652dc1b6b 100644 --- a/package/tcpdump/Makefile +++ b/package/tcpdump/Makefile @@ -22,7 +22,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,TCPDUMP,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) -CONFIGURE_ENV+= BUILD_CC="${TARGET_CC}" HOSTCC=${HOSTCC} \ +CONFIGURE_ENV+= BUILD_CC="${TARGET_CC}" HOSTCC=${CC_FOR_BUILD} \ ac_cv_linux_vers=2 \ td_cv_buggygetaddrinfo="no" CONFIGURE_ARGS+= --without-crypto diff --git a/package/uclibc/Makefile b/package/uclibc/Makefile index 90b9f49f9..5bb092294 100644 --- a/package/uclibc/Makefile +++ b/package/uclibc/Makefile @@ -55,7 +55,7 @@ uclibc-dev-install: PREFIX=$(IDIR_UCLIBC_DEV)/ \ DEVEL_PREFIX=/usr/ \ RUNTIME_PREFIX=$(IDIR_UCLIBC_DEV)/ \ - HOSTCC="$(HOSTCC)" \ + HOSTCC="$(CC_FOR_BUILD)" \ CPU_CFLAGS="$(TARGET_CFLAGS)" \ install_headers @find $(IDIR_UCLIBC_DEV) -name .install -exec rm {} \; diff --git a/package/x11-headers/Makefile b/package/x11-headers/Makefile deleted file mode 100644 index afba71098..000000000 --- a/package/x11-headers/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= x11-headers -PKG_VERSION:= 1.0 -PKG_RELEASE:= 1 -PKG_DESCR:= X11 header files -PKG_BUILDDEP:= xproto xtrans xextproto -PKG_BUILDDEP+= xcmiscproto bigreqsproto kbproto inputproto -PKG_SECTION:= devel - -NO_DISTFILES:= 1 - -include $(TOPDIR)/mk/package.mk - -$(eval $(call PKG_template,X11_HEADERS,x11-headers,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) - -CONFIG_STYLE:= manual -BUILD_STYLE:= manual -INSTALL_STYLE:= manual - -do-install: - ${INSTALL_DIR} ${IDIR_X11_HEADERS}/usr/include - ${CP} ${STAGING_TARGET_DIR}/usr/include/X11 ${IDIR_X11_HEADERS}/usr/include - -include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/scripts/scan-tools.sh b/scripts/scan-tools.sh index 2ad569de0..7d6d73e53 100644 --- a/scripts/scan-tools.sh +++ b/scripts/scan-tools.sh @@ -72,11 +72,10 @@ set +e cat >Makefile <<'EOF' include ${TOPDIR}/prereq.mk -HOSTCFLAGS+= -O2 all: run-test test: test.c - ${HOSTCC} ${HOSTCFLAGS} -o $@ $^ ${LDADD} + ${CC_FOR_BUILD} ${CFLAGS_FOR_BUILD} -o $@ $^ ${LDADD} run-test: test ./test |