buildroot/package/environment-setup/environment-setup.mk
Angelo Compagnucci 8a8a873455 package/environment-setup: add better kernel handling
Exporting ARCH and KERNELDIR makes easier to compile an external kernel
or out of tree kernel modules.

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2020-12-01 21:52:46 +01:00

42 lines
1.5 KiB
Makefile

################################################################################
#
# environment-setup
#
################################################################################
ENVIRONMENT_SETUP_FILE = $(HOST_DIR)/environment-setup
define HOST_ENVIRONMENT_SETUP_INSTALL_CMDS
cp package/environment-setup/environment-setup $(ENVIRONMENT_SETUP_FILE)
for var in $(TARGET_CONFIGURE_OPTS); do \
printf "export \"$$var\"\n" >> $(ENVIRONMENT_SETUP_FILE); \
done
printf "export \"ARCH=$(KERNEL_ARCH)\"\n" >> $(ENVIRONMENT_SETUP_FILE)
printf "export \"CROSS_COMPILE=$(TARGET_CROSS)\"\n" >> $(ENVIRONMENT_SETUP_FILE)
printf "export \"CONFIGURE_FLAGS=--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--program-prefix=\"\n" >> $(ENVIRONMENT_SETUP_FILE)
printf "alias configure=\"./configure \$${CONFIGURE_FLAGS}\"\n" \
>> $(ENVIRONMENT_SETUP_FILE)
printf "alias cmake=\"cmake \
-DCMAKE_TOOLCHAIN_FILE=$(HOST_DIR)/share/buildroot/toolchainfile.cmake \
-DCMAKE_INSTALL_PREFIX=/usr\"\n" >> $(ENVIRONMENT_SETUP_FILE)
$(SED) 's%$(HOST_DIR)%\$$SDK_PATH%g' \
-e 's%$(HOST_DIR)/bin/%%g' \
-e '/^export "PATH=/c\' \
$(ENVIRONMENT_SETUP_FILE)
printf "export \"PATH=\$$SDK_PATH/bin:\$$SDK_PATH/sbin:\$$PATH\"\n" \
>> $(ENVIRONMENT_SETUP_FILE)
$(if $(BR2_LINUX_KERNEL),\
printf "export \"KERNELDIR=$(LINUX_BUILDDIR)\"\n" \
>> $(ENVIRONMENT_SETUP_FILE),)
endef
$(eval $(host-generic-package))