1. 06 Mar, 2019 3 commits
  2. 20 Feb, 2019 1 commit
    • Brad King's avatar
      Fortran: Do not suppress explicit use of implicit include directories · 3dc81a48
      Brad King authored
      Since commit 2e91627d (ParseImplicitIncludeInfo: add Fortran implicit
      include handling, 2019-01-25, v3.14.0-rc1~73^2) we actually populate
      `CMAKE_Fortran_IMPLICIT_INCLUDE_DIRECTORIES` for the first time.  This
      value may be useful to project code to pass to other tooling that wants
      to preprocess the way Fortran does, so we should compute the value.
      However, compilers like `gfortran` do not actually search their own
      implicit include directories for `.mod` files.  The directories must be
      passed via `-I` in order for `.mod` files in them to be found.
      
      Since Fortran has no standard library header files that we need to avoid
      overriding, it is safe to *not* filter out implicit include directories
      from those passed explicitly via `-I` options.  Skip this filtering so
      that include directories specified by project code to find `.mod` files
      will be searched by the compiler even if they happen to be implicitly
      searched by the preprocessor.
      
      Fixes: #18914
      3dc81a48
  3. 08 Feb, 2019 1 commit
  4. 04 Feb, 2019 1 commit
  5. 31 Jan, 2019 1 commit
  6. 30 Jan, 2019 2 commits
  7. 29 Jan, 2019 1 commit
  8. 28 Jan, 2019 1 commit
  9. 23 Jan, 2019 1 commit
    • Kyle Edwards's avatar
      cmMakefile: Impose maximum recursion limit · a6982cff
      Kyle Edwards authored
      In order to keep infinitely-recursive scripts from causing a stack
      overflow in the CMake executable, CMake now imposes a maximum
      recursion limit before issuing an error message. The limit can be
      adjusted at runtime with CMAKE_MAXIMUM_RECURSION_DEPTH.
      
      Fixes: #18694
      a6982cff
  10. 16 Jan, 2019 5 commits
    • Fred Baksik's avatar
      GHS: Add Compiler ID detection · 72e0c115
      Fred Baksik authored
      -- Detect GHS compiler and version
         Detect ARCHITECTURE_ID for PPC / ARM / 86 targets
         Detect PLATFORM_ID for Integrity and Integrity178 platforms
         Using defines specified in the documents for the compilers: 201416 PPC / 201754 ARM / 201714 86
      -- Fallback C/CXX compiler ID to GHS if not otherwise detected and using GHS MULTI generator
         Works around issue with some GHS compilers not setting __ghs__ compiler define
      -- Tweak Compiler ID checking so major id of 002017 is not replaced with 217
      -- Prefer try_compile() library targets when testing for working GHS compilers
      -- Avoid CMake errors if reading past end of file for checking if file is PE executable
      72e0c115
    • Fred Baksik's avatar
      GHS: Integrity Application updates · 0c9e47d7
      Fred Baksik authored
      -- Check the property "ghs_integrity_app" on executables to set [INTEGRITY Application]
         If the property is not set then check if an integrate file is one of the source files (.int file).
         Dynamic Downloads that do not have an integrate file can use this property along with setting
         the compiler flag "-dynamic".
      
      -- Remove parsing for -dynamic flag; it is only used to print a comment
         The MULTI GUI will show if it is a Monolith or Dynamic Download application
      
      -- Use project references to specify which executables are part of the Integrity Application
         Usually Implicit Dependency Analysis will ensure that executable targets
         become part of the application.  This does not work for Dynamic Download without integrate files.
         Use `add_dependencies(dd vas)` to mark that the vas target is part of dd target.
      
      -- Update file locations in the Integrate files.
      0c9e47d7
    • Fred Baksik's avatar
      GHS: Use the correct compiler flags for CMAKE_BUILD_TYPE · 702121c5
      Fred Baksik authored
      -- Do not use CMAKE_C_FLAGS_RELEASE flags when CMAKE_BUILD_TYPE is empty
         if CMAKE_BUILD_TYPE was not set the generator would use Release settings
         this does not match the documented behavior of CMAKE_BUILD_TYPE
      
      -- CMAKE_C_FLAGS_<CONFIG> not used when -kernel is present
         Fixes issue where CMAKE_C_FLAGS_<CONFIG> is ignored when -kernel option is present as a compiler option
         When the -kernel option is added to an executable it uses a different set of language flags
         This does not occur -kernel=<type> is used or if it is added as part of a link flag
         The variables CMAKE_<LANG>_GHS_KERNEL_FLAGS_<CONFIG> are removed
         NOTE: By default this only added the flag -ldebug which links in the debugger library.
      
      -- Separate compiler options by newlines
      702121c5
    • wahikihiki's avatar
      2915a756
    • David Aguilar's avatar
      find_package: optionally resolve symlinks when discovering packages · a5e948a3
      David Aguilar authored
      Teach find_package() to resolve symlinks when constructing
      relocatable prefix paths from discovered cmake config files.
      The `CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS` variable enables
      this behavior when set to `TRUE`.
      
      Fixes: #18704
      a5e948a3
  11. 11 Jan, 2019 1 commit
    • Brad King's avatar
      VS: Add Visual Studio 16 2019 generator · 57e48f16
      Brad King authored
      Add this generator *without* support for specifying the target
      architecture in the generator name.  cmake-gui will be taught
      to provide a field for this, and command-line builds can use -A.
      
      Also, teach this generator to select a default target architecture
      based on the host architecture.
      
      Fixes: #18689
      
      Inspired-by: Egor Pugin's avatarEgor Pugin <egor.pugin@gmail.com>
      57e48f16
  12. 02 Jan, 2019 1 commit
  13. 28 Nov, 2018 2 commits
  14. 27 Nov, 2018 1 commit
    • Joachim Wuttke's avatar
      Help: Improve cmake(1) manual organization · 8b3a537c
      Joachim Wuttke authored
      Extend the Synposis, and provide links to manual sections.
      Add sections for `cmake --open` and `cmake --help-*`.
      
      Introduce a new section for buildsystem generation to distinguish it
      from the other functionality.  Populate it with minimal placeholder text
      for now.  It will be extended later.
      
      Co-Author: Brad King <brad.king@kitware.com>
      8b3a537c
  15. 26 Nov, 2018 1 commit
  16. 14 Nov, 2018 1 commit
  17. 11 Nov, 2018 1 commit
  18. 08 Nov, 2018 1 commit
  19. 03 Nov, 2018 1 commit
  20. 26 Oct, 2018 2 commits
  21. 25 Oct, 2018 1 commit
  22. 12 Oct, 2018 1 commit
  23. 10 Oct, 2018 1 commit
    • Kyle Edwards's avatar
      add_subdirectory: Run subdirectory install rules in correct order · fc8955e8
      Kyle Edwards authored
      Before this change, install rules created by add_subdirectory()
      would be executed after all of the top-level install rules, even
      if they were declared before the top-level rules. This change
      adds a new policy, CMP0082, which interleaves the add_subdirectory()
      install rules with the other install rules so they are run in the
      correct order.
      fc8955e8
  24. 04 Oct, 2018 1 commit
  25. 25 Sep, 2018 2 commits
  26. 17 Sep, 2018 1 commit
  27. 10 Sep, 2018 1 commit
  28. 05 Sep, 2018 1 commit
  29. 30 Aug, 2018 1 commit
  30. 28 Aug, 2018 1 commit
    • Brad King's avatar
      Android: Add support for NDK r18 · ca97d4cb
      Brad King authored
      NDK r18 drops GCC toolchains and some STL types.  We need to choose a
      clang toolchain by default when no gcc toolchains are available.  Switch
      the STL type default to `c++_static` when the old `gnustl_static`
      default is not available.
      
      Update the test suite to not run tests for STL types that do not exist.
      Also do not expect the gcc toolchain `cpp` tool to be available because
      r18 does not provide it.  Also teach it to tolerate `gcc -dumpmachine`
      output like `arm--linux-android` that differs from the toolchain prefix.
      
      Fixes: #18301
      ca97d4cb