RFR: 8352064: AIX: now also able to build static-jdk image with a statically linked launcher

Magnus Ihse Bursie ihse at openjdk.org
Tue Mar 18 12:15:07 UTC 2025


On Tue, 18 Mar 2025 10:44:46 GMT, Joachim Kern <jkern at openjdk.org> wrote:

>> Ups, thank you for giving me the 'S'. But nevertheless if I make with
>> `make all LOG=info` an `$(info generate_export_list: $(generate_export_list))` still shows an empty list
>
> I did not get the SetupExecute to function, even if I strip it down to a simple example
> 
> $(eval $(call SetupExecute, generate_export_list, \
>     INFO := Generating export list for static libs, \
>     DEPS := /path/libjli.a, \
>     OUTPUT_FILE := /path/libjli.a.exp, \
>     COMMAND := $(AR) $(ARFLAGS) -w $$(patsubst %.exp, %, $$@) | $(GREP) -v '^.' | $(AWK) '{print $$$$1}' | $(SORT) -u >$$@, \
> ))
> 
> $(java): $(STATIC_LIB_FILES) /path/libjli.a.exp
> 
> I still get
> `gmake[3]: *** No rule to make target '/path/libjli.a.exp', needed by '/path2/java'.  Stop.
> `
> Why does make not recognize, that the rule is in my
>  `call SetupExecute, generate_export_list,`
> macro?

This is likely due to the missing subshell. There is an enhancement filed to fix this automatically but it has unfortunately not been prioritized: https://bugs.openjdk.org/browse/JDK-8233115

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/24062#discussion_r2000909674


More information about the core-libs-dev mailing list