Radix cross Linux Toolchains

Toolchains for all supported by Radix cross Linux devices

80 Commits   2 Branches   13 Tags
Index: build-system/config.mk
===================================================================
--- build-system/config.mk	(revision 48)
+++ build-system/config.mk	(revision 49)
@@ -328,6 +328,24 @@
 M1000_GLIBC_SPEC = BaikalElectronics M1000 GNU Libc toolchain
 
 
+# PPC8-GLIBC
+TOOLCHAIN_PPC8_GLIBC = ppc8-glibc
+
+PPC8_GLIBC_ARCH   = ppc-power8-linux-gnu
+PPC8_GLIBC_DIR    = ppc-POWER8-linux-glibc
+PPC8_GLIBC_PATH   = $(TOOLCHAINS_BASE_PATH)/$(PPC8_GLIBC_DIR)
+###                |---Toolchain-spec-handy-ruler----------------|
+PPC8_GLIBC_SPEC   = Openpower POWER8 MSB GNU Libc toolchain
+
+# PPC9-GLIBC
+TOOLCHAIN_PPC9_GLIBC = ppc9-glibc
+
+PPC9_GLIBC_ARCH   = ppc-power9-linux-gnu
+PPC9_GLIBC_DIR    = ppc-POWER9-linux-glibc
+PPC9_GLIBC_PATH   = $(TOOLCHAINS_BASE_PATH)/$(PPC9_GLIBC_DIR)
+###                |---Toolchain-spec-handy-ruler----------------|
+PPC9_GLIBC_SPEC   = Openpower POWER9 MSB GNU Libc toolchain
+
 # POWER8-GLIBC
 TOOLCHAIN_POWER8_GLIBC = power8-glibc
 
Index: build-system/targets-config.mk.template
===================================================================
--- build-system/targets-config.mk.template	(revision 48)
+++ build-system/targets-config.mk.template	(revision 49)
@@ -91,6 +91,12 @@
 # a33xx-glibc:
 BUILD_A33XX_GLIBC = true
 
+# ppc8-glibc:
+BUILD_PPC8_GLIBC = true
+
+# ppc9-glibc:
+BUILD_PPC9_GLIBC = true
+
 # power8-glibc:
 BUILD_POWER8_GLIBC = true
 
Index: core/binutils/2.43.1/Makefile
===================================================================
--- core/binutils/2.43.1/Makefile	(revision 48)
+++ core/binutils/2.43.1/Makefile	(revision 49)
@@ -31,6 +31,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -517,6 +519,36 @@
 
 
 
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC)),)
+extra_configure_switches  = '--with-pkgversion=Radix $(TOOLCHAINS_VERSION)'
+extra_configure_switches += '--with-bugurl=https://radix.pro'
+# experimental gold linker( DEFAULT_LD=ld.bfd ):
+extra_configure_switches += --enable-gold=yes
+extra_configure_switches += --enable-ld=default
+extra_configure_switches += --enable-werror=no
+# standard options:
+extra_configure_switches += --enable-multilib
+extra_configure_switches += --enable-plugins
+extra_configure_switches += --enable-targets=ppc-radix-linux,ppc-linux,powerpc-radix-linux,powerpc-linux
+extra_configure_switches += --disable-compressed-debug-sections
+extra_configure_switches += --with-sysroot=$(sysroot_dir)
+endif
+
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC9_GLIBC)),)
+extra_configure_switches  = '--with-pkgversion=Radix $(TOOLCHAINS_VERSION)'
+extra_configure_switches += '--with-bugurl=https://radix.pro'
+# experimental gold linker( DEFAULT_LD=ld.bfd ):
+extra_configure_switches += --enable-gold=yes
+extra_configure_switches += --enable-ld=default
+extra_configure_switches += --enable-werror=no
+# standard options:
+extra_configure_switches += --enable-multilib
+extra_configure_switches += --enable-plugins
+extra_configure_switches += --enable-targets=ppc-radix-linux,ppc-linux,powerpc-radix-linux,powerpc-linux
+extra_configure_switches += --disable-compressed-debug-sections
+extra_configure_switches += --with-sysroot=$(sysroot_dir)
+endif
+
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC)),)
 extra_configure_switches  = '--with-pkgversion=Radix $(TOOLCHAINS_VERSION)'
 extra_configure_switches += '--with-bugurl=https://radix.pro'
Index: core/crypt/4.4.36/Makefile
===================================================================
--- core/crypt/4.4.36/Makefile	(revision 48)
+++ core/crypt/4.4.36/Makefile	(revision 49)
@@ -21,6 +21,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -196,6 +198,14 @@
 environment += CFLAGS="-g -O3 -march=armv8-a -mfpu=neon-fp-armv8 -mfloat-abi=hard"
 endif
 
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC))
+environment += CFLAGS="-g -O3 -mcpu=power8 -mlong-double-128"
+endif
+
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_PPC9_GLIBC))
+environment += CFLAGS="-g -O3 -mcpu=power9 -mlong-double-128"
+endif
+
 ifeq ($(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC))
 environment += CFLAGS="-g -O3 -mcpu=power8 -mlong-double-128"
 endif
Index: core/gcc/14.2.0/Makefile
===================================================================
--- core/gcc/14.2.0/Makefile	(revision 48)
+++ core/gcc/14.2.0/Makefile	(revision 49)
@@ -31,6 +31,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -1788,6 +1790,134 @@
 endif
 
 
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC)),)
+extra_configure_switches  = '--with-pkgversion=Radix $(TOOLCHAINS_VERSION)'
+extra_configure_switches += '--with-bugurl=https://radix.pro'
+extra_configure_switches += --libdir=$(TOOLCHAIN_PATH)/lib$(LIBSUFFIX)
+extra_configure_switches += --with-cpu-32=power8
+extra_configure_switches += --with-tune-32=power8
+extra_configure_switches += --with-long-double-128
+# gnu-indirect-function available for i[3456]86*|x86_64*|ppc*|ppc64*|s390*|arm*|aarch64*|mips* targets:
+extra_configure_switches += --enable-gnu-indirect-function
+extra_configure_switches += --enable-secureplt
+extra_configure_switches += --disable-isl-version-check
+ifeq ($(FLAVOUR),static)
+extra_configure_switches += --disable-libatomic
+extra_configure_switches += --disable-libgomp
+extra_configure_switches += --disable-libitm
+extra_configure_switches += --disable-libmudflap
+extra_configure_switches += --disable-libquadmath
+extra_configure_switches += --disable-libsanitizer
+extra_configure_switches += --disable-libssp
+extra_configure_switches += --disable-libstdc++-v3
+extra_configure_switches += --disable-threads
+extra_configure_switches += --enable-languages=c
+extra_configure_switches += --disable-shared
+extra_configure_switches += --enable-decimal-float=no
+extra_configure_switches += --disable-nls
+extra_configure_switches += --with-newlib
+endif
+ifeq ($(FLAVOUR),second)
+extra_configure_switches += --with-sysroot=$(sysroot_dir)
+extra_configure_switches += --disable-libatomic
+extra_configure_switches += --disable-libgomp
+extra_configure_switches += --disable-libitm
+extra_configure_switches += --disable-libmudflap
+extra_configure_switches += --disable-libquadmath
+extra_configure_switches += --disable-libsanitizer
+extra_configure_switches += --disable-libssp
+extra_configure_switches += --disable-libstdc++-v3
+extra_configure_switches += --enable-languages=c
+extra_configure_switches += --enable-decimal-float=no
+extra_configure_switches += --disable-nls
+endif
+ifeq ($(FLAVOUR),full)
+extra_configure_switches += --with-sysroot=$(sysroot_dir)
+extra_configure_switches += --enable-languages=c,c++,d,objc,obj-c++,fortran,go,lto,ada,m2
+extra_configure_switches += --enable-libstdcxx-dual-abi
+extra_configure_switches += --with-default-libstdcxx-abi=new
+extra_configure_switches += --disable-libstdcxx-pch
+extra_configure_switches += --disable-libunwind-exceptions
+extra_configure_switches += --with-linker-hash-style=gnu
+extra_configure_switches += --enable-gnu-unique-object
+extra_configure_switches += --enable-clocale=gnu
+extra_configure_switches += --enable-__cxa_atexit
+extra_configure_switches += --enable-threads=posix
+extra_configure_switches += --enable-default-ssp
+extra_configure_switches += --disable-libssp
+extra_configure_switches += --enable-shared
+extra_configure_switches += --enable-plugin
+extra_configure_switches += --enable-lto
+extra_configure_switches += --enable-nls
+extra_configure_switches += --with-included-gettext
+endif
+endif
+
+
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC9_GLIBC)),)
+extra_configure_switches  = '--with-pkgversion=Radix $(TOOLCHAINS_VERSION)'
+extra_configure_switches += '--with-bugurl=https://radix.pro'
+extra_configure_switches += --libdir=$(TOOLCHAIN_PATH)/lib$(LIBSUFFIX)
+extra_configure_switches += --with-cpu-32=power9
+extra_configure_switches += --with-tune-32=power9
+extra_configure_switches += --with-long-double-128
+# gnu-indirect-function available for i[3456]86*|x86_64*|ppc*|ppc64*|s390*|arm*|aarch64*|mips* targets:
+extra_configure_switches += --enable-gnu-indirect-function
+extra_configure_switches += --enable-secureplt
+extra_configure_switches += --disable-isl-version-check
+ifeq ($(FLAVOUR),static)
+extra_configure_switches += --disable-libatomic
+extra_configure_switches += --disable-libgomp
+extra_configure_switches += --disable-libitm
+extra_configure_switches += --disable-libmudflap
+extra_configure_switches += --disable-libquadmath
+extra_configure_switches += --disable-libsanitizer
+extra_configure_switches += --disable-libssp
+extra_configure_switches += --disable-libstdc++-v3
+extra_configure_switches += --disable-threads
+extra_configure_switches += --enable-languages=c
+extra_configure_switches += --disable-shared
+extra_configure_switches += --enable-decimal-float=no
+extra_configure_switches += --disable-nls
+extra_configure_switches += --with-newlib
+endif
+ifeq ($(FLAVOUR),second)
+extra_configure_switches += --with-sysroot=$(sysroot_dir)
+extra_configure_switches += --disable-libatomic
+extra_configure_switches += --disable-libgomp
+extra_configure_switches += --disable-libitm
+extra_configure_switches += --disable-libmudflap
+extra_configure_switches += --disable-libquadmath
+extra_configure_switches += --disable-libsanitizer
+extra_configure_switches += --disable-libssp
+extra_configure_switches += --disable-libstdc++-v3
+extra_configure_switches += --enable-languages=c
+extra_configure_switches += --enable-decimal-float=no
+extra_configure_switches += --disable-nls
+endif
+ifeq ($(FLAVOUR),full)
+extra_configure_switches += --with-sysroot=$(sysroot_dir)
+extra_configure_switches += --enable-languages=c,c++,d,objc,obj-c++,fortran,go,lto,ada,m2
+extra_configure_switches += --enable-libstdcxx-dual-abi
+extra_configure_switches += --with-default-libstdcxx-abi=new
+extra_configure_switches += --disable-libstdcxx-pch
+extra_configure_switches += --disable-libunwind-exceptions
+extra_configure_switches += --with-linker-hash-style=gnu
+extra_configure_switches += --enable-gnu-unique-object
+extra_configure_switches += --enable-clocale=gnu
+extra_configure_switches += --enable-__cxa_atexit
+extra_configure_switches += --enable-threads=posix
+extra_configure_switches += --enable-default-ssp
+extra_configure_switches += --disable-libssp
+extra_configure_switches += --enable-shared
+extra_configure_switches += --enable-plugin
+extra_configure_switches += --enable-lto
+extra_configure_switches += --enable-nls
+extra_configure_switches += --with-included-gettext
+endif
+endif
+
+
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC)),)
 extra_configure_switches  = '--with-pkgversion=Radix $(TOOLCHAINS_VERSION)'
 extra_configure_switches += '--with-bugurl=https://radix.pro'
Index: core/gdb/15.1/Makefile
===================================================================
--- core/gdb/15.1/Makefile	(revision 48)
+++ core/gdb/15.1/Makefile	(revision 49)
@@ -30,6 +30,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -326,8 +328,13 @@
 extra_configure_switches += --with-build-sysroot=$(sysroot_dir)
 endif
 
-ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER9_GLIBC)),)
-extra_configure_switches  = --with-multilib-list=m64,m32
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC)),)
+extra_configure_switches += --with-cpu=power8
+extra_configure_switches += --with-tune=power8
+extra_configure_switches += --with-build-sysroot=$(sysroot_dir)
+endif
+
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC9_GLIBC)),)
 extra_configure_switches += --with-cpu=power9
 extra_configure_switches += --with-tune=power9
 extra_configure_switches += --with-build-sysroot=$(sysroot_dir)
@@ -340,6 +347,13 @@
 extra_configure_switches += --with-build-sysroot=$(sysroot_dir)
 endif
 
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER9_GLIBC)),)
+extra_configure_switches  = --with-multilib-list=m64,m32
+extra_configure_switches += --with-cpu=power9
+extra_configure_switches += --with-tune=power9
+extra_configure_switches += --with-build-sysroot=$(sysroot_dir)
+endif
+
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8LE_GLIBC)),)
 extra_configure_switches  = --disable-multilib
 extra_configure_switches += --with-cpu=power8
Index: core/glibc/2.40/Makefile
===================================================================
--- core/glibc/2.40/Makefile	(revision 48)
+++ core/glibc/2.40/Makefile	(revision 49)
@@ -21,6 +21,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -88,6 +90,10 @@
                              $(TOOLCHAIN_A311X_GLIBC)),)
 REQUIRES  = core/linux/6.6.49
 endif
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC) \
+                             $(TOOLCHAIN_PPC9_GLIBC)),)
+REQUIRES  = core/linux/6.6.49
+endif
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC) \
                              $(TOOLCHAIN_POWER9_GLIBC)),)
 REQUIRES  = core/glibc/2.40-ppc32^headers
@@ -253,6 +259,14 @@
 environment += CFLAGS="-g -O3 -march=armv8-a -mfpu=neon-fp-armv8 -mfloat-abi=hard"
 endif
 
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC))
+environment += CFLAGS="-g -O3 -mcpu=power8 -mlong-double-128"
+endif
+
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_PPC9_GLIBC))
+environment += CFLAGS="-g -O3 -mcpu=power9 -mlong-double-128"
+endif
+
 ifeq ($(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC))
 environment += CFLAGS="-g -O3 -mcpu=power8 -mlong-double-128"
 endif
@@ -319,8 +333,11 @@
 LIB_NAMES_SUFFIX = 32
 endif
 
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC) $(TOOLCHAIN_PPC9_GLIBC)),)
+LIB_NAMES_SUFFIX = 32
+endif
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC) $(TOOLCHAIN_POWER9_GLIBC)),)
-LIB_NAMES_SUFFIX = 64-v1
+LIB_NAMES_SUFFIX = 32-v1
 endif
 
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8LE_GLIBC) $(TOOLCHAIN_POWER9LE_GLIBC)),)
@@ -772,6 +789,28 @@
 endif
 
 
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC) $(TOOLCHAIN_PPC9_GLIBC)),)
+extra_configure_switches   = --libdir=/usr/lib$(LIBSUFFIX)
+extra_configure_switches  += --with-headers=$(sysroot_dir)/usr/include
+ifeq ($(FLAVOUR),headers)
+extra_configure_switches  += --with-binutils=$(TOOLCHAIN_PATH)/bin
+extra_configure_switches  += --enable-kernel=3.2.0
+extra_configure_switches  += --disable-profile
+extra_configure_switches  += --enable-bind-now
+extra_configure_switches  += --without-gd
+extra_configure_switches  += --without-cvs
+endif
+ifeq ($(FLAVOUR),full)
+extra_configure_switches  += --with-binutils=$(TOOLCHAIN_PATH)/bin
+extra_configure_switches  += --enable-kernel=3.2.0
+extra_configure_switches  += --disable-profile
+extra_configure_switches  += --enable-bind-now
+extra_configure_switches  += --without-gd
+extra_configure_switches  += --without-cvs
+endif
+endif
+
+
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC) $(TOOLCHAIN_POWER9_GLIBC)),)
 extra_configure_switches   = --libdir=/usr/lib$(LIBSUFFIX)
 extra_configure_switches  += --with-headers=$(sysroot_dir)/usr/include
Index: core/linux/6.6.49/Makefile
===================================================================
--- core/linux/6.6.49/Makefile	(revision 48)
+++ core/linux/6.6.49/Makefile	(revision 49)
@@ -20,6 +20,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -74,7 +76,8 @@
 arch = mips
 endif
 
-ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC) $(TOOLCHAIN_POWER9_GLIBC) \
+ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC) $(TOOLCHAIN_PPC9_GLIBC) \
+                             $(TOOLCHAIN_POWER8_GLIBC) $(TOOLCHAIN_POWER9_GLIBC) \
                              $(TOOLCHAIN_POWER8LE_GLIBC) $(TOOLCHAIN_POWER9LE_GLIBC)),)
 arch = powerpc
 endif
Index: products/Makefile
===================================================================
--- products/Makefile	(revision 48)
+++ products/Makefile	(revision 49)
@@ -31,6 +31,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)
 
@@ -140,6 +142,12 @@
 REQUIRES  = products/A33XX-glibc/1.11.0
 endif
 
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_PPC8_GLIBC))
+REQUIRES  = products/PPC8-glibc/1.11.0
+endif
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_PPC9_GLIBC))
+REQUIRES  = products/PPC9-glibc/1.11.0
+endif
 ifeq ($(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC))
 REQUIRES  = products/POWER8-glibc/1.11.0
 endif
Index: products/PPC8-glibc/1.11.0/Makefile
===================================================================
--- products/PPC8-glibc/1.11.0/Makefile	(nonexistent)
+++ products/PPC8-glibc/1.11.0/Makefile	(revision 49)
@@ -0,0 +1,35 @@
+
+
+COMPONENT_TARGETS = $(TOOLCHAIN_PPC8_GLIBC)
+
+export TOOLCHAIN_VERSION = 1.11.0
+
+include ../../../build-system/config.mk
+
+REQUIRES  = core/gcc/14.2.0^full
+REQUIRES += tools/patchelf/0.18.0
+REQUIRES += core/gdb/15.1
+
+# ======= __END_OF_REQUIRES__ =======
+
+tarball_name    = $(TOOLCHAIN_DIR)-$(TOOLCHAIN_VERSION).tar.xz
+tarball         = $(TARGET_BUILD_DIR)/$(tarball_name)
+
+tarball_target  = $(TARGET_BUILD_DIR)/.tarball-created
+
+BUILD_TARGETS   = $(tarball_target)
+
+PRODUCT_TARGETS = $(tarball)
+
+include ../../../build-system/core.mk
+
+
+$(tarball): $(tarball_target)
+
+$(tarball_target):
+	@echo ""
+	@echo "Creating $(tarball_name) tarball..."
+	@cd $(TOOLCHAINS_BASE_PATH) ; \
+	  tar -cf - $(TOOLCHAIN_DIR)/$(TOOLCHAIN_VERSION) | xz --threads=0 > $(tarball_name)
+	@mv $(TOOLCHAINS_BASE_PATH)/$(tarball_name) $(TARGET_BUILD_DIR)
+	@touch $@
Index: products/PPC8-glibc/1.11.0/PPC8-TEST/.config
===================================================================
--- products/PPC8-glibc/1.11.0/PPC8-TEST/.config	(nonexistent)
+++ products/PPC8-glibc/1.11.0/PPC8-TEST/.config	(revision 49)
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+#################################################################
+#
+# default common variables:
+#
+if test -z "$HOST"; then
+  export HOST=x86_64-pc-linux-gnu
+fi
+
+if test -z "$TARGET"; then
+  export TARGET=ppc-power8-linux-gnu
+fi
+
+if test -z "$TOOLCHAIN_PATH"; then
+  export TOOLCHAIN_PATH=/opt/toolchains/ppc-POWER8-linux-glibc/1.11.0
+fi
+
+#
+# END of default common variables.
+#
+#################################################################
Index: products/PPC8-glibc/1.11.0/PPC8-TEST/build.sh
===================================================================
--- products/PPC8-glibc/1.11.0/PPC8-TEST/build.sh	(nonexistent)
+++ products/PPC8-glibc/1.11.0/PPC8-TEST/build.sh	(revision 49)
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+. ./.config
+
+export PATH=$TOOLCHAIN_PATH/bin:$PATH
+
+ARCH_FLAGS=" -g -O3 -mcpu=power8 -mlong-double-128"
+
+
+$TARGET-gcc -g -gdwarf-2 -fomit-frame-pointer $ARCH_FLAGS $FPU_FLAGS -I$TOOLCHAIN_PATH/$TARGET/include -c -o main.o main.c
+$TARGET-gcc $ARCH_FLAGS $FPU_FLAGS -o main main.o
+
+$TARGET-objdump -x main > main.map
+
+$TARGET-strip main -o main.elf
+
+$TARGET-objcopy -O srec main.elf main.srec
+$TARGET-objcopy -O ihex main.elf main.hex
+$TARGET-objdump -S -d main.o > main.asm
+$TARGET-objdump -S -d main > full.program.asm

Property changes on: products/PPC8-glibc/1.11.0/PPC8-TEST/build.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: products/PPC8-glibc/1.11.0/PPC8-TEST/clean.sh
===================================================================
--- products/PPC8-glibc/1.11.0/PPC8-TEST/clean.sh	(nonexistent)
+++ products/PPC8-glibc/1.11.0/PPC8-TEST/clean.sh	(revision 49)
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+rm -f full.program.asm
+rm -f main
+rm -f main.asm
+rm -f main.elf
+rm -f main.hex
+rm -f main.map
+rm -f main.o
+rm -f main.srec

Property changes on: products/PPC8-glibc/1.11.0/PPC8-TEST/clean.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: products/PPC8-glibc/1.11.0/PPC8-TEST/main.c
===================================================================
--- products/PPC8-glibc/1.11.0/PPC8-TEST/main.c	(nonexistent)
+++ products/PPC8-glibc/1.11.0/PPC8-TEST/main.c	(revision 49)
@@ -0,0 +1,17 @@
+
+#include <stdlib.h>
+#include <inttypes.h>
+
+int main()
+{
+   float d, f = 3.1415;
+
+   uint32_t a = 7, b = 3, c, r;
+
+   c = a / b;
+   r = a % b;
+
+   d = f * 2.1;
+
+   return( 0 );
+}
Index: products/PPC9-glibc/1.11.0/Makefile
===================================================================
--- products/PPC9-glibc/1.11.0/Makefile	(nonexistent)
+++ products/PPC9-glibc/1.11.0/Makefile	(revision 49)
@@ -0,0 +1,35 @@
+
+
+COMPONENT_TARGETS = $(TOOLCHAIN_PPC9_GLIBC)
+
+export TOOLCHAIN_VERSION = 1.11.0
+
+include ../../../build-system/config.mk
+
+REQUIRES  = core/gcc/14.2.0^full
+REQUIRES += tools/patchelf/0.18.0
+REQUIRES += core/gdb/15.1
+
+# ======= __END_OF_REQUIRES__ =======
+
+tarball_name    = $(TOOLCHAIN_DIR)-$(TOOLCHAIN_VERSION).tar.xz
+tarball         = $(TARGET_BUILD_DIR)/$(tarball_name)
+
+tarball_target  = $(TARGET_BUILD_DIR)/.tarball-created
+
+BUILD_TARGETS   = $(tarball_target)
+
+PRODUCT_TARGETS = $(tarball)
+
+include ../../../build-system/core.mk
+
+
+$(tarball): $(tarball_target)
+
+$(tarball_target):
+	@echo ""
+	@echo "Creating $(tarball_name) tarball..."
+	@cd $(TOOLCHAINS_BASE_PATH) ; \
+	  tar -cf - $(TOOLCHAIN_DIR)/$(TOOLCHAIN_VERSION) | xz --threads=0 > $(tarball_name)
+	@mv $(TOOLCHAINS_BASE_PATH)/$(tarball_name) $(TARGET_BUILD_DIR)
+	@touch $@
Index: products/PPC9-glibc/1.11.0/PPC9-TEST/.config
===================================================================
--- products/PPC9-glibc/1.11.0/PPC9-TEST/.config	(nonexistent)
+++ products/PPC9-glibc/1.11.0/PPC9-TEST/.config	(revision 49)
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+#################################################################
+#
+# default common variables:
+#
+if test -z "$HOST"; then
+  export HOST=x86_64-pc-linux-gnu
+fi
+
+if test -z "$TARGET"; then
+  export TARGET=ppc-power9-linux-gnu
+fi
+
+if test -z "$TOOLCHAIN_PATH"; then
+  export TOOLCHAIN_PATH=/opt/toolchains/ppc-POWER9-linux-glibc/1.11.0
+fi
+
+#
+# END of default common variables.
+#
+#################################################################
Index: products/PPC9-glibc/1.11.0/PPC9-TEST/build.sh
===================================================================
--- products/PPC9-glibc/1.11.0/PPC9-TEST/build.sh	(nonexistent)
+++ products/PPC9-glibc/1.11.0/PPC9-TEST/build.sh	(revision 49)
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+. ./.config
+
+export PATH=$TOOLCHAIN_PATH/bin:$PATH
+
+ARCH_FLAGS=" -g -O3 -mcpu=power9 -mlong-double-128"
+
+
+$TARGET-gcc -g -gdwarf-2 -fomit-frame-pointer $ARCH_FLAGS $FPU_FLAGS -I$TOOLCHAIN_PATH/$TARGET/include -c -o main.o main.c
+$TARGET-gcc $ARCH_FLAGS $FPU_FLAGS -o main main.o
+
+$TARGET-objdump -x main > main.map
+
+$TARGET-strip main -o main.elf
+
+$TARGET-objcopy -O srec main.elf main.srec
+$TARGET-objcopy -O ihex main.elf main.hex
+$TARGET-objdump -S -d main.o > main.asm
+$TARGET-objdump -S -d main > full.program.asm

Property changes on: products/PPC9-glibc/1.11.0/PPC9-TEST/build.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: products/PPC9-glibc/1.11.0/PPC9-TEST/clean.sh
===================================================================
--- products/PPC9-glibc/1.11.0/PPC9-TEST/clean.sh	(nonexistent)
+++ products/PPC9-glibc/1.11.0/PPC9-TEST/clean.sh	(revision 49)
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+rm -f full.program.asm
+rm -f main
+rm -f main.asm
+rm -f main.elf
+rm -f main.hex
+rm -f main.map
+rm -f main.o
+rm -f main.srec

Property changes on: products/PPC9-glibc/1.11.0/PPC9-TEST/clean.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: products/PPC9-glibc/1.11.0/PPC9-TEST/main.c
===================================================================
--- products/PPC9-glibc/1.11.0/PPC9-TEST/main.c	(nonexistent)
+++ products/PPC9-glibc/1.11.0/PPC9-TEST/main.c	(revision 49)
@@ -0,0 +1,17 @@
+
+#include <stdlib.h>
+#include <inttypes.h>
+
+int main()
+{
+   float d, f = 3.1415;
+
+   uint32_t a = 7, b = 3, c, r;
+
+   c = a / b;
+   r = a % b;
+
+   d = f * 2.1;
+
+   return( 0 );
+}
Index: tools/patchelf/0.18.0/Makefile
===================================================================
--- tools/patchelf/0.18.0/Makefile	(revision 48)
+++ tools/patchelf/0.18.0/Makefile	(revision 49)
@@ -21,6 +21,8 @@
 COMPONENT_TARGETS += $(TOOLCHAIN_RK358X_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_A33XX_GLIBC)
 
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC8_GLIBC)
+COMPONENT_TARGETS += $(TOOLCHAIN_PPC9_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER8_GLIBC)
 COMPONENT_TARGETS += $(TOOLCHAIN_POWER9_GLIBC)