1. 09 Aug, 2010 1 commit
  2. 29 Jul, 2010 1 commit
  3. 14 Jun, 2010 1 commit
    • Brad King's avatar
      Tru64: Use full-path include directives in Makefiles (#10569) · c592df83
      Brad King authored
      Tru64's make(1) resolves relative paths in "include" directives with
      respect to the includer.  This is inconsistent with all other known make
      tools.  Note that this make tool treats the path literally so we cannot
      use our standard FULL path code which escapes spaces.  Instead qualify
      the paths with $(CMAKE_BINARY_DIR) to avoid the problem.
      c592df83
  4. 07 Jun, 2010 1 commit
    • Brad King's avatar
      Fix rpath-link flag for SunPro C++ 5.11 on Linux · 693f98c1
      Brad King authored
      Commit 82c081ba (Fix rpath-link flag for SunPro C++ on Linux,
      2009-07-13) taught CMake to pass '-rpath-link' because SunPro C++ 5.9
      does not support '-Wl,'.  Now SunPro C++ 5.11 does not recognize the
      option without using '-Wl,'.  Detect whether to use '-Wl,' based on the
      output of "sunCC -flags".
      693f98c1
  5. 01 Jun, 2010 1 commit
  6. 27 May, 2010 1 commit
  7. 17 May, 2010 1 commit
    • Brad King's avatar
      Recognize Clang C and C++ compilers (see #10693) · 571dc748
      Brad King authored
      Map to the platform and compiler information for GNU because the
      compilers are command-line compatible for common operations.  Later we
      can add Clang-specific features as necessary.  We honor the preferred
      capitalization is "Clang", not the common mis-spelling "CLang".
      571dc748
  8. 05 May, 2010 1 commit
    • David Cole's avatar
      Fix Windows-cl.cmake so that at most one MSVC** variable is defined. · e0acb6ca
      David Cole authored
      The expectation of users of the MSVC60, MSVC70, MSVC71, MSVC80, MSVC90
      and the new MSVC10 variables is that at most one of them will be set
      for any given build tree. This change enforces that expectation for
      build trees using Makefile generators. It also fixes the one mismatch
      in that expectation to be found in the Visual Studio generator world:
      previously, the VS 7.1 generator would set *both* MSVC70 and MSVC71;
      now, it only sets MSVC71.
      
      With these changes, user expectations are now met, and the recently
      introduced CheckCompilerRelatedVariables test should pass everywhere.
      e0acb6ca
  9. 30 Apr, 2010 1 commit
  10. 14 Apr, 2010 1 commit
    • Alexander Neundorf's avatar
      -add basic search directories for the "Generic" platform · d827b9f2
      Alexander Neundorf authored
      As reported on the mailing list, find_path/file/library/program() basically don't work
      at all if CMAKE_FIND_ROOT_PATH is set and searching in the host system directories
      is disabled. This patch adds /include, /lib and /bin to the search directories, so they
      will be appended to CMAKE_FIND_ROOT_PATH so this will work for the "Generic" platform (embedded
      systems without OS)
      
      Alex
      d827b9f2
  11. 26 Mar, 2010 1 commit
    • Chuck Atkins's avatar
      OpenBSD: Work-around static/runtime linker inconsistency · e7507618
      Chuck Atkins authored
      Detect the runtime linker's search path and add to the compile time
      linker's search path.  This is needed because OpenBSD's static linker
      does not search for shared library dependencies in the same places as
      the runtime linker.
      e7507618
  12. 23 Mar, 2010 1 commit
  13. 11 Mar, 2010 1 commit
  14. 05 Mar, 2010 1 commit
    • Brad King's avatar
      CMake 2.8.1-rc4 · 6dde1543
      Brad King authored
      This commit cherry-picks and squashes the following commits:
      
        46858720 "FortranCInterface: Fix PathScale detection..." (2010-02-16)
        b39fe940 "Fix problem with ExternalProject test..." (2010-02-17)
        70290e1f "Add support for QtDeclartive module" (2010-02-17)
        282ba895 "Clarify CMAKE_MODULE_PATH documentation" (2010-02-18)
        4eba05de "Suppress GNU flag -fPIC on Windows" (2010-02-19)
        57efb4a4 "BUG: We shouldn't be setting the HideWindow..." (2010-02-19)
      6dde1543
  15. 19 Feb, 2010 1 commit
    • Brad King's avatar
      Suppress GNU flag -fPIC on Windows · 4eba05de
      Brad King authored
      Commit "Modernize GNU compiler info on Windows" (2009-12-02) reorganized
      GNU flags on Windows but let -fPIC slip through for compilation of
      objects in shared libraries.  While this flag is valid on most GNU
      compiler platforms we need to suppress it in Windows-GNU.cmake just as
      we already do in CYGWIN-GNU.cmake.
      4eba05de
  16. 11 Feb, 2010 1 commit
  17. 29 Jan, 2010 1 commit
    • David Cole's avatar
      Fix issue #10155 - default value of CMAKE_OSX_DEPLOYMENT_TARGET should always... · 6ee87b2e
      David Cole authored
      Fix issue #10155 - default value of CMAKE_OSX_DEPLOYMENT_TARGET should always be the empty string. When the value of CMAKE_OSX_DEPLOYMENT_TARGET is the empty string, the -mmacosx-version-min flag should not show up on the compiler command line. The logic for selecting default value of CMAKE_OSX_SYSROOT is orthogonal to and independent of the value of the deployment target. The default value for CMAKE_OSX_SYSROOT is the SDK that corresponds to the current version of Mac OSX on which cmake is running.
      6ee87b2e
  18. 28 Jan, 2010 1 commit
  19. 21 Jan, 2010 3 commits
    • Brad King's avatar
      Do not export all symbols from DLLs on Cygwin · 3684f623
      Brad King authored
      In commit "use export all symbols on cygwin" (2003-01-21) we started
      passing -Wl,--export-all-symbols when linking shared libraries.  Now
      cygwin exports all symbols automatically if no symbols are explicitly
      exported.  When symbols are explicitly exported we want to honor that
      narrow interface.  Therefore this flag should not be passed.
      
      Change based on patch from issue #10122.
      3684f623
    • Brad King's avatar
      Fix CMAKE_DL_LIBS on Cygwin · 41024b00
      Brad King authored
      The variable should contain the name of a library needed to link the
      symbol equivalent to dlopen.  On Cygwin no special library is needed,
      and certainly not "gdi32".
      
      Change based on patch from issue #10122.
      41024b00
    • Brad King's avatar
      Add PathScale shared library flags on Linux · 1804c6bf
      Brad King authored
      We add platform-specific compiler information files
      
        Platform/Linux-PathScale-<lang>.cmake
      
      to enable -fPIC and -shared flags for shared libraries.
      1804c6bf
  20. 13 Jan, 2010 4 commits
    • Brad King's avatar
      Do not find cyg*.dll on Cygwin · e46e8fb9
      Brad King authored
      While Cygwin supports linking directly to .dll files, the behavior is
      now discouraged.  All Cygwin packages now provide import libraries of
      the form lib*.dll.a and CMake has built the import libraries for years.
      
      We believe it is now safe to stop explicitly searching for .dll files
      because their import libraries will always be available when the
      corresponding header files are available.  Users can always set
      find_library cache entries to point at a .dll file by hand if they
      really must use one.
      
      Change based on patch from issue #10122.
      e46e8fb9
    • Brad King's avatar
      Search prefix /usr before root prefix / · 12dcf9e4
      Brad King authored
      Commit "Find locally installed software first" made /usr/local the first
      prefix searched to be consistent with the Filesystem Hierarchy Standard:
      
        http://www.pathname.com/fhs/
      
      The standard also implies that the root prefix "/" should not have any
      package or development files.  The "/bin" and "/lib" directories should
      have only minimal contents to boot the system.  No "/include" ever
      exists.  This commit re-orders the search path prefix list from
      
        /usr/local
        /
        /usr
      
      to
      
        /usr/local
        /usr
        /
      
      to prefer package and development files over low-level system files.
      See issue #10136.
      
      On Cygwin /usr/lib == /lib and /usr/bin == /bin.  This change also makes
      search results report locations as "/usr/..." instead of "/lib/...".
      See issue #10122.
      12dcf9e4
    • Brad King's avatar
      Restore -rdynamic in Linux build rules · 9ef3f8e8
      Brad King authored
      The commit "Drop -rdynamic from Linux build rules" removed default use
      of the flag on Linux.  It was expected to be compatible because any
      project using plugins should set ENABLE_EXPORTS on its executables to
      export their symbols for use by the plugins in a cross-platform way.
      However, it is possible to build without ENABLE_EXPORTS and load plugins
      that do not link to any symbols from the executable explicitly.  These
      plugins may need to see RTTI and other executable symbols needed by the
      language implementation.  Executables using such plugins were broken by
      the change.
      
      If we want to remove the -rdynamic flag in the future we should do so in
      a compatible way.  At that time we should also remove equivalent flags
      on other platforms (like -bexpall on AIX).  We will either need a policy
      or an explicit API to disable symbol exports on executables.
      
      The primary purpose of the above-mentioned commit was to avoid passing
      the -rdynamic flag to compilers on Linux that do not support it.  In
      this commit we restore the flag but only on GNU and Intel compilers
      which are known to support it.
      
      See issue #9985.
      9ef3f8e8
    • Brad King's avatar
      Create Linux GNU compiler flag consolidation macro · 7b106a6f
      Brad King authored
      This macro will be used for GNU compiler flags that are specific to
      Linux but not to any language.
      7b106a6f
  21. 23 Dec, 2009 1 commit
    • David Cole's avatar
      Fix issue with SDK not matching initial deployment target chosen by setting... · 8d88de4b
      David Cole authored
      Fix issue with SDK not matching initial deployment target chosen by setting the MACOSX_DEPLOYMENT_TARGET environment variable. The problem was that we were setting the initial SDK value based on our own internal default value for deplyment target rather than the user's environment variable choice. The solution is to base the default value for the SDK on the deployment target variable after initially caching the deployment target... Every time I'm in this code I think I leave it cleaner, only to be proven otherwise. Let's give this one a whirl. Bleh.
      8d88de4b
  22. 15 Dec, 2009 1 commit
  23. 04 Dec, 2009 5 commits
    • Brad King's avatar
      Remove GNU-specific flags from Linux.cmake · af14f1f2
      Brad King authored
      We remove the shared library compile/link flags "-fPIC" and "-shared"
      because they are not provided by all compilers on Linux.  This allows us
      to drop code from the Linux-XL-*.cmake files that erases the bad flags.
      All other supported compilers already provide their correct flags for
      Linux in their own platform information files.
      af14f1f2
    • Brad King's avatar
      Generalize support for Portland Group Compiler · c106cb2e
      Brad King authored
      We factor flags from Platform/Linux-PGI-Fortran.cmake into language
      independent helper modules
      
        Compiler/PGI.cmake
        Platform/Linux-PGI.cmake
      
      and invoke the macros from
      
        Compiler/PGI-<lang>.cmake
        Platform/Linux-PGI-<lang>.cmake
      
      This enables general support for the PGI compilers.
      c106cb2e
    • Brad King's avatar
      Remove duplicate info from Linux SunPro info files · 2d948e94
      Brad King authored
      The CMAKE_DL_LIBS variable is set platform-wide by Linux.cmake so we do
      not need to duplicate it in Linux-SunPro-<lang>.cmake files.
      2d948e94
    • Brad King's avatar
      Consolidate Linux Intel compiler information · e2083979
      Brad King authored
      We consolidate duplicate code from Platform/Linux-Intel-<lang>.cmake
      files into a macro defined in Platform/Linux-Intel.cmake.
      e2083979
    • Brad King's avatar
      Fix GNU C and Fortran flags on SunOS · 77ded396
      Brad King authored
      The commit "Split GNU compiler information files" intended to move GNU
      flags from the platform-wide Platform/SunOS.cmake module into
      
        Platform/SunOS-GNU-<lang>.cmake
      
      using a helper module Platform/SunOS-GNU.cmake to consolidate flags.
      However, it accidentally put Fortran flags in the C language module and
      left out the Fortran module altogether.  This fixes those mistakes.
      77ded396
  24. 02 Dec, 2009 5 commits
    • Brad King's avatar
      Move GNU flags from SunOS.cmake to SunOS-GNU.cmake · 3e37ca8e
      Brad King authored
      The GNU-specific link-type flags do not belong in the platform-wide
      file.
      3e37ca8e
    • Brad King's avatar
      Reduce duplication in Platform/<os>.cmake files · 4d72006b
      Brad King authored
      Several platform-wide linker flag variables are defined in
      Modules/Platform/<os>.cmake files for C and then copied by the
      Modules/CMake<lang>Information.cmake file for each language.
      We now use this approach for the variables
      
        CMAKE_EXE_EXPORTS_${lang}_FLAG
        CMAKE_SHARED_LIBRARY_SONAME_${lang}_FLAG
        CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS
      
      to avoid duplication for multiple languages in each platform file.
      4d72006b
    • Brad King's avatar
      Fix OS X dylib and module GNU flags · 58d6057a
      Brad King authored
      The commit "Split GNU compiler information files" broke the settings of
      
        CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS
        CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS
      
      and started using just "-shared" for them.  This worked when tested on newer
      Mac machines, but older ones really need "-dynamiclib" and "-bundle" (which are
      the documented flags anyway).
      58d6057a
    • Brad King's avatar
      Modernize GNU compiler info on Windows · aff31479
      Brad King authored
      This moves GNU compiler info on Windows into new-style modules
      
        Platform/Windows-GNU-<lang>.cmake
      
      using language-independent helper module
      
        Platform/Windows-GNU.cmake
      
      to define macros consolidating the information.
      aff31479
    • Brad King's avatar
      Split GNU compiler information files · e28c16b4
      Brad King authored
      This moves GNU compiler flags into new-style modules
      
        Compiler/GNU-<lang>.cmake
        Platform/<os>-GNU-<lang>.cmake
      
      We use language-independent helper modules
      
        Compiler/GNU.cmake
        Platform/<os>-GNU.cmake
      
      to define macros consolidating the information.
      e28c16b4
  25. 01 Dec, 2009 1 commit
    • Brad King's avatar
      Drop -rdynamic from Linux build rules · 1f06c33f
      Brad King authored
      This is a GNU-specific option that should not be specified for all
      compilers on Linux.  It tells the GNU compiler to pass -export-dynamic
      to the linker to export symbols from executables for use by plugins.
      Since we provide the ENABLE_EXPORTS target property to do the same thing
      in a cross-platform way, there is no need to pass -rdynamic always.
      
      Since the option is not useful for GNU tools and breaks other tools on
      Linux we simply remove it from CMAKE_SHARED_LIBRARY_LINK_<lang>_FLAGS.
      This also allows us to stop setting the variable in other Linux compiler
      files just to erase the bad flag.
      
      See issue #9985.
      1f06c33f
  26. 30 Nov, 2009 1 commit
    • Brad King's avatar
      Singly-quote target names for Watcom linker · 4f43c1f2
      Brad King authored
      The Watcom tools do their own command-line parsing and do not accept
      double-quotes.  Instead we single-quote the target output name when
      invoking wlink and other Watcom tools.  This fixes support for spaces in
      the target output directory path when it is not under the build tree.
      4f43c1f2
  27. 19 Nov, 2009 1 commit