summaryrefslogtreecommitdiff
path: root/mk/vars.mk
diff options
context:
space:
mode:
Diffstat (limited to 'mk/vars.mk')
-rw-r--r--mk/vars.mk72
1 files changed, 32 insertions, 40 deletions
diff --git a/mk/vars.mk b/mk/vars.mk
index 3798757bc..5fd4a51aa 100644
--- a/mk/vars.mk
+++ b/mk/vars.mk
@@ -10,46 +10,54 @@ MAKEFLAGS= $(EXTRA_MAKEFLAGS)
BUILD_USER= $(shell id -un)
BUILD_GROUP= $(shell id -gn)
+# some global dirs
BASE_DIR:= $(TOPDIR)
-DISTDIR?= ${BASE_DIR}/dl
-BUILD_DIR:= ${BASE_DIR}/build_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}
+ifeq ($(ADK_DL_DIR),)
+DL_DIR?= $(BASE_DIR)/dl
+else
+DL_DIR?= $(ADK_DL_DIR)
+endif
+TOOLS_BUILD_DIR= $(BASE_DIR)/tools_build
+SCRIPT_DIR:= $(BASE_DIR)/scripts
+STAGING_HOST_DIR:= ${BASE_DIR}/host_${GNU_HOST_NAME}
+
+# PFX dirs for cleandir
+FW_DIR_PFX:= $(BASE_DIR)/firmware
BUILD_DIR_PFX:= $(BASE_DIR)/build_*
-STAGING_PKG_DIR:= ${BASE_DIR}/pkg_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}
STAGING_PKG_DIR_PFX:= ${BASE_DIR}/pkg_*
-STAGING_HOST_DIR:= ${BASE_DIR}/host_${GNU_HOST_NAME}
+STAGING_TARGET_DIR_PFX:=${BASE_DIR}/target_*
+TOOLCHAIN_BUILD_DIR_PFX=$(BASE_DIR)/toolchain_build_*
STAGING_HOST_DIR_PFX:= ${BASE_DIR}/host_*
-# use headers and foo-config from system
-ifeq ($(ADK_NATIVE),y)
-STAGING_TARGET_DIR:=
-SCRIPT_TARGET_DIR:= /usr/bin
-else
+TARGET_DIR_PFX:= $(BASE_DIR)/root_*
+
ifeq ($(ADK_TARGET_ABI),)
+TARGET_DIR:= $(BASE_DIR)/root_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}
+FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}
+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_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}
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}
+FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI}
+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_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}
TOOLCHAIN_BUILD_DIR= $(BASE_DIR)/toolchain_build_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI}
endif
-SCRIPT_TARGET_DIR:= ${STAGING_TARGET_DIR}/scripts
-endif
-STAGING_TARGET_DIR_PFX:=${BASE_DIR}/target_*
-TOOLCHAIN_BUILD_DIR_PFX=$(BASE_DIR)/toolchain_build_*
-TOOLS_BUILD_DIR= $(BASE_DIR)/tools_build
-SCRIPT_DIR:= $(BASE_DIR)/scripts
-FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}
-FW_DIR_PFX:= $(BASE_DIR)/firmware
+
PACKAGE_DIR:= $(FW_DIR)/packages
-TARGET_DIR:= $(BASE_DIR)/root_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}
-TARGET_DIR_PFX:= $(BASE_DIR)/root_*
+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}
+
ifeq ($(ADK_TARGET_ABI_X32),y)
-GNU_TARGET_NAME= $(CPU_ARCH)-x32-linux
+GNU_TARGET_NAME= $(CPU_ARCH)-x32-linux-$(ADK_TARGET_SUFFIX)
else
GNU_TARGET_NAME= $(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX)
endif
@@ -60,15 +68,9 @@ else
GCC_CHECK:=
endif
-ifeq ($(ADK_NATIVE),y)
-TARGET_CROSS:=
-TARGET_COMPILER_PREFIX?=
-CONFIGURE_TRIPLE:=
-else
TARGET_CROSS:= $(STAGING_HOST_DIR)/bin/$(GNU_TARGET_NAME)-
TARGET_COMPILER_PREFIX?=${TARGET_CROSS}
CONFIGURE_TRIPLE:= --build=${GNU_HOST_NAME} --host=${GNU_TARGET_NAME} --target=${GNU_TARGET_NAME}
-endif
ifneq ($(strip ${ADK_USE_CCACHE}),)
TARGET_COMPILER_PREFIX=ccache ${TARGET_CROSS}
@@ -105,12 +107,6 @@ TARGET_LDFLAGS+= -Wl,--secure-plt
endif
endif
-ifneq ($(ADK_NATIVE),)
-TARGET_CPPFLAGS:=
-TARGET_CFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts
-TARGET_LDFLAGS:=
-endif
-
ifneq ($(ADK_TOOLCHAIN_GCC_USE_SSP),)
TARGET_CFLAGS+= -fstack-protector
TARGET_CXXFLAGS+= -fstack-protector
@@ -151,9 +147,9 @@ LDFLAGS_FOR_BUILD?= -L$(STAGING_HOST_DIR)/usr/lib
FLAGS_FOR_BUILD= ${CPPFLAGS_FOR_BUILD} ${CFLAGS_FOR_BUILD} ${LDFLAGS_FOR_BUILD}
PATCH= ${BASH} $(SCRIPT_DIR)/patch.sh
-SED:= sed -i -e
+SED:= PATH=${HOST_PATH} sed -i -e
LINUX_DIR:= $(BUILD_DIR)/linux
-KERNEL_MODULE_FLAGS:= ARCH=${ARCH} KERNELVERSION="2.6" \
+KERNEL_MODULE_FLAGS:= ARCH=${ARCH} \
KERNEL_PATH=${LINUX_DIR} KERNELDIR=${LINUX_DIR} KERNEL_DIR=${LINUX_DIR} \
PREFIX=/usr CROSS_COMPILE="${TARGET_CROSS}" \
LDFLAGS="$(ADK_TARGET_KERNEL_LDFLAGS)" CFLAGS_MODULE="-fhonour-copts" V=1
@@ -198,11 +194,7 @@ PKG_INSTALL:= PKG_INSTROOT=$(TARGET_DIR) \
PKG_STATE_DIR:= $(TARGET_DIR)/usr/lib/pkg
endif
-ifeq ($(ADK_NATIVE),y)
-RSTRIP:= prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh
-else
RSTRIP:= PATH="$(TARGET_PATH)" prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh
-endif
STATCMD:=$(shell if stat -qs .>/dev/null 2>&1; then echo 'stat -f %z';else echo 'stat -c %s';fi)