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

Windows builds in different directories are not fully reproducible

    XMLWordPrintable

Details

    • b10
    • windows

    Backports

      Description

        When building the same commit of OpenJDK in different directories on Windows, some of dll/exe files created by the build differ quite a bit. Closer inspection with dumpbin reveals absolute path names baked into them despite the use of the -pathmap flag. In my case, the following came out different:
        dt_shmem.dll, instrument.dll, jdwp.dll, jvm.dll, jpackageapplauncherw.exe, msiwrapper.exe, jpackage.dll.
        This, of course, has a ripple effect on many jmods, which appear different as well.

        To reproduce the problem:
        1. Clone the OpenJDK repository.
        2. Run configure with at least these options
         --enable-reproducible-build --with-source-date=1643953637 --with-hotspot-build-time=2022-02-04 --with-copyright-year=2022 --disable-absolute-paths-in-output --with-debug-level=release
        3. Build (make images).

        Then do, for example,
        $ dumpbin /all ./build/windows-x86_64-server-release/images/jdk/bin/jdwp.dll
        And search for any short word that appears in the path above the JDK root. In my case, building in my home directory enabled me to do
        $ grep maxim ... | wc -l
        34
        (better also check by looking at the dumpbin output as the word may happen to be not a part of a path or have a line break in the middle).

        Attachments

          Issue Links

            Activity

              People

                mkartashev Maxim Kartashev
                mkartashev Maxim Kartashev
                Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: