• Stephan Bergmann's avatar
    When building with clang-cl on Windows, build CLR code with MSVC · 0a99b5a1
    Stephan Bergmann yazdı
    ...as clang-cl doesn't support the /clr switch.
    
    * In configure.ac, capture the MSCV version (that would be used if CC hadn't
      been overridden to use clang-cl) into MSVC_CXX.
    
    * The logic which flags to pass into gb_CObject__command_pattern is coded into
      the platform-agnostic LinkTarget.mk, so it's too late to try and filter all
      relevant flags in com_GCC_class.mk, depending on whether a given .cxx file is
      a normal one built with the normal $CXX or a special /clr one built with
      $MSVC_CXX.  Thus, a new CxxClrObject class had to be introduced that captures
      this information early.
    
    * When building with clang-cl, the generated config_host/config_*.h files
      contain values suitable for clang-cl, but not for MSVC.  But the .cxx files
      compiled with MSVC happen to include config_global.h, and would fail.  Hack
      around that problem for now by introducing a hard-coded, minimal
      solenv/clang-cl/config_global.h that is found first when buliding such a
      CxxClrObject.  Needs cleaning-up properly.
    
    Change-Id: Iff8aac51c0b4fa906b14503c692640dda0996d33
    Reviewed-on: https://gerrit.libreoffice.org/34509Tested-by: 's avatarJenkins <ci@libreoffice.org>
    Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
    0a99b5a1
config_global.h 783 Bytes