1. 13 Sep, 2019 2 commits
    • Georg Koppen's avatar
      Bug 31538: Make Windows builds reproducible again · a7a90d35
      Georg Koppen authored
      Updating CMake to the latest stable version as done in the previous
      commit solves the reproducibility issue only partly. We need to patch
      the code that merges libc++abi.a into libc++.a to get the order in the
      merged archive deterministic. The code doing the merging is:
      
      `files = glob.glob(os.path.join(temp_directory_root, '*.o*'))`
      
      Regarding `glob` there is following in the Python docs:
      
      "The glob module finds all the pathnames matching a specified pattern
       according to the rules used by the Unix shell, although results are
       returned in *arbitrary* order." (emphasis mine)
      
      (https://docs.python.org/2/library/glob.html)
      a7a90d35
    • Georg Koppen's avatar
      Bug 31732: Windows nightly builds are busted · 554d1014
      Georg Koppen authored
      It seems we were a bit too optimistic to pick up FORTIFY_SOURCE support
      in mingw-w64 as this breaks our builds. Let's be more conservative and
      use what Mozilla is using in their mingw-w64/clang builds.
      554d1014
  2. 03 Sep, 2019 1 commit
  3. 01 Sep, 2019 1 commit
  4. 28 Aug, 2019 1 commit
    • Georg Koppen's avatar
      Bug 28716: Create mingw-w64-clang toolchain · 8aeb0496
      Georg Koppen authored and boklm's avatar boklm committed
      This commit adds a mingw-w64/clang toolchain that is needed for getting
      Stylo compiled. The build script follows mostly
      
      https://hg.mozilla.org/releases/mozilla-esr68/file/2f459603370d1d35a56ca4e9cee21f7766bbb832/taskcluster/scripts/misc/build-clang-8-mingw.sh
      
      Exceptions are:
      
      1) We don't build clang in 3 stages but just one like we do for our
      macOS cross-compilation toolchain.
      
      2) We are omitting the `DEBUG_FLAGS` (-g -gcodeview) as we plan to
      actually ship the resulting build to users, which seems okay (see
      bug 1500102).
      
      3) We use a slightly newer libunwind (8.0.0) to better fit to our
      clang 8 we deploy.
      
      4) We poke clang harder to compile `i686-w64-mingw32-windres` by
      specifying the target explicitly. Using our `var/setarch` trick does not
      work anymore for an unknown reason.
      
      Thanks to Martin Storsjö, Jacek Caban, Tom Ritter, and many others for
      their help in setting this Windows cross-compilation toolchain up.
      8aeb0496