1. 20 Oct, 2014 1 commit
    • Ben Boeckel's avatar
      Avoid if() quoted auto-dereference · 29c3edb8
      Ben Boeckel authored
      When testing CMAKE_<LANG>_COMPILER_ID values, do not explicitly
      dereference or quote the variable. We want if() to auto-dereference the
      variable and not its value. Also replace MATCHES with STREQUAL where
  2. 19 May, 2014 1 commit
  3. 24 Mar, 2011 1 commit
    • Brad King's avatar
      FortranCInterface: Fix mangling detection with Cray Fortran >= 7.3.2 · d0203fb5
      Brad King authored
      The Cray Fortran compiler started using module init symbols in version 7.3.2.
      Starting in commit 71287734 (Teach FortranC interface for Intel, PGI, and gcc
      4.2, 2009-08-05) we provide C versions of the module init symbols so that the
      detection executable can link when the C versions of the module-mangled symbols
      are picked up.
      If no C module-mangled symbol matches then we cannot let the C module init
      symbol appear because it will be duplicated by the Fortran copy that provides
      the module-mangled symbol.  This was first handled for the PathScale compiler
      in commit 21faaa5d (FortranCInterface: Fix PathScale detection, 2010-01-22) and
      commit 46858720 (FortranCInterface: Fix PathScale detection again, 2010-02-16).
      Handle it now for the Cray compiler too.
  4. 09 Dec, 2010 1 commit
  5. 28 Jan, 2010 1 commit
  6. 22 Jan, 2010 1 commit
    • Brad King's avatar
      FortranCInterface: Fix PathScale detection · 21faaa5d
      Brad King authored
      PathScale Fortran mangles module symbols as "MYSUB.in.MYMODULE" and also
      requires "mymodule_" when the module is imported.  We cannot provide the
      symbol with ".in." mangling so we should not provide "mymodule_" because
      it would duplicate the one in the Fortran-provided object file.
  7. 09 Oct, 2009 1 commit
  8. 05 Oct, 2009 1 commit
  9. 01 Oct, 2009 1 commit
  10. 28 Sep, 2009 1 commit
    • Brad King's avatar
      Convert CMake non-find modules to BSD License · 3a666595
      Brad King authored
      This adds copyright/license notification blocks CMake's non-find
      modules.  Most of the modules had no notices at all.  Some had notices
      referring to the BSD license already.  This commit normalizes existing
      notices and adds missing notices.
  11. 06 Aug, 2009 2 commits
  12. 05 Aug, 2009 3 commits
    • Brad King's avatar
      Cleanup FortranCInterface for PGI and GCC 4.2 · edcddb52
      Brad King authored
      This documents the purpose of the extra my_module_.c and mymodule.c
      source files, and sorts the symbols.
    • Bill Hoffman's avatar
    • Brad King's avatar
      Rewrite FortranCInterface module · 80f0201b
      Brad King authored
      This is a new FortranCInterface.cmake module to replace the previous
      prototype.  All module support files lie in a FortranCInterface
      directory next to it.
      This module uses a new approach to detect Fortran symbol mangling.  We
      build a single test project which defines symbols in a Fortran library
      (one per object-file) and calls them from a Fortran executable.  The
      executable links to a C library which defines symbols encoding all known
      manglings (one per object-file).  The C library falls back to the
      Fortran library for symbols it cannot provide.  Therefore the executable
      will always link, but prefers the C-implemented symbols when they match.
      These symbols store string literals of the form INFO:symbol[<name>] so
      we can parse them out of the executable.
      This module also provides a simpler interface.  It always detects the
      mangling as soon as it is included.  A single macro is provided to
      generate mangling macros and optionally pre-mangled symbols.