Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8218814

make test fails when configured with --with-extra-cflags="-Wformat -Werror=format-security"

XMLWordPrintable

    • generic
    • linux

      On line 100 of make/common/TestFilesCompilation.gmk I see this:

      DISABLED_WARNINGS_gcc := format undef unused-function unused-value

      That is, -Wno-format is being passed for test library compilation. However, that conflicts with flags like -Werror=format-security.

      $ configure ... --with-extra-cflags="-Wformat -Werror=format-security" --with-extra-cxxflags="-Wformat -Werror=format-security" ...
      $ make test TEST="gtest:LogTagSet"

      fails with:

      ( /usr/bin/rm -f /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.o.log && /usr/bin/gcc -MMD -MF /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.d -I/disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/modules_include/java.base -I/disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/modules_include/java.base/linux -I/disk/openjdk/upstream-sources/openjdk-head-2/src/java.base/share/native/libjava -I/disk/openjdk/upstream-sources/openjdk-head-2/src/java.base/unix/native/libjava -I/disk/openjdk/upstream-sources/openjdk-head-2/src/hotspot/share/include -I/disk/openjdk/upstream-sources/openjdk-head-2/src/hotspot/os/posix/include -pipe -fstack-protector -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DLINUX -DNDEBUG -fno-strict-aliasing -Wall -Wextra -Wformat=2 -Wpointer-arith -Wsign-compare -Wunused-function -Wundef -Wunused-value -Wreturn-type -Wtrampolines -m64 -Wformat -Werror=format-security -D_LITTLE_ENDIAN -DARCH='"amd64"' -Damd64 -D_LP64=1 -fno-omit-frame-pointer -fno-delete-null-pointer-checks -fno-lifetime-dse -fPIC -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -g -Wno-unused-parameter -Wno-unused -Wno-format -Wno-undef -Wno-unused-function -Wno-unused-value -O2 -DTHIS_FILE='"libTestHeapDump.c"' -c -o /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.o /disk/openjdk/upstream-sources/openjdk-head-2/test/hotspot/jtreg/gc/shenandoah/jvmti/libTestHeapDump.c > >(/usr/bin/tee -a /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.o.log) 2> >(/usr/bin/tee -a /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.o.log >&2) || ( exitcode=$? && /usr/bin/cp /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.o.log /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/make-support/failure-logs/support_test_hotspot_jtreg_native_support_libTestHeapDump_libTestHeapDump.o.log && /usr/bin/cp /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestHeapDump/libTestHeapDump.o.cmdline /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/make-support/failure-logs/support_test_hotspot_jtreg_native_support_libTestHeapDump_libTestHeapDump.o.cmdline && exit $exitcode ) )
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      Compiling libTestGCLocker.c (for libTestGCLocker.so)
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      cc1: some warnings being treated as errors
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      ( /usr/bin/rm -f /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.o.log && /usr/bin/gcc -MMD -MF /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.d -I/disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/modules_include/java.base -I/disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/modules_include/java.base/linux -I/disk/openjdk/upstream-sources/openjdk-head-2/src/java.base/share/native/libjava -I/disk/openjdk/upstream-sources/openjdk-head-2/src/java.base/unix/native/libjava -I/disk/openjdk/upstream-sources/openjdk-head-2/src/hotspot/share/include -I/disk/openjdk/upstream-sources/openjdk-head-2/src/hotspot/os/posix/include -pipe -fstack-protector -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DLINUX -DNDEBUG -fno-strict-aliasing -Wall -Wextra -Wformat=2 -Wpointer-arith -Wsign-compare -Wunused-function -Wundef -Wunused-value -Wreturn-type -Wtrampolines -m64 -Wformat -Werror=format-security -D_LITTLE_ENDIAN -DARCH='"amd64"' -Damd64 -D_LP64=1 -fno-omit-frame-pointer -fno-delete-null-pointer-checks -fno-lifetime-dse -fPIC -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -g -Wno-unused-parameter -Wno-unused -Wno-format -Wno-undef -Wno-unused-function -Wno-unused-value -O2 -DTHIS_FILE='"libTestGCLocker.c"' -c -o /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.o /disk/openjdk/upstream-sources/openjdk-head-2/test/hotspot/jtreg/gc/stress/gclocker/libTestGCLocker.c > >(/usr/bin/tee -a /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.o.log) 2> >(/usr/bin/tee -a /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.o.log >&2) || ( exitcode=$? && /usr/bin/cp /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.o.log /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/make-support/failure-logs/support_test_hotspot_jtreg_native_support_libTestGCLocker_libTestGCLocker.o.log && /usr/bin/cp /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestGCLocker/libTestGCLocker.o.cmdline /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/make-support/failure-logs/support_test_hotspot_jtreg_native_support_libTestGCLocker_libTestGCLocker.o.cmdline && exit $exitcode ) )
      Compiling libTestJNIBlockFullGC.c (for libTestJNIBlockFullGC.so)
      gmake[3]: *** [JtregNativeHotspot.gmk:1518: /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libJniVersion/libJniVersion.o] Error 1
      gmake[3]: *** Waiting for unfinished jobs....
      cc1: some warnings being treated as errors
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      cc1: some warnings being treated as errors
      cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]
      gmake[3]: *** [JtregNativeHotspot.gmk:1518: /disk/openjdk/upstream-sources/openjdk-head-2/build/linux-x86_64-server-release/support/test/hotspot/jtreg/native/support/libTestCSLocker/libTestCSLocker.o] Error 1
      cc1: some warnings being treated as errors

            sgehwolf Severin Gehwolf
            sgehwolf Severin Gehwolf
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: