diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2014-03-17 19:16:45 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2014-03-17 19:16:45 +0100 |
commit | ce0418c732e0d950d3a3c0b2b6726a691b8a0eca (patch) | |
tree | 05d3966c80d16d17f03f1ab778780d6a445f4ee7 /mk | |
parent | 6c26b8016dda0c391a3a513c46998e16ce09cc4d (diff) |
add TOOLCHAIN_DIR support
establish an extra dir for toolchain. Better for preparing toolchain
for other projetcs without host tools only used by openadk.
Use /usr prefix. No symlink workarounds needed anymore.
Diffstat (limited to 'mk')
-rw-r--r-- | mk/build.mk | 17 | ||||
-rw-r--r-- | mk/vars.mk | 19 |
2 files changed, 21 insertions, 15 deletions
diff --git a/mk/build.mk b/mk/build.mk index 821548428..079af1e30 100644 --- a/mk/build.mk +++ b/mk/build.mk @@ -170,6 +170,9 @@ endif ${STAGING_TARGET_DIR} ${STAGING_TARGET_DIR}/etc ${STAGING_HOST_DIR}: mkdir -p ${STAGING_TARGET_DIR}/{bin,etc,lib,usr/bin,usr/include,usr/lib/pkgconfig} \ ${STAGING_HOST_DIR}/{bin,lib,usr/bin,usr/lib,usr/include} + for i in lib64 lib32 libx32;do; \ + cd ${STAGING_TARGET_DIR}/; ln -sf lib $$i; \ + done ${STAGING_TARGET_DIR}/etc/ipkg.conf: ${STAGING_TARGET_DIR}/etc ifeq ($(ADK_TARGET_PACKAGE_IPKG),y) @@ -261,7 +264,7 @@ cleandir: @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) + rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) rm -f .menu .tmpconfig.h .rebuild* ${TOPDIR}/package/Depends.mk ${TOPDIR}/prereq.mk @@ -269,16 +272,16 @@ cleantoolchain: @$(TRACE) cleantoolchain @rm -rf $(BUILD_DIR_PFX) $(TARGET_DIR_PFX) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) + @rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) @rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) @rm -f .menu .tmpconfig.h .rebuild* ${TOPDIR}/package/Depends.mk distclean: @$(TRACE) distclean @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) - @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \ + @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DL_DIR) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) + @rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) @rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) @rm -f .adkinit .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \ .menu ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG .rebuild.* @@ -449,9 +452,9 @@ _mconfig2: ${CONFIG}/conf modconfig .menu distclean: @$(MAKE) -C $(CONFIG) clean - @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \ + @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DL_DIR) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_TARGET_DIR_PFX) $(TOOLS_BUILD_DIR) + @rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_TARGET_DIR_PFX) $(TOOLS_BUILD_DIR) @rm -rf $(STAGING_HOST_DIR_PFX) $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) @rm -f .adkinit .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \ .menu .rebuild.* ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG @@ -479,7 +482,7 @@ bulktoolchain: if [ $$arch = "armhf" ];then arch=arm; else arch=$$arch;fi; \ tabi=$$(grep ^ADK_TARGET_ABI= .config|cut -d \" -f 2);\ if [ -z $$tabi ];then abi="";else abi=_$$tabi;fi; \ - tar -cvJf ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}$${abi}.tar.xz host_* target_$${arch}_$${libc}$${abi}; \ + tar -cvJf ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}$${abi}.tar.xz toolchain_${GNU_HOST_NAME} target_$${arch}_$${libc}$${abi}; \ $(GMAKE) cleantoolchain; \ rm .config; \ ) 2>&1 | tee $(TOPDIR)/firmware/toolchain_build.log; \ diff --git a/mk/vars.mk b/mk/vars.mk index dc030f0ca..699f3eda4 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -20,13 +20,14 @@ endif TOOLS_BUILD_DIR= $(BASE_DIR)/tools_build SCRIPT_DIR:= $(BASE_DIR)/scripts STAGING_HOST_DIR:= ${BASE_DIR}/host_${GNU_HOST_NAME} +TOOLCHAIN_DIR:= ${BASE_DIR}/toolchain_${GNU_HOST_NAME} # dirs for cleandir FW_DIR_PFX:= $(BASE_DIR)/firmware BUILD_DIR_PFX:= $(BASE_DIR)/build_* STAGING_PKG_DIR_PFX:= ${BASE_DIR}/pkg_* STAGING_TARGET_DIR_PFX:=${BASE_DIR}/target_* -TOOLCHAIN_BUILD_DIR_PFX=$(BASE_DIR)/toolchain_build_* +TOOLCHAIN_DIR_PFX= $(BASE_DIR)/toolchain_* STAGING_HOST_DIR_PFX:= ${BASE_DIR}/host_* TARGET_DIR_PFX:= $(BASE_DIR)/root_* @@ -36,7 +37,7 @@ FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIB BUILD_DIR:= ${BASE_DIR}/build_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC} STAGING_TARGET_DIR:= ${BASE_DIR}/target_${CPU_ARCH}_${ADK_TARGET_LIBC} STAGING_PKG_DIR:= ${BASE_DIR}/pkg_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC} -STAGING_HOST2TARGET:= ../target_${CPU_ARCH}_${ADK_TARGET_LIBC} +STAGING_HOST2TARGET:= ../../target_${CPU_ARCH}_${ADK_TARGET_LIBC} TOOLCHAIN_BUILD_DIR= $(BASE_DIR)/toolchain_build_${CPU_ARCH}_${ADK_TARGET_LIBC} else TARGET_DIR:= $(BASE_DIR)/root_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} @@ -44,7 +45,7 @@ FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIB BUILD_DIR:= ${BASE_DIR}/build_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} STAGING_TARGET_DIR:= ${BASE_DIR}/target_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} STAGING_PKG_DIR:= ${BASE_DIR}/pkg_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} -STAGING_HOST2TARGET:= ../target_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} +STAGING_HOST2TARGET:= ../../target_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} TOOLCHAIN_BUILD_DIR= $(BASE_DIR)/toolchain_build_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} endif @@ -52,9 +53,9 @@ PACKAGE_DIR:= $(FW_DIR)/packages SCRIPT_TARGET_DIR:= ${STAGING_TARGET_DIR}/scripts # PATH variables -TARGET_PATH= ${SCRIPT_DIR}:${STAGING_TARGET_DIR}/scripts:${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} -HOST_PATH= ${SCRIPT_DIR}:${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} -AUTOTOOL_PATH= ${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${STAGING_TARGET_DIR}/scripts:${_PATH} +TARGET_PATH= ${SCRIPT_DIR}:${STAGING_TARGET_DIR}/scripts:${TOOLCHAIN_DIR}/usr/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} +HOST_PATH= ${SCRIPT_DIR}:${TOOLCHAIN_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} +AUTOTOOL_PATH= ${TOOLCHAIN_DIR}/usr/bin:${STAGING_HOST_DIR}/usr/bin:${STAGING_TARGET_DIR}/scripts:${_PATH} ifeq ($(ADK_DISABLE_HONOUR_CFLAGS),) GCC_CHECK:= GCC_HONOUR_COPTS=2 @@ -63,9 +64,11 @@ GCC_CHECK:= endif GNU_TARGET_NAME:= $(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX) -TARGET_CROSS:= $(STAGING_HOST_DIR)/bin/$(GNU_TARGET_NAME)- +TARGET_CROSS:= $(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)- TARGET_COMPILER_PREFIX?=${TARGET_CROSS} -CONFIGURE_TRIPLE:= --build=${GNU_HOST_NAME} --host=${GNU_TARGET_NAME} --target=${GNU_TARGET_NAME} +CONFIGURE_TRIPLE:= --build=${GNU_HOST_NAME} \ + --host=${GNU_TARGET_NAME} \ + --target=${GNU_TARGET_NAME} ifneq ($(strip ${ADK_USE_CCACHE}),) TARGET_COMPILER_PREFIX=ccache ${TARGET_CROSS} |