In CompileJvm.gmk, I'd replace

-    ASFLAGS := $(JVM_ASFLAGS), \
+    ASFLAGS := $(JVM_ASFLAGS) $(EXTRA_ASFLAGS), \

with adding EXTRA_ASFLAGS to JVM_ASFLAGS right after where JVM_LDFLAGS is 
finalized, vis

JVM_LDFLAGS += \
    $(SHARED_LIBRARY_FLAGS) \
    $(JVM_LDFLAGS_FEATURES) \
    $(EXTRA_LDFLAGS) \
    #
+ 
+ JVM_ASFLAGS += ${EXTRA_ASFLAGS)

That way, uses of EXTRA_xxFLAGS are all in one place and possible future 
file-specific assembler flags don't have to duplicate adding EXTRA_ASFLAGS.

Otherwise, good.

Paul

On 7/15/19, 7:27 AM, "build-dev on behalf of Severin Gehwolf" 
<build-dev-boun...@openjdk.java.net on behalf of sgehw...@redhat.com> wrote:

    Anyone?
    
    On Mon, 2019-07-08 at 17:56 +0200, Severin Gehwolf wrote:
    > Hi,
    > 
    > Could I please get a review for this patch which adds a new configure
    > option --with-extra-asflags? The issue at hand is that we, Red Hat,
    > need to pass certain extra flags to the assembler when OpenJDK is being
    > compiled. -Wa,--generate-missing-build-notes=yes in our case. That's
    > currently not possible and extra C/C++ flags would need to be used,
    > which seems not nice.
    > 
    > Bug: https://bugs.openjdk.java.net/browse/JDK-8227397
    > webrev: 
http://cr.openjdk.java.net/~sgehwolf/webrevs/JDK-8227397/01/webrev/
    > 
    > After this patch extra assembler flags get added to *.s/.S files for
    > libjvm.so:
    > 
    > $ grep -n generate-missing-build-notes=yes 
build/linux-x86_64-server-release/build.log 
    > 1049: [18] ASFLAGS := -m64 -Wa,--generate-missing-build-notes=yes  
    > 15005:( /usr/bin/rm -f 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log
 && /usr/bin/gcc -c -m64 -Wa,--generate-missing-build-notes=yes -g -o 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o
 
/disk/openjdk/upstream-sources/openjdk-head/src/hotspot/os_cpu/linux_x86/linux_x86_64.s
 > >(/usr/bin/tee -a 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log)
 2> >(/usr/bin/tee -a 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log
 >&2) || ( exitcode=$? && /usr/bin/cp 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.log
 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/make-support/failure-logs/hotspot_variant-server_libjvm_objs_linux_x86_64.o.log
 && /usr/bin/cp 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/hotspot/variant-server/libjvm/objs/linux_x86_64.o.cmdline
 
/disk/openjdk/upstream-sources/openjdk-head/build/linux-x86_64-server-release/make-support/failure-logs/hotspot_variant-server_libjvm_objs_linux_x86_64.o.cmdline
 && exit $exitcode ) )
    > 
    > I'll run this through jdk/submit before I push.
    > 
    > Thoughts?
    > 
    > Thanks,
    > Severin
    
    

Reply via email to