This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 637f15ff3c9 Make/Toolchain.defs: add the AR_EXTRACT command
637f15ff3c9 is described below

commit 637f15ff3c9473db225eed191a3743589ec489df
Author: Stepan Pressl <pressl.ste...@gmail.com>
AuthorDate: Wed Aug 13 20:46:53 2025 +0200

    Make/Toolchain.defs: add the AR_EXTRACT command
    
    Use this command to extract archives.
    Not all architectures are modified, only those commands I know
    or could be logically deducted from the rest were added.
    
    Signed-off-by: Stepan Pressl <pressl.ste...@gmail.com>
---
 arch/arm/src/common/Toolchain.defs                  | 10 +++++++---
 arch/arm64/src/Toolchain.defs                       |  2 ++
 arch/avr/src/avr/Toolchain.defs                     |  1 +
 arch/avr/src/avr32/Toolchain.defs                   |  1 +
 arch/mips/src/mips32/Toolchain.defs                 |  1 +
 arch/misoc/src/lm32/Toolchain.defs                  |  1 +
 arch/misoc/src/minerva/Toolchain.defs               |  1 +
 arch/or1k/src/mor1kx/Toolchain.defs                 |  1 +
 arch/risc-v/src/common/Toolchain.defs               |  2 ++
 arch/sparc/src/sparc_v8/Toolchain.defs              |  1 +
 arch/tricore/src/common/ToolchainGnuc.defs          |  1 +
 arch/tricore/src/common/ToolchainTasking.defs       |  1 +
 arch/x86/src/common/Toolchain.defs                  |  1 +
 arch/x86_64/src/common/Toolchain.defs               |  1 +
 arch/xtensa/src/lx6/Toolchain.defs                  |  1 +
 arch/xtensa/src/lx7/Toolchain.defs                  |  1 +
 arch/z80/src/ez80/Toolchain.defs                    |  1 +
 arch/z80/src/z180/Toolchain.defs                    |  1 +
 arch/z80/src/z80/Toolchain.defs                     |  1 +
 boards/renesas/rx65n/rx65n-grrose/scripts/Make.defs |  1 +
 boards/renesas/rx65n/rx65n-rsk1mb/scripts/Make.defs |  1 +
 boards/renesas/rx65n/rx65n-rsk2mb/scripts/Make.defs |  1 +
 boards/renesas/rx65n/rx65n/scripts/Make.defs        |  1 +
 boards/renesas/sh1/us7032evb1/scripts/Make.defs     |  1 +
 24 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/arch/arm/src/common/Toolchain.defs 
b/arch/arm/src/common/Toolchain.defs
index 2d6fba161a9..346caabe665 100644
--- a/arch/arm/src/common/Toolchain.defs
+++ b/arch/arm/src/common/Toolchain.defs
@@ -214,6 +214,7 @@ ifeq ($(CONFIG_ARM_TOOLCHAIN_CLANG),y)
   LD      = ld.lld -m armelf
   STRIP   = llvm-strip --strip-unneeded
   AR      = llvm-ar rcs
+  UNAR    = llvm-ar x
   NM      = llvm-nm
   OBJCOPY = llvm-objcopy
   OBJDUMP = llvm-objdump
@@ -257,6 +258,7 @@ else ifeq ($(CONFIG_ARM_TOOLCHAIN_ARMCLANG),y)
   LD      = armlink
   STRIP   = llvm-strip --strip-unneeded
   AR      = armar -rcs
+  UNAR    = armar -x
   NM      = llvm-nm
   OBJCOPY = llvm-objcopy
   OBJDUMP = llvm-objdump
@@ -314,15 +316,17 @@ else
   LD      = $(CROSSDEV)ld
   STRIP   = $(CROSSDEV)strip --strip-unneeded
   AR      = $(CROSSDEV)ar rcs
+  UNAR    = $(CROSSDEV)ar x
   NM      = $(CROSSDEV)nm
   OBJCOPY = $(CROSSDEV)objcopy
   OBJDUMP = $(CROSSDEV)objdump
 
   ifeq ($(CONFIG_LTO_FULL),y)
     ifeq ($(CONFIG_ARM_TOOLCHAIN_GNU_EABI),y)
-      LD := $(CROSSDEV)gcc
-      AR := $(CROSSDEV)gcc-ar rcs
-      NM := $(CROSSDEV)gcc-nm
+      LD   := $(CROSSDEV)gcc
+      AR   := $(CROSSDEV)gcc-ar rcs
+      UNAR := $(CROSSDEV)gcc-ar x
+      NM   := $(CROSSDEV)gcc-nm
       ARCHOPTIMIZATION += -fno-builtin
     endif
   endif
diff --git a/arch/arm64/src/Toolchain.defs b/arch/arm64/src/Toolchain.defs
index 55e159addd9..511eef97d16 100644
--- a/arch/arm64/src/Toolchain.defs
+++ b/arch/arm64/src/Toolchain.defs
@@ -225,6 +225,7 @@ ifeq ($(CONFIG_ARCH_TOOLCHAIN_GCC),y)
   OBJDUMP = $(CROSSDEV)objdump
   LD = $(CROSSDEV)ld
   AR = $(CROSSDEV)ar rcs
+  UNAR = $(CROSSDEV)ar x
   NM = $(CROSSDEV)nm
 else ifeq ($(CONFIG_ARCH_TOOLCHAIN_CLANG),y)
   CC      = clang
@@ -233,6 +234,7 @@ else ifeq ($(CONFIG_ARCH_TOOLCHAIN_CLANG),y)
   LD      = ld.lld -m aarch64elf
   STRIP   = llvm-strip --strip-unneeded
   AR      = llvm-ar rcs
+  UNAR    = llvm-ar x
   NM      = llvm-nm
   OBJCOPY = llvm-objcopy
   OBJDUMP = llvm-objdump
diff --git a/arch/avr/src/avr/Toolchain.defs b/arch/avr/src/avr/Toolchain.defs
index 24179c9b56c..2e12e660f24 100644
--- a/arch/avr/src/avr/Toolchain.defs
+++ b/arch/avr/src/avr/Toolchain.defs
@@ -188,6 +188,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/avr/src/avr32/Toolchain.defs 
b/arch/avr/src/avr32/Toolchain.defs
index 74463cba308..f8c9abda392 100644
--- a/arch/avr/src/avr32/Toolchain.defs
+++ b/arch/avr/src/avr32/Toolchain.defs
@@ -84,6 +84,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/mips/src/mips32/Toolchain.defs 
b/arch/mips/src/mips32/Toolchain.defs
index 2ad34c5e78a..96bc3656826 100644
--- a/arch/mips/src/mips32/Toolchain.defs
+++ b/arch/mips/src/mips32/Toolchain.defs
@@ -299,6 +299,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/misoc/src/lm32/Toolchain.defs 
b/arch/misoc/src/lm32/Toolchain.defs
index a78e3888fcc..909b847969f 100644
--- a/arch/misoc/src/lm32/Toolchain.defs
+++ b/arch/misoc/src/lm32/Toolchain.defs
@@ -115,6 +115,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/misoc/src/minerva/Toolchain.defs 
b/arch/misoc/src/minerva/Toolchain.defs
index 50543de24f3..6d3201a8f9e 100644
--- a/arch/misoc/src/minerva/Toolchain.defs
+++ b/arch/misoc/src/minerva/Toolchain.defs
@@ -59,6 +59,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/or1k/src/mor1kx/Toolchain.defs 
b/arch/or1k/src/mor1kx/Toolchain.defs
index c7e3f3c758d..fdbb20800ae 100644
--- a/arch/or1k/src/mor1kx/Toolchain.defs
+++ b/arch/or1k/src/mor1kx/Toolchain.defs
@@ -101,6 +101,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/risc-v/src/common/Toolchain.defs 
b/arch/risc-v/src/common/Toolchain.defs
index 311fcf39945..5299bcea611 100644
--- a/arch/risc-v/src/common/Toolchain.defs
+++ b/arch/risc-v/src/common/Toolchain.defs
@@ -353,6 +353,7 @@ ifeq ($(CONFIG_ARCH_TOOLCHAIN_CLANG),y)
   LD      = $(CROSSDEV)clang
   STRIP   = $(CROSSDEV)llvm-strip --strip-unneeded
   AR      = $(CROSSDEV)llvm-ar rcs
+  UNAR    = $(CROSSDEV)llvm-ar x
   NM      = $(CROSSDEV)llvm-nm
   OBJCOPY = $(CROSSDEV)llvm-objcopy
   OBJDUMP = $(CROSSDEV)llvm-objdump
@@ -377,6 +378,7 @@ else
   OBJDUMP = $(CROSSDEV)objdump
   LD      = $(CROSSDEV)ld
   AR      = $(CROSSDEV)ar rcs
+  UNAR    = $(CROSSDEV)ar x
   NM      = $(CROSSDEV)nm
 
 # Link Time Optimization
diff --git a/arch/sparc/src/sparc_v8/Toolchain.defs 
b/arch/sparc/src/sparc_v8/Toolchain.defs
index 0e01e82f96f..e98e19e2578 100644
--- a/arch/sparc/src/sparc_v8/Toolchain.defs
+++ b/arch/sparc/src/sparc_v8/Toolchain.defs
@@ -122,6 +122,7 @@ CPP = $(CROSSDEV)gcc -E
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/tricore/src/common/ToolchainGnuc.defs 
b/arch/tricore/src/common/ToolchainGnuc.defs
index fdfc4724bec..38dccfba57a 100644
--- a/arch/tricore/src/common/ToolchainGnuc.defs
+++ b/arch/tricore/src/common/ToolchainGnuc.defs
@@ -111,6 +111,7 @@ CPP     = $(CROSSDEV)tricore-elf-gcc -E -P -x c
 LD      = $(CROSSDEV)tricore-elf-gcc
 STRIP   = $(CROSSDEV)tricore-elf-strip --strip-unneeded
 AR      = $(CROSSDEV)tricore-elf-gcc-ar rcs
+UNAR    = $(CROSSDEV)tricore-elf-gcc-ar x
 NM      = $(CROSSDEV)tricore-elf-gcc-nm
 OBJCOPY = $(CROSSDEV)tricore-elf-objcopy
 OBJDUMP = $(CROSSDEV)tricore-elf-objdump
diff --git a/arch/tricore/src/common/ToolchainTasking.defs 
b/arch/tricore/src/common/ToolchainTasking.defs
index 353930b4a44..cb7055b95f3 100644
--- a/arch/tricore/src/common/ToolchainTasking.defs
+++ b/arch/tricore/src/common/ToolchainTasking.defs
@@ -50,6 +50,7 @@ CPP               = cctc $(ARCHOPTIMIZATION)
 LD                = cctc
 STRIP             = strip --strip-unneeded
 AR                = artc -r
+UNAR              = artc -x
 NM                = nm
 OBJCOPY           = echo
 OBJDUMP           = elfdump
diff --git a/arch/x86/src/common/Toolchain.defs 
b/arch/x86/src/common/Toolchain.defs
index bac6b27b3a0..7892d9b9a09 100644
--- a/arch/x86/src/common/Toolchain.defs
+++ b/arch/x86/src/common/Toolchain.defs
@@ -56,6 +56,7 @@ CPP = $(CROSSDEV)gcc -E -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/x86_64/src/common/Toolchain.defs 
b/arch/x86_64/src/common/Toolchain.defs
index e8f7a595548..2a10aec3f6e 100644
--- a/arch/x86_64/src/common/Toolchain.defs
+++ b/arch/x86_64/src/common/Toolchain.defs
@@ -166,6 +166,7 @@ CPP = $(CROSSDEV)gcc -E -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/xtensa/src/lx6/Toolchain.defs 
b/arch/xtensa/src/lx6/Toolchain.defs
index b10b799b336..f5e638f64af 100644
--- a/arch/xtensa/src/lx6/Toolchain.defs
+++ b/arch/xtensa/src/lx6/Toolchain.defs
@@ -191,6 +191,7 @@ endif
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/xtensa/src/lx7/Toolchain.defs 
b/arch/xtensa/src/lx7/Toolchain.defs
index 00b55683d7f..e088e932c0e 100644
--- a/arch/xtensa/src/lx7/Toolchain.defs
+++ b/arch/xtensa/src/lx7/Toolchain.defs
@@ -195,6 +195,7 @@ endif
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump
diff --git a/arch/z80/src/ez80/Toolchain.defs b/arch/z80/src/ez80/Toolchain.defs
index 1f64f8ebc70..3e7fd32285f 100644
--- a/arch/z80/src/ez80/Toolchain.defs
+++ b/arch/z80/src/ez80/Toolchain.defs
@@ -102,6 +102,7 @@ STRIP = $(CROSSDEV)strip --strip-unneeded
 LD = $(CROSSDEV)ld
 AS = $(CROSSDEV)as
 AR = $(CROSSDEV)ar -r
+UNAR = $(CROSSDEV)ar -x
 OBJCOPY= $(CROSSDEV)objcopy
 
 # File extensions
diff --git a/arch/z80/src/z180/Toolchain.defs b/arch/z80/src/z180/Toolchain.defs
index 44295a9e6d4..b1d681ce0a3 100644
--- a/arch/z80/src/z180/Toolchain.defs
+++ b/arch/z80/src/z180/Toolchain.defs
@@ -102,6 +102,7 @@ CPP = sdcpp
 LD = sdldz80
 AS = sdasz80
 AR = sdar -r
+UNAR = sdar -x
 
 # File extensions
 
diff --git a/arch/z80/src/z80/Toolchain.defs b/arch/z80/src/z80/Toolchain.defs
index 5d5f4f26eef..12d0c4bc02f 100644
--- a/arch/z80/src/z80/Toolchain.defs
+++ b/arch/z80/src/z80/Toolchain.defs
@@ -102,6 +102,7 @@ CPP = sdcpp
 LD = sdldz80
 AS = sdasz80
 AR = sdar -r
+UNAR = sdar -x
 
 # File extensions
 
diff --git a/boards/renesas/rx65n/rx65n-grrose/scripts/Make.defs 
b/boards/renesas/rx65n/rx65n-grrose/scripts/Make.defs
index a47f753614a..7df89e540b4 100644
--- a/boards/renesas/rx65n/rx65n-grrose/scripts/Make.defs
+++ b/boards/renesas/rx65n/rx65n-grrose/scripts/Make.defs
@@ -32,6 +32,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 AS = $(CROSSDEV)as
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
diff --git a/boards/renesas/rx65n/rx65n-rsk1mb/scripts/Make.defs 
b/boards/renesas/rx65n/rx65n-rsk1mb/scripts/Make.defs
index 4cceb5443e4..df2bd460b50 100644
--- a/boards/renesas/rx65n/rx65n-rsk1mb/scripts/Make.defs
+++ b/boards/renesas/rx65n/rx65n-rsk1mb/scripts/Make.defs
@@ -32,6 +32,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 AS = $(CROSSDEV)as
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
diff --git a/boards/renesas/rx65n/rx65n-rsk2mb/scripts/Make.defs 
b/boards/renesas/rx65n/rx65n-rsk2mb/scripts/Make.defs
index 842ab6bd83f..92fe898cb51 100644
--- a/boards/renesas/rx65n/rx65n-rsk2mb/scripts/Make.defs
+++ b/boards/renesas/rx65n/rx65n-rsk2mb/scripts/Make.defs
@@ -32,6 +32,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 AS = $(CROSSDEV)as
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
diff --git a/boards/renesas/rx65n/rx65n/scripts/Make.defs 
b/boards/renesas/rx65n/rx65n/scripts/Make.defs
index a2ecc99eed0..09db0113da6 100644
--- a/boards/renesas/rx65n/rx65n/scripts/Make.defs
+++ b/boards/renesas/rx65n/rx65n/scripts/Make.defs
@@ -32,6 +32,7 @@ CPP = $(CROSSDEV)gcc -E -P -x c
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 AS = $(CROSSDEV)as
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
diff --git a/boards/renesas/sh1/us7032evb1/scripts/Make.defs 
b/boards/renesas/sh1/us7032evb1/scripts/Make.defs
index 22840238603..533181b7c8b 100644
--- a/boards/renesas/sh1/us7032evb1/scripts/Make.defs
+++ b/boards/renesas/sh1/us7032evb1/scripts/Make.defs
@@ -42,6 +42,7 @@ CPP = $(CROSSDEV)gcc -E
 LD = $(CROSSDEV)ld
 STRIP = $(CROSSDEV)strip --strip-unneeded
 AR = $(CROSSDEV)ar rcs
+UNAR = $(CROSSDEV)ar x
 NM = $(CROSSDEV)nm
 OBJCOPY = $(CROSSDEV)objcopy
 OBJDUMP = $(CROSSDEV)objdump

Reply via email to