Radix cross Linux Toolchains

Toolchains for all supported by Radix cross Linux devices

80 Commits   2 Branches   13 Tags
     5         kx 
     5         kx 
     5         kx COMPONENT_TARGETS  = $(TOOLCHAIN_POWER8_GLIBC)
     5         kx COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
     5         kx 
     5         kx FLAVOURS = headers full
     5         kx 
     5         kx include ../../../build-system/config.mk
     5         kx 
     5         kx SOURCE_REQUIRES = sources/GNU/glibc
     5         kx 
     5         kx ifeq ($(FLAVOUR),headers)
    28         kx REQUIRES  = core/linux/6.1.53
     5         kx endif
     5         kx 
     5         kx ifeq ($(FLAVOUR),full)
     5         kx REQUIRES  = core/gcc/12.2.0^second
     5         kx endif
     5         kx 
     5         kx # ======= __END_OF_REQUIRES__ =======
     5         kx 
    11         kx tar_xz_archive  = $(SRC_PACKAGE_PATH)/GNU/glibc/glibc-2.37.tar.xz
     5         kx SRC_ARCHIVE     = $(tar_xz_archive)
    11         kx SRC_DIR         = $(TARGET_BUILD_DIR)/glibc-2.37
    11         kx src_dir_name    = glibc-2.37
     5         kx src_done        = $(TARGET_BUILD_DIR)/.source-done
     5         kx 
     5         kx PATCHES         = PATCHES
     5         kx 
     5         kx full_dir        = $(TARGET_BUILD_DIR)/build-full
     5         kx headers_dir     = $(TARGET_BUILD_DIR)/build-headers
     5         kx 
     5         kx sysroot_dir     = $(TOOLCHAIN_PATH)/$(TARGET)/sys-root
     5         kx 
     5         kx headers_target  = $(TARGET_BUILD_DIR)/.headers-installed
     5         kx full_target     = $(TARGET_BUILD_DIR)/.installed
     5         kx 
     5         kx 
     5         kx 
     5         kx ifeq ($(FLAVOUR),headers)
     5         kx BUILD_TARGETS = $(headers_target)
     5         kx endif
     5         kx 
     5         kx ifeq ($(FLAVOUR),full)
     5         kx BUILD_TARGETS = $(full_target)
     5         kx endif
     5         kx 
     5         kx include ../../../build-system/core.mk
     5         kx 
     5         kx 
     5         kx env_sysroot     = install_root=$(sysroot_dir)
     5         kx 
     5         kx 
     5         kx CC           = $(CCACHE)$(TOOLCHAIN_PATH)/bin/$(TARGET)-gcc -m32
     5         kx CXX          = $(CCACHE)$(TOOLCHAIN_PATH)/bin/$(TARGET)-g++ -m32
     5         kx 
     5         kx environment  = AS=$(TOOLCHAIN_PATH)/bin/$(TARGET)-as
     5         kx environment += LD=$(TOOLCHAIN_PATH)/bin/$(TARGET)-ld
     5         kx environment += CC="$(CC)"
     5         kx environment += CXX="$(CXX)"
     5         kx environment += AR=$(TOOLCHAIN_PATH)/bin/$(TARGET)-ar
     5         kx environment += RANLIB=$(TOOLCHAIN_PATH)/bin/$(TARGET)-ranlib
     5         kx 
     5         kx environment += PATH=$(TOOLCHAIN_PATH)/bin:$(PATH)
     5         kx 
     5         kx environment += BUILD_CC="$(CCACHE)/usr/bin/gcc"
     5         kx 
     5         kx LIBSUFFIX    =
     5         kx 
     5         kx ifeq ($(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC))
     5         kx environment += CFLAGS="-g -O3 -mcpu=power8 -mlong-double-128"
     5         kx endif
     5         kx 
     5         kx ifeq ($(TOOLCHAIN),$(TOOLCHAIN_POWER9_GLIBC))
     5         kx environment += CFLAGS="-g -O3 -mcpu=power9 -mlong-double-128"
     5         kx endif
     5         kx 
     5         kx LIBSUFFIX    = 32
     5         kx 
     5         kx TARGET32 = $(shell echo $(TARGET) | sed 's/ppc64/ppc/')
     5         kx 
     5         kx 
     5         kx ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC) $(TOOLCHAIN_POWER9_GLIBC)),)
     5         kx extra_configure_switches   = --libdir=/usr/lib$(LIBSUFFIX)
     5         kx extra_configure_switches  += --with-headers=$(sysroot_dir)/usr/include
     5         kx ifeq ($(FLAVOUR),headers)
     5         kx extra_configure_switches  += --with-binutils=$(TOOLCHAIN_PATH)/bin
     5         kx extra_configure_switches  += --enable-kernel=3.2.0
     5         kx extra_configure_switches  += --disable-profile
     5         kx extra_configure_switches  += --enable-bind-now
     5         kx extra_configure_switches  += --without-gd
     5         kx extra_configure_switches  += --without-cvs
     5         kx endif
     5         kx ifeq ($(FLAVOUR),full)
     5         kx extra_configure_switches  += --with-binutils=$(TOOLCHAIN_PATH)/bin
     5         kx extra_configure_switches  += --enable-kernel=3.2.0
     5         kx extra_configure_switches  += --disable-profile
     5         kx extra_configure_switches  += --enable-bind-now
     5         kx extra_configure_switches  += --without-gd
     5         kx extra_configure_switches  += --without-cvs
     5         kx endif
     5         kx endif
     5         kx 
     5         kx 
     5         kx extra_configure_switches  += libc_cv_slibdir=/lib$(LIBSUFFIX)
     5         kx extra_configure_switches  += libc_cv_rtlddir=/lib$(LIBSUFFIX)
     5         kx 
     5         kx 
     5         kx 
     5         kx $(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP)
     5         kx 	$(UNPACK_SRC_ARCHIVE)
     5         kx 	$(APPLY_PATCHES)
     5         kx 	@touch $@
     5         kx 
     5         kx $(headers_target): $(src_done)
     5         kx 	@mkdir -p $(headers_dir)
     5         kx 	@cd $(headers_dir) && $(env_sysroot) $(environment) ../$(src_dir_name)/configure \
     5         kx 	  --prefix=/usr                \
     5         kx 	  --build=$(BUILD)             \
     5         kx 	  --host=$(TARGET32)           \
     5         kx 	  $(extra_configure_switches)
     5         kx 	@cd $(headers_dir) && $(MAKE) -j1 install-headers \
     5         kx 	                                  install-bootstrap-headers=yes $(env_sysroot)
     5         kx 	@cd $(headers_dir) && $(environment) $(MAKE) -j1 csu/subdir_lib
     5         kx 	# ======= install 'lib-names-32.h' =======
     5         kx 	@mkdir -p $(sysroot_dir)/usr/include/gnu
     5         kx 	@install --mode=0644 $(headers_dir)/gnu/lib-names-32.h $(sysroot_dir)/usr/include/gnu
     5         kx 	# ========================================
     5         kx 	@cd $(headers_dir) && $(environment) $(MAKE) -j1 csu/subdir_install $(env_sysroot)
     5         kx 	@$(environment) $(CC) -nostdlib -nostartfiles -shared -x c /dev/null \
     5         kx 	                      -o $(sysroot_dir)/usr/lib$(LIBSUFFIX)/libc.so
     5         kx 	@echo "  $(subst $(TOP_BUILD_DIR_ABS)/,,$(CURDIR))$(if $(FLAVOUR),:$(FLAVOUR),)" >> $(TOOLCHAIN_PATH)/README
     5         kx 	@touch $@
     5         kx 
     5         kx $(full_target): $(src_done)
     5         kx 	@mkdir -p $(full_dir)
     5         kx 	@echo "slibdir=/lib$(LIBSUFFIX)" >> $(full_dir)/configparms
     5         kx 	@echo "rtlddir=/lib$(LIBSUFFIX)" >> $(full_dir)/configparms
     5         kx 	@cd $(full_dir) && $(env_sysroot) $(environment) ../$(src_dir_name)/configure \
     5         kx 	  --prefix=/usr                \
     5         kx 	  --build=$(BUILD)             \
     5         kx 	  --host=$(TARGET32)           \
     5         kx 	  $(extra_configure_switches)
     5         kx 	@cd $(full_dir) && $(environment) $(MAKE) all
     5         kx 	@cd $(full_dir) && $(environment) $(MAKE) -j1 install $(env_sysroot)
     5         kx 	@echo "  $(subst $(TOP_BUILD_DIR_ABS)/,,$(CURDIR))$(if $(FLAVOUR),:$(FLAVOUR),)" >> $(TOOLCHAIN_PATH)/README
     5         kx 	@touch $@