Uploaded image for project: 'ReactOS Build Environment'
  1. ReactOS Build Environment
  2. ROSBE-119

Support 32-bit hosts, revive MinGW Makefiles

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      This patch applies to both RosBE and ReactOS source trees (build files) and does the following :

      • if the sources have been grabbed with a version of SVN older than the one provided by RoSBE, automatic version numbering will fail. Do not issue an error in this case, but only a warning and apply the default number (0.5-SVN) ;
      • We now use Ninja 1.7.2 to build, but this version only supports Windows >= Vista 64-bit. We thus detect if our Windows host is supported by Ninja and fall back to MinGW Makefiles otherwise.
      • As a result, we now have to make MinGW Makefiles work again (see http://jira.reactos.org/browse/ROSBE-80 e.g.). We do this by :
        • avoiding the Wl,major-image-version and -Wl,-minor-image-version options, not supported by our version of ld.exe ;
        • fixing executables static linking ;
        • working around the precompiled headers crash problem until we found why CMake concatenates them in one big file ;
        • working around the Windows backslash path problem in freeldr.sys generation, as previously done in gcc.cmake.

       Patch has been tested successfully under Windows XP; Vista, 7 and 10 (32-bit / 64-bit). Building with Ninja on 64-bit hosts still works automatically as expected.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bug zilla Bug Zilla
                Reporter:
                tarnyko tarnyko
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: