← Commit list

764df2555

Christian Stewart
Christian Stewart
2026-03-15
SUCCESS Duration: 143s

Subject

trylink: detect linker flag support for non-GNU linkers

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0
gcc -Wp,-MD,applets/.usage.d -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer      -Iinclude -Iinclude -o applets/usage applets/usage.c

Build Log

(log yok)

Commit Diff GitHub →

scripts/trylink+27 -1
@@ -95,8 +95,34 @@ fi
START_GROUP="-Wl,--start-group"
END_GROUP="-Wl,--end-group"
+if ! check_cc "-Wl,--start-group -Wl,--end-group"; then
+ echo "Your linker does not support --start-group"
+ START_GROUP=""
+ END_GROUP=""
+fi
+
+WARN_COMMON="-Wl,--warn-common"
+if ! check_cc "-Wl,--warn-common"; then
+ echo "Your linker does not support --warn-common"
+ WARN_COMMON=""
+fi
+
+MAP_OPT=true
+if ! check_cc "-Wl,-Map,/dev/null"; then
+ echo "Your linker does not support -Map"
+ MAP_OPT=false
+fi
+
+VERBOSE_OPT="-Wl,--verbose"
+if ! check_cc "-Wl,--verbose"; then
+ echo "Your linker does not support --verbose"
+ VERBOSE_OPT=""
+fi
+
INFO_OPTS() {
- echo "-Wl,--warn-common -Wl,-Map,$EXE.map -Wl,--verbose"
+ local map_flag=""
+ $MAP_OPT && map_flag="-Wl,-Map,$EXE.map"
+ echo "$WARN_COMMON $map_flag $VERBOSE_OPT"
}
# gold may not support --sort-common (yet)