Initial commit
Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled
Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled
This commit is contained in:
75
target/toolchain/Makefile
Normal file
75
target/toolchain/Makefile
Normal file
@@ -0,0 +1,75 @@
|
||||
#
|
||||
# Copyright (C) 2008-2009 Industrie Dial Face S.p.A.
|
||||
# Luigi 'Comio' Mantellini <luigi.mantellini@idf-hit.com>
|
||||
# Copyright (C) 2006-2008 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
include $(INCLUDE_DIR)/version.mk
|
||||
|
||||
override MAKEFLAGS=
|
||||
|
||||
TOOLCHAIN_NAME:=$(VERSION_DIST_SANITIZED)-toolchain-$(if $(CONFIG_VERSION_FILENAMES),$(VERSION_NUMBER)-)$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET))_gcc-$(GCCV)$(DIR_SUFFIX).$(HOST_OS)-$(HOST_ARCH)
|
||||
TOOLCHAIN_BUILD_DIR:=$(BUILD_DIR)/$(TOOLCHAIN_NAME)
|
||||
EXCLUDE_DIRS:= \
|
||||
*/initial \
|
||||
*/stamp \
|
||||
*/stampfiles \
|
||||
*/man \
|
||||
*/info
|
||||
|
||||
all: compile
|
||||
|
||||
TOOLCHAIN_PREFIX:=$(TOOLCHAIN_BUILD_DIR)/toolchain-$(ARCH)$(ARCH_SUFFIX)_gcc-$(GCCV)$(DIR_SUFFIX)
|
||||
|
||||
$(BIN_DIR)/$(TOOLCHAIN_NAME).tar.zst: clean
|
||||
mkdir -p $(TOOLCHAIN_BUILD_DIR)
|
||||
$(TAR) -cf - -C $(TOPDIR)/staging_dir/ \
|
||||
$(foreach exclude,$(EXCLUDE_DIRS),--exclude="$(exclude)") \
|
||||
toolchain-$(ARCH)$(ARCH_SUFFIX)_gcc-$(GCCV)$(DIR_SUFFIX) | \
|
||||
$(TAR) -xf - -C $(TOOLCHAIN_BUILD_DIR)
|
||||
|
||||
$(CP) \
|
||||
$(TOPDIR)/LICENSES \
|
||||
$(TOPDIR)/COPYING \
|
||||
./files/README.TOOLCHAIN \
|
||||
$(TOOLCHAIN_BUILD_DIR)/
|
||||
|
||||
$(CP) ./files/wrapper.sh $(TOOLCHAIN_PREFIX)/bin/$(REAL_GNU_TARGET_NAME)-wrapper.sh
|
||||
chmod +x $(TOOLCHAIN_PREFIX)/bin/$(REAL_GNU_TARGET_NAME)-wrapper.sh
|
||||
(cd $(TOOLCHAIN_PREFIX)/bin; \
|
||||
for app in cc gcc g++ c++ cpp ld as ; do \
|
||||
[ -f $(REAL_GNU_TARGET_NAME)-$${app} ] && mv $(REAL_GNU_TARGET_NAME)-$${app} $(REAL_GNU_TARGET_NAME)-$${app}.bin ; \
|
||||
ln -sf $(REAL_GNU_TARGET_NAME)-wrapper.sh $(REAL_GNU_TARGET_NAME)-$${app} ; \
|
||||
done; \
|
||||
)
|
||||
|
||||
@-( \
|
||||
find \
|
||||
$(TOOLCHAIN_BUILD_DIR)/*/bin \
|
||||
$(TOOLCHAIN_BUILD_DIR)/*/*/bin \
|
||||
$(TOOLCHAIN_BUILD_DIR)/*/libexec \
|
||||
-type f; \
|
||||
) | xargs strip 2>/dev/null >/dev/null
|
||||
|
||||
echo REVISION:="$(REVISION)" > $(TOOLCHAIN_BUILD_DIR)/version.mk
|
||||
find $(TOOLCHAIN_BUILD_DIR) -name .git | $(XARGS) rm -rf
|
||||
find $(TOOLCHAIN_BUILD_DIR) -name .svn | $(XARGS) rm -rf
|
||||
find $(TOOLCHAIN_BUILD_DIR) -name CVS | $(XARGS) rm -rf
|
||||
mkdir -p $(BIN_DIR)
|
||||
(cd $(BUILD_DIR); \
|
||||
tar -I '$(STAGING_DIR_HOST)/bin/zstd -T0 --ultra -20' -cf $@ $(TOOLCHAIN_NAME) \
|
||||
--mtime="$(shell date --date=@$(SOURCE_DATE_EPOCH))"; \
|
||||
)
|
||||
|
||||
download:
|
||||
prepare:
|
||||
compile: $(BIN_DIR)/$(TOOLCHAIN_NAME).tar.zst
|
||||
install: compile
|
||||
|
||||
clean:
|
||||
rm -rf $(TOOLCHAIN_BUILD_DIR) $(BIN_DIR)/$(TOOLCHAIN_NAME).tar.zst
|
||||
Reference in New Issue
Block a user