summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mk/image.mk1
-rw-r--r--mk/linux-ver.mk6
-rw-r--r--package/gzip/Makefile4
-rw-r--r--package/mutt/Makefile4
-rw-r--r--package/ruby/Makefile9
-rw-r--r--package/ruby/patches/0001-fix-default-coroutine-selection.patch21
-rwxr-xr-xscripts/config.sub2
-rw-r--r--target/arch.lst1
-rw-r--r--target/config/Config.in.binutils11
-rw-r--r--target/config/Config.in.compiler10
-rw-r--r--target/config/Config.in.cpu9
-rw-r--r--target/config/Config.in.libc15
-rw-r--r--target/linux/Config.in.kernelcfg1
-rw-r--r--target/linux/Config.in.kernelversion8
-rw-r--r--target/linux/arch.lst1
-rw-r--r--target/loongarch/Makefile62
-rw-r--r--target/loongarch/kernel/qemu-loongarch7
-rw-r--r--target/loongarch/systems/qemu-loongarch7
-rw-r--r--toolchain/binutils/Makefile.inc6
-rw-r--r--toolchain/elf2flt/Makefile4
-rw-r--r--toolchain/gcc/Makefile.inc8
-rw-r--r--toolchain/glibc/Makefile.inc12
-rw-r--r--toolchain/uclibc-ng/Makefile.inc8
23 files changed, 156 insertions, 61 deletions
diff --git a/mk/image.mk b/mk/image.mk
index bc1fe5223..f17f26c12 100644
--- a/mk/image.mk
+++ b/mk/image.mk
@@ -229,6 +229,7 @@ createinitramfs: ${STAGING_TARGET_DIR}/${INITRAMFS}_list
echo 'CONFIG_INITRAMFS_ROOT_UID=0'; \
echo 'CONFIG_INITRAMFS_ROOT_GID=0'; \
echo 'CONFIG_INITRAMFS_IS_LARGE=n'; \
+ echo 'CONFIG_INITRAMFS_PRESERVE_MTIME=n'; \
) >> ${LINUX_DIR}/.config
ifeq ($(ADK_LINUX_KERNEL_COMP_XZ),y)
echo "CONFIG_RD_BZIP2=n" >> ${LINUX_DIR}/.config
diff --git a/mk/linux-ver.mk b/mk/linux-ver.mk
index 52648efe3..6126798f9 100644
--- a/mk/linux-ver.mk
+++ b/mk/linux-ver.mk
@@ -15,6 +15,12 @@ KERNEL_FILE_VER:= $(ADK_TARGET_LINUX_KERNEL_GIT)
KERNEL_RELEASE:= 1
KERNEL_VERSION:= $(ADK_TARGET_LINUX_KERNEL_GIT_VER)-$(KERNEL_RELEASE)
endif
+ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_5_19),y)
+KERNEL_FILE_VER:= 5.19
+KERNEL_RELEASE:= 1
+KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE)
+KERNEL_HASH:= ff240c579b9ee1affc318917de07394fc1c3bb49dac25ec1287370c2e15005a8
+endif
ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_5_15),y)
KERNEL_FILE_VER:= 5.15.23
KERNEL_RELEASE:= 1
diff --git a/package/gzip/Makefile b/package/gzip/Makefile
index 7c0ff0341..974956138 100644
--- a/package/gzip/Makefile
+++ b/package/gzip/Makefile
@@ -4,9 +4,9 @@
include $(ADK_TOPDIR)/rules.mk
PKG_NAME:= gzip
-PKG_VERSION:= 1.10
+PKG_VERSION:= 1.12
PKG_RELEASE:= 1
-PKG_HASH:= 8425ccac99872d544d4310305f915f5ea81e04d0f437ef1a230dc9d1c819d7c0
+PKG_HASH:= ce5e03e519f637e1f814011ace35c4f87b33c0bbabeec35baf5fbd3479e91956
PKG_DESCR:= compression utility
PKG_SECTION:= app/archive
PKG_URL:= http://www.gnu.org/software/gzip/
diff --git a/package/mutt/Makefile b/package/mutt/Makefile
index f88c17281..567603dd3 100644
--- a/package/mutt/Makefile
+++ b/package/mutt/Makefile
@@ -4,9 +4,9 @@
include ${ADK_TOPDIR}/rules.mk
PKG_NAME:= mutt
-PKG_VERSION:= 2.1.5
+PKG_VERSION:= 2.2.3
PKG_RELEASE:= 1
-PKG_HASH:= 92a309e47e363a97d62425bcb71adceae5ab5c4c413dbcac37fa98ed70c12be0
+PKG_HASH:= 978addcdab454f447ed7d1de84b5767e714c30714285bf82e4a1745071d18d89
PKG_DESCR:= mail client for console
PKG_SECTION:= net/mail
PKG_DEPENDS:= libncurses
diff --git a/package/ruby/Makefile b/package/ruby/Makefile
index 186cb5b1f..ab0e41e2a 100644
--- a/package/ruby/Makefile
+++ b/package/ruby/Makefile
@@ -4,9 +4,9 @@
include ${ADK_TOPDIR}/rules.mk
PKG_NAME:= ruby
-PKG_VERSION:= 3.0.3
+PKG_VERSION:= 3.1.2
PKG_RELEASE:= 1
-PKG_HASH:= 88cc7f0f021f15c4cd62b1f922e3a401697f7943551fe45b1fdf4f2417a17a9c
+PKG_HASH:= ca10d017f8a1b6d247556622c841fc56b90c03b1803f87198da1e4fd3ec3bf2a
PKG_DESCR:= scripting language
PKG_SECTION:= dev/lang
PKG_DEPENDS:= libressl zlib
@@ -14,7 +14,7 @@ PKG_BUILDDEP:= ruby-host libressl zlib
HOST_BUILDDEP:= libressl-host
PKG_NEEDS:= threads
PKG_URL:= http://www.ruby-lang.org/
-PKG_SITES:= http://ftp.ruby-lang.org/pub/ruby/3.0/
+PKG_SITES:= http://ftp.ruby-lang.org/pub/ruby/3.1/
include ${ADK_TOPDIR}/mk/host.mk
include ${ADK_TOPDIR}/mk/package.mk
@@ -22,7 +22,6 @@ include ${ADK_TOPDIR}/mk/package.mk
$(eval $(call HOST_template,RUBY,ruby,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,RUBY,ruby,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-AUTOTOOL_STYLE:= autoreconf
# uClibc setpgrp does not take arguments
CONFIGURE_ENV+= ac_cv_func_setpgrp_void=yes \
stack_protector=no \
@@ -38,7 +37,7 @@ INSTALL_TARGET:= install-nodoc
HOST_CONFIGURE_ARGS+= --disable-install-doc \
--disable-shared \
- --with-out-ext=curses,readline \
+ --with-out-ext=curses,readline,openssl \
--disable-rubygems
HOST_ALL_TARGET:= main
HOST_INSTALL_TARGET:= install-nodoc
diff --git a/package/ruby/patches/0001-fix-default-coroutine-selection.patch b/package/ruby/patches/0001-fix-default-coroutine-selection.patch
deleted file mode 100644
index ea84aa9bc..000000000
--- a/package/ruby/patches/0001-fix-default-coroutine-selection.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-fixed default coroutine selection for musl/uclibc
-
-https://github.com/ruby/ruby/pull/3567/commits/b570e7de87aaad8c903176d835e8124127f627b3
-
-Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
-
-diff -Nur ruby-3.0.0.orig/configure.ac ruby-3.0.0/configure.ac
---- ruby-3.0.0.orig/configure.ac 2020-12-25 04:33:01.000000000 +0100
-+++ ruby-3.0.0/configure.ac 2021-02-22 13:00:53.990314464 +0100
-@@ -2441,7 +2441,10 @@
- rb_cv_coroutine=copy
- ],
- [
-- rb_cv_coroutine=ucontext
-+ AC_CHECK_FUNCS([getcontext swapcontext makecontext],
-+ [rb_cv_coroutine=ucontext],
-+ [rb_cv_coroutine=copy; break]
-+ )
- ]
- )
- AC_MSG_RESULT(${rb_cv_coroutine})
diff --git a/scripts/config.sub b/scripts/config.sub
index 111b01fc2..1e9cd5a84 100755
--- a/scripts/config.sub
+++ b/scripts/config.sub
@@ -1185,7 +1185,7 @@ case $cpu-$vendor in
| kvx \
| k1om \
| le32 | le64 \
- | lm32 \
+ | lm32 | loongarch64 \
| m32c | m32r | m32rle \
| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
diff --git a/target/arch.lst b/target/arch.lst
index 8ef05f730..d801075d8 100644
--- a/target/arch.lst
+++ b/target/arch.lst
@@ -16,6 +16,7 @@ hppa
ia64
kvx
lm32
+loongarch
m32c
m32r
m68k
diff --git a/target/config/Config.in.binutils b/target/config/Config.in.binutils
index 1ccec16e5..45b02c912 100644
--- a/target/config/Config.in.binutils
+++ b/target/config/Config.in.binutils
@@ -7,20 +7,15 @@ default ADK_TOOLCHAIN_BINUTILS_ARC if ADK_TARGET_ARCH_ARC
default ADK_TOOLCHAIN_BINUTILS_AVR32 if ADK_TARGET_ARCH_AVR32
default ADK_TOOLCHAIN_BINUTILS_KVX if ADK_TARGET_ARCH_KVX
default ADK_TOOLCHAIN_BINUTILS_2_28 if ADK_TARGET_CPU_SH_J2
-default ADK_TOOLCHAIN_BINUTILS_2_38
+default ADK_TOOLCHAIN_BINUTILS_2_39
config ADK_TOOLCHAIN_BINUTILS_GIT
bool "git"
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_KVX
-config ADK_TOOLCHAIN_BINUTILS_2_38
- bool "2.38"
- depends on !ADK_TARGET_ARCH_AVR32
- depends on !ADK_TARGET_ARCH_KVX
-
-config ADK_TOOLCHAIN_BINUTILS_2_37
- bool "2.37"
+config ADK_TOOLCHAIN_BINUTILS_2_39
+ bool "2.39"
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_KVX
diff --git a/target/config/Config.in.compiler b/target/config/Config.in.compiler
index 0bd830188..175cd5afb 100644
--- a/target/config/Config.in.compiler
+++ b/target/config/Config.in.compiler
@@ -28,16 +28,23 @@ config ADK_TOOLCHAIN_GCC_GIT
depends on !ADK_TARGET_ARCH_METAG
depends on !ADK_TARGET_ARCH_NDS32
+config ADK_TOOLCHAIN_GCC_12
+ bool "12.1.0"
+ depends on !ADK_TARGET_ARCH_AVR32
+ depends on !ADK_TARGET_ARCH_METAG
+
config ADK_TOOLCHAIN_GCC_11
bool "11.3.0"
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_METAG
+ depends on !ADK_TARGET_ARCH_LOONGARCH
config ADK_TOOLCHAIN_GCC_10
bool "10.3.0"
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_METAG
depends on !ADK_TARGET_ARCH_NDS32
+ depends on !ADK_TARGET_ARCH_LOONGARCH
config ADK_TOOLCHAIN_GCC_9
bool "9.4.0"
@@ -45,6 +52,7 @@ config ADK_TOOLCHAIN_GCC_9
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_METAG
depends on !ADK_TARGET_ARCH_NDS32
+ depends on !ADK_TARGET_ARCH_LOONGARCH
config ADK_TOOLCHAIN_GCC_8
bool "8.5.0"
@@ -55,6 +63,7 @@ config ADK_TOOLCHAIN_GCC_8
depends on !ADK_TARGET_ARCH_METAG
depends on !ADK_TARGET_ARCH_NDS32
depends on !ADK_TARGET_ARCH_OR1K
+ depends on !ADK_TARGET_ARCH_LOONGARCH
config ADK_TOOLCHAIN_GCC_7
bool "7.5.0"
@@ -65,6 +74,7 @@ config ADK_TOOLCHAIN_GCC_7
depends on !ADK_TARGET_ARCH_METAG
depends on !ADK_TARGET_ARCH_NDS32
depends on !ADK_TARGET_ARCH_OR1K
+ depends on !ADK_TARGET_ARCH_LOONGARCH
config ADK_TOOLCHAIN_GCC_ARC
bool "arc-2021.09"
diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu
index 1b32fe20e..56befd8ef 100644
--- a/target/config/Config.in.cpu
+++ b/target/config/Config.in.cpu
@@ -553,6 +553,14 @@ config ADK_TARGET_CPU_LM32
select ADK_TARGET_UCLINUX
depends on ADK_TARGET_ARCH_LM32
+# loongarch
+config ADK_TARGET_CPU_LOONGARCH
+ bool "loongarch64"
+ select ADK_TARGET_SUPPORTS_THREADS
+ select ADK_TARGET_SUPPORTS_NPTL
+ select ADK_TARGET_WITH_MMU
+ depends on ADK_TARGET_ARCH_LOONGARCH
+
# coldfire
config ADK_TARGET_CPU_CF_51
bool "coldfire 51"
@@ -2214,6 +2222,7 @@ config ADK_TARGET_CPU_ARCH
default "ia64" if ADK_TARGET_ARCH_IA64
default "kvx" if ADK_TARGET_ARCH_KVX
default "lm32" if ADK_TARGET_ARCH_LM32
+ default "loongarch64" if ADK_TARGET_ARCH_LOONGARCH
default "m32c" if ADK_TARGET_ARCH_M32C
default "m32r" if ADK_TARGET_ARCH_M32R
default "m68k" if ADK_TARGET_ARCH_M68K
diff --git a/target/config/Config.in.libc b/target/config/Config.in.libc
index 7a35af049..477dcd10a 100644
--- a/target/config/Config.in.libc
+++ b/target/config/Config.in.libc
@@ -77,6 +77,7 @@ config ADK_TARGET_LIB_GLIBC
ADK_TARGET_ARCH_CSKY || \
ADK_TARGET_ARCH_HPPA || \
ADK_TARGET_ARCH_IA64 || \
+ ADK_TARGET_ARCH_LOONGARCH || \
ADK_TARGET_ARCH_M68K || \
ADK_TARGET_ARCH_MICROBLAZE || \
ADK_TARGET_ARCH_MIPS || \
@@ -145,16 +146,16 @@ choice
prompt "Target C library version"
depends on !ADK_TARGET_CHOOSE_ARCH
-config ADK_TARGET_LIB_UCLIBC_NG_1_0_40
- bool "1.0.40"
+config ADK_TARGET_LIB_UCLIBC_NG_1_0_42
+ bool "1.0.42"
depends on ADK_TARGET_LIB_UCLIBC_NG
config ADK_TARGET_LIB_UCLIBC_NG_GIT
bool "git"
depends on ADK_TARGET_LIB_UCLIBC_NG && ADK_EXPERIMENTAL
-config ADK_TARGET_LIB_GLIBC_2_35
- bool "2.35"
+config ADK_TARGET_LIB_GLIBC_2_36
+ bool "2.36"
depends on ADK_TARGET_LIB_GLIBC
config ADK_TARGET_LIB_GLIBC_GIT
@@ -200,9 +201,9 @@ config ADK_TARGET_LIBC
config ADK_LIBC_VERSION
string
- default "1.0.40" if ADK_TARGET_LIB_UCLIBC_NG_1_0_40
- default "1.2.3" if ADK_TARGET_LIB_MUSL_1_2_2
- default "2.35" if ADK_TARGET_LIB_GLIBC_2_35
+ default "1.0.42" if ADK_TARGET_LIB_UCLIBC_NG_1_0_42
+ default "1.2.3" if ADK_TARGET_LIB_MUSL_1_2_3
+ default "2.36" if ADK_TARGET_LIB_GLIBC_2_36
default "4.1.0" if ADK_TARGET_LIB_NEWLIB_4_1_0
default "git" if ADK_TARGET_LIB_UCLIBC_NG_GIT || \
ADK_TARGET_LIB_MUSL_GIT || \
diff --git a/target/linux/Config.in.kernelcfg b/target/linux/Config.in.kernelcfg
index 749ed430f..50fff5c5d 100644
--- a/target/linux/Config.in.kernelcfg
+++ b/target/linux/Config.in.kernelcfg
@@ -49,6 +49,7 @@ config ADK_TARGET_LINUX_KERNEL_DEFCONFIG
default "stm32_defconfig" if ADK_TARGET_SYSTEM_ST_STM32F429
default "stm32_defconfig" if ADK_TARGET_SYSTEM_ST_STM32F769
default "nommu_k210_defconfig" if ADK_TARGET_SYSTEM_SIPEED_MAIX_BIT
+ default "loongson3_defconfig" if ADK_TARGET_SYSTEM_QEMU_LOONGARCH
default ""
config ADK_TARGET_LINUX_KERNEL_CUSTOMCONFIG_PATH
diff --git a/target/linux/Config.in.kernelversion b/target/linux/Config.in.kernelversion
index 0206923db..af844978b 100644
--- a/target/linux/Config.in.kernelversion
+++ b/target/linux/Config.in.kernelversion
@@ -34,6 +34,14 @@ config ADK_TARGET_LINUX_KERNEL_VERSION_GIT
select ADK_TARGET_LINUX_KERNEL_IMAGE if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
select ADK_TARGET_LINUX_KERNEL_IMAGE if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
+config ADK_TARGET_LINUX_KERNEL_VERSION_5_19
+ bool "5.19"
+ depends on !ADK_TARGET_ARCH_AVR32
+ depends on !ADK_TARGET_ARCH_BFIN
+ depends on !ADK_TARGET_ARCH_CRIS
+ depends on !ADK_TARGET_ARCH_FRV
+ depends on !ADK_TARGET_ARCH_METAG
+
config ADK_TARGET_LINUX_KERNEL_VERSION_5_15
bool "5.15.23"
depends on !ADK_TARGET_ARCH_AVR32
diff --git a/target/linux/arch.lst b/target/linux/arch.lst
index 5810d9174..94d0f018f 100644
--- a/target/linux/arch.lst
+++ b/target/linux/arch.lst
@@ -13,6 +13,7 @@ hppa
ia64
kvx
lm32
+loongarch
m68k
metag
microblaze
diff --git a/target/loongarch/Makefile b/target/loongarch/Makefile
new file mode 100644
index 000000000..b8569d69a
--- /dev/null
+++ b/target/loongarch/Makefile
@@ -0,0 +1,62 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(ADK_TOPDIR)/rules.mk
+include $(ADK_TOPDIR)/mk/kernel-build.mk
+include $(ADK_TOPDIR)/mk/image.mk
+
+KERNEL:=$(LINUX_DIR)/vmlinux
+
+QEMU_ARGS:=-M virt
+QEMU_ARGS+=-nographic
+#
+# target helper text
+ifeq ($(ADK_TARGET_FS),archive)
+targethelp:
+ @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
+ifeq ($(ADK_TARGET_QEMU),y)
+ @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+ @echo "Use following command to create a QEMU Image:"
+ @echo "./scripts/create.sh qemu-${ADK_TARGET_CPU_ARCH}.img $(FW_DIR)/$(ROOTFSUSERTARBALL)"
+ @echo "Start qemu with following options:"
+ @echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${ADK_TARGET_CPU_ARCH}.img'
+endif
+endif
+ifeq ($(ADK_TARGET_FS),initramfs)
+targethelp:
+ @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+ @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}'
+ifeq ($(ADK_TARGET_QEMU),y)
+ @echo "Start qemu with following command line:"
+ @echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}'
+endif
+endif
+ifeq ($(ADK_TARGET_FS),initramfsarchive)
+targethelp:
+ @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+ @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
+endif
+ifeq ($(ADK_TARGET_FS),initramfspiggyback)
+targethelp:
+ @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}'
+ifeq ($(ADK_TARGET_QEMU),y)
+ @echo "Start qemu with following command line:"
+ @echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)'
+endif
+endif
+
+kernel-strip:
+
+kernel-install: kernel-strip
+ @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
+
+# filesystem specific targets
+ifeq ($(ADK_TARGET_FS),initramfs)
+imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfsarchive)
+imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfspiggyback)
+imageinstall: createinitramfs targethelp
+endif
diff --git a/target/loongarch/kernel/qemu-loongarch b/target/loongarch/kernel/qemu-loongarch
new file mode 100644
index 000000000..582028585
--- /dev/null
+++ b/target/loongarch/kernel/qemu-loongarch
@@ -0,0 +1,7 @@
+CONFIG_LOONGARCH=y
+CONFIG_64BIT=y
+CONFIG_MACH_LOONGSON64=y
+CONFIG_EFI=y
+CONFIG_SMP=y
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
diff --git a/target/loongarch/systems/qemu-loongarch b/target/loongarch/systems/qemu-loongarch
new file mode 100644
index 000000000..b5f6c3d34
--- /dev/null
+++ b/target/loongarch/systems/qemu-loongarch
@@ -0,0 +1,7 @@
+config ADK_TARGET_SYSTEM_QEMU_LOONGARCH
+ bool "Qemu Emulator"
+ select ADK_TARGET_QEMU
+ select ADK_TARGET_CPU_LOONGARCH
+ help
+ Support for Qemu Emulator Loongarch architecture.
+
diff --git a/toolchain/binutils/Makefile.inc b/toolchain/binutils/Makefile.inc
index e2a91f6b3..3e78cf199 100644
--- a/toolchain/binutils/Makefile.inc
+++ b/toolchain/binutils/Makefile.inc
@@ -2,10 +2,10 @@
# material, please see the LICENCE file in the top-level directory.
PKG_NAME:= binutils
-ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_38),y)
-PKG_VERSION:= 2.38
+ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_39),y)
+PKG_VERSION:= 2.39
PKG_RELEASE:= 1
-PKG_HASH:= e316477a914f567eccc34d5d29785b8b0f5a10208d36bbacedcc39048ecfe024
+PKG_HASH:= 645c25f563b8adc0a81dbd6a41cffbf4d37083a382e02d5d3df4f65c09516d00
PKG_SITES:= ${MASTER_SITE_GNU:=binutils/}
DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz
endif
diff --git a/toolchain/elf2flt/Makefile b/toolchain/elf2flt/Makefile
index c1ee12ca6..d1db7c804 100644
--- a/toolchain/elf2flt/Makefile
+++ b/toolchain/elf2flt/Makefile
@@ -9,8 +9,8 @@ include $(ADK_TOPDIR)/mk/buildhlp.mk
ifeq ($(ADK_TOOLCHAIN_BINUTILS_GIT),y)
BINUTILS_VERSION:= git
endif
-ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_38),y)
-BINUTILS_VERSION:= 2.38
+ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_39),y)
+BINUTILS_VERSION:= 2.39
endif
ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_28),y)
BINUTILS_VERSION:= 2.28
diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc
index 71c710d93..bc273f039 100644
--- a/toolchain/gcc/Makefile.inc
+++ b/toolchain/gcc/Makefile.inc
@@ -2,6 +2,14 @@
# material, please see the LICENCE file in the top-level directory.
PKG_NAME:= gcc
+ifeq ($(ADK_TOOLCHAIN_GCC_12),y)
+PKG_VERSION:= 12.1.0
+PKG_HASH:= 62fd634889f31c02b64af2c468f064b47ad1ca78411c45abe6ac4b5f8dd19c7b
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz
+LIBSTDCXXVER:= 28
+endif
ifeq ($(ADK_TOOLCHAIN_GCC_11),y)
PKG_VERSION:= 11.3.0
PKG_HASH:= b47cf2818691f5b1e21df2bb38c795fac2cfbd640ede2d0a5e1c89e338a3ac39
diff --git a/toolchain/glibc/Makefile.inc b/toolchain/glibc/Makefile.inc
index e71786616..1078c4348 100644
--- a/toolchain/glibc/Makefile.inc
+++ b/toolchain/glibc/Makefile.inc
@@ -3,16 +3,16 @@
PKG_NAME:= glibc
ifeq ($(ADK_LIBC_VERSION),git)
-PKG_VERSION:= 2.35.90
-PKG_GLIBCVER:= 2.35.9000
+PKG_VERSION:= 2.36.90
+PKG_GLIBCVER:= 2.36.9000
PKG_SITES:= git://sourceware.org/git/glibc.git
PKG_RELEASE:= 1
endif
-ifeq ($(ADK_TARGET_LIB_GLIBC_2_35),y)
-PKG_VERSION:= 2.35
-PKG_GLIBCVER:= 2.35
+ifeq ($(ADK_TARGET_LIB_GLIBC_2_36),y)
+PKG_VERSION:= 2.36
+PKG_GLIBCVER:= 2.36
PKG_RELEASE:= 1
PKG_SITES:= ${MASTER_SITE_GNU:=glibc/}
-PKG_HASH:= 5123732f6b67ccd319305efd399971d58592122bcc2a6518a1bd2510dd0cf52e
+PKG_HASH:= 1c959fea240906226062cb4b1e7ebce71a9f0e3c0836c09e7e3423d434fcfe75
endif
DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.xz
diff --git a/toolchain/uclibc-ng/Makefile.inc b/toolchain/uclibc-ng/Makefile.inc
index 7d1bf4d1f..a926472a1 100644
--- a/toolchain/uclibc-ng/Makefile.inc
+++ b/toolchain/uclibc-ng/Makefile.inc
@@ -7,10 +7,10 @@ PKG_VERSION:= git
PKG_RELEASE:= 1
PKG_SITES:= https://git.uclibc-ng.org/git/uclibc-ng.git
endif
-ifeq ($(ADK_TARGET_LIB_UCLIBC_NG_1_0_40),y)
-PKG_VERSION:= 1.0.40
+ifeq ($(ADK_TARGET_LIB_UCLIBC_NG_1_0_42),y)
+PKG_VERSION:= 1.0.42
PKG_RELEASE:= 1
-PKG_SITES:= http://downloads.uclibc-ng.org/releases/1.0.40/
-PKG_HASH:= d863f01815a64174d5019c73475e8aff5b60848a13876e79daf5d3d83ce7f889
+PKG_SITES:= http://downloads.uclibc-ng.org/releases/1.0.42/
+PKG_HASH:= ec6dae44ce86558885e56bc3bef6bd4d082397114e6e1fc15795f71e804d7016
endif
DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.xz