Imported Upstream version 2.8.4~rc1

ci/unstable
Kai Wasserbäch 14 years ago
parent 068560fedc
commit 5a598b17ff

@ -10,6 +10,7 @@
# See the License for more information. # See the License for more information.
#============================================================================= #=============================================================================
CMAKE_MINIMUM_REQUIRED(VERSION 2.4.5 FATAL_ERROR) CMAKE_MINIMUM_REQUIRED(VERSION 2.4.5 FATAL_ERROR)
SET(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required
PROJECT(CMake) PROJECT(CMake)
IF(COMMAND CMAKE_POLICY) IF(COMMAND CMAKE_POLICY)
CMAKE_POLICY(SET CMP0003 NEW) CMAKE_POLICY(SET CMP0003 NEW)
@ -418,9 +419,9 @@ ENDIF()
# The CMake version number. # The CMake version number.
SET(CMake_VERSION_MAJOR 2) SET(CMake_VERSION_MAJOR 2)
SET(CMake_VERSION_MINOR 8) SET(CMake_VERSION_MINOR 8)
SET(CMake_VERSION_PATCH 3) SET(CMake_VERSION_PATCH 4)
SET(CMake_VERSION_TWEAK 0) SET(CMake_VERSION_TWEAK 0)
#SET(CMake_VERSION_RC 4) SET(CMake_VERSION_RC 1)
# Releases define a tweak level. # Releases define a tweak level.
IF(DEFINED CMake_VERSION_TWEAK) IF(DEFINED CMake_VERSION_TWEAK)

@ -24,6 +24,8 @@ SET(CTEST_CUSTOM_WARNING_EXCEPTION
"is not used for resolving any symbol" "is not used for resolving any symbol"
"Clock skew detected" "Clock skew detected"
"remark\\(1209" "remark\\(1209"
"remark: .*LOOP WAS VECTORIZED"
"warning .980: wrong number of actual arguments to intrinsic function .std::basic_"
"LINK : warning LNK4089: all references to.*ADVAPI32.dll.*discarded by /OPT:REF" "LINK : warning LNK4089: all references to.*ADVAPI32.dll.*discarded by /OPT:REF"
"LINK : warning LNK4089: all references to.*USER32.dll.*discarded by /OPT:REF" "LINK : warning LNK4089: all references to.*USER32.dll.*discarded by /OPT:REF"
"Warning: library was too large for page size.*" "Warning: library was too large for page size.*"

@ -1,3 +1,311 @@
Changes in CMake 2.8.4-rc1 (since 2.8.3)
----------------------------------------
Alex Neundorf (32):
Add support for nasm assembler, patch by Peter Collingbourne (see #10069)
Improve misleading comments.
Add missing copyright headers
We already have 2010, fix copyright year.
Make FindBISON work properly with non-C locales (#11326)
Add support for yasm, a nasm compatible assembler
Use CMAKE_ASM_NASM_FLAGS for nasm instead of FLAGS
Remove trailing whitespace and minor formatting changes for the dot-code
Move the code for collecting targets and libraries into separate functions
Properly insert all targets, also those which don't link to anything.
Generate separate dot files for each target, and a big one with everything.
Move the code for generating dot-files into separate class cmGraphVizWriter
Fix #11421: FindQt3.cmake doesn't honor the REQUIRED keyword
Remove trailing whitespace
Don't enforce VERBOSE makefiles for the CodeBlocks generator
Remove the "early alpha stage" comments about Eclipse and C::B
Don't disable colors in the CodeBlocks generator and minor cleanup.
Some more fixes for nasm support, from Etienne (#10069)
Enable/disable generating graphs depending on the target type
Use std::cout instead of fprintf
Collect targets and libs on demand instead of in the ctor
Exclude targets from the graphviz file based on a regex
Include CMakeDetermineCompilerId in CMakeDetermineASMCompiler.cmake (#11467)
Fix typos in the doc
Add cache var CMAKE_ECLIPSE_MAKE_ARGUMENTS when using the Eclipse generator
Add ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT as a ADVANCED cache variable (#9631)
Fix crash in Eclipse generator with empty project (#11616)
Fix indentation in cmPolicies::ApplyPolicyVersion()
Remove trailing whitespace
Prefer files from CMAKE_ROOT when including from CMAKE_ROOT
Improve documentation and messages for the new CMP0017
Remove usage of CMAKE_CURRENT_LIST_DIR now that we have CMP0017
Alexey Ozeritsky (5):
FindBLAS works in C/C++ projects without Fortran
ACML find fixes (issue 0011219)
find ACML fixes
fix for Fortran-only projects
FindLAPACK works with C/C++ only projects (issue 0009976)
Andrius Štikonas (1):
Modules: Fix spelling 'becase' -> 'because'.
Ben Boeckel (25):
Fix parsing of cache variables without a type
Use cmCacheManager to load entries from the cache
Support manual cache entries
Condense parsing of cache entries
Use FPHSA in FindOpenGL
Ignore strerror_r since CMake isn't threaded
Use _POLL_EMUL_H_ instead of HAVE_POLL_FINE
Rename WorkingDirectory test
Add WORKING_DIRECTORY argument to add_test
Add tests for WORKING_DIRECTORY arg to add_test
Rename the project to match the test
Fix header includes for C++ and Visual Studio
Add ctype.h include for toupper()
Flip slashes around on Windows
Use --><-- markers to denote the path
Simplify the _default_cwd derivation
Only test the default cwd with Makefiles
Group adding tests with its properties
Fully specify the path to old-signature add_test
Use iostream to make Borland happy
Check for poll when looking for _POLL_EMUL_H_
Toss out strerror_r macros
Fix missed _POLL_EMUL_H_ and HAVE_POLL combo
Make TestsWorkingDirectory test a C file
Pass the expected value as the first argument
Bill Hoffman (17):
Fixes for the OSF operating system build.
Add a fix for the inline keyword on the osf os.
Add a "Contract" test for VTK. The test downloads and builds VTK.
Fix contract test so it is not hard coded to the vtk542 test.
Fix incremental linking for VS2010 with nmake or make.
Change cpack run and verify script to work with multi-config generators.
Fix vs2010 project generation error when HEADER_FILE_ONLY is set.
Add more documentation for LANGUAGE property.
Add flags to resource builds on vs 2010 with a test.
Disable incremental testing for this test, it crashes vs9 linker.
Only run resource test for MSVC compilers.
Add support for windows resources with mingw/msys.
Add support for windres to cygwin.
Add testing for windows resources for mingw/msys/cygwin and remove for watcom.
Enable resource building with the intel compiler on windows.
Add support for source files in custom targets for VS 10 (Bug#11330).
Change the nightly tests to build from the nightly branch and not next.
Brad King (90):
Store direct dependencies in solutions for VS >= 8
BUG: Fix compiler flag test for non-English MSVC (#11336)
Document custom command behavior without DEPENDS (#11407)
Consolidate duplicate link rule make dependency code
Define LINK_DEPENDS target property (#11406)
KWSys: Teach SystemInformation about WinXP Pro and Win7
Fix Intel .vfproj SubSystem attribute values
Set Intel .vfproj RuntimeLibrary attribute
Create Fortran info variables for .mod behavior
Teach CMake about Cray C, C++, and Fortran compilers
Speedup find_* commands (#11412)
Prefer non-empty prefixes when matching lib names (#11468)
Record edge type in global dependency graph
Use modern global dependency graph for VS < 8 deps
Allow add_dependencies() on imported targets (#10395)
Pass Mac linker flag through PGI compiler using "-Wl,"
Modernize FindITK module (#11494)
Fix find_* argument parsing crash (#11513)
Skip VS <= 7.1 dependency analysis for VS >= 8
Enable 64-bit tools with VS 2010 Express (#9981, #10722)
KWSys: Associate installed library with an EXPORT
Fix try_compile RemoveFile anti-virus loop (#11503)
Fix Fortran .mod timestamps with Cray compiler
Make Fortran $obj.provides.build targets not .PHONY
Honor custom command dependencies on imported targets (#10395)
Improve signature of cmLocalGenerator::GetRealDependency
Skip file-level dependencies on custom targets (#11332)
Simplify VS generator ConstructScript interface
Factor out common custom command generator
Remove cmLocalGenerator::GetRealLocation
KWSys: Remove realpath from SystemTools::GetPath (#10335)
Fix parallel "make install" of CMake itself
CTest: Fix ctest_sleep documentation (#11554)
Fix soname in cross-compiled targets with Mac host (#11547)
Detect object files in implicit link information
Allow Fortran platform files to set empty values
Recognize the NAG Fortran compiler
Add NAG Fortran compiler information files
FortranCInterface: Recognize NAG Fortran module symbols
Remove unused variable "rootdir" in VS generators
Avoid msbuild idiosyncrasy that builds multiple configs (#11594)
Remove unused parameter "root" in some VS generator methods
Fix dependency tracing of INSTALL and PACKAGE (#11598)
Remove unused GLOBAL_TARGET generation code
KWSys: Use EXPORT name only if installing library
Write full version into try_compile CMakeLists
KWSys: Do not mangle UNC paths in ConvertToUnixOutputPath (#10206)
Normalize add_custom_command OUTPUT names (#10485)
Make link rule depend on ".def" file (#11014)
Document target_link_libraries target scope (#11058)
Record backtrace in cmCustomCommand
Factor generator expression docs out of add_test
Factor per-config sample targets out of 'Testing' test
Optionally suppress errors in cmGeneratorExpression
Record set of targets used in cmGeneratorExpression
Introduce "generator expression" syntax to custom commands (#11209)
CTest: Fix test DEPEND cycle detection
Make Intel defines consistent with MSVC on Windows (#9904)
CTest: Fix line-too-long style in DEPEND cycle error
Detect Fortran target architecture on Windows
Modernize Intel compiler info on Windows
Remove unused old-style g++ info file
CheckCCompilerFlag: Strict signature of 'main' (#11615)
Warn in find(GLOB) docs about bad use case (#11617)
Remove call to SystemTools::GetMaximumFilePathLength
Xcode: Generate native 3.2 projects
Declare min CMake version in --system-information project
Cygwin: Fix tests to check CYGWIN instead of WIN32
Cygwin: Do not define 'WIN32' (#10122)
Revert "Remove unused parameter "root" in some VS generator methods"
Revert "Avoid msbuild idiosyncrasy that builds multiple configs" (#11633)
Avoid msbuild ".\" idiosyncrasy that builds multiple configs (#11594)
Mark CustomCommand test perconfig.out as SYMBOLIC
CTest: Factor out duplicate Git author/committer code
KWSys: Avoid buffer overflow in SystemInformation (#11018)
Fix sentence break in add_test documentation
Pass Mac linker flag through all compilers with -Wl,
KWSys: Avoid passing string literal as char*
Avoid passing string literal to char* type
Fix constness in compiler id detection
Build enable_language command during bootstrap
Map multiple /FI flags for VS < 10 (#11649)
KWSys: Remove useless include <sys/procfs.h> (#11648)
Allow users to specify defaults for unset policies
ccmake: Use LSB 4.0 curses API conditionally
CTest: Do not truncate UTF-8 test output too early (#10656)
ccmake: Use LSB 4.0 getmaxyx conditionally
Allow platform files to set large archive rules (#11674)
Document reading LOCATION early as undefined (#11671)
Document reading LOCATION_<CONFIG> early as undefined (#11671)
Brian Bassett (1):
VS: Fix linking of Fortran-only DLL projects (#10803)
Campbell Barton (1):
Honor RULE_MESSAGES property for build target messages
Chuck Atkins (1):
CTest: Teach launcher to ignore empty/no-op make commands
Clinton Stimpson (11):
Fix regex for moc includes when looking for frameworks.
cmake-gui: use BundleUtilities in place of custom script.
Fix regression in 2dae2f1 which added find of Qt imports dir.
Force cmake to run again when qrc dependency scanning needs to happen.
Fix regression to allow specifying a CMakeCache.txt file on the command line.
BundleUtilities: only do rpath strip on copied prerequisites.
Fix build issues cross compiling with static Qt.
CTest: multiple ctest_test calls w/LABEL regexs (#11487)
cmake-gui: always enable generate button.
allow absolute paths for dbus interface.
Add support for using static/dynamic Qt plugins.
Craig Scott (1):
ccmake: Port for LSB 4.0 (#11648)
Dave Abrahams (1):
FindPerlLibs: Fix for Mac locally applied patches
David Cole (31):
Add a contract test for building the CSE.
Enable overriding contract test timeout values.
Update tag in the Contracts/cse-snapshot test.
Make HTML test fail when --nonet arg is not available.
Begin post-2.8.3 development
No CMake.HTML test if xmllint has no --nonet.
Suppress "loop was vectorized" "warnings."
Add contract test for Trilinos 10.6.1 snapshot.
Honor FOLDER on include_external_msproject targets (#11436)
Correct misspelling in error message text.
BundleUtilities: error if fixup_bundle_item called on non-embedded item
VS10: stop build on custom command error (#11533)
CPack: look for makensis in the PATH (#8210)
VS10: avoid warning, no nologo when verbose (#10587)
Use m prefix in shorttag value to indicate "md5 of tarball"
Establish pass criteria for the Trilinos contract test.
Suppress erroneous warnings from Intel compiler
Avoid running CMake.Install test simultaneously with other tests
VS10: Finish Midl support (#11461)
Prohibit space in HOME value for VSMidl test.
KWSys: Fix CPU speed calculations (#9963)
KWSys: Retrieve QNX specific memory and processor info (#11329)
Improve build error detection.
VSMidl Test: Use correct include_directories with VS6 (#11461)
Add PATH_SUFFIXES for finding git.
ExternalProject: Avoid bleed-through output when logging.
Fix WOW64 registry mode on Windows 2000 (#10759)
ExternalProject: Replace location tags in CMAKE_CACHE_ARGS
CPack: Detect more URLs in CPACK_NSIS_MENU_LINKS (#10644)
KWSys: Fix WOW64 registry mode on Windows 2000 (#10759)
CPack: Add CPACK_NSIS_INSTALL_ROOT variable (#9148)
Eric NOULARD (13):
CPackRPM add basic component support to CPackRPM
CPack fix kwstyle breakage and make CPackRPM backward compatible
CPack backward compatibility fix 2.8.3-2.8.2 (bug 11452)
CPack Fix KWStyle error
CPack Honor CPACK_MONOLITHIC_INSTALL at CPack time too
CPack use IsOn when it's better than IsSet
CPackRPM fix bug 0011595 : Can't generate RPMs (on FC11...)
CPack new tests for component install
CPack Default component test for ZIP should be OK
CPackTest spit out more output in case of failure
Arrange output in a better way
Precise the project config type when invoking cpack
CPackSTGZ quote here-doc, fix bug10518
Kai Wasserbäch (1):
FindTCL: Fix TCL and TK version variable references (#11528)
Marcus D. Hanwell (5):
BUG 11451 - pass CMAKE_EXTRA_GENERATOR down.
Added CMAKE_CACHE_ARGS to ExternalProject.
Escape file write expansion, and build up lists.
Fixed bug where last entry would be lost.
Python additional version support, bug #10279.
Matthias Kretz (1):
Inline help in vim with vertical split.
Mike McQuaid (6):
Fix incorrect variable documentation (#11127)
Add variable for InstallRequiredSystemLibraries dir (#11140)
InstallRequiredSystemLibraries debug-only (#11141)
Allow NSIS package or uninstall icon (#11143)
Add CPACK_NSIS_EXECUTABLES_DIRECTORY (#7828)
Add CPack NSIS MUI_FINISHPAGE_RUN support (#11144)
Philip Lowman (8):
11363: FindBoost.cmake fails to find debug libraries in tagged layout install
11429: FindGTK2 does not find libraries built for Visual Studio 2010
11430: FindBullet doesn't find header files installed by Bullet >= 2.77
11384: FindCxxTest now includes test code in VS project
[patch] Add Boost 1.45 to search, simplify a check removing VERSION_LESS
Add Boost 1.46
Fix spelling BOOST_LIBRARYDIR message. Add error for common misspellings.
Lowercase all function names and improve consistency
Rolf Eike Beer (2):
allow STRING(SUBSTRING) work with length -1 as "rest of the string"
Add the WORKING_DIRECTORY property to tests
Wojciech Migda (1):
Recognize the Texas Instruments DSP compiler (#11645)
Yaakov Selkowitz (2):
Cygwin: Use 'cyg' prefix for module DLLs (#10122)
Cygwin: Fix release script libncurses search patterns (#10766)
Zach Mullen (4):
Remove debugging message from parallel ctest
CTest git update should pass the committer as well as the author
Support explicitly set test costs in non-parallel testing.
Test TIMEOUT property explicitly set to zero should be honored
No changes in CMake 2.8.3 since 2.8.3-rc4. No changes in CMake 2.8.3 since 2.8.3-rc4.
Changes in CMake 2.8.3-rc4 (since 2.8.3-rc3) Changes in CMake 2.8.3-rc4 (since 2.8.3-rc3)

@ -0,0 +1,21 @@
nmap ,hc :call OpenCmakeHelp()<CR>
function! OpenCmakeHelp()
let s = getline( '.' )
let i = col( '.' ) - 1
while i > 0 && strpart( s, i, 1 ) =~ '[A-Za-z0-9_]'
let i = i - 1
endwhile
while i < col('$') && strpart( s, i, 1 ) !~ '[A-Za-z0-9_]'
let i = i + 1
endwhile
let start = match( s, '[A-Za-z0-9_]\+', i )
let end = matchend( s, '[A-Za-z0-9_]\+', i )
let ident = strpart( s, start, end - start )
execute "vertical new"
execute "%!cmake --help-command ".ident
set nomodified
set readonly
endfunction
autocmd BufRead,BufNewFile *.cmake,CMakeLists.txt,*.cmake.in nmap <F1> :call OpenCmakeHelp()<CR>

@ -27,6 +27,11 @@
# drag-n-drop copied to another machine and run on that machine as long as all # drag-n-drop copied to another machine and run on that machine as long as all
# of the system libraries are compatible. # of the system libraries are compatible.
# #
# If you pass plugins to fixup_bundle as the libs parameter, you should install
# them or copy them into the bundle before calling fixup_bundle. The "libs"
# parameter is a list of libraries that must be fixed up, but that cannot be
# determined by otool output analysis. (i.e., plugins)
#
# Gather all the keys for all the executables and libraries in a bundle, and # Gather all the keys for all the executables and libraries in a bundle, and
# then, for each key, copy each prerequisite into the bundle. Then fix each one # then, for each key, copy each prerequisite into the bundle. Then fix each one
# up according to its own list of prerequisites. # up according to its own list of prerequisites.
@ -112,6 +117,13 @@
# _EMBEDDED_ITEM keyed variable for that prerequisite. (Most likely changing to # _EMBEDDED_ITEM keyed variable for that prerequisite. (Most likely changing to
# an "@executable_path" style reference.) # an "@executable_path" style reference.)
# #
# This function requires that the resolved_embedded_item be "inside" the bundle
# already. In other words, if you pass plugins to fixup_bundle as the libs
# parameter, you should install them or copy them into the bundle before
# calling fixup_bundle. The "libs" parameter is a list of libraries that must
# be fixed up, but that cannot be determined by otool output analysis. (i.e.,
# plugins)
#
# Also, change the id of the item being fixed up to its own _EMBEDDED_ITEM # Also, change the id of the item being fixed up to its own _EMBEDDED_ITEM
# value. # value.
# #
@ -472,11 +484,11 @@ function(copy_resolved_item_into_bundle resolved_item resolved_embedded_item)
else() else()
#message(STATUS "copying COMMAND ${CMAKE_COMMAND} -E copy ${resolved_item} ${resolved_embedded_item}") #message(STATUS "copying COMMAND ${CMAKE_COMMAND} -E copy ${resolved_item} ${resolved_embedded_item}")
execute_process(COMMAND ${CMAKE_COMMAND} -E copy "${resolved_item}" "${resolved_embedded_item}") execute_process(COMMAND ${CMAKE_COMMAND} -E copy "${resolved_item}" "${resolved_embedded_item}")
endif()
if(UNIX AND NOT APPLE) if(UNIX AND NOT APPLE)
file(RPATH_REMOVE FILE "${resolved_embedded_item}") file(RPATH_REMOVE FILE "${resolved_embedded_item}")
endif(UNIX AND NOT APPLE) endif(UNIX AND NOT APPLE)
endif()
endfunction(copy_resolved_item_into_bundle) endfunction(copy_resolved_item_into_bundle)
@ -514,11 +526,11 @@ function(copy_resolved_framework_into_bundle resolved_item resolved_embedded_ite
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_directory "${resolved_resources}" "${resolved_embedded_resources}") execute_process(COMMAND ${CMAKE_COMMAND} -E copy_directory "${resolved_resources}" "${resolved_embedded_resources}")
endif() endif()
endif() endif()
endif()
if(UNIX AND NOT APPLE) if(UNIX AND NOT APPLE)
file(RPATH_REMOVE FILE "${resolved_embedded_item}") file(RPATH_REMOVE FILE "${resolved_embedded_item}")
endif(UNIX AND NOT APPLE) endif(UNIX AND NOT APPLE)
endif()
endfunction(copy_resolved_framework_into_bundle) endfunction(copy_resolved_framework_into_bundle)
@ -527,6 +539,24 @@ function(fixup_bundle_item resolved_embedded_item exepath dirs)
# #
get_item_key("${resolved_embedded_item}" ikey) get_item_key("${resolved_embedded_item}" ikey)
# Ensure the item is "inside the .app bundle" -- it should not be fixed up if
# it is not in the .app bundle... Otherwise, we'll modify files in the build
# tree, or in other varied locations around the file system, with our call to
# install_name_tool. Make sure that doesn't happen here:
#
get_dotapp_dir("${exepath}" exe_dotapp_dir)
string(LENGTH "${exe_dotapp_dir}/" exe_dotapp_dir_length)
string(SUBSTRING "${resolved_embedded_item}" 0 ${exe_dotapp_dir_length} item_substring)
if(NOT "${exe_dotapp_dir}/" STREQUAL "${item_substring}")
message(" exe_dotapp_dir/='${exe_dotapp_dir}/'")
message(" item_substring='${item_substring}'")
message(" resolved_embedded_item='${resolved_embedded_item}'")
message("")
message("Install or copy the item into the bundle before calling fixup_bundle")
message("")
message(FATAL_ERROR "cannot fixup an item that is not in the bundle...")
endif()
set(prereqs "") set(prereqs "")
get_prerequisites("${resolved_embedded_item}" prereqs 1 0 "${exepath}" "${dirs}") get_prerequisites("${resolved_embedded_item}" prereqs 1 0 "${exepath}" "${dirs}")

@ -0,0 +1,46 @@
#=============================================================================
# Copyright 2010 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
# support for the nasm assembler
set(CMAKE_ASM_NASM_SOURCE_FILE_EXTENSIONS nasm asm)
if(NOT CMAKE_ASM_NASM_OBJECT_FORMAT)
if(WIN32)
if(CMAKE_C_SIZEOF_DATA_PTR EQUAL 8)
SET(CMAKE_ASM_NASM_OBJECT_FORMAT win64)
else()
SET(CMAKE_ASM_NASM_OBJECT_FORMAT win32)
endif()
elseif(APPLE)
if(CMAKE_C_SIZEOF_DATA_PTR EQUAL 8)
SET(CMAKE_ASM_NASM_OBJECT_FORMAT macho64)
else()
SET(CMAKE_ASM_NASM_OBJECT_FORMAT macho)
endif()
else()
if(CMAKE_C_SIZEOF_DATA_PTR EQUAL 8)
SET(CMAKE_ASM_NASM_OBJECT_FORMAT elf64)
else()
SET(CMAKE_ASM_NASM_OBJECT_FORMAT elf)
endif()
endif()
endif()
set(CMAKE_ASM_NASM_COMPILE_OBJECT "<CMAKE_ASM_NASM_COMPILER> <FLAGS> -f ${CMAKE_ASM_NASM_OBJECT_FORMAT} -o <OBJECT> <SOURCE>")
# Load the generic ASMInformation file:
set(ASM_DIALECT "_NASM")
include(CMakeASMInformation)
set(ASM_DIALECT)

@ -42,6 +42,12 @@
#elif defined(__PATHSCALE__) #elif defined(__PATHSCALE__)
# define COMPILER_ID "PathScale" # define COMPILER_ID "PathScale"
#elif defined(_CRAYC)
# define COMPILER_ID "Cray"
#elif defined(__TI_COMPILER_VERSION__)
# define COMPILER_ID "TI_DSP"
#elif defined(__GNUC__) #elif defined(__GNUC__)
# define COMPILER_ID "GNU" # define COMPILER_ID "GNU"
@ -85,7 +91,7 @@
getting matched. Store it in a pointer rather than an array getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */ array rather than assigning a pointer to a static array. */
char* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
@CMAKE_C_COMPILER_ID_PLATFORM_CONTENT@ @CMAKE_C_COMPILER_ID_PLATFORM_CONTENT@

@ -164,9 +164,15 @@ ENDIF(NOT CMAKE_C_CREATE_SHARED_MODULE)
# Create a static archive incrementally for large object file counts. # Create a static archive incrementally for large object file counts.
# If CMAKE_C_CREATE_STATIC_LIBRARY is set it will override these. # If CMAKE_C_CREATE_STATIC_LIBRARY is set it will override these.
IF(NOT DEFINED CMAKE_C_ARCHIVE_CREATE)
SET(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>") SET(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
ENDIF()
IF(NOT DEFINED CMAKE_C_ARCHIVE_APPEND)
SET(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>") SET(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
ENDIF()
IF(NOT DEFINED CMAKE_C_ARCHIVE_FINISH)
SET(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> <TARGET>") SET(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> <TARGET>")
ENDIF()
# compile a C file into an object file # compile a C file into an object file
IF(NOT CMAKE_C_COMPILE_OBJECT) IF(NOT CMAKE_C_COMPILE_OBJECT)

@ -44,6 +44,12 @@
#elif defined(__PATHSCALE__) #elif defined(__PATHSCALE__)
# define COMPILER_ID "PathScale" # define COMPILER_ID "PathScale"
#elif defined(_CRAYC)
# define COMPILER_ID "Cray"
#elif defined(__TI_COMPILER_VERSION__)
# define COMPILER_ID "TI_DSP"
#elif defined(__GNUC__) #elif defined(__GNUC__)
# define COMPILER_ID "GNU" # define COMPILER_ID "GNU"
@ -76,7 +82,7 @@
getting matched. Store it in a pointer rather than an array getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */ array rather than assigning a pointer to a static array. */
char* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
@CMAKE_CXX_COMPILER_ID_PLATFORM_CONTENT@ @CMAKE_CXX_COMPILER_ID_PLATFORM_CONTENT@

@ -241,9 +241,15 @@ ENDIF(NOT CMAKE_CXX_CREATE_SHARED_MODULE)
# Create a static archive incrementally for large object file counts. # Create a static archive incrementally for large object file counts.
# If CMAKE_CXX_CREATE_STATIC_LIBRARY is set it will override these. # If CMAKE_CXX_CREATE_STATIC_LIBRARY is set it will override these.
IF(NOT DEFINED CMAKE_CXX_ARCHIVE_CREATE)
SET(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>") SET(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
ENDIF()
IF(NOT DEFINED CMAKE_CXX_ARCHIVE_APPEND)
SET(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>") SET(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
ENDIF()
IF(NOT DEFINED CMAKE_CXX_ARCHIVE_FINISH)
SET(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> <TARGET>") SET(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> <TARGET>")
ENDIF()
# compile a C++ file into an object file # compile a C++ file into an object file
IF(NOT CMAKE_CXX_COMPILE_OBJECT) IF(NOT CMAKE_CXX_COMPILE_OBJECT)

@ -64,7 +64,11 @@ IF(NOT CMAKE_ASM${ASM_DIALECT}_COMPILER_ID)
LIST(APPEND CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDORS GNU ) LIST(APPEND CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDORS GNU )
SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_GNU "--version") SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_GNU "--version")
SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_GNU "GNU assembler") SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_GNU "GNU assembler")
LIST(APPEND CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDORS TI_DSP )
SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_TI_DSP "-h")
SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_TI_DSP "Texas Instruments")
INCLUDE(CMakeDetermineCompilerId)
CMAKE_DETERMINE_COMPILER_ID_VENDOR(ASM${ASM_DIALECT}) CMAKE_DETERMINE_COMPILER_ID_VENDOR(ASM${ASM_DIALECT})
IF(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID) IF(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID)

@ -0,0 +1,27 @@
#=============================================================================
# Copyright 2010 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
# Find the nasm assembler. yasm (http://www.tortall.net/projects/yasm/) is nasm compatible
SET(CMAKE_ASM_NASM_COMPILER_INIT nasm yasm)
IF(NOT CMAKE_ASM_NASM_COMPILER)
FIND_PROGRAM(CMAKE_ASM_NASM_COMPILER nasm
"$ENV{ProgramFiles}/NASM")
ENDIF(NOT CMAKE_ASM_NASM_COMPILER)
# Load the generic DetermineASM compiler file with the DIALECT set properly:
SET(ASM_DIALECT "_NASM")
INCLUDE(CMakeDetermineASMCompiler)
SET(ASM_DIALECT)

@ -64,7 +64,8 @@ FUNCTION(CMAKE_DETERMINE_COMPILER_ABI lang src)
AND NOT "${CMAKE_OSX_ARCHITECTURES}" MATCHES ";" AND NOT "${CMAKE_OSX_ARCHITECTURES}" MATCHES ";"
# Skip this with Xcode for now. # Skip this with Xcode for now.
AND NOT "${CMAKE_GENERATOR}" MATCHES Xcode) AND NOT "${CMAKE_GENERATOR}" MATCHES Xcode)
CMAKE_PARSE_IMPLICIT_LINK_INFO("${OUTPUT}" implicit_libs implicit_dirs log) CMAKE_PARSE_IMPLICIT_LINK_INFO("${OUTPUT}" implicit_libs implicit_dirs log
"${CMAKE_${lang}_IMPLICIT_OBJECT_REGEX}")
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
"Parsed ${lang} implicit link information from above output:\n${log}\n\n") "Parsed ${lang} implicit link information from above output:\n${log}\n\n")
ENDIF() ENDIF()

@ -169,6 +169,9 @@ IF(NOT CMAKE_Fortran_COMPILER_ID_RUN)
LIST(APPEND CMAKE_Fortran_COMPILER_ID_VENDORS Compaq) LIST(APPEND CMAKE_Fortran_COMPILER_ID_VENDORS Compaq)
SET(CMAKE_Fortran_COMPILER_ID_VENDOR_FLAGS_Compaq "-what") SET(CMAKE_Fortran_COMPILER_ID_VENDOR_FLAGS_Compaq "-what")
SET(CMAKE_Fortran_COMPILER_ID_VENDOR_REGEX_Compaq "Compaq Visual Fortran") SET(CMAKE_Fortran_COMPILER_ID_VENDOR_REGEX_Compaq "Compaq Visual Fortran")
LIST(APPEND CMAKE_Fortran_COMPILER_ID_VENDORS NAG) # Numerical Algorithms Group
SET(CMAKE_Fortran_COMPILER_ID_VENDOR_FLAGS_NAG "-V")
SET(CMAKE_Fortran_COMPILER_ID_VENDOR_REGEX_NAG "NAG Fortran Compiler")
# Try to identify the compiler. # Try to identify the compiler.
SET(CMAKE_Fortran_COMPILER_ID) SET(CMAKE_Fortran_COMPILER_ID)
@ -215,6 +218,10 @@ ENDIF(NOT CMAKE_Fortran_COMPILER_ID_RUN)
INCLUDE(CMakeFindBinUtils) INCLUDE(CMakeFindBinUtils)
IF(MSVC_Fortran_ARCHITECTURE_ID)
SET(SET_MSVC_Fortran_ARCHITECTURE_ID
"SET(MSVC_Fortran_ARCHITECTURE_ID ${MSVC_Fortran_ARCHITECTURE_ID})")
ENDIF()
# configure variables set in this file for fast reload later on # configure variables set in this file for fast reload later on
CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeFortranCompiler.cmake.in CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeFortranCompiler.cmake.in
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeFortranCompiler.cmake ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeFortranCompiler.cmake

@ -54,6 +54,12 @@ ENDIF(NOT CMAKE_RC_COMPILER)
MARK_AS_ADVANCED(CMAKE_RC_COMPILER) MARK_AS_ADVANCED(CMAKE_RC_COMPILER)
GET_FILENAME_COMPONENT(_CMAKE_RC_COMPILER_NAME_WE ${CMAKE_RC_COMPILER} NAME_WE)
IF(_CMAKE_RC_COMPILER_NAME_WE STREQUAL "windres")
SET(CMAKE_RC_OUTPUT_EXTENSION .obj)
ELSE()
SET(CMAKE_RC_OUTPUT_EXTENSION .res)
ENDIF()
# configure variables set in this file for fast reload later on # configure variables set in this file for fast reload later on
CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeRCCompiler.cmake.in CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeRCCompiler.cmake.in

@ -17,6 +17,12 @@
FIND_PROGRAM(CMAKE_ECLIPSE_EXECUTABLE NAMES eclipse DOC "The Eclipse executable") FIND_PROGRAM(CMAKE_ECLIPSE_EXECUTABLE NAMES eclipse DOC "The Eclipse executable")
# This variable is used by the Eclipse generator and appended to the make invocation commands.
SET(CMAKE_ECLIPSE_MAKE_ARGUMENTS "" CACHE STRING "Additional command line arguments when Eclipse invokes make. Enter e.g. -j<some_number> to get parallel builds")
# This variable is used by the Eclipse generator in out-of-source builds only.
SET(ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT FALSE CACHE BOOL "If enabled, CMake will generate a source project for Eclipse in CMAKE_SOURCE_DIR")
MARK_AS_ADVANCED(ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT)
# The Eclipse generator needs to know the standard include path # The Eclipse generator needs to know the standard include path
# so that Eclipse ca find the headers at runtime and parsing etc. works better # so that Eclipse ca find the headers at runtime and parsing etc. works better

@ -2,6 +2,7 @@ SET(CMAKE_Fortran_COMPILER "@CMAKE_Fortran_COMPILER@")
SET(CMAKE_Fortran_COMPILER_ARG1 "@CMAKE_Fortran_COMPILER_ARG1@") SET(CMAKE_Fortran_COMPILER_ARG1 "@CMAKE_Fortran_COMPILER_ARG1@")
SET(CMAKE_Fortran_COMPILER_ID "@CMAKE_Fortran_COMPILER_ID@") SET(CMAKE_Fortran_COMPILER_ID "@CMAKE_Fortran_COMPILER_ID@")
SET(CMAKE_Fortran_PLATFORM_ID "@CMAKE_Fortran_PLATFORM_ID@") SET(CMAKE_Fortran_PLATFORM_ID "@CMAKE_Fortran_PLATFORM_ID@")
@SET_MSVC_Fortran_ARCHITECTURE_ID@
SET(CMAKE_AR "@CMAKE_AR@") SET(CMAKE_AR "@CMAKE_AR@")
SET(CMAKE_RANLIB "@CMAKE_RANLIB@") SET(CMAKE_RANLIB "@CMAKE_RANLIB@")
SET(CMAKE_COMPILER_IS_GNUG77 @CMAKE_COMPILER_IS_GNUG77@) SET(CMAKE_COMPILER_IS_GNUG77 @CMAKE_COMPILER_IS_GNUG77@)

@ -6,6 +6,8 @@
PRINT *, 'INFO:compiler[Intel]' PRINT *, 'INFO:compiler[Intel]'
#elif defined(__SUNPRO_F90) || defined(__SUNPRO_F95) #elif defined(__SUNPRO_F90) || defined(__SUNPRO_F95)
PRINT *, 'INFO:compiler[SunPro]' PRINT *, 'INFO:compiler[SunPro]'
#elif defined(_CRAYFTN)
PRINT *, 'INFO:compiler[Cray]'
#elif defined(__G95__) #elif defined(__G95__)
PRINT *, 'INFO:compiler[G95]' PRINT *, 'INFO:compiler[G95]'
#elif defined(__PATHSCALE__) #elif defined(__PATHSCALE__)
@ -106,5 +108,14 @@
! SGI preprocessor which produces both the __sgi and else blocks. ! SGI preprocessor which produces both the __sgi and else blocks.
# endif # endif
PRINT *, 'INFO:platform[]' PRINT *, 'INFO:platform[]'
#endif
#if defined(_WIN32) && (defined(__INTEL_COMPILER) || defined(__ICC))
# if defined(_M_IA64)
PRINT *, 'INFO:arch[IA64]'
# elif defined(_M_X64) || defined(_M_AMD64)
PRINT *, 'INFO:arch[x64]'
# elif defined(_M_IX86)
PRINT *, 'INFO:arch[X86]'
# endif
#endif #endif
END END

@ -67,29 +67,29 @@ SET(CMAKE_NEEDS_REQUIRES_STEP_Fortran_FLAG 1)
# Create a set of shared library variable specific to Fortran # Create a set of shared library variable specific to Fortran
# For 90% of the systems, these are the same flags as the C versions # For 90% of the systems, these are the same flags as the C versions
# so if these are not set just copy the flags from the c version # so if these are not set just copy the flags from the c version
IF(NOT CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS)
SET(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS}) SET(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS})
ENDIF(NOT CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS) ENDIF()
IF(NOT CMAKE_SHARED_LIBRARY_Fortran_FLAGS) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_Fortran_FLAGS)
SET(CMAKE_SHARED_LIBRARY_Fortran_FLAGS ${CMAKE_SHARED_LIBRARY_C_FLAGS}) SET(CMAKE_SHARED_LIBRARY_Fortran_FLAGS ${CMAKE_SHARED_LIBRARY_C_FLAGS})
ENDIF(NOT CMAKE_SHARED_LIBRARY_Fortran_FLAGS) ENDIF()
IF(NOT DEFINED CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS)
SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS ${CMAKE_SHARED_LIBRARY_LINK_C_FLAGS}) SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS ${CMAKE_SHARED_LIBRARY_LINK_C_FLAGS})
ENDIF(NOT DEFINED CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS) ENDIF()
IF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG)
SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG}) SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG})
ENDIF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG) ENDIF()
IF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP)
SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP ${CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP}) SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP ${CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP})
ENDIF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP) ENDIF()
IF(NOT CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG)
SET(CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RPATH_LINK_C_FLAG}) SET(CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RPATH_LINK_C_FLAG})
ENDIF(NOT CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG) ENDIF()
IF(NOT DEFINED CMAKE_EXE_EXPORTS_Fortran_FLAG) IF(NOT DEFINED CMAKE_EXE_EXPORTS_Fortran_FLAG)
SET(CMAKE_EXE_EXPORTS_Fortran_FLAG ${CMAKE_EXE_EXPORTS_C_FLAG}) SET(CMAKE_EXE_EXPORTS_Fortran_FLAG ${CMAKE_EXE_EXPORTS_C_FLAG})
@ -100,25 +100,25 @@ IF(NOT DEFINED CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG)
ENDIF() ENDIF()
# repeat for modules # repeat for modules
IF(NOT CMAKE_SHARED_MODULE_CREATE_Fortran_FLAGS) IF(NOT DEFINED CMAKE_SHARED_MODULE_CREATE_Fortran_FLAGS)
SET(CMAKE_SHARED_MODULE_CREATE_Fortran_FLAGS ${CMAKE_SHARED_MODULE_CREATE_C_FLAGS}) SET(CMAKE_SHARED_MODULE_CREATE_Fortran_FLAGS ${CMAKE_SHARED_MODULE_CREATE_C_FLAGS})
ENDIF(NOT CMAKE_SHARED_MODULE_CREATE_Fortran_FLAGS) ENDIF()
IF(NOT CMAKE_SHARED_MODULE_Fortran_FLAGS) IF(NOT DEFINED CMAKE_SHARED_MODULE_Fortran_FLAGS)
SET(CMAKE_SHARED_MODULE_Fortran_FLAGS ${CMAKE_SHARED_MODULE_C_FLAGS}) SET(CMAKE_SHARED_MODULE_Fortran_FLAGS ${CMAKE_SHARED_MODULE_C_FLAGS})
ENDIF(NOT CMAKE_SHARED_MODULE_Fortran_FLAGS) ENDIF()
IF(NOT CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG) IF(NOT DEFINED CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG)
SET(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG}) SET(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG})
ENDIF(NOT CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG) ENDIF()
IF(NOT CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG_SEP) IF(NOT DEFINED CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG_SEP)
SET(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG_SEP ${CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP}) SET(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG_SEP ${CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP})
ENDIF(NOT CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG_SEP) ENDIF()
IF(NOT CMAKE_EXECUTABLE_RPATH_LINK_Fortran_FLAG) IF(NOT DEFINED CMAKE_EXECUTABLE_RPATH_LINK_Fortran_FLAG)
SET(CMAKE_EXECUTABLE_RPATH_LINK_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG}) SET(CMAKE_EXECUTABLE_RPATH_LINK_Fortran_FLAG ${CMAKE_SHARED_LIBRARY_RPATH_LINK_Fortran_FLAG})
ENDIF(NOT CMAKE_EXECUTABLE_RPATH_LINK_Fortran_FLAG) ENDIF()
IF(NOT DEFINED CMAKE_SHARED_LIBRARY_LINK_Fortran_WITH_RUNTIME_PATH) IF(NOT DEFINED CMAKE_SHARED_LIBRARY_LINK_Fortran_WITH_RUNTIME_PATH)
SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_WITH_RUNTIME_PATH ${CMAKE_SHARED_LIBRARY_LINK_C_WITH_RUNTIME_PATH}) SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_WITH_RUNTIME_PATH ${CMAKE_SHARED_LIBRARY_LINK_C_WITH_RUNTIME_PATH})
@ -163,9 +163,15 @@ ENDIF(NOT CMAKE_Fortran_CREATE_SHARED_MODULE)
# Create a static archive incrementally for large object file counts. # Create a static archive incrementally for large object file counts.
# If CMAKE_Fortran_CREATE_STATIC_LIBRARY is set it will override these. # If CMAKE_Fortran_CREATE_STATIC_LIBRARY is set it will override these.
IF(NOT DEFINED CMAKE_Fortran_ARCHIVE_CREATE)
SET(CMAKE_Fortran_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>") SET(CMAKE_Fortran_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
ENDIF()
IF(NOT DEFINED CMAKE_Fortran_ARCHIVE_APPEND)
SET(CMAKE_Fortran_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>") SET(CMAKE_Fortran_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
ENDIF()
IF(NOT DEFINED CMAKE_Fortran_ARCHIVE_FINISH)
SET(CMAKE_Fortran_ARCHIVE_FINISH "<CMAKE_RANLIB> <TARGET>") SET(CMAKE_Fortran_ARCHIVE_FINISH "<CMAKE_RANLIB> <TARGET>")
ENDIF()
# compile a Fortran file into an object file # compile a Fortran file into an object file
IF(NOT CMAKE_Fortran_COMPILE_OBJECT) IF(NOT CMAKE_Fortran_COMPILE_OBJECT)

@ -16,7 +16,7 @@
# This is used internally by CMake and should not be included by user # This is used internally by CMake and should not be included by user
# code. # code.
function(CMAKE_PARSE_IMPLICIT_LINK_INFO text lib_var dir_var log_var) function(CMAKE_PARSE_IMPLICIT_LINK_INFO text lib_var dir_var log_var obj_regex)
set(implicit_libs_tmp "") set(implicit_libs_tmp "")
set(implicit_dirs_tmp) set(implicit_dirs_tmp)
set(log "") set(log "")
@ -59,6 +59,11 @@ function(CMAKE_PARSE_IMPLICIT_LINK_INFO text lib_var dir_var log_var)
# Unix library full path. # Unix library full path.
list(APPEND implicit_libs_tmp ${arg}) list(APPEND implicit_libs_tmp ${arg})
set(log "${log} arg [${arg}] ==> lib [${arg}]\n") set(log "${log} arg [${arg}] ==> lib [${arg}]\n")
elseif("${arg}" MATCHES "^(.:)?[/\\].*\\.o$"
AND obj_regex AND "${arg}" MATCHES "${obj_regex}")
# Object file full path.
list(APPEND implicit_libs_tmp ${arg})
set(log "${log} arg [${arg}] ==> obj [${arg}]\n")
elseif("${arg}" MATCHES "^-Y(P,)?") elseif("${arg}" MATCHES "^-Y(P,)?")
# Sun search path. # Sun search path.
string(REGEX REPLACE "^-Y(P,)?" "" dirs "${arg}") string(REGEX REPLACE "^-Y(P,)?" "" dirs "${arg}")

@ -83,7 +83,7 @@
#endif #endif
/* For windows compilers MSVC and Intel we can determine /* For windows compilers MSVC and Intel we can determine
the architecture of the compiler being used. This is becase the architecture of the compiler being used. This is because
the compilers do not have flags that can change the architecture, the compilers do not have flags that can change the architecture,
but rather depend on which compiler is being used but rather depend on which compiler is being used
*/ */
@ -109,6 +109,6 @@
getting matched. Store it in a pointer rather than an array getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */ array rather than assigning a pointer to a static array. */
char* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
char* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";

@ -2,5 +2,5 @@ SET(CMAKE_RC_COMPILER "@CMAKE_RC_COMPILER@")
SET(CMAKE_RC_COMPILER_ARG1 "@CMAKE_RC_COMPILER_ARG1@") SET(CMAKE_RC_COMPILER_ARG1 "@CMAKE_RC_COMPILER_ARG1@")
SET(CMAKE_RC_COMPILER_LOADED 1) SET(CMAKE_RC_COMPILER_LOADED 1)
SET(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc) SET(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc)
SET(CMAKE_RC_OUTPUT_EXTENSION .res) SET(CMAKE_RC_OUTPUT_EXTENSION @CMAKE_RC_OUTPUT_EXTENSION@)
SET(CMAKE_RC_COMPILER_ENV_VAR "RC") SET(CMAKE_RC_COMPILER_ENV_VAR "RC")

@ -13,10 +13,10 @@
# License text for the above reference.) # License text for the above reference.)
# This file is used by EnableLanguage in cmGlobalGenerator to # This file is used by EnableLanguage in cmGlobalGenerator to
# determine that that selected ASM-ATT compiler can actually compile # determine that the selected ASM-ATT "compiler" works.
# and link the most basic of programs. If not, a fatal error # For assembler this can only check whether the compiler has been found,
# is set and cmake stops processing commands and will not generate # because otherwise there would have to be a separate assembler source file
# any makefiles or projects. # for each assembler on every architecture.
SET(ASM_DIALECT "-ATT") SET(ASM_DIALECT "-ATT")
INCLUDE(CMakeTestASMCompiler) INCLUDE(CMakeTestASMCompiler)

@ -13,10 +13,11 @@
# License text for the above reference.) # License text for the above reference.)
# This file is used by EnableLanguage in cmGlobalGenerator to # This file is used by EnableLanguage in cmGlobalGenerator to
# determine that that selected ASM compiler can actually compile # determine that the selected ASM compiler works.
# and link the most basic of programs. If not, a fatal error # For assembler this can only check whether the compiler has been found,
# is set and cmake stops processing commands and will not generate # because otherwise there would have to be a separate assembler source file
# any makefiles or projects. # for each assembler on every architecture.
IF(CMAKE_ASM${ASM_DIALECT}_COMPILER) IF(CMAKE_ASM${ASM_DIALECT}_COMPILER)
SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_WORKS 1 CACHE INTERNAL "") SET(CMAKE_ASM${ASM_DIALECT}_COMPILER_WORKS 1 CACHE INTERNAL "")
ELSE(CMAKE_ASM${ASM_DIALECT}_COMPILER) ELSE(CMAKE_ASM${ASM_DIALECT}_COMPILER)

@ -14,9 +14,9 @@
# This file is used by EnableLanguage in cmGlobalGenerator to # This file is used by EnableLanguage in cmGlobalGenerator to
# determine that the selected ASM_MASM "compiler" (should be masm or masm64) # determine that the selected ASM_MASM "compiler" (should be masm or masm64)
# can actually "compile" and link the most basic of programs. If not, a # works. For assembler this can only check whether the compiler has been found,
# fatal error is set and cmake stops processing commands and will not generate # because otherwise there would have to be a separate assembler source file
# any makefiles or projects. # for each assembler on every architecture.
SET(ASM_DIALECT "_MASM") SET(ASM_DIALECT "_MASM")
INCLUDE(CMakeTestASMCompiler) INCLUDE(CMakeTestASMCompiler)

@ -0,0 +1,23 @@
#=============================================================================
# Copyright 2010 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
# This file is used by EnableLanguage in cmGlobalGenerator to
# determine that the selected ASM_NASM "compiler" works.
# For assembler this can only check whether the compiler has been found,
# because otherwise there would have to be a separate assembler source file
# for each assembler on every architecture.
SET(ASM_DIALECT "_NASM")
INCLUDE(CMakeTestASMCompiler)
SET(ASM_DIALECT)

@ -80,7 +80,7 @@ then
if [ "x${cpack_skip_license}x" != "xTRUEx" ] if [ "x${cpack_skip_license}x" != "xTRUEx" ]
then then
more << ____cpack__here_doc____ more << '____cpack__here_doc____'
@CPACK_RESOURCE_FILE_LICENSE_CONTENT@ @CPACK_RESOURCE_FILE_LICENSE_CONTENT@
____cpack__here_doc____ ____cpack__here_doc____
echo echo

@ -210,6 +210,11 @@
# CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Registry key used when # CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Registry key used when
# installing this project. # installing this project.
# #
# CPACK_NSIS_INSTALL_ROOT - The default installation directory presented
# to the end user by the NSIS installer is under this root dir. The full
# directory presented to the end user is:
# ${CPACK_NSIS_INSTALL_ROOT}/${CPACK_PACKAGE_INSTALL_DIRECTORY}
#
# CPACK_NSIS_MUI_ICON - The icon file (.ico) for the generated # CPACK_NSIS_MUI_ICON - The icon file (.ico) for the generated
# install program. # install program.
# #
@ -257,6 +262,14 @@
# CPACK_NSIS_DELETE_ICONS_EXTRA -Additional NSIS commands to # CPACK_NSIS_DELETE_ICONS_EXTRA -Additional NSIS commands to
# uninstall start menu shortcuts. # uninstall start menu shortcuts.
# #
# CPACK_NSIS_EXECUTABLES_DIRECTORY - Creating NSIS start menu links
# assumes that they are in 'bin' unless this variable is set.
# For example, you would set this to 'exec' if your executables are
# in an exec directory.
#
# CPACK_NSIS_MUI_FINISHPAGE_RUN - Specify an executable to add an option
# to run on the finish page of the NSIS installer.
#
# The following variable is specific to installers build on Mac OS X # The following variable is specific to installers build on Mac OS X
# using PackageMaker: # using PackageMaker:
# #
@ -777,6 +790,11 @@ IF(${__cpack_system_name} MATCHES Windows)
ENDIF(${__cpack_system_name} MATCHES Windows) ENDIF(${__cpack_system_name} MATCHES Windows)
cpack_set_if_not_set(CPACK_SYSTEM_NAME "${__cpack_system_name}") cpack_set_if_not_set(CPACK_SYSTEM_NAME "${__cpack_system_name}")
# Root dir: default value should be the string literal "$PROGRAMFILES"
# for backwards compatibility. Projects may set this value to anything.
set(__cpack_root_default "$PROGRAMFILES")
cpack_set_if_not_set(CPACK_NSIS_INSTALL_ROOT "${__cpack_root_default}")
# <project>-<major>.<minor>.<patch>-<release>-<platform>.<pkgtype> # <project>-<major>.<minor>.<patch>-<release>-<platform>.<pkgtype>
cpack_set_if_not_set(CPACK_PACKAGE_FILE_NAME cpack_set_if_not_set(CPACK_PACKAGE_FILE_NAME
"${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}") "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}")

@ -453,6 +453,17 @@ SET(CPACK_RPM_FILE_NAME "${CPACK_OUTPUT_FILE_NAME}")
#STRING(REGEX REPLACE " " "\\\\ " CPACK_RPM_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}") #STRING(REGEX REPLACE " " "\\\\ " CPACK_RPM_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}")
SET(CPACK_RPM_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}") SET(CPACK_RPM_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}")
# Are we packaging components ?
IF(CPACK_RPM_PACKAGE_COMPONENT)
SET(CPACK_RPM_PACKAGE_COMPONENT_PART_NAME "-${CPACK_RPM_PACKAGE_COMPONENT}")
SET(CPACK_RPM_PACKAGE_COMPONENT_PART_PATH "/${CPACK_RPM_PACKAGE_COMPONENT}")
SET(WDIR "${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/${CPACK_RPM_PACKAGE_COMPONENT}")
ELSE(CPACK_RPM_PACKAGE_COMPONENT)
SET(CPACK_RPM_PACKAGE_COMPONENT_PART_NAME "")
SET(CPACK_RPM_PACKAGE_COMPONENT_PART_PATH "")
SET(WDIR "${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}")
ENDIF(CPACK_RPM_PACKAGE_COMPONENT)
# Use files tree to construct files command (spec file) # Use files tree to construct files command (spec file)
# We should not forget to include symlinks (thus -o -type l) # We should not forget to include symlinks (thus -o -type l)
# We must remove the './' due to the local search and escape the # We must remove the './' due to the local search and escape the
@ -462,7 +473,7 @@ SET(CPACK_RPM_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}")
EXECUTE_PROCESS(COMMAND find -type f -o -type l EXECUTE_PROCESS(COMMAND find -type f -o -type l
COMMAND sed {s:.*/man.*/.*:&*:} COMMAND sed {s:.*/man.*/.*:&*:}
COMMAND sed {s/\\.\\\(.*\\\)/\"\\1\"/} COMMAND sed {s/\\.\\\(.*\\\)/\"\\1\"/}
WORKING_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}" WORKING_DIRECTORY "${WDIR}"
OUTPUT_VARIABLE CPACK_RPM_INSTALL_FILES) OUTPUT_VARIABLE CPACK_RPM_INSTALL_FILES)
if (CPACK_ABSOLUTE_DESTINATION_FILES) if (CPACK_ABSOLUTE_DESTINATION_FILES)
@ -494,7 +505,7 @@ if (CPACK_ABSOLUTE_DESTINATION_FILES)
endif(CPACK_ABSOLUTE_DESTINATION_FILES) endif(CPACK_ABSOLUTE_DESTINATION_FILES)
# The name of the final spec file to be used by rpmbuild # The name of the final spec file to be used by rpmbuild
SET(CPACK_RPM_BINARY_SPECFILE "${CPACK_RPM_ROOTDIR}/SPECS/${CPACK_RPM_PACKAGE_NAME}.spec") SET(CPACK_RPM_BINARY_SPECFILE "${CPACK_RPM_ROOTDIR}/SPECS/${CPACK_RPM_PACKAGE_NAME}${CPACK_RPM_PACKAGE_COMPONENT_PART_NAME}.spec")
# Print out some debug information if we were asked for that # Print out some debug information if we were asked for that
IF(CPACK_RPM_PACKAGE_DEBUG) IF(CPACK_RPM_PACKAGE_DEBUG)
@ -517,7 +528,7 @@ ENDIF(CPACK_RPM_PACKAGE_DEBUG)
IF(CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE OR NOT CPACK_RPM_USER_BINARY_SPECFILE) IF(CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE OR NOT CPACK_RPM_USER_BINARY_SPECFILE)
FILE(WRITE ${CPACK_RPM_BINARY_SPECFILE}.in FILE(WRITE ${CPACK_RPM_BINARY_SPECFILE}.in
"# -*- rpm-spec -*- "# -*- rpm-spec -*-
BuildRoot: \@CPACK_RPM_DIRECTORY\@/\@CPACK_PACKAGE_FILE_NAME\@ BuildRoot: \@CPACK_RPM_DIRECTORY\@/\@CPACK_PACKAGE_FILE_NAME\@\@CPACK_RPM_PACKAGE_COMPONENT_PART_PATH\@
Summary: \@CPACK_RPM_PACKAGE_SUMMARY\@ Summary: \@CPACK_RPM_PACKAGE_SUMMARY\@
Name: \@CPACK_RPM_PACKAGE_NAME\@ Name: \@CPACK_RPM_PACKAGE_NAME\@
Version: \@CPACK_RPM_PACKAGE_VERSION\@ Version: \@CPACK_RPM_PACKAGE_VERSION\@
@ -555,10 +566,9 @@ mv $RPM_BUILD_ROOT \"\@CPACK_TOPLEVEL_DIRECTORY\@/tmpBBroot\"
%install %install
if [ -e $RPM_BUILD_ROOT ]; if [ -e $RPM_BUILD_ROOT ];
then then
mv \"\@CPACK_TOPLEVEL_DIRECTORY\@/tmpBBroot/*\" $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
else
mv \"\@CPACK_TOPLEVEL_DIRECTORY\@/tmpBBroot\" $RPM_BUILD_ROOT
fi fi
mv \"\@CPACK_TOPLEVEL_DIRECTORY\@/tmpBBroot\" $RPM_BUILD_ROOT
%clean %clean
@ -608,15 +618,15 @@ IF(RPMBUILD_EXECUTABLE)
# Now call rpmbuild using the SPECFILE # Now call rpmbuild using the SPECFILE
EXECUTE_PROCESS( EXECUTE_PROCESS(
COMMAND "${RPMBUILD_EXECUTABLE}" -bb COMMAND "${RPMBUILD_EXECUTABLE}" -bb
--buildroot "${CPACK_RPM_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}" --buildroot "${CPACK_RPM_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}${CPACK_RPM_PACKAGE_COMPONENT_PART_PATH}"
"${CPACK_RPM_BINARY_SPECFILE}" "${CPACK_RPM_BINARY_SPECFILE}"
WORKING_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}" WORKING_DIRECTORY "${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}${CPACK_RPM_PACKAGE_COMPONENT_PART_PATH}"
ERROR_FILE "${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild.err" ERROR_FILE "${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild${CPACK_RPM_PACKAGE_COMPONENT_PART_NAME}.err"
OUTPUT_FILE "${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild.out") OUTPUT_FILE "${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild${CPACK_RPM_PACKAGE_COMPONENT_PART_NAME}.out")
IF(CPACK_RPM_PACKAGE_DEBUG) IF(CPACK_RPM_PACKAGE_DEBUG)
MESSAGE("CPackRPM:Debug: You may consult rpmbuild logs in: ") MESSAGE("CPackRPM:Debug: You may consult rpmbuild logs in: ")
MESSAGE("CPackRPM:Debug: - ${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild.err") MESSAGE("CPackRPM:Debug: - ${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild${CPACK_RPM_PACKAGE_COMPONENT_PART_NAME}.err")
MESSAGE("CPackRPM:Debug: - ${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild.out") MESSAGE("CPackRPM:Debug: - ${CPACK_TOPLEVEL_DIRECTORY}/rpmbuild${CPACK_RPM_PACKAGE_COMPONENT_PART_NAME}.out")
ENDIF(CPACK_RPM_PACKAGE_DEBUG) ENDIF(CPACK_RPM_PACKAGE_DEBUG)
ELSE(RPMBUILD_EXECUTABLE) ELSE(RPMBUILD_EXECUTABLE)
IF(ALIEN_EXECUTABLE) IF(ALIEN_EXECUTABLE)

@ -7,7 +7,7 @@
# that can modify the build. # that can modify the build.
#============================================================================= #=============================================================================
# Copyright 2006-2009 Kitware, Inc. # Copyright 2006-2010 Kitware, Inc.
# Copyright 2006 Alexander Neundorf <neundorf@kde.org> # Copyright 2006 Alexander Neundorf <neundorf@kde.org>
# #
# Distributed under the OSI-approved BSD License (the "License"); # Distributed under the OSI-approved BSD License (the "License");
@ -25,10 +25,11 @@ INCLUDE(CheckCSourceCompiles)
MACRO (CHECK_C_COMPILER_FLAG _FLAG _RESULT) MACRO (CHECK_C_COMPILER_FLAG _FLAG _RESULT)
SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}")
SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}")
CHECK_C_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT} CHECK_C_SOURCE_COMPILES("int main(void) { return 0; }" ${_RESULT}
# Some compilers do not fail with a bad flag # Some compilers do not fail with a bad flag
FAIL_REGEX "unrecognized .*option" # GNU FAIL_REGEX "unrecognized .*option" # GNU
FAIL_REGEX "ignoring unknown option" # MSVC FAIL_REGEX "ignoring unknown option" # MSVC
FAIL_REGEX "warning D9002" # MSVC, any lang
FAIL_REGEX "[Uu]nknown option" # HP FAIL_REGEX "[Uu]nknown option" # HP
FAIL_REGEX "[Ww]arning: [Oo]ption" # SunPro FAIL_REGEX "[Ww]arning: [Oo]ption" # SunPro
FAIL_REGEX "command option .* is not recognized" # XL FAIL_REGEX "command option .* is not recognized" # XL

@ -7,7 +7,7 @@
# modify the build. # modify the build.
#============================================================================= #=============================================================================
# Copyright 2006-2009 Kitware, Inc. # Copyright 2006-2010 Kitware, Inc.
# Copyright 2006 Alexander Neundorf <neundorf@kde.org> # Copyright 2006 Alexander Neundorf <neundorf@kde.org>
# #
# Distributed under the OSI-approved BSD License (the "License"); # Distributed under the OSI-approved BSD License (the "License");
@ -29,6 +29,7 @@ MACRO (CHECK_CXX_COMPILER_FLAG _FLAG _RESULT)
# Some compilers do not fail with a bad flag # Some compilers do not fail with a bad flag
FAIL_REGEX "unrecognized .*option" # GNU FAIL_REGEX "unrecognized .*option" # GNU
FAIL_REGEX "ignoring unknown option" # MSVC FAIL_REGEX "ignoring unknown option" # MSVC
FAIL_REGEX "warning D9002" # MSVC, any lang
FAIL_REGEX "[Uu]nknown option" # HP FAIL_REGEX "[Uu]nknown option" # HP
FAIL_REGEX "[Ww]arning: [Oo]ption" # SunPro FAIL_REGEX "[Ww]arning: [Oo]ption" # SunPro
FAIL_REGEX "command option .* is not recognized" # XL FAIL_REGEX "command option .* is not recognized" # XL

@ -0,0 +1 @@
set(CMAKE_C_VERBOSE_FLAG "-v")

@ -0,0 +1 @@
set(CMAKE_CXX_VERBOSE_FLAG "-v")

@ -0,0 +1,4 @@
set(CMAKE_Fortran_VERBOSE_FLAG "-v")
set(CMAKE_Fortran_MODOUT_FLAG -em)
set(CMAKE_Fortran_MODDIR_FLAG -J)
set(CMAKE_Fortran_MODDIR_DEFAULT .)

@ -0,0 +1,32 @@
# Help CMAKE_PARSE_IMPLICIT_LINK_INFO detect NAG Fortran object files.
if(NOT CMAKE_Fortran_COMPILER_WORKS AND NOT CMAKE_Fortran_COMPILER_FORCED)
message(STATUS "Detecting NAG Fortran directory")
# Run with -dryrun to see sample "link" line.
execute_process(
COMMAND ${CMAKE_Fortran_COMPILER} dummy.o -dryrun
OUTPUT_VARIABLE _dryrun
ERROR_VARIABLE _dryrun
)
# Match an object file.
string(REGEX MATCH "/[^ ]*/[^ /][^ /]*\\.o" _nag_obj "${_dryrun}")
if(_nag_obj)
# Parse object directory and convert to a regex.
string(REGEX REPLACE "/[^/]*$" "" _nag_dir "${_nag_obj}")
string(REGEX REPLACE "([][+.*()^])" "\\\\\\1" _nag_regex "${_nag_dir}")
set(CMAKE_Fortran_IMPLICIT_OBJECT_REGEX "^${_nag_regex}/")
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
"Detecting NAG Fortran directory with -dryrun found\n"
" object: ${_nag_obj}\n"
" directory: ${_nag_dir}\n"
" regex: ${CMAKE_Fortran_IMPLICIT_OBJECT_REGEX}\n"
"from output:\n${_dryrun}\n\n")
message(STATUS "Detecting NAG Fortran directory - ${_nag_dir}")
else()
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Detecting NAG Fortran directory with -dryrun failed:\n${_dryrun}\n\n")
message(STATUS "Detecting NAG Fortran directory - failed")
endif()
endif()
set(CMAKE_Fortran_MODDIR_FLAG "-mdir ")
set(CMAKE_SHARED_LIBRARY_Fortran_FLAGS "-PIC")

@ -32,6 +32,7 @@
# [CMAKE_COMMAND /.../cmake] # Specify alternative cmake executable # [CMAKE_COMMAND /.../cmake] # Specify alternative cmake executable
# [CMAKE_GENERATOR gen] # Specify generator for native build # [CMAKE_GENERATOR gen] # Specify generator for native build
# [CMAKE_ARGS args...] # Arguments to CMake command line # [CMAKE_ARGS args...] # Arguments to CMake command line
# [CMAKE_CACHE_ARGS args...] # Initial cache arguments, of the form -Dvar:string=on
# #--Build step----------------- # #--Build step-----------------
# [BINARY_DIR dir] # Specify build dir location # [BINARY_DIR dir] # Specify build dir location
# [BUILD_COMMAND cmd...] # Command to drive the native build # [BUILD_COMMAND cmd...] # Command to drive the native build
@ -550,6 +551,66 @@ function(_ep_set_directories name)
endfunction(_ep_set_directories) endfunction(_ep_set_directories)
# IMPORTANT: this MUST be a macro and not a function because of the
# in-place replacements that occur in each ${var}
#
macro(_ep_replace_location_tags target_name)
set(vars ${ARGN})
foreach(var ${vars})
if(${var})
foreach(dir SOURCE_DIR BINARY_DIR INSTALL_DIR TMP_DIR)
get_property(val TARGET ${target_name} PROPERTY _EP_${dir})
string(REPLACE "<${dir}>" "${val}" ${var} "${${var}}")
endforeach()
endif()
endforeach()
endmacro()
function(_ep_write_initial_cache target_name script_filename args)
# Write out values into an initial cache, that will be passed to CMake with -C
set(script_initial_cache "")
set(regex "^([^:]+):([^=]+)=(.*)$")
set(setArg "")
foreach(line ${args})
if("${line}" MATCHES "^-D")
if(setArg)
# This is required to build up lists in variables, or complete an entry
set(setArg "${setArg}${accumulator}\" CACHE ${type} \"Initial cache\" FORCE)")
set(script_initial_cache "${script_initial_cache}\n${setArg}")
set(accumulator "")
set(setArg "")
endif()
string(REGEX REPLACE "^-D" "" line ${line})
if("${line}" MATCHES "${regex}")
string(REGEX MATCH "${regex}" match "${line}")
set(name "${CMAKE_MATCH_1}")
set(type "${CMAKE_MATCH_2}")
set(value "${CMAKE_MATCH_3}")
set(setArg "set(${name} \"${value}")
else()
message(WARNING "Line '${line}' does not match regex. Ignoring.")
endif()
else()
# Assume this is a list to append to the last var
set(accumulator "${accumulator};${line}")
endif()
endforeach()
# Catch the final line of the args
if(setArg)
set(setArg "${setArg}${accumulator}\" CACHE ${type} \"Initial cache\" FORCE)")
set(script_initial_cache "${script_initial_cache}\n${setArg}")
endif()
# Replace location tags.
_ep_replace_location_tags(${target_name} script_initial_cache)
# Write out the initial cache file to the location specified.
if(NOT EXISTS "${script_filename}.in")
file(WRITE "${script_filename}.in" "\@script_initial_cache\@\n")
endif()
configure_file("${script_filename}.in" "${script_filename}")
endfunction(_ep_write_initial_cache)
function(ExternalProject_Get_Property name) function(ExternalProject_Get_Property name)
foreach(var ${ARGN}) foreach(var ${ARGN})
string(TOUPPER "${var}" VAR) string(TOUPPER "${var}" VAR)
@ -711,7 +772,7 @@ endif()
set(sep ";") set(sep ";")
endif() endif()
endforeach() endforeach()
set(code "${code}set(command \"${cmd}\")${code_execute_process}") set(code "set(ENV{VS_UNICODE_OUTPUT} \"\")\n${code}set(command \"${cmd}\")${code_execute_process}")
file(WRITE ${stamp_dir}/${name}-${step}-impl.cmake "${code}") file(WRITE ${stamp_dir}/${name}-${step}-impl.cmake "${code}")
set(command ${CMAKE_COMMAND} "-Dmake=\${make}" "-Dconfig=\${config}" -P ${stamp_dir}/${name}-${step}-impl.cmake) set(command ${CMAKE_COMMAND} "-Dmake=\${make}" "-Dconfig=\${config}" -P ${stamp_dir}/${name}-${step}-impl.cmake)
endif() endif()
@ -721,6 +782,7 @@ endif()
set(logbase ${stamp_dir}/${name}-${step}) set(logbase ${stamp_dir}/${name}-${step})
file(WRITE ${script} " file(WRITE ${script} "
${code_cygpath_make} ${code_cygpath_make}
set(ENV{VS_UNICODE_OUTPUT} \"\")
set(command \"${command}\") set(command \"${command}\")
execute_process( execute_process(
COMMAND \${command} COMMAND \${command}
@ -821,14 +883,7 @@ function(ExternalProject_Add_Step name step)
endif() endif()
# Replace location tags. # Replace location tags.
foreach(var comment command work_dir) _ep_replace_location_tags(${name} comment command work_dir)
if(${var})
foreach(dir SOURCE_DIR BINARY_DIR INSTALL_DIR TMP_DIR)
get_property(val TARGET ${name} PROPERTY _EP_${dir})
string(REPLACE "<${dir}>" "${val}" ${var} "${${var}}")
endforeach()
endif()
endforeach()
# Custom comment? # Custom comment?
get_property(comment_set TARGET ${name} PROPERTY _EP_${step}_COMMENT SET) get_property(comment_set TARGET ${name} PROPERTY _EP_${step}_COMMENT SET)
@ -1224,23 +1279,37 @@ function(_ep_add_configure_command name)
get_property(cmake_args TARGET ${name} PROPERTY _EP_CMAKE_ARGS) get_property(cmake_args TARGET ${name} PROPERTY _EP_CMAKE_ARGS)
list(APPEND cmd ${cmake_args}) list(APPEND cmd ${cmake_args})
# If there are any CMAKE_CACHE_ARGS, write an initial cache and use it
get_property(cmake_cache_args TARGET ${name} PROPERTY _EP_CMAKE_CACHE_ARGS)
if(cmake_cache_args)
set(_ep_cache_args_script "${tmp_dir}/${name}-cache.cmake")
_ep_write_initial_cache(${name} "${_ep_cache_args_script}" "${cmake_cache_args}")
list(APPEND cmd "-C${_ep_cache_args_script}")
endif()
get_target_property(cmake_generator ${name} _EP_CMAKE_GENERATOR) get_target_property(cmake_generator ${name} _EP_CMAKE_GENERATOR)
if(cmake_generator) if(cmake_generator)
list(APPEND cmd "-G${cmake_generator}" "${source_dir}") list(APPEND cmd "-G${cmake_generator}" "${source_dir}")
else()
if(CMAKE_EXTRA_GENERATOR)
list(APPEND cmd "-G${CMAKE_EXTRA_GENERATOR} - ${CMAKE_GENERATOR}"
"${source_dir}")
else() else()
list(APPEND cmd "-G${CMAKE_GENERATOR}" "${source_dir}") list(APPEND cmd "-G${CMAKE_GENERATOR}" "${source_dir}")
endif() endif()
endif() endif()
endif()
# If anything about the configure command changes, (command itself, cmake # If anything about the configure command changes, (command itself, cmake
# used, cmake args or cmake generator) then re-run the configure step. # used, cmake args or cmake generator) then re-run the configure step.
# Fixes issue http://public.kitware.com/Bug/view.php?id=10258 # Fixes issue http://public.kitware.com/Bug/view.php?id=10258
# #
if(NOT EXISTS ${tmp_dir}/${name}-cfgcmd.txt.in) if(NOT EXISTS ${tmp_dir}/${name}-cfgcmd.txt.in)
file(WRITE ${tmp_dir}/${name}-cfgcmd.txt.in "cmd='@cmd@'\n") file(WRITE ${tmp_dir}/${name}-cfgcmd.txt.in "cmd='\@cmd\@'\n")
endif() endif()
configure_file(${tmp_dir}/${name}-cfgcmd.txt.in ${tmp_dir}/${name}-cfgcmd.txt) configure_file(${tmp_dir}/${name}-cfgcmd.txt.in ${tmp_dir}/${name}-cfgcmd.txt)
list(APPEND file_deps ${tmp_dir}/${name}-cfgcmd.txt) list(APPEND file_deps ${tmp_dir}/${name}-cfgcmd.txt)
list(APPEND file_deps ${_ep_cache_args_script})
get_property(log TARGET ${name} PROPERTY _EP_LOG_CONFIGURE) get_property(log TARGET ${name} PROPERTY _EP_LOG_CONFIGURE)
if(log) if(log)

@ -35,7 +35,7 @@ find_library(ALSA_LIBRARY NAMES asound
# handle the QUIETLY and REQUIRED arguments and set ALSA_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set ALSA_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(ALSA DEFAULT_MSG ALSA_LIBRARY ALSA_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(ALSA DEFAULT_MSG ALSA_LIBRARY ALSA_INCLUDE_DIR)
if(ALSA_FOUND) if(ALSA_FOUND)

@ -26,7 +26,7 @@ FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15 libaspell-15 libaspell)
# handle the QUIETLY and REQUIRED arguments and set ASPELL_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set ASPELL_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(ASPELL DEFAULT_MSG ASPELL_LIBRARIES ASPELL_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(ASPELL DEFAULT_MSG ASPELL_LIBRARIES ASPELL_INCLUDE_DIR)
MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES) MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES)

@ -37,7 +37,7 @@ ENDIF (UNIX)
# handle the QUIETLY and REQUIRED arguments and set AVIFILE_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set AVIFILE_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(AVIFile DEFAULT_MSG AVIFILE_INCLUDE_DIR AVIFILE_AVIPLAY_LIBRARY) FIND_PACKAGE_HANDLE_STANDARD_ARGS(AVIFile DEFAULT_MSG AVIFILE_INCLUDE_DIR AVIFILE_AVIPLAY_LIBRARY)
IF (AVIFILE_FOUND) IF (AVIFILE_FOUND)

@ -51,12 +51,19 @@ FIND_PROGRAM(BISON_EXECUTABLE bison DOC "path to the bison executable")
MARK_AS_ADVANCED(BISON_EXECUTABLE) MARK_AS_ADVANCED(BISON_EXECUTABLE)
IF(BISON_EXECUTABLE) IF(BISON_EXECUTABLE)
# the bison commands should be executed with the C locale, otherwise
# the message (which are parsed) may be translated
SET(_Bison_SAVED_LC_ALL "$ENV{LC_ALL}")
SET(ENV{LC_ALL} C)
EXECUTE_PROCESS(COMMAND ${BISON_EXECUTABLE} --version EXECUTE_PROCESS(COMMAND ${BISON_EXECUTABLE} --version
OUTPUT_VARIABLE BISON_version_output OUTPUT_VARIABLE BISON_version_output
ERROR_VARIABLE BISON_version_error ERROR_VARIABLE BISON_version_error
RESULT_VARIABLE BISON_version_result RESULT_VARIABLE BISON_version_result
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
SET(ENV{LC_ALL} ${_Bison_SAVED_LC_ALL})
IF(NOT ${BISON_version_result} EQUAL 0) IF(NOT ${BISON_version_result} EQUAL 0)
MESSAGE(SEND_ERROR "Command \"${BISON_EXECUTABLE} --version\" failed with output:\n${BISON_version_error}") MESSAGE(SEND_ERROR "Command \"${BISON_EXECUTABLE} --version\" failed with output:\n${BISON_version_error}")
ELSE() ELSE()
@ -151,7 +158,7 @@ IF(BISON_EXECUTABLE)
ENDIF(BISON_EXECUTABLE) ENDIF(BISON_EXECUTABLE)
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(BISON REQUIRED_VARS BISON_EXECUTABLE FIND_PACKAGE_HANDLE_STANDARD_ARGS(BISON REQUIRED_VARS BISON_EXECUTABLE
VERSION_VAR BISON_VERSION) VERSION_VAR BISON_VERSION)

@ -41,15 +41,10 @@
get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES) get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES)
if (NOT _LANGUAGES_ MATCHES Fortran) if (NOT _LANGUAGES_ MATCHES Fortran)
if(BLAS_FIND_REQUIRED) include(CheckFunctionExists)
message(FATAL_ERROR "FindBLAS is Fortran-only so Fortran must be enabled.") else ()
else(BLAS_FIND_REQUIRED)
message(STATUS "Looking for BLAS... - NOT found (Fortran not enabled)") #
return()
endif(BLAS_FIND_REQUIRED)
endif(NOT _LANGUAGES_ MATCHES Fortran)
include(CheckFortranFunctionExists) include(CheckFortranFunctionExists)
endif()
macro(Check_Fortran_Libraries LIBRARIES _prefix _name _flags _list _threads) macro(Check_Fortran_Libraries LIBRARIES _prefix _name _flags _list _threads)
# This macro checks for the existence of the combination of fortran libraries # This macro checks for the existence of the combination of fortran libraries
@ -107,7 +102,11 @@ if(_libraries_work)
# Test this combination of libraries. # Test this combination of libraries.
set(CMAKE_REQUIRED_LIBRARIES ${_flags} ${${LIBRARIES}} ${_threads}) set(CMAKE_REQUIRED_LIBRARIES ${_flags} ${${LIBRARIES}} ${_threads})
# message("DEBUG: CMAKE_REQUIRED_LIBRARIES = ${CMAKE_REQUIRED_LIBRARIES}") # message("DEBUG: CMAKE_REQUIRED_LIBRARIES = ${CMAKE_REQUIRED_LIBRARIES}")
check_fortran_function_exists(${_name} ${_prefix}${_combined_name}_WORKS) if (_LANGUAGES_ MATCHES Fortran)
check_fortran_function_exists("${_name}" ${_prefix}${_combined_name}_WORKS)
else()
check_function_exists("${_name}_" ${_prefix}${_combined_name}_WORKS)
endif()
set(CMAKE_REQUIRED_LIBRARIES) set(CMAKE_REQUIRED_LIBRARIES)
mark_as_advanced(${_prefix}${_combined_name}_WORKS) mark_as_advanced(${_prefix}${_combined_name}_WORKS)
set(_libraries_work ${${_prefix}${_combined_name}_WORKS}) set(_libraries_work ${${_prefix}${_combined_name}_WORKS})
@ -246,13 +245,24 @@ endif (BLA_VENDOR STREQUAL "IBMESSL" OR BLA_VENDOR STREQUAL "All")
#BLAS in acml library? #BLAS in acml library?
if (BLA_VENDOR STREQUAL "ACML" OR BLA_VENDOR STREQUAL "All") if (BLA_VENDOR STREQUAL "ACML" OR BLA_VENDOR STREQUAL "All")
# Either acml or acml_mp should be in LD_LIBRARY_PATH but not both
if(NOT BLAS_LIBRARIES) if(NOT BLAS_LIBRARIES)
check_fortran_libraries( check_fortran_libraries(
BLAS_LIBRARIES BLAS_LIBRARIES
BLAS BLAS
sgemm sgemm
"" ""
"acml" "acml;acml_mv"
""
)
endif(NOT BLAS_LIBRARIES)
if(NOT BLAS_LIBRARIES)
check_fortran_libraries(
BLAS_LIBRARIES
BLAS
sgemm
""
"acml_mp;acml_mv"
"" ""
) )
endif(NOT BLAS_LIBRARIES) endif(NOT BLAS_LIBRARIES)
@ -300,6 +310,9 @@ endif (BLA_VENDOR STREQUAL "Generic" OR BLA_VENDOR STREQUAL "All")
#BLAS in intel mkl 10 library? (em64t 64bit) #BLAS in intel mkl 10 library? (em64t 64bit)
if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All") if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
if (NOT WIN32)
set(LM "-lm")
endif ()
if (_LANGUAGES_ MATCHES C OR _LANGUAGES_ MATCHES CXX) if (_LANGUAGES_ MATCHES C OR _LANGUAGES_ MATCHES CXX)
if(BLAS_FIND_QUIETLY OR NOT BLAS_FIND_REQUIRED) if(BLAS_FIND_QUIETLY OR NOT BLAS_FIND_REQUIRED)
find_package(Threads) find_package(Threads)
@ -340,7 +353,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
sgemm sgemm
"" ""
"mkl_blas95;mkl_intel;mkl_intel_thread;mkl_core;guide" "mkl_blas95;mkl_intel;mkl_intel_thread;mkl_core;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT};${LM}"
) )
endif(NOT BLAS95_LIBRARIES) endif(NOT BLAS95_LIBRARIES)
else(BLA_F95) else(BLA_F95)
@ -352,6 +365,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
"" ""
"mkl_intel;mkl_intel_thread;mkl_core;guide" "mkl_intel;mkl_intel_thread;mkl_core;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT}"
"${LM}"
) )
endif(NOT BLAS_LIBRARIES) endif(NOT BLAS_LIBRARIES)
endif(BLA_F95) endif(BLA_F95)
@ -365,7 +379,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
sgemm sgemm
"" ""
"mkl_blas95;mkl_intel_lp64;mkl_intel_thread;mkl_core;guide" "mkl_blas95;mkl_intel_lp64;mkl_intel_thread;mkl_core;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT};${LM}"
) )
endif(NOT BLAS95_LIBRARIES) endif(NOT BLAS95_LIBRARIES)
else(BLA_F95) else(BLA_F95)
@ -376,7 +390,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
sgemm sgemm
"" ""
"mkl_intel_lp64;mkl_intel_thread;mkl_core;guide" "mkl_intel_lp64;mkl_intel_thread;mkl_core;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT};${LM}"
) )
endif(NOT BLAS_LIBRARIES) endif(NOT BLAS_LIBRARIES)
endif(BLA_F95) endif(BLA_F95)
@ -391,7 +405,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
sgemm sgemm
"" ""
"mkl;guide" "mkl;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT};${LM}"
) )
endif(NOT BLAS_LIBRARIES) endif(NOT BLAS_LIBRARIES)
#BLAS in intel mkl library? (static, 32bit) #BLAS in intel mkl library? (static, 32bit)
@ -402,7 +416,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
sgemm sgemm
"" ""
"mkl_ia32;guide" "mkl_ia32;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT};${LM}"
) )
endif(NOT BLAS_LIBRARIES) endif(NOT BLAS_LIBRARIES)
#BLAS in intel mkl library? (static, em64t 64bit) #BLAS in intel mkl library? (static, em64t 64bit)
@ -413,7 +427,7 @@ if (BLA_VENDOR MATCHES "Intel*" OR BLA_VENDOR STREQUAL "All")
sgemm sgemm
"" ""
"mkl_em64t;guide" "mkl_em64t;guide"
"${CMAKE_THREAD_LIBS_INIT}" "${CMAKE_THREAD_LIBS_INIT};${LM}"
) )
endif(NOT BLAS_LIBRARIES) endif(NOT BLAS_LIBRARIES)
endif (_LANGUAGES_ MATCHES C OR _LANGUAGES_ MATCHES CXX) endif (_LANGUAGES_ MATCHES C OR _LANGUAGES_ MATCHES CXX)

@ -26,7 +26,7 @@ FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 )
# handle the QUIETLY and REQUIRED arguments and set BZip2_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set BZip2_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(BZip2 DEFAULT_MSG BZIP2_LIBRARIES BZIP2_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(BZip2 DEFAULT_MSG BZIP2_LIBRARIES BZIP2_INCLUDE_DIR)
IF (BZIP2_FOUND) IF (BZIP2_FOUND)

@ -64,14 +64,15 @@
# Currently this module searches for the following version numbers: # Currently this module searches for the following version numbers:
# 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1, # 1.33, 1.33.0, 1.33.1, 1.34, 1.34.0, 1.34.1, 1.35, 1.35.0, 1.35.1,
# 1.36, 1.36.0, 1.36.1, 1.37, 1.37.0, 1.38, 1.38.0, 1.39, 1.39.0, # 1.36, 1.36.0, 1.36.1, 1.37, 1.37.0, 1.38, 1.38.0, 1.39, 1.39.0,
# 1.40, 1.40.0, 1.41, 1.41.0, 1.42, 1.42.0, 1.43, 1.43.0, 1.44, 1.44.0 # 1.40, 1.40.0, 1.41, 1.41.0, 1.42, 1.42.0, 1.43, 1.43.0, 1.44, 1.44.0,
# 1.45, 1.45.0, 1.46, 1.46.0
# #
# NOTE: If you add a new major 1.x version in Boost_ADDITIONAL_VERSIONS you should # NOTE: If you add a new major 1.x version in Boost_ADDITIONAL_VERSIONS you should
# add both 1.x and 1.x.0 as shown above. Official Boost include directories # add both 1.x and 1.x.0 as shown above. Official Boost include directories
# omit the 3rd version number from include paths if it is 0 although not all # omit the 3rd version number from include paths if it is 0 although not all
# binary Boost releases do so. # binary Boost releases do so.
# #
# SET(Boost_ADDITIONAL_VERSIONS "1.78" "1.78.0" "1.79" "1.79.0") # set(Boost_ADDITIONAL_VERSIONS "1.78" "1.78.0" "1.79" "1.79.0")
# #
# ===================================== ============= ======================== # ===================================== ============= ========================
# #
@ -163,6 +164,7 @@
# #
# These last three variables are available also as environment variables: # These last three variables are available also as environment variables:
# Also, note they are completely UPPERCASE.
# #
# BOOST_ROOT or BOOSTROOT The preferred installation prefix for searching for # BOOST_ROOT or BOOSTROOT The preferred installation prefix for searching for
# Boost. Set this if the module has problems finding # Boost. Set this if the module has problems finding
@ -250,59 +252,59 @@
# And ELSE/ENDIF pairs were removed for readability. # And ELSE/ENDIF pairs were removed for readability.
######################################################################### #########################################################################
MACRO (_Boost_ADJUST_LIB_VARS basename) macro(_Boost_ADJUST_LIB_VARS basename)
IF (Boost_INCLUDE_DIR ) if(Boost_INCLUDE_DIR )
IF (Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE) if(Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE)
# if the generator supports configuration types then set # if the generator supports configuration types then set
# optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value
IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) if(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
SET(Boost_${basename}_LIBRARY optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG}) set(Boost_${basename}_LIBRARY optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG})
ELSE() else()
# if there are no configuration types and CMAKE_BUILD_TYPE has no value # if there are no configuration types and CMAKE_BUILD_TYPE has no value
# then just use the release libraries # then just use the release libraries
SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE} ) set(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE} )
ENDIF() endif()
# FIXME: This probably should be set for both cases # FIXME: This probably should be set for both cases
SET(Boost_${basename}_LIBRARIES optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG}) set(Boost_${basename}_LIBRARIES optimized ${Boost_${basename}_LIBRARY_RELEASE} debug ${Boost_${basename}_LIBRARY_DEBUG})
ENDIF() endif()
# if only the release version was found, set the debug variable also to the release version # if only the release version was found, set the debug variable also to the release version
IF (Boost_${basename}_LIBRARY_RELEASE AND NOT Boost_${basename}_LIBRARY_DEBUG) if(Boost_${basename}_LIBRARY_RELEASE AND NOT Boost_${basename}_LIBRARY_DEBUG)
SET(Boost_${basename}_LIBRARY_DEBUG ${Boost_${basename}_LIBRARY_RELEASE}) set(Boost_${basename}_LIBRARY_DEBUG ${Boost_${basename}_LIBRARY_RELEASE})
SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE}) set(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_RELEASE})
SET(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_RELEASE}) set(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_RELEASE})
ENDIF() endif()
# if only the debug version was found, set the release variable also to the debug version # if only the debug version was found, set the release variable also to the debug version
IF (Boost_${basename}_LIBRARY_DEBUG AND NOT Boost_${basename}_LIBRARY_RELEASE) if(Boost_${basename}_LIBRARY_DEBUG AND NOT Boost_${basename}_LIBRARY_RELEASE)
SET(Boost_${basename}_LIBRARY_RELEASE ${Boost_${basename}_LIBRARY_DEBUG}) set(Boost_${basename}_LIBRARY_RELEASE ${Boost_${basename}_LIBRARY_DEBUG})
SET(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_DEBUG}) set(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY_DEBUG})
SET(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_DEBUG}) set(Boost_${basename}_LIBRARIES ${Boost_${basename}_LIBRARY_DEBUG})
ENDIF() endif()
IF (Boost_${basename}_LIBRARY) if(Boost_${basename}_LIBRARY)
set(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY} CACHE FILEPATH "The Boost ${basename} library") set(Boost_${basename}_LIBRARY ${Boost_${basename}_LIBRARY} CACHE FILEPATH "The Boost ${basename} library")
# Remove superfluous "debug" / "optimized" keywords from # Remove superfluous "debug" / "optimized" keywords from
# Boost_LIBRARY_DIRS # Boost_LIBRARY_DIRS
FOREACH(_boost_my_lib ${Boost_${basename}_LIBRARY}) foreach(_boost_my_lib ${Boost_${basename}_LIBRARY})
GET_FILENAME_COMPONENT(_boost_my_lib_path "${_boost_my_lib}" PATH) get_filename_component(_boost_my_lib_path "${_boost_my_lib}" PATH)
LIST(APPEND Boost_LIBRARY_DIRS ${_boost_my_lib_path}) list(APPEND Boost_LIBRARY_DIRS ${_boost_my_lib_path})
ENDFOREACH() endforeach()
LIST(REMOVE_DUPLICATES Boost_LIBRARY_DIRS) list(REMOVE_DUPLICATES Boost_LIBRARY_DIRS)
set(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIRS} CACHE FILEPATH "Boost library directory") set(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIRS} CACHE FILEPATH "Boost library directory")
SET(Boost_${basename}_FOUND ON CACHE INTERNAL "Whether the Boost ${basename} library found") set(Boost_${basename}_FOUND ON CACHE INTERNAL "Whether the Boost ${basename} library found")
ENDIF(Boost_${basename}_LIBRARY) endif(Boost_${basename}_LIBRARY)
ENDIF (Boost_INCLUDE_DIR ) endif(Boost_INCLUDE_DIR )
# Make variables changeble to the advanced user # Make variables changeble to the advanced user
MARK_AS_ADVANCED( mark_as_advanced(
Boost_${basename}_LIBRARY Boost_${basename}_LIBRARY
Boost_${basename}_LIBRARY_RELEASE Boost_${basename}_LIBRARY_RELEASE
Boost_${basename}_LIBRARY_DEBUG Boost_${basename}_LIBRARY_DEBUG
) )
ENDMACRO (_Boost_ADJUST_LIB_VARS) endmacro(_Boost_ADJUST_LIB_VARS)
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
@ -310,17 +312,17 @@ ENDMACRO (_Boost_ADJUST_LIB_VARS)
# Runs compiler with "-dumpversion" and parses major/minor # Runs compiler with "-dumpversion" and parses major/minor
# version with a regex. # version with a regex.
# #
FUNCTION(_Boost_COMPILER_DUMPVERSION _OUTPUT_VERSION) function(_Boost_COMPILER_DUMPVERSION _OUTPUT_VERSION)
EXEC_PROGRAM(${CMAKE_CXX_COMPILER} exec_program(${CMAKE_CXX_COMPILER}
ARGS ${CMAKE_CXX_COMPILER_ARG1} -dumpversion ARGS ${CMAKE_CXX_COMPILER_ARG1} -dumpversion
OUTPUT_VARIABLE _boost_COMPILER_VERSION OUTPUT_VARIABLE _boost_COMPILER_VERSION
) )
STRING(REGEX REPLACE "([0-9])\\.([0-9])(\\.[0-9])?" "\\1\\2" string(REGEX REPLACE "([0-9])\\.([0-9])(\\.[0-9])?" "\\1\\2"
_boost_COMPILER_VERSION ${_boost_COMPILER_VERSION}) _boost_COMPILER_VERSION ${_boost_COMPILER_VERSION})
SET(${_OUTPUT_VERSION} ${_boost_COMPILER_VERSION} PARENT_SCOPE) set(${_OUTPUT_VERSION} ${_boost_COMPILER_VERSION} PARENT_SCOPE)
ENDFUNCTION() endfunction()
# #
# A convenience function for marking desired components # A convenience function for marking desired components
@ -355,6 +357,13 @@ function(_Boost_SWAP_WITH_REALPATH _library _docstring)
endif() endif()
endfunction() endfunction()
function(_Boost_CHECK_SPELLING _var)
if(${_var})
string(TOUPPER ${_var} _var_UC)
message(FATAL_ERROR "ERROR: ${_var} is not the correct spelling. The proper spelling is ${_var_UC}.")
endif()
endfunction()
# #
# End functions/macros # End functions/macros
# #
@ -363,9 +372,9 @@ endfunction()
IF(NOT DEFINED Boost_USE_MULTITHREADED) if(NOT DEFINED Boost_USE_MULTITHREADED)
SET(Boost_USE_MULTITHREADED TRUE) set(Boost_USE_MULTITHREADED TRUE)
ENDIF() endif()
if(Boost_FIND_VERSION_EXACT) if(Boost_FIND_VERSION_EXACT)
# The version may appear in a directory with or without the patch # The version may appear in a directory with or without the patch
@ -377,7 +386,7 @@ else(Boost_FIND_VERSION_EXACT)
# The user has not requested an exact version. Among known # The user has not requested an exact version. Among known
# versions, find those that are acceptable to the user request. # versions, find those that are acceptable to the user request.
set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS} set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
"1.44.0" "1.44" "1.43.0" "1.43" "1.42.0" "1.42" "1.46.0" "1.46" "1.45.0" "1.45" "1.44.0" "1.44" "1.43.0" "1.43" "1.42.0" "1.42"
"1.41.0" "1.41" "1.40.0" "1.40" "1.39.0" "1.39" "1.38.0" "1.38" "1.37.0" "1.37" "1.41.0" "1.41" "1.40.0" "1.40" "1.39.0" "1.39" "1.38.0" "1.38" "1.37.0" "1.37"
"1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0"
"1.34" "1.33.1" "1.33.0" "1.33") "1.34" "1.33.1" "1.33.0" "1.33")
@ -406,49 +415,47 @@ endif(Boost_FIND_VERSION_EXACT)
# Boost. # Boost.
set(Boost_ERROR_REASON) set(Boost_ERROR_REASON)
SET( _boost_IN_CACHE TRUE) set( _boost_IN_CACHE TRUE)
IF(Boost_INCLUDE_DIR) if(Boost_INCLUDE_DIR)
# On versions < 1.35, remove the System library from the considered list # On versions < 1.35, remove the System library from the considered list
# since it wasn't added until 1.35. # since it wasn't added until 1.35.
if(Boost_VERSION AND Boost_FIND_COMPONENTS) if(Boost_VERSION AND Boost_FIND_COMPONENTS)
math(EXPR _boost_maj "${Boost_VERSION} / 100000") if(Boost_VERSION LESS 103500)
math(EXPR _boost_min "${Boost_VERSION} / 100 % 1000")
if(${_boost_maj}.${_boost_min} VERSION_LESS 1.35)
list(REMOVE_ITEM Boost_FIND_COMPONENTS system) list(REMOVE_ITEM Boost_FIND_COMPONENTS system)
endif() endif()
endif() endif()
FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) foreach(COMPONENT ${Boost_FIND_COMPONENTS})
STRING(TOUPPER ${COMPONENT} COMPONENT) string(TOUPPER ${COMPONENT} COMPONENT)
IF(NOT Boost_${COMPONENT}_FOUND) if(NOT Boost_${COMPONENT}_FOUND)
SET( _boost_IN_CACHE FALSE) set( _boost_IN_CACHE FALSE)
ENDIF(NOT Boost_${COMPONENT}_FOUND) endif(NOT Boost_${COMPONENT}_FOUND)
ENDFOREACH(COMPONENT) endforeach(COMPONENT)
ELSE(Boost_INCLUDE_DIR) else(Boost_INCLUDE_DIR)
SET( _boost_IN_CACHE FALSE) set( _boost_IN_CACHE FALSE)
ENDIF(Boost_INCLUDE_DIR) endif(Boost_INCLUDE_DIR)
IF (_boost_IN_CACHE) if(_boost_IN_CACHE)
# in cache already # in cache already
SET(Boost_FOUND TRUE) set(Boost_FOUND TRUE)
FOREACH(COMPONENT ${Boost_FIND_COMPONENTS}) foreach(COMPONENT ${Boost_FIND_COMPONENTS})
STRING(TOUPPER ${COMPONENT} COMPONENT) string(TOUPPER ${COMPONENT} COMPONENT)
_Boost_ADJUST_LIB_VARS( ${COMPONENT} ) _Boost_ADJUST_LIB_VARS( ${COMPONENT} )
SET(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${COMPONENT}_LIBRARY}) set(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${COMPONENT}_LIBRARY})
ENDFOREACH(COMPONENT) endforeach(COMPONENT)
SET(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR}) set(Boost_INCLUDE_DIRS ${Boost_INCLUDE_DIR})
IF(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0") if(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0")
MATH(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000") math(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000")
MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000") math(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000")
MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100") math(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100")
ENDIF(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0") endif(Boost_VERSION AND NOT "${Boost_VERSION}" STREQUAL "0")
if(Boost_DEBUG) if(Boost_DEBUG)
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
"boost ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION} " "boost ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION} "
"is already in the cache. To view debugging messages, please clear the cache.") "is already in the cache. To view debugging messages, please clear the cache.")
endif() endif()
ELSE (_boost_IN_CACHE) else(_boost_IN_CACHE)
# Need to search for boost # Need to search for boost
if(Boost_DEBUG) if(Boost_DEBUG)
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
@ -468,7 +475,7 @@ ELSE (_boost_IN_CACHE)
"Boost_NO_SYSTEM_PATHS = ${Boost_NO_SYSTEM_PATHS}") "Boost_NO_SYSTEM_PATHS = ${Boost_NO_SYSTEM_PATHS}")
endif() endif()
IF(WIN32) if(WIN32)
# In windows, automatic linking is performed, so you do not have # In windows, automatic linking is performed, so you do not have
# to specify the libraries. If you are linking to a dynamic # to specify the libraries. If you are linking to a dynamic
# runtime, then you can choose to link to either a static or a # runtime, then you can choose to link to either a static or a
@ -486,9 +493,9 @@ ELSE (_boost_IN_CACHE)
# then defining BOOST_LIB_DIAGNOSTIC will cause the auto-linking # then defining BOOST_LIB_DIAGNOSTIC will cause the auto-linking
# code to emit a #pragma message each time a library is selected # code to emit a #pragma message each time a library is selected
# for linking. # for linking.
SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS set(Boost_LIB_DIAGNOSTIC_DEFINITIONS
"-DBOOST_LIB_DIAGNOSTIC" CACHE STRING "Boost diagnostic define") "-DBOOST_LIB_DIAGNOSTIC" CACHE STRING "Boost diagnostic define")
ENDIF(WIN32) endif(WIN32)
set(_boost_INCLUDE_SEARCH_DIRS_SYSTEM set(_boost_INCLUDE_SEARCH_DIRS_SYSTEM
C:/boost/include C:/boost/include
@ -498,36 +505,33 @@ ELSE (_boost_IN_CACHE)
/sw/local/include /sw/local/include
) )
# If Boost_ROOT was defined, gently correct the user _Boost_CHECK_SPELLING(Boost_ROOT)
if(Boost_ROOT) _Boost_CHECK_SPELLING(Boost_LIBRARYDIR)
message("WARNING: Boost_ROOT was set which is incorrect and is being ignored. " _Boost_CHECK_SPELLING(Boost_INCLUDEDIR)
"You need to use BOOST_ROOT instead. "
"Also, we suggest setting Boost_NO_SYSTEM_PATHS.")
endif()
# If BOOST_ROOT was defined in the environment, use it. # If BOOST_ROOT was defined in the environment, use it.
if (NOT BOOST_ROOT AND NOT $ENV{BOOST_ROOT} STREQUAL "") if (NOT BOOST_ROOT AND NOT $ENV{BOOST_ROOT} STREQUAL "")
set(BOOST_ROOT $ENV{BOOST_ROOT}) set(BOOST_ROOT $ENV{BOOST_ROOT})
endif(NOT BOOST_ROOT AND NOT $ENV{BOOST_ROOT} STREQUAL "") endif()
# If BOOSTROOT was defined in the environment, use it. # If BOOSTROOT was defined in the environment, use it.
if (NOT BOOST_ROOT AND NOT $ENV{BOOSTROOT} STREQUAL "") if (NOT BOOST_ROOT AND NOT $ENV{BOOSTROOT} STREQUAL "")
set(BOOST_ROOT $ENV{BOOSTROOT}) set(BOOST_ROOT $ENV{BOOSTROOT})
endif(NOT BOOST_ROOT AND NOT $ENV{BOOSTROOT} STREQUAL "") endif()
# If BOOST_INCLUDEDIR was defined in the environment, use it. # If BOOST_INCLUDEDIR was defined in the environment, use it.
IF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" ) if( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" )
set(BOOST_INCLUDEDIR $ENV{BOOST_INCLUDEDIR}) set(BOOST_INCLUDEDIR $ENV{BOOST_INCLUDEDIR})
ENDIF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" ) endif()
# If BOOST_LIBRARYDIR was defined in the environment, use it. # If BOOST_LIBRARYDIR was defined in the environment, use it.
IF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" ) if( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" )
set(BOOST_LIBRARYDIR $ENV{BOOST_LIBRARYDIR}) set(BOOST_LIBRARYDIR $ENV{BOOST_LIBRARYDIR})
ENDIF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" ) endif()
IF( BOOST_ROOT ) if( BOOST_ROOT )
file(TO_CMAKE_PATH ${BOOST_ROOT} BOOST_ROOT) file(TO_CMAKE_PATH ${BOOST_ROOT} BOOST_ROOT)
ENDIF( BOOST_ROOT ) endif()
if(Boost_DEBUG) if(Boost_DEBUG)
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
@ -567,28 +571,28 @@ ELSE (_boost_IN_CACHE)
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
# Try to find Boost by stepping backwards through the Boost versions # Try to find Boost by stepping backwards through the Boost versions
# we know about. # we know about.
IF( NOT Boost_INCLUDE_DIR ) if( NOT Boost_INCLUDE_DIR )
# Build a list of path suffixes for each version. # Build a list of path suffixes for each version.
SET(_boost_PATH_SUFFIXES) set(_boost_PATH_SUFFIXES)
FOREACH(_boost_VER ${_boost_TEST_VERSIONS}) foreach(_boost_VER ${_boost_TEST_VERSIONS})
# Add in a path suffix, based on the required version, ideally # Add in a path suffix, based on the required version, ideally
# we could read this from version.hpp, but for that to work we'd # we could read this from version.hpp, but for that to work we'd
# need to know the include dir already # need to know the include dir already
set(_boost_BOOSTIFIED_VERSION) set(_boost_BOOSTIFIED_VERSION)
# Transform 1.35 => 1_35 and 1.36.0 => 1_36_0 # Transform 1.35 => 1_35 and 1.36.0 => 1_36_0
IF(_boost_VER MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+") if(_boost_VER MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" string(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3"
_boost_BOOSTIFIED_VERSION ${_boost_VER}) _boost_BOOSTIFIED_VERSION ${_boost_VER})
ELSEIF(_boost_VER MATCHES "[0-9]+\\.[0-9]+") elseif(_boost_VER MATCHES "[0-9]+\\.[0-9]+")
STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" string(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2"
_boost_BOOSTIFIED_VERSION ${_boost_VER}) _boost_BOOSTIFIED_VERSION ${_boost_VER})
ENDIF() endif()
list(APPEND _boost_PATH_SUFFIXES "boost-${_boost_BOOSTIFIED_VERSION}") list(APPEND _boost_PATH_SUFFIXES "boost-${_boost_BOOSTIFIED_VERSION}")
list(APPEND _boost_PATH_SUFFIXES "boost_${_boost_BOOSTIFIED_VERSION}") list(APPEND _boost_PATH_SUFFIXES "boost_${_boost_BOOSTIFIED_VERSION}")
ENDFOREACH(_boost_VER) endforeach(_boost_VER)
if(Boost_DEBUG) if(Boost_DEBUG)
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
@ -600,62 +604,62 @@ ELSE (_boost_IN_CACHE)
endif() endif()
# Look for a standard boost header file. # Look for a standard boost header file.
FIND_PATH(Boost_INCLUDE_DIR find_path(Boost_INCLUDE_DIR
NAMES boost/config.hpp NAMES boost/config.hpp
HINTS ${_boost_INCLUDE_SEARCH_DIRS} HINTS ${_boost_INCLUDE_SEARCH_DIRS}
PATH_SUFFIXES ${_boost_PATH_SUFFIXES} PATH_SUFFIXES ${_boost_PATH_SUFFIXES}
${_boost_FIND_OPTIONS} ${_boost_FIND_OPTIONS}
) )
ENDIF( NOT Boost_INCLUDE_DIR ) endif( NOT Boost_INCLUDE_DIR )
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
# Extract version information from version.hpp # Extract version information from version.hpp
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
IF(Boost_INCLUDE_DIR) if(Boost_INCLUDE_DIR)
# Extract Boost_VERSION and Boost_LIB_VERSION from version.hpp # Extract Boost_VERSION and Boost_LIB_VERSION from version.hpp
# Read the whole file: # Read the whole file:
# #
SET(BOOST_VERSION 0) set(BOOST_VERSION 0)
SET(BOOST_LIB_VERSION "") set(BOOST_LIB_VERSION "")
FILE(READ "${Boost_INCLUDE_DIR}/boost/version.hpp" _boost_VERSION_HPP_CONTENTS) file(READ "${Boost_INCLUDE_DIR}/boost/version.hpp" _boost_VERSION_HPP_CONTENTS)
if(Boost_DEBUG) if(Boost_DEBUG)
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
"location of version.hpp: ${Boost_INCLUDE_DIR}/boost/version.hpp") "location of version.hpp: ${Boost_INCLUDE_DIR}/boost/version.hpp")
endif() endif()
STRING(REGEX REPLACE ".*#define BOOST_VERSION ([0-9]+).*" "\\1" Boost_VERSION "${_boost_VERSION_HPP_CONTENTS}") string(REGEX REPLACE ".*#define BOOST_VERSION ([0-9]+).*" "\\1" Boost_VERSION "${_boost_VERSION_HPP_CONTENTS}")
STRING(REGEX REPLACE ".*#define BOOST_LIB_VERSION \"([0-9_]+)\".*" "\\1" Boost_LIB_VERSION "${_boost_VERSION_HPP_CONTENTS}") string(REGEX REPLACE ".*#define BOOST_LIB_VERSION \"([0-9_]+)\".*" "\\1" Boost_LIB_VERSION "${_boost_VERSION_HPP_CONTENTS}")
SET(Boost_LIB_VERSION ${Boost_LIB_VERSION} CACHE INTERNAL "The library version string for boost libraries") set(Boost_LIB_VERSION ${Boost_LIB_VERSION} CACHE INTERNAL "The library version string for boost libraries")
SET(Boost_VERSION ${Boost_VERSION} CACHE INTERNAL "The version number for boost libraries") set(Boost_VERSION ${Boost_VERSION} CACHE INTERNAL "The version number for boost libraries")
IF(NOT "${Boost_VERSION}" STREQUAL "0") if(NOT "${Boost_VERSION}" STREQUAL "0")
MATH(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000") math(EXPR Boost_MAJOR_VERSION "${Boost_VERSION} / 100000")
MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000") math(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000")
MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100") math(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100")
set(Boost_ERROR_REASON set(Boost_ERROR_REASON
"${Boost_ERROR_REASON}Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}\nBoost include path: ${Boost_INCLUDE_DIR}") "${Boost_ERROR_REASON}Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}\nBoost include path: ${Boost_INCLUDE_DIR}")
ENDIF(NOT "${Boost_VERSION}" STREQUAL "0") endif(NOT "${Boost_VERSION}" STREQUAL "0")
if(Boost_DEBUG) if(Boost_DEBUG)
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
"version.hpp reveals boost " "version.hpp reveals boost "
"${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}") "${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}")
endif() endif()
ELSE(Boost_INCLUDE_DIR) else(Boost_INCLUDE_DIR)
set(Boost_ERROR_REASON set(Boost_ERROR_REASON
"${Boost_ERROR_REASON}Unable to find the Boost header files. Please set BOOST_ROOT to the root directory containing Boost or BOOST_INCLUDEDIR to the directory containing Boost's headers.") "${Boost_ERROR_REASON}Unable to find the Boost header files. Please set BOOST_ROOT to the root directory containing Boost or BOOST_INCLUDEDIR to the directory containing Boost's headers.")
ENDIF(Boost_INCLUDE_DIR) endif(Boost_INCLUDE_DIR)
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
# Suffix initialization and compiler suffix detection. # Suffix initialization and compiler suffix detection.
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
# Setting some more suffixes for the library # Setting some more suffixes for the library
SET (Boost_LIB_PREFIX "") set(Boost_LIB_PREFIX "")
if ( WIN32 AND Boost_USE_STATIC_LIBS AND NOT CYGWIN) if ( WIN32 AND Boost_USE_STATIC_LIBS AND NOT CYGWIN)
SET (Boost_LIB_PREFIX "lib") set(Boost_LIB_PREFIX "lib")
endif() endif()
if (Boost_COMPILER) if (Boost_COMPILER)
@ -678,54 +682,54 @@ ELSE (_boost_IN_CACHE)
set (_boost_COMPILER "-il") set (_boost_COMPILER "-il")
endif() endif()
elseif (MSVC90) elseif (MSVC90)
SET (_boost_COMPILER "-vc90") set(_boost_COMPILER "-vc90")
elseif (MSVC10) elseif (MSVC10)
SET (_boost_COMPILER "-vc100") set(_boost_COMPILER "-vc100")
elseif (MSVC80) elseif (MSVC80)
SET (_boost_COMPILER "-vc80") set(_boost_COMPILER "-vc80")
elseif (MSVC71) elseif (MSVC71)
SET (_boost_COMPILER "-vc71") set(_boost_COMPILER "-vc71")
elseif (MSVC70) # Good luck! elseif (MSVC70) # Good luck!
SET (_boost_COMPILER "-vc7") # yes, this is correct set(_boost_COMPILER "-vc7") # yes, this is correct
elseif (MSVC60) # Good luck! elseif (MSVC60) # Good luck!
SET (_boost_COMPILER "-vc6") # yes, this is correct set(_boost_COMPILER "-vc6") # yes, this is correct
elseif (BORLAND) elseif (BORLAND)
SET (_boost_COMPILER "-bcb") set(_boost_COMPILER "-bcb")
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "SunPro") elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "SunPro")
set(_boost_COMPILER "-sw") set(_boost_COMPILER "-sw")
elseif (MINGW) elseif (MINGW)
if(${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION} VERSION_LESS 1.34) if(${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION} VERSION_LESS 1.34)
SET(_boost_COMPILER "-mgw") # no GCC version encoding prior to 1.34 set(_boost_COMPILER "-mgw") # no GCC version encoding prior to 1.34
else() else()
_Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION) _Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION)
SET (_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}") set(_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}")
endif() endif()
elseif (UNIX) elseif (UNIX)
if (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_COMPILER_IS_GNUCXX)
if(${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION} VERSION_LESS 1.34) if(${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION} VERSION_LESS 1.34)
SET(_boost_COMPILER "-gcc") # no GCC version encoding prior to 1.34 set(_boost_COMPILER "-gcc") # no GCC version encoding prior to 1.34
else() else()
_Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION) _Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION)
# Determine which version of GCC we have. # Determine which version of GCC we have.
IF(APPLE) if(APPLE)
IF(Boost_MINOR_VERSION) if(Boost_MINOR_VERSION)
IF(${Boost_MINOR_VERSION} GREATER 35) if(${Boost_MINOR_VERSION} GREATER 35)
# In Boost 1.36.0 and newer, the mangled compiler name used # In Boost 1.36.0 and newer, the mangled compiler name used
# on Mac OS X/Darwin is "xgcc". # on Mac OS X/Darwin is "xgcc".
SET(_boost_COMPILER "-xgcc${_boost_COMPILER_VERSION}") set(_boost_COMPILER "-xgcc${_boost_COMPILER_VERSION}")
ELSE(${Boost_MINOR_VERSION} GREATER 35) else(${Boost_MINOR_VERSION} GREATER 35)
# In Boost <= 1.35.0, there is no mangled compiler name for # In Boost <= 1.35.0, there is no mangled compiler name for
# the Mac OS X/Darwin version of GCC. # the Mac OS X/Darwin version of GCC.
SET(_boost_COMPILER "") set(_boost_COMPILER "")
ENDIF(${Boost_MINOR_VERSION} GREATER 35) endif(${Boost_MINOR_VERSION} GREATER 35)
ELSE(Boost_MINOR_VERSION) else(Boost_MINOR_VERSION)
# We don't know the Boost version, so assume it's # We don't know the Boost version, so assume it's
# pre-1.36.0. # pre-1.36.0.
SET(_boost_COMPILER "") set(_boost_COMPILER "")
ENDIF(Boost_MINOR_VERSION) endif(Boost_MINOR_VERSION)
ELSE() else()
SET (_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}") set(_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}")
ENDIF() endif()
endif() endif()
endif (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_COMPILER_IS_GNUCXX)
endif() endif()
@ -916,6 +920,7 @@ ELSE (_boost_IN_CACHE)
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION} ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG} ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION} ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED} ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}
${Boost_LIB_PREFIX}boost_${COMPONENT} ) ${Boost_LIB_PREFIX}boost_${COMPONENT} )
if(_boost_STATIC_RUNTIME_WORKAROUND) if(_boost_STATIC_RUNTIME_WORKAROUND)
@ -957,13 +962,13 @@ ELSE (_boost_IN_CACHE)
# End finding boost libraries # End finding boost libraries
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
SET(Boost_INCLUDE_DIRS set(Boost_INCLUDE_DIRS
${Boost_INCLUDE_DIR} ${Boost_INCLUDE_DIR}
) )
SET(Boost_FOUND FALSE) set(Boost_FOUND FALSE)
IF(Boost_INCLUDE_DIR) if(Boost_INCLUDE_DIR)
SET( Boost_FOUND TRUE ) set( Boost_FOUND TRUE )
# Check the version of Boost against the requested version. # Check the version of Boost against the requested version.
if (Boost_FIND_VERSION AND NOT Boost_FIND_VERSION_MINOR) if (Boost_FIND_VERSION AND NOT Boost_FIND_VERSION_MINOR)
@ -1036,7 +1041,7 @@ ELSE (_boost_IN_CACHE)
string(TOLOWER ${COMPONENT} COMPONENT) string(TOLOWER ${COMPONENT} COMPONENT)
list(APPEND _Boost_MISSING_COMPONENTS ${COMPONENT}) list(APPEND _Boost_MISSING_COMPONENTS ${COMPONENT})
set( Boost_FOUND FALSE) set( Boost_FOUND FALSE)
endif(NOT Boost_${COMPONENT}_FOUND) endif()
endforeach(COMPONENT) endforeach(COMPONENT)
if(Boost_DEBUG) if(Boost_DEBUG)
@ -1057,67 +1062,67 @@ ELSE (_boost_IN_CACHE)
list(LENGTH _Boost_MISSING_COMPONENTS Boost_NUM_MISSING_COMPONENTS) list(LENGTH _Boost_MISSING_COMPONENTS Boost_NUM_MISSING_COMPONENTS)
if (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS}) if (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS})
set(Boost_ERROR_REASON set(Boost_ERROR_REASON
"${Boost_ERROR_REASON}No Boost libraries were found. You may need to set Boost_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.") "${Boost_ERROR_REASON}No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.")
else (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS}) else (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS})
set(Boost_ERROR_REASON set(Boost_ERROR_REASON
"${Boost_ERROR_REASON}Some (but not all) of the required Boost libraries were found. You may need to install these additional Boost libraries. Alternatively, set Boost_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.") "${Boost_ERROR_REASON}Some (but not all) of the required Boost libraries were found. You may need to install these additional Boost libraries. Alternatively, set BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.")
endif (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS}) endif (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS})
endif (_Boost_MISSING_COMPONENTS) endif (_Boost_MISSING_COMPONENTS)
IF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT ) if( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT )
# Compatibility Code for backwards compatibility with CMake # Compatibility Code for backwards compatibility with CMake
# 2.4's FindBoost module. # 2.4's FindBoost module.
# Look for the boost library path. # Look for the boost library path.
# Note that the user may not have installed any libraries # Note that the user may not have installed any libraries
# so it is quite possible the Boost_LIBRARY_PATH may not exist. # so it is quite possible the Boost_LIBRARY_PATH may not exist.
SET(_boost_LIB_DIR ${Boost_INCLUDE_DIR}) set(_boost_LIB_DIR ${Boost_INCLUDE_DIR})
IF("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+") if("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+")
GET_FILENAME_COMPONENT(_boost_LIB_DIR ${_boost_LIB_DIR} PATH) get_filename_component(_boost_LIB_DIR ${_boost_LIB_DIR} PATH)
ENDIF ("${_boost_LIB_DIR}" MATCHES "boost-[0-9]+") endif()
IF("${_boost_LIB_DIR}" MATCHES "/include$") if("${_boost_LIB_DIR}" MATCHES "/include$")
# Strip off the trailing "/include" in the path. # Strip off the trailing "/include" in the path.
GET_FILENAME_COMPONENT(_boost_LIB_DIR ${_boost_LIB_DIR} PATH) get_filename_component(_boost_LIB_DIR ${_boost_LIB_DIR} PATH)
ENDIF("${_boost_LIB_DIR}" MATCHES "/include$") endif()
IF(EXISTS "${_boost_LIB_DIR}/lib") if(EXISTS "${_boost_LIB_DIR}/lib")
SET (_boost_LIB_DIR ${_boost_LIB_DIR}/lib) set(_boost_LIB_DIR ${_boost_LIB_DIR}/lib)
ELSE(EXISTS "${_boost_LIB_DIR}/lib") else()
IF(EXISTS "${_boost_LIB_DIR}/stage/lib") if(EXISTS "${_boost_LIB_DIR}/stage/lib")
SET(_boost_LIB_DIR ${_boost_LIB_DIR}/stage/lib) set(_boost_LIB_DIR ${_boost_LIB_DIR}/stage/lib)
ELSE(EXISTS "${_boost_LIB_DIR}/stage/lib") else()
SET(_boost_LIB_DIR "") set(_boost_LIB_DIR "")
ENDIF(EXISTS "${_boost_LIB_DIR}/stage/lib") endif()
ENDIF(EXISTS "${_boost_LIB_DIR}/lib") endif()
IF(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}") if(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}")
SET(Boost_LIBRARY_DIRS ${_boost_LIB_DIR} CACHE FILEPATH "Boost library directory") set(Boost_LIBRARY_DIRS ${_boost_LIB_DIR} CACHE FILEPATH "Boost library directory")
ENDIF(_boost_LIB_DIR AND EXISTS "${_boost_LIB_DIR}") endif()
ENDIF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT ) endif( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT )
ELSE(Boost_INCLUDE_DIR) else(Boost_INCLUDE_DIR)
SET( Boost_FOUND FALSE) set( Boost_FOUND FALSE)
ENDIF(Boost_INCLUDE_DIR) endif(Boost_INCLUDE_DIR)
IF (Boost_FOUND) if(Boost_FOUND)
IF (NOT Boost_FIND_QUIETLY) if(NOT Boost_FIND_QUIETLY)
MESSAGE(STATUS "Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}") message(STATUS "Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}")
if(Boost_FIND_COMPONENTS) if(Boost_FIND_COMPONENTS)
message(STATUS "Found the following Boost libraries:") message(STATUS "Found the following Boost libraries:")
endif() endif()
ENDIF(NOT Boost_FIND_QUIETLY) endif(NOT Boost_FIND_QUIETLY)
FOREACH ( COMPONENT ${Boost_FIND_COMPONENTS} ) foreach( COMPONENT ${Boost_FIND_COMPONENTS} )
STRING( TOUPPER ${COMPONENT} UPPERCOMPONENT ) string( TOUPPER ${COMPONENT} UPPERCOMPONENT )
IF ( Boost_${UPPERCOMPONENT}_FOUND ) if( Boost_${UPPERCOMPONENT}_FOUND )
IF (NOT Boost_FIND_QUIETLY) if(NOT Boost_FIND_QUIETLY)
MESSAGE (STATUS " ${COMPONENT}") message (STATUS " ${COMPONENT}")
ENDIF(NOT Boost_FIND_QUIETLY) endif(NOT Boost_FIND_QUIETLY)
SET(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY}) set(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY})
ENDIF ( Boost_${UPPERCOMPONENT}_FOUND ) endif( Boost_${UPPERCOMPONENT}_FOUND )
ENDFOREACH(COMPONENT) endforeach(COMPONENT)
else() else()
if(Boost_FIND_REQUIRED) if(Boost_FIND_REQUIRED)
message(SEND_ERROR "Unable to find the requested Boost libraries.\n${Boost_ERROR_REASON}") message(SEND_ERROR "Unable to find the requested Boost libraries.\n${Boost_ERROR_REASON}")
@ -1137,9 +1142,8 @@ ELSE (_boost_IN_CACHE)
endif() endif()
# show the Boost_INCLUDE_DIRS AND Boost_LIBRARIES variables only in the advanced view # show the Boost_INCLUDE_DIRS AND Boost_LIBRARIES variables only in the advanced view
MARK_AS_ADVANCED(Boost_INCLUDE_DIR mark_as_advanced(Boost_INCLUDE_DIR
Boost_INCLUDE_DIRS Boost_INCLUDE_DIRS
Boost_LIBRARY_DIRS Boost_LIBRARY_DIRS
) )
ENDIF(_boost_IN_CACHE) endif(_boost_IN_CACHE)

@ -31,7 +31,7 @@ macro(_FIND_BULLET_LIBRARY _var)
find_library(${_var} find_library(${_var}
NAMES NAMES
${ARGN} ${ARGN}
PATHS HINTS
${BULLET_ROOT} ${BULLET_ROOT}
${BULLET_ROOT}/out/release8/libs ${BULLET_ROOT}/out/release8/libs
${BULLET_ROOT}/out/debug8/libs ${BULLET_ROOT}/out/debug8/libs
@ -50,9 +50,10 @@ macro(_BULLET_APPEND_LIBRARIES _list _release)
endmacro() endmacro()
find_path(BULLET_INCLUDE_DIR NAMES btBulletCollisionCommon.h find_path(BULLET_INCLUDE_DIR NAMES btBulletCollisionCommon.h
PATHS HINTS
${BULLET_ROOT}/include ${BULLET_ROOT}/include
${BULLET_ROOT}/src ${BULLET_ROOT}/src
PATH_SUFFIXES bullet
) )
# Find the libraries # Find the libraries
@ -69,7 +70,7 @@ _FIND_BULLET_LIBRARY(BULLET_SOFTBODY_LIBRARY_DEBUG BulletSoftBody_d)
# handle the QUIETLY and REQUIRED arguments and set BULLET_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set BULLET_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Bullet DEFAULT_MSG FIND_PACKAGE_HANDLE_STANDARD_ARGS(Bullet DEFAULT_MSG
BULLET_DYNAMICS_LIBRARY BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY BULLET_DYNAMICS_LIBRARY BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY
BULLET_SOFTBODY_LIBRARY BULLET_INCLUDE_DIR) BULLET_SOFTBODY_LIBRARY BULLET_INCLUDE_DIR)

@ -684,7 +684,7 @@ set(CUDA_TOOLKIT_ROOT_DIR_INTERNAL "${CUDA_TOOLKIT_ROOT_DIR}" CACHE INTERNAL
set(CUDA_SDK_ROOT_DIR_INTERNAL "${CUDA_SDK_ROOT_DIR}" CACHE INTERNAL set(CUDA_SDK_ROOT_DIR_INTERNAL "${CUDA_SDK_ROOT_DIR}" CACHE INTERNAL
"This is the value of the last time CUDA_SDK_ROOT_DIR was set successfully." FORCE) "This is the value of the last time CUDA_SDK_ROOT_DIR was set successfully." FORCE)
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(CUDA find_package_handle_standard_args(CUDA
REQUIRED_VARS REQUIRED_VARS
CUDA_TOOLKIT_ROOT_DIR CUDA_TOOLKIT_ROOT_DIR

@ -34,7 +34,7 @@ MARK_AS_ADVANCED(CURL_LIBRARY)
# handle the QUIETLY and REQUIRED arguments and set CURL_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set CURL_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(CURL DEFAULT_MSG CURL_LIBRARY CURL_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(CURL DEFAULT_MSG CURL_LIBRARY CURL_INCLUDE_DIR)
IF(CURL_FOUND) IF(CURL_FOUND)

@ -65,5 +65,5 @@ mark_as_advanced(CVS_EXECUTABLE)
# Handle the QUIETLY and REQUIRED arguments and set CVS_FOUND to TRUE if # Handle the QUIETLY and REQUIRED arguments and set CVS_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(CVS DEFAULT_MSG CVS_EXECUTABLE) find_package_handle_standard_args(CVS DEFAULT_MSG CVS_EXECUTABLE)

@ -76,7 +76,7 @@ ENDIF (WIN32)
# handle the QUIETLY and REQUIRED arguments and set COIN3D_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set COIN3D_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Coin3D DEFAULT_MSG COIN3D_LIBRARIES COIN3D_INCLUDE_DIRS) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Coin3D DEFAULT_MSG COIN3D_LIBRARIES COIN3D_INCLUDE_DIRS)
MARK_AS_ADVANCED(COIN3D_INCLUDE_DIRS COIN3D_LIBRARIES ) MARK_AS_ADVANCED(COIN3D_INCLUDE_DIRS COIN3D_LIBRARIES )

@ -155,7 +155,7 @@ SET(CURSES_INCLUDE_DIR ${CURSES_INCLUDE_PATH})
# handle the QUIETLY and REQUIRED arguments and set CURSES_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set CURSES_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Curses DEFAULT_MSG FIND_PACKAGE_HANDLE_STANDARD_ARGS(Curses DEFAULT_MSG
CURSES_LIBRARY CURSES_INCLUDE_PATH) CURSES_LIBRARY CURSES_INCLUDE_PATH)

@ -97,6 +97,11 @@
# (To distribute this file outside of CMake, substitute the full # (To distribute this file outside of CMake, substitute the full
# License text for the above reference.) # License text for the above reference.)
# Version 1.4 (11/18/10) (CMake 2.8.4)
# Issue 11384: Added support to the CXX_ADD_TEST macro so header
# files (containing the tests themselves) show up in
# Visual Studio and other IDEs.
#
# Version 1.3 (8/19/10) (CMake 2.8.3) # Version 1.3 (8/19/10) (CMake 2.8.3)
# Included patch by Simone Rossetto to check if either Python or Perl # Included patch by Simone Rossetto to check if either Python or Perl
# are present in the system. Whichever intepreter that is detected # are present in the system. Whichever intepreter that is detected
@ -131,7 +136,7 @@ macro(CXXTEST_ADD_TEST _cxxtest_testname _cxxtest_outfname)
) )
set_source_files_properties(${_cxxtest_real_outfname} PROPERTIES GENERATED true) set_source_files_properties(${_cxxtest_real_outfname} PROPERTIES GENERATED true)
add_executable(${_cxxtest_testname} ${_cxxtest_real_outfname}) add_executable(${_cxxtest_testname} ${_cxxtest_real_outfname} ${ARGN})
if(CMAKE_RUNTIME_OUTPUT_DIRECTORY) if(CMAKE_RUNTIME_OUTPUT_DIRECTORY)
add_test(${_cxxtest_testname} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${_cxxtest_testname}) add_test(${_cxxtest_testname} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${_cxxtest_testname})
@ -160,7 +165,7 @@ find_program(CXXTEST_PERL_TESTGEN_EXECUTABLE cxxtestgen.pl
PATHS ${CXXTEST_INCLUDE_DIR}) PATHS ${CXXTEST_INCLUDE_DIR})
if(PYTHONINTERP_FOUND OR PERL_FOUND) if(PYTHONINTERP_FOUND OR PERL_FOUND)
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
if(PYTHONINTERP_FOUND AND (CXXTEST_USE_PYTHON OR NOT PERL_FOUND)) if(PYTHONINTERP_FOUND AND (CXXTEST_USE_PYTHON OR NOT PERL_FOUND))
set(CXXTEST_TESTGEN_EXECUTABLE ${CXXTEST_PYTHON_TESTGEN_EXECUTABLE}) set(CXXTEST_TESTGEN_EXECUTABLE ${CXXTEST_PYTHON_TESTGEN_EXECUTABLE})

@ -132,7 +132,7 @@ if(DCMTK_ofstd_INCLUDE_DIR)
mark_as_advanced(DCMTK_dcmtk_INCLUDE_DIR) mark_as_advanced(DCMTK_dcmtk_INCLUDE_DIR)
endif() endif()
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(DCMTK DEFAULT_MSG find_package_handle_standard_args(DCMTK DEFAULT_MSG
DCMTK_config_INCLUDE_DIR DCMTK_config_INCLUDE_DIR
DCMTK_ofstd_INCLUDE_DIR DCMTK_ofstd_INCLUDE_DIR

@ -30,7 +30,7 @@ FIND_PATH(DART_ROOT README.INSTALL
# handle the QUIETLY and REQUIRED arguments and set DART_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set DART_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Dart DEFAULT_MSG DART_ROOT) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Dart DEFAULT_MSG DART_ROOT)
MARK_AS_ADVANCED(DART_ROOT) MARK_AS_ADVANCED(DART_ROOT)

@ -25,7 +25,7 @@
# TODO: Add version support. # TODO: Add version support.
# Tested under Linux and Windows (MSVC) # Tested under Linux and Windows (MSVC)
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PATH(IL_INCLUDE_DIR il.h FIND_PATH(IL_INCLUDE_DIR il.h
PATH_SUFFIXES include IL PATH_SUFFIXES include IL

@ -76,7 +76,7 @@ FIND_PROGRAM(DOXYGEN_EXECUTABLE
DOC "Doxygen documentation generation tool (http://www.doxygen.org)" DOC "Doxygen documentation generation tool (http://www.doxygen.org)"
) )
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Doxygen DEFAULT_MSG DOXYGEN_EXECUTABLE) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Doxygen DEFAULT_MSG DOXYGEN_EXECUTABLE)
# #

@ -26,7 +26,7 @@ FIND_LIBRARY(EXPAT_LIBRARY NAMES expat libexpat)
# handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(EXPAT DEFAULT_MSG EXPAT_LIBRARY EXPAT_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(EXPAT DEFAULT_MSG EXPAT_LIBRARY EXPAT_INCLUDE_DIR)
# Copy the results to the output variables. # Copy the results to the output variables.

@ -36,8 +36,8 @@
# find_package(BISON) # find_package(BISON)
# find_package(FLEX) # find_package(FLEX)
# #
# BISON_TARGET(MyParser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.cpp # BISON_TARGET(MyParser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.cpp)
# FLEX_TARGET(MyScanner lexer.l ${CMAKE_CURRENT_BIANRY_DIR}/lexer.cpp) # FLEX_TARGET(MyScanner lexer.l ${CMAKE_CURRENT_BINARY_DIR}/lexer.cpp)
# ADD_FLEX_BISON_DEPENDENCY(MyScanner MyParser) # ADD_FLEX_BISON_DEPENDENCY(MyScanner MyParser)
# #
# include_directories(${CMAKE_CURRENT_BINARY_DIR}) # include_directories(${CMAKE_CURRENT_BINARY_DIR})
@ -143,7 +143,7 @@ IF(FLEX_EXECUTABLE)
ENDIF(FLEX_EXECUTABLE) ENDIF(FLEX_EXECUTABLE)
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FLEX REQUIRED_VARS FLEX_EXECUTABLE FIND_PACKAGE_HANDLE_STANDARD_ARGS(FLEX REQUIRED_VARS FLEX_EXECUTABLE
VERSION_VAR FLEX_VERSION) VERSION_VAR FLEX_VERSION)

@ -292,7 +292,7 @@ ENDIF(NOT FLTK_DIR)
ENDIF() ENDIF()
LIST(APPEND FLTK_LIBRARIES ${FLTK_BASE_LIBRARY}) LIST(APPEND FLTK_LIBRARIES ${FLTK_BASE_LIBRARY})
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
IF(FLTK_SKIP_FLUID) IF(FLTK_SKIP_FLUID)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FLTK DEFAULT_MSG FLTK_LIBRARIES FLTK_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(FLTK DEFAULT_MSG FLTK_LIBRARIES FLTK_INCLUDE_DIR)
ELSE() ELSE()

@ -88,7 +88,7 @@ SET(FREETYPE_LIBRARIES "${FREETYPE_LIBRARY}")
# handle the QUIETLY and REQUIRED arguments and set FREETYPE_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set FREETYPE_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Freetype DEFAULT_MSG FREETYPE_LIBRARY FREETYPE_INCLUDE_DIRS) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Freetype DEFAULT_MSG FREETYPE_LIBRARY FREETYPE_INCLUDE_DIRS)

@ -100,7 +100,7 @@ FIND_LIBRARY(GDAL_LIBRARY
/usr/freeware /usr/freeware
) )
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL DEFAULT_MSG GDAL_LIBRARY GDAL_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL DEFAULT_MSG GDAL_LIBRARY GDAL_INCLUDE_DIR)
set(GDAL_LIBRARIES ${GDAL_LIBRARY}) set(GDAL_LIBRARIES ${GDAL_LIBRARY})

@ -60,7 +60,7 @@ SET(GIF_LIBRARIES ${GIF_LIBRARY})
# handle the QUIETLY and REQUIRED arguments and set GIF_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set GIF_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GIF DEFAULT_MSG GIF_LIBRARY GIF_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(GIF DEFAULT_MSG GIF_LIBRARY GIF_INCLUDE_DIR)
MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARY) MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARY)

@ -66,6 +66,10 @@
# (To distribute this file outside of CMake, substitute the full # (To distribute this file outside of CMake, substitute the full
# License text for the above reference.) # License text for the above reference.)
# Version 1.3 (11/9/2010) (CMake 2.8.4)
# * 11429: Add support for detecting GTK2 built with Visual Studio 10.
# Thanks to Vincent Levesque for the patch.
# Version 1.2 (8/30/2010) (CMake 2.8.3) # Version 1.2 (8/30/2010) (CMake 2.8.3)
# * Merge patch for detecting gdk-pixbuf library (split off # * Merge patch for detecting gdk-pixbuf library (split off
# from core GTK in 2.21). Thanks to Vincent Untz for the patch # from core GTK in 2.21). Thanks to Vincent Untz for the patch
@ -237,15 +241,16 @@ function(_GTK2_FIND_LIBRARY _var _lib _expand_vc _append_version)
set(_library ${_lib}) set(_library ${_lib})
if(_expand_vc) if(_expand_vc AND MSVC)
# Add vc80/vc90 midfixes # Add vc80/vc90/vc100 midfixes
if(MSVC80) if(MSVC80)
set(_library ${_library}-vc80) set(_library ${_library}-vc80)
set(_library_d ${_library}-d)
elseif(MSVC90) elseif(MSVC90)
set(_library ${_library}-vc90) set(_library ${_library}-vc90)
set(_library_d ${_library}-d) elseif(MSVC10)
set(_library ${_library}-vc100)
endif() endif()
set(_library_d ${_library}-d)
endif() endif()
if(GTK2_DEBUG) if(GTK2_DEBUG)
@ -516,7 +521,7 @@ endif()
set(_GTK2_did_we_find_everything true) # This gets set to GTK2_FOUND set(_GTK2_did_we_find_everything true) # This gets set to GTK2_FOUND
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
foreach(_GTK2_component ${GTK2_FIND_COMPONENTS}) foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
string(TOUPPER ${_GTK2_component} _COMPONENT_UPPER) string(TOUPPER ${_GTK2_component} _COMPONENT_UPPER)

@ -146,7 +146,7 @@ else()
_gtest_find_library(GTEST_MAIN_LIBRARY_DEBUG gtest_maind) _gtest_find_library(GTEST_MAIN_LIBRARY_DEBUG gtest_maind)
endif() endif()
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTest DEFAULT_MSG GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY) FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTest DEFAULT_MSG GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
if(GTEST_FOUND) if(GTEST_FOUND)

@ -35,6 +35,7 @@ endif()
find_program(GIT_EXECUTABLE find_program(GIT_EXECUTABLE
NAMES ${git_names} NAMES ${git_names}
PATH_SUFFIXES Git/cmd Git/bin
DOC "git command line client" DOC "git command line client"
) )
mark_as_advanced(GIT_EXECUTABLE) mark_as_advanced(GIT_EXECUTABLE)
@ -42,5 +43,5 @@ mark_as_advanced(GIT_EXECUTABLE)
# Handle the QUIETLY and REQUIRED arguments and set GIT_FOUND to TRUE if # Handle the QUIETLY and REQUIRED arguments and set GIT_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Git DEFAULT_MSG GIT_EXECUTABLE) find_package_handle_standard_args(Git DEFAULT_MSG GIT_EXECUTABLE)

@ -56,7 +56,7 @@ MARK_AS_ADVANCED(GNUTLS_INCLUDE_DIR GNUTLS_LIBRARY)
# handle the QUIETLY and REQUIRED arguments and set GNUTLS_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set GNUTLS_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GnuTLS DEFAULT_MSG GNUTLS_LIBRARY GNUTLS_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(GnuTLS DEFAULT_MSG GNUTLS_LIBRARY GNUTLS_INCLUDE_DIR)
IF(GNUTLS_FOUND) IF(GNUTLS_FOUND)

@ -34,7 +34,7 @@ SET(GNUPLOT ${GNUPLOT_EXECUTABLE})
# handle the QUIETLY and REQUIRED arguments and set GNUPLOT_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set GNUPLOT_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Gnuplot DEFAULT_MSG GNUPLOT_EXECUTABLE) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Gnuplot DEFAULT_MSG GNUPLOT_EXECUTABLE)
MARK_AS_ADVANCED( GNUPLOT_EXECUTABLE ) MARK_AS_ADVANCED( GNUPLOT_EXECUTABLE )

@ -57,7 +57,7 @@
# This module is maintained by Will Dicharry <wdicharry@stellarscience.com>. # This module is maintained by Will Dicharry <wdicharry@stellarscience.com>.
include(SelectLibraryConfigurations) include(SelectLibraryConfigurations)
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
# List of the valid HDF5 components # List of the valid HDF5 components
set( HDF5_VALID_COMPONENTS set( HDF5_VALID_COMPONENTS

@ -36,7 +36,7 @@ ENDIF()
# handle the QUIETLY and REQUIRED arguments and set HSPELL_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set HSPELL_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(HSPELL DEFAULT_MSG HSPELL_LIBRARIES HSPELL_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(HSPELL DEFAULT_MSG HSPELL_LIBRARIES HSPELL_INCLUDE_DIR)
MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES) MARK_AS_ADVANCED(HSPELL_INCLUDE_DIR HSPELL_LIBRARIES)

@ -21,7 +21,7 @@
# instead. # instead.
#============================================================================= #=============================================================================
# Copyright 2001-2009 Kitware, Inc. # Copyright 2001-2010 Kitware, Inc.
# #
# Distributed under the OSI-approved BSD License (the "License"); # Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details. # see accompanying file Copyright.txt for details.
@ -33,67 +33,23 @@
# (To distribute this file outside of CMake, substitute the full # (To distribute this file outside of CMake, substitute the full
# License text for the above reference.) # License text for the above reference.)
SET(ITK_DIR_STRING "directory containing ITKConfig.cmake. This is either the root of the build tree, or PREFIX/lib/InsightToolkit for an installation.") # Use the Config mode of the find_package() command to find ITKConfig.
# If this succeeds (possibly because ITK_DIR is already set), the
# Search only if the location is not already known. # command will have already loaded ITKConfig.cmake and set ITK_FOUND.
IF(NOT ITK_DIR) IF(NOT ITK_FOUND)
# Get the system search path as a list. FIND_PACKAGE(ITK QUIET NO_MODULE
IF(UNIX) NAMES ITK InsightToolkit
STRING(REGEX MATCHALL "[^:]+" ITK_DIR_SEARCH1 "$ENV{PATH}") CONFIGS ITKConfig.cmake
ELSE(UNIX)
STRING(REGEX REPLACE "\\\\" "/" ITK_DIR_SEARCH1 "$ENV{PATH}")
ENDIF(UNIX)
STRING(REGEX REPLACE "/;" ";" ITK_DIR_SEARCH2 ${ITK_DIR_SEARCH1})
# Construct a set of paths relative to the system search path.
SET(ITK_DIR_SEARCH "")
FOREACH(dir ${ITK_DIR_SEARCH2})
SET(ITK_DIR_SEARCH ${ITK_DIR_SEARCH} "${dir}/../lib/InsightToolkit")
ENDFOREACH(dir)
#
# Look for an installation or build tree.
#
FIND_PATH(ITK_DIR ITKConfig.cmake
# Look for an environment variable ITK_DIR.
$ENV{ITK_DIR}
# Look in places relative to the system executable search path.
${ITK_DIR_SEARCH}
# Look in standard UNIX install locations.
/usr/local/lib/InsightToolkit
/usr/lib/InsightToolkit
# Read from the CMakeSetup registry entries. It is likely that
# ITK will have been recently built.
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild1]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild2]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild3]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild4]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild5]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild6]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild7]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild8]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild9]
[HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild10]
# Help the user find it if we cannot.
DOC "The ${ITK_DIR_STRING}"
) )
ENDIF(NOT ITK_DIR) ENDIF()
# If ITK was found, load the configuration file to get the rest of the SET(ITK_DIR_MESSAGE "Please set ITK_DIR to the directory containing ITKConfig.cmake. This is either the root of the build tree, or PREFIX/lib/InsightToolkit for an installation.")
# settings.
IF(ITK_DIR)
SET(ITK_FOUND 1)
INCLUDE(${ITK_DIR}/ITKConfig.cmake)
IF(ITK_FOUND)
# Set USE_ITK_FILE for backward-compatability. # Set USE_ITK_FILE for backward-compatability.
SET(USE_ITK_FILE ${ITK_USE_FILE}) SET(USE_ITK_FILE ${ITK_USE_FILE})
ELSE(ITK_DIR) ELSEIF(ITK_FIND_REQUIRED)
SET(ITK_FOUND 0) MESSAGE(FATAL_ERROR ${ITK_DIR_MESSAGE})
IF(ITK_FIND_REQUIRED) ELSEIF(NOT ITK_FIND_QUIETLY)
MESSAGE(FATAL_ERROR "Please set ITK_DIR to the ${ITK_DIR_STRING}") MESSAGE(STATUS ${ITK_DIR_MESSAGE})
ENDIF(ITK_FIND_REQUIRED) ENDIF()
ENDIF(ITK_DIR)

@ -171,7 +171,7 @@ SET(ImageMagick_LIBRARIES ${ImageMagick_LIBRARIES})
#--------------------------------------------------------------------- #---------------------------------------------------------------------
# Standard Package Output # Standard Package Output
#--------------------------------------------------------------------- #---------------------------------------------------------------------
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS( FIND_PACKAGE_HANDLE_STANDARD_ARGS(
ImageMagick DEFAULT_MSG ImageMagick_FOUND ImageMagick DEFAULT_MSG ImageMagick_FOUND
) )

@ -232,7 +232,7 @@ FIND_PATH(JAVA_AWT_INCLUDE_PATH jawt.h
${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH}
) )
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(JNI DEFAULT_MSG JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY FIND_PACKAGE_HANDLE_STANDARD_ARGS(JNI DEFAULT_MSG JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY
JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH) JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)

@ -27,7 +27,7 @@ FIND_LIBRARY(JPEG_LIBRARY NAMES ${JPEG_NAMES} )
# handle the QUIETLY and REQUIRED arguments and set JPEG_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set JPEG_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(JPEG DEFAULT_MSG JPEG_LIBRARY JPEG_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(JPEG DEFAULT_MSG JPEG_LIBRARY JPEG_INCLUDE_DIR)
IF(JPEG_FOUND) IF(JPEG_FOUND)

@ -27,7 +27,7 @@ FIND_LIBRARY(JASPER_LIBRARY NAMES jasper libjasper)
# handle the QUIETLY and REQUIRED arguments and set JASPER_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set JASPER_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Jasper DEFAULT_MSG JASPER_LIBRARY JASPER_INCLUDE_DIR JPEG_LIBRARIES) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Jasper DEFAULT_MSG JASPER_LIBRARY JASPER_INCLUDE_DIR JPEG_LIBRARIES)
IF (JASPER_FOUND) IF (JASPER_FOUND)

@ -150,7 +150,7 @@ FIND_PROGRAM(Java_JAVAC_EXECUTABLE
PATHS ${_JAVA_PATHS} PATHS ${_JAVA_PATHS}
) )
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
if(Java_FIND_COMPONENTS) if(Java_FIND_COMPONENTS)
foreach(component ${Java_FIND_COMPONENTS}) foreach(component ${Java_FIND_COMPONENTS})
# User just want to execute some Java byte-compiled # User just want to execute some Java byte-compiled

@ -38,16 +38,11 @@
get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES) get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES)
if (NOT _LANGUAGES_ MATCHES Fortran) if (NOT _LANGUAGES_ MATCHES Fortran)
if(LAPACK_FIND_REQUIRED) include(CheckFunctionExists)
message(FATAL_ERROR else (NOT _LANGUAGES_ MATCHES Fortran)
"FindLAPACK is Fortran-only so Fortran must be enabled.") include(CheckFortranFunctionExists)
else(LAPACK_FIND_REQUIRED)
message(STATUS "Looking for LAPACK... - NOT found (Fortran not enabled)")
return()
endif(LAPACK_FIND_REQUIRED)
endif (NOT _LANGUAGES_ MATCHES Fortran) endif (NOT _LANGUAGES_ MATCHES Fortran)
include(CheckFortranFunctionExists)
set(LAPACK_FOUND FALSE) set(LAPACK_FOUND FALSE)
set(LAPACK95_FOUND FALSE) set(LAPACK95_FOUND FALSE)
@ -112,7 +107,11 @@ if(_libraries_work)
set(CMAKE_REQUIRED_LIBRARIES ${_flags} ${${LIBRARIES}} ${_blas} ${_threads}) set(CMAKE_REQUIRED_LIBRARIES ${_flags} ${${LIBRARIES}} ${_blas} ${_threads})
endif(UNIX AND BLA_STATIC) endif(UNIX AND BLA_STATIC)
# message("DEBUG: CMAKE_REQUIRED_LIBRARIES = ${CMAKE_REQUIRED_LIBRARIES}") # message("DEBUG: CMAKE_REQUIRED_LIBRARIES = ${CMAKE_REQUIRED_LIBRARIES}")
if (NOT _LANGUAGES_ MATCHES Fortran)
check_function_exists("${_name}_" ${_prefix}${_combined_name}_WORKS)
else (NOT _LANGUAGES_ MATCHES Fortran)
check_fortran_function_exists(${_name} ${_prefix}${_combined_name}_WORKS) check_fortran_function_exists(${_name} ${_prefix}${_combined_name}_WORKS)
endif (NOT _LANGUAGES_ MATCHES Fortran)
set(CMAKE_REQUIRED_LIBRARIES) set(CMAKE_REQUIRED_LIBRARIES)
mark_as_advanced(${_prefix}${_combined_name}_WORKS) mark_as_advanced(${_prefix}${_combined_name}_WORKS)
set(_libraries_work ${${_prefix}${_combined_name}_WORKS}) set(_libraries_work ${${_prefix}${_combined_name}_WORKS})
@ -157,7 +156,18 @@ if(BLAS_FOUND)
LAPACK LAPACK
cheev cheev
"" ""
"acml" "acml;acml_mv"
""
""
)
endif(NOT LAPACK_LIBRARIES)
if(NOT LAPACK_LIBRARIES)
check_lapack_libraries(
LAPACK_LIBRARIES
LAPACK
cheev
""
"acml_mp;acml_mv"
"" ""
"" ""
) )

@ -50,7 +50,7 @@ endif()
# Handle the QUIETLY and REQUIRED arguments and set LIBARCHIVE_FOUND # Handle the QUIETLY and REQUIRED arguments and set LIBARCHIVE_FOUND
# to TRUE if all listed variables are TRUE. # to TRUE if all listed variables are TRUE.
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LibArchive DEFAULT_MSG find_package_handle_standard_args(LibArchive DEFAULT_MSG
LibArchive_LIBRARY LibArchive_INCLUDE_DIR LibArchive_LIBRARY LibArchive_INCLUDE_DIR
) )

@ -46,7 +46,7 @@ SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}")
# handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE) MARK_AS_ADVANCED(LIBXML2_INCLUDE_DIR LIBXML2_LIBRARIES LIBXML2_XMLLINT_EXECUTABLE)

@ -40,7 +40,7 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt
# handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXslt DEFAULT_MSG LIBXSLT_LIBRARIES LIBXSLT_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXslt DEFAULT_MSG LIBXSLT_LIBRARIES LIBXSLT_INCLUDE_DIR)
MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES)

@ -87,7 +87,7 @@ ELSE(${LUA_LIBRARY_lua} MATCHES "framework")
ENDIF(${LUA_LIBRARY_lua} MATCHES "framework") ENDIF(${LUA_LIBRARY_lua} MATCHES "framework")
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua50 DEFAULT_MSG LUA_LIBRARIES LUA_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua50 DEFAULT_MSG LUA_LIBRARIES LUA_INCLUDE_DIR)

@ -66,7 +66,7 @@ IF(LUA_LIBRARY)
ENDIF(UNIX AND NOT APPLE) ENDIF(UNIX AND NOT APPLE)
ENDIF(LUA_LIBRARY) ENDIF(LUA_LIBRARY)
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua51 DEFAULT_MSG LUA_LIBRARIES LUA_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua51 DEFAULT_MSG LUA_LIBRARIES LUA_INCLUDE_DIR)

@ -34,7 +34,7 @@ FIND_LIBRARY( MPEG_vo_LIBRARY vo
# handle the QUIETLY and REQUIRED arguments and set MPEG2_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set MPEG2_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(MPEG DEFAULT_MSG MPEG_INCLUDE_DIR MPEG_mpeg2_LIBRARY MPEG_vo_LIBRARY) FIND_PACKAGE_HANDLE_STANDARD_ARGS(MPEG DEFAULT_MSG MPEG_INCLUDE_DIR MPEG_mpeg2_LIBRARY MPEG_vo_LIBRARY)
IF(MPEG_FOUND) IF(MPEG_FOUND)

@ -36,7 +36,7 @@ FIND_LIBRARY( MPEG2_vo_LIBRARY vo
# handle the QUIETLY and REQUIRED arguments and set MPEG2_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set MPEG2_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(MPEG2 DEFAULT_MSG MPEG2_mpeg2_LIBRARY MPEG2_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(MPEG2 DEFAULT_MSG MPEG2_mpeg2_LIBRARY MPEG2_INCLUDE_DIR)
IF(MPEG2_FOUND) IF(MPEG2_FOUND)

@ -346,7 +346,7 @@ else (MPI_INCLUDE_PATH AND MPI_LIBRARY)
set(MPI_FOUND FALSE) set(MPI_FOUND FALSE)
endif (MPI_INCLUDE_PATH AND MPI_LIBRARY) endif (MPI_INCLUDE_PATH AND MPI_LIBRARY)
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments # handle the QUIETLY and REQUIRED arguments
find_package_handle_standard_args(MPI DEFAULT_MSG MPI_LIBRARY MPI_INCLUDE_PATH) find_package_handle_standard_args(MPI DEFAULT_MSG MPI_LIBRARY MPI_INCLUDE_PATH)

@ -34,7 +34,7 @@ ENDIF(UNIX)
# handle the QUIETLY and REQUIRED arguments and set MOTIF_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set MOTIF_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Motif DEFAULT_MSG MOTIF_LIBRARIES MOTIF_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Motif DEFAULT_MSG MOTIF_LIBRARIES MOTIF_INCLUDE_DIR)

@ -97,7 +97,7 @@ FIND_LIBRARY(OPENAL_LIBRARY
# handle the QUIETLY and REQUIRED arguments and set OPENAL_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set OPENAL_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenAL DEFAULT_MSG OPENAL_LIBRARY OPENAL_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenAL DEFAULT_MSG OPENAL_LIBRARY OPENAL_INCLUDE_DIR)
MARK_AS_ADVANCED(OPENAL_LIBRARY OPENAL_INCLUDE_DIR) MARK_AS_ADVANCED(OPENAL_LIBRARY OPENAL_INCLUDE_DIR)

@ -123,7 +123,6 @@ ELSE (WIN32)
ENDIF(APPLE) ENDIF(APPLE)
ENDIF (WIN32) ENDIF (WIN32)
SET( OPENGL_FOUND "NO" )
IF(OPENGL_gl_LIBRARY) IF(OPENGL_gl_LIBRARY)
IF(OPENGL_xmesa_INCLUDE_DIR) IF(OPENGL_xmesa_INCLUDE_DIR)
@ -140,10 +139,7 @@ IF(OPENGL_gl_LIBRARY)
SET( OPENGL_GLU_FOUND "NO" ) SET( OPENGL_GLU_FOUND "NO" )
ENDIF(OPENGL_glu_LIBRARY) ENDIF(OPENGL_glu_LIBRARY)
SET( OPENGL_FOUND "YES" )
# This deprecated setting is for backward compatibility with CMake1.4 # This deprecated setting is for backward compatibility with CMake1.4
SET (OPENGL_LIBRARY ${OPENGL_LIBRARIES}) SET (OPENGL_LIBRARY ${OPENGL_LIBRARIES})
ENDIF(OPENGL_gl_LIBRARY) ENDIF(OPENGL_gl_LIBRARY)
@ -151,6 +147,11 @@ ENDIF(OPENGL_gl_LIBRARY)
# This deprecated setting is for backward compatibility with CMake1.4 # This deprecated setting is for backward compatibility with CMake1.4
SET(OPENGL_INCLUDE_PATH ${OPENGL_INCLUDE_DIR}) SET(OPENGL_INCLUDE_PATH ${OPENGL_INCLUDE_DIR})
# handle the QUIETLY and REQUIRED arguments and set OPENGL_FOUND to TRUE if
# all listed variables are TRUE
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenGL DEFAULT_MSG OPENGL_gl_LIBRARY)
MARK_AS_ADVANCED( MARK_AS_ADVANCED(
OPENGL_INCLUDE_DIR OPENGL_INCLUDE_DIR
OPENGL_xmesa_INCLUDE_DIR OPENGL_xmesa_INCLUDE_DIR

@ -26,7 +26,7 @@
include(CheckCSourceCompiles) include(CheckCSourceCompiles)
include(CheckCXXSourceCompiles) include(CheckCXXSourceCompiles)
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
set(OpenMP_C_FLAG_CANDIDATES set(OpenMP_C_FLAG_CANDIDATES
#Gnu #Gnu

@ -113,7 +113,7 @@ ELSE(WIN32 AND NOT CYGWIN)
ENDIF(WIN32 AND NOT CYGWIN) ENDIF(WIN32 AND NOT CYGWIN)
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(OpenSSL DEFAULT_MSG find_package_handle_standard_args(OpenSSL DEFAULT_MSG
OPENSSL_LIBRARIES OPENSSL_LIBRARIES
OPENSSL_INCLUDE_DIR OPENSSL_INCLUDE_DIR

@ -231,7 +231,7 @@ else()
endif() endif()
endif() endif()
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenSceneGraph DEFAULT_MSG OPENSCENEGRAPH_LIBRARIES OPENSCENEGRAPH_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenSceneGraph DEFAULT_MSG OPENSCENEGRAPH_LIBRARIES OPENSCENEGRAPH_INCLUDE_DIR)
endif() endif()

@ -118,6 +118,6 @@ else()
set(OPENTHREADS_LIBRARIES ${OPENTHREADS_LIBRARY}) set(OPENTHREADS_LIBRARIES ${OPENTHREADS_LIBRARY})
endif() endif()
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenThreads DEFAULT_MSG FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenThreads DEFAULT_MSG
OPENTHREADS_LIBRARY OPENTHREADS_INCLUDE_DIR) OPENTHREADS_LIBRARY OPENTHREADS_INCLUDE_DIR)

@ -81,5 +81,5 @@ IF(APPLE)
ENDFOREACH(symbol) ENDFOREACH(symbol)
ENDIF(APPLE) ENDIF(APPLE)
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PHP4 DEFAULT_MSG PHP4_EXECUTABLE PHP4_INCLUDE_PATH) FIND_PACKAGE_HANDLE_STANDARD_ARGS(PHP4 DEFAULT_MSG PHP4_EXECUTABLE PHP4_INCLUDE_PATH)

@ -55,7 +55,7 @@ endif(ZLIB_FOUND)
# handle the QUIETLY and REQUIRED arguments and set PNG_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set PNG_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(PNG DEFAULT_MSG PNG_LIBRARY PNG_PNG_INCLUDE_DIR) find_package_handle_standard_args(PNG DEFAULT_MSG PNG_LIBRARY PNG_PNG_INCLUDE_DIR)
mark_as_advanced(PNG_PNG_INCLUDE_DIR PNG_LIBRARY ) mark_as_advanced(PNG_PNG_INCLUDE_DIR PNG_LIBRARY )

@ -44,7 +44,7 @@ SET(PERL ${PERL_EXECUTABLE})
# handle the QUIETLY and REQUIRED arguments and set PERL_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set PERL_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Perl DEFAULT_MSG PERL_EXECUTABLE) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Perl DEFAULT_MSG PERL_EXECUTABLE)
MARK_AS_ADVANCED(PERL_EXECUTABLE) MARK_AS_ADVANCED(PERL_EXECUTABLE)

@ -147,6 +147,32 @@ if (PERL_EXECUTABLE)
string(REGEX REPLACE "install[a-z]+='([^']+)'.*" "\\1" PERL_VENDORLIB ${PERL_VENDORLIB_OUTPUT_VARIABLE}) string(REGEX REPLACE "install[a-z]+='([^']+)'.*" "\\1" PERL_VENDORLIB ${PERL_VENDORLIB_OUTPUT_VARIABLE})
endif (NOT PERL_VENDORLIB_RESULT_VARIABLE) endif (NOT PERL_VENDORLIB_RESULT_VARIABLE)
macro(perl_adjust_darwin_lib_variable varname)
string( TOUPPER PERL_${varname} FINDPERL_VARNAME )
string( TOLOWER install${varname} PERL_VARNAME )
if (NOT PERL_MINUSV_OUTPUT_VARIABLE)
execute_process(
COMMAND
${PERL_EXECUTABLE} -V
OUTPUT_VARIABLE
PERL_MINUSV_OUTPUT_VARIABLE
RESULT_VARIABLE
PERL_MINUSV_RESULT_VARIABLE
)
endif()
if (NOT PERL_MINUSV_RESULT_VARIABLE)
string(REGEX MATCH "(${PERL_VARNAME}.*points? to the Updates directory)"
PERL_NEEDS_ADJUSTMENT ${PERL_MINUSV_OUTPUT_VARIABLE})
if (PERL_NEEDS_ADJUSTMENT)
string(REGEX REPLACE "(.*)/Updates/" "/System/\\1/" ${FINDPERL_VARNAME} ${${FINDPERL_VARNAME}})
endif (PERL_NEEDS_ADJUSTMENT)
endif (NOT PERL_MINUSV_RESULT_VARIABLE)
endmacro()
### PERL_ARCHLIB ### PERL_ARCHLIB
execute_process( execute_process(
COMMAND COMMAND
@ -158,6 +184,7 @@ if (PERL_EXECUTABLE)
) )
if (NOT PERL_ARCHLIB_RESULT_VARIABLE) if (NOT PERL_ARCHLIB_RESULT_VARIABLE)
string(REGEX REPLACE "install[a-z]+='([^']+)'.*" "\\1" PERL_ARCHLIB ${PERL_ARCHLIB_OUTPUT_VARIABLE}) string(REGEX REPLACE "install[a-z]+='([^']+)'.*" "\\1" PERL_ARCHLIB ${PERL_ARCHLIB_OUTPUT_VARIABLE})
perl_adjust_darwin_lib_variable( ARCHLIB )
endif (NOT PERL_ARCHLIB_RESULT_VARIABLE) endif (NOT PERL_ARCHLIB_RESULT_VARIABLE)
### PERL_PRIVLIB ### PERL_PRIVLIB
@ -171,6 +198,7 @@ if (PERL_EXECUTABLE)
) )
if (NOT PERL_PRIVLIB_RESULT_VARIABLE) if (NOT PERL_PRIVLIB_RESULT_VARIABLE)
string(REGEX REPLACE "install[a-z]+='([^']+)'.*" "\\1" PERL_PRIVLIB ${PERL_PRIVLIB_OUTPUT_VARIABLE}) string(REGEX REPLACE "install[a-z]+='([^']+)'.*" "\\1" PERL_PRIVLIB ${PERL_PRIVLIB_OUTPUT_VARIABLE})
perl_adjust_darwin_lib_variable( PRIVLIB )
endif (NOT PERL_PRIVLIB_RESULT_VARIABLE) endif (NOT PERL_PRIVLIB_RESULT_VARIABLE)
@ -230,7 +258,7 @@ endif (PERL_EXECUTABLE)
# handle the QUIETLY and REQUIRED arguments and set PERLLIBS_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set PERLLIBS_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(PerlLibs REQUIRED_VARS PERL_LIBRARY PERL_INCLUDE_PATH find_package_handle_standard_args(PerlLibs REQUIRED_VARS PERL_LIBRARY PERL_INCLUDE_PATH
VERSION_VAR PERL_VERSION) VERSION_VAR PERL_VERSION)

@ -56,6 +56,6 @@ FIND_LIBRARY(PHYSFS_LIBRARY
# handle the QUIETLY and REQUIRED arguments and set PHYSFS_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set PHYSFS_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PhysFS DEFAULT_MSG PHYSFS_LIBRARY PHYSFS_INCLUDE_DIR) FIND_PACKAGE_HANDLE_STANDARD_ARGS(PhysFS DEFAULT_MSG PHYSFS_LIBRARY PHYSFS_INCLUDE_DIR)

@ -77,6 +77,6 @@ FIND_LIBRARY(PRODUCER_LIBRARY
/opt /opt
) )
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Producer DEFAULT_MSG FIND_PACKAGE_HANDLE_STANDARD_ARGS(Producer DEFAULT_MSG
PRODUCER_LIBRARY PRODUCER_INCLUDE_DIR) PRODUCER_LIBRARY PRODUCER_INCLUDE_DIR)

@ -111,7 +111,7 @@ if(WIN32)
set(CMAKE_FIND_LIBRARY_PREFIXES "${PROTOBUF_ORIG_FIND_LIBRARY_PREFIXES}") set(CMAKE_FIND_LIBRARY_PREFIXES "${PROTOBUF_ORIG_FIND_LIBRARY_PREFIXES}")
endif() endif()
include("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PROTOBUF DEFAULT_MSG FIND_PACKAGE_HANDLE_STANDARD_ARGS(PROTOBUF DEFAULT_MSG
PROTOBUF_LIBRARY PROTOBUF_INCLUDE_DIR) PROTOBUF_LIBRARY PROTOBUF_INCLUDE_DIR)

@ -4,6 +4,7 @@
# #
# PYTHONINTERP_FOUND - Was the Python executable found # PYTHONINTERP_FOUND - Was the Python executable found
# PYTHON_EXECUTABLE - path to the Python interpreter # PYTHON_EXECUTABLE - path to the Python interpreter
# Python_ADDITIONAL_VERSIONS - list of additional Python versions to search for
# #
#============================================================================= #=============================================================================
@ -19,25 +20,32 @@
# (To distribute this file outside of CMake, substitute the full # (To distribute this file outside of CMake, substitute the full
# License text for the above reference.) # License text for the above reference.)
FIND_PROGRAM(PYTHON_EXECUTABLE # Set up the versions we know about, in the order we will search. Always add
NAMES python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 python # the user supplied additional versions to the front.
PATHS set(_Python_VERSIONS
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.7\\InstallPath] ${Python_ADDITIONAL_VERSIONS}
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.6\\InstallPath] 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0 1.6 1.5)
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.5\\InstallPath]
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.4\\InstallPath] # Run first with the Python version in the executable
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.3\\InstallPath] foreach(_CURRENT_VERSION ${_Python_VERSIONS})
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.2\\InstallPath] set(_Python_NAMES python${_CURRENT_VERSION})
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.1\\InstallPath] if(WIN32)
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\2.0\\InstallPath] list(APPEND _Python_NAMES python)
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\1.6\\InstallPath] endif()
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\1.5\\InstallPath] find_program(PYTHON_EXECUTABLE
NAMES ${_Python_NAMES}
PATHS [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]
) )
endforeach()
# Now without any version if we still haven't found it
if(NOT PYTHON_EXECUTABLE)
find_program(PYTHON_EXECUTABLE NAMES python)
endif()
# handle the QUIETLY and REQUIRED arguments and set PYTHONINTERP_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set PYTHONINTERP_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonInterp DEFAULT_MSG PYTHON_EXECUTABLE) FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonInterp DEFAULT_MSG PYTHON_EXECUTABLE)
MARK_AS_ADVANCED(PYTHON_EXECUTABLE) mark_as_advanced(PYTHON_EXECUTABLE)

@ -8,7 +8,7 @@
# PYTHON_INCLUDE_PATH - path to where Python.h is found (deprecated) # PYTHON_INCLUDE_PATH - path to where Python.h is found (deprecated)
# PYTHON_INCLUDE_DIRS - path to where Python.h is found # PYTHON_INCLUDE_DIRS - path to where Python.h is found
# PYTHON_DEBUG_LIBRARIES - path to the debug library # PYTHON_DEBUG_LIBRARIES - path to the debug library
# # Python_ADDITIONAL_VERSIONS - list of additional Python versions to search for
#============================================================================= #=============================================================================
# Copyright 2001-2009 Kitware, Inc. # Copyright 2001-2009 Kitware, Inc.
@ -27,7 +27,13 @@ INCLUDE(CMakeFindFrameworks)
# Search for the python framework on Apple. # Search for the python framework on Apple.
CMAKE_FIND_FRAMEWORKS(Python) CMAKE_FIND_FRAMEWORKS(Python)
FOREACH(_CURRENT_VERSION 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0 1.6 1.5) # Set up the versions we know about, in the order we will search. Always add
# the user supplied additional versions to the front.
set(_Python_VERSIONS
${Python_ADDITIONAL_VERSIONS}
2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0 1.6 1.5)
FOREACH(_CURRENT_VERSION ${_Python_VERSIONS})
STRING(REPLACE "." "" _CURRENT_VERSION_NO_DOTS ${_CURRENT_VERSION}) STRING(REPLACE "." "" _CURRENT_VERSION_NO_DOTS ${_CURRENT_VERSION})
IF(WIN32) IF(WIN32)
FIND_LIBRARY(PYTHON_DEBUG_LIBRARY FIND_LIBRARY(PYTHON_DEBUG_LIBRARY
@ -98,7 +104,7 @@ SET(PYTHON_LIBRARIES "${PYTHON_LIBRARY}")
SET(PYTHON_DEBUG_LIBRARIES "${PYTHON_DEBUG_LIBRARY}") SET(PYTHON_DEBUG_LIBRARIES "${PYTHON_DEBUG_LIBRARY}")
INCLUDE("${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake") INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonLibs DEFAULT_MSG PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS) FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonLibs DEFAULT_MSG PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)

@ -242,9 +242,9 @@ IF (QT_MIN_VERSION)
ENDIF (QT_MIN_VERSION) ENDIF (QT_MIN_VERSION)
# if the include a library are found then we have it # if the include a library are found then we have it
IF(QT_INCLUDE_DIR AND QT_QT_LIBRARY) INCLUDE(FindPackageHandleStandardArgs)
SET( QT_FOUND "YES" ) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Qt3 DEFAULT_MSG QT_QT_LIBRARY QT_INCLUDE_DIR QT_MOC_EXECUTABLE)
ENDIF(QT_INCLUDE_DIR AND QT_QT_LIBRARY) SET(QT_FOUND ${QT3_FOUND} )
IF(QT_FOUND) IF(QT_FOUND)
SET( QT_LIBRARIES ${QT_LIBRARIES} ${QT_QT_LIBRARY} ) SET( QT_LIBRARIES ${QT_LIBRARIES} ${QT_QT_LIBRARY} )

@ -482,7 +482,7 @@ IF (QT_QMAKE_EXECUTABLE)
_qt4_query_qmake(QT_VERSION QTVERSION) _qt4_query_qmake(QT_VERSION QTVERSION)
# check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path
IF("${QTVERSION}" MATCHES "Unknown") IF(NOT QTVERSION)
SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE) SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE)
FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS
"[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
@ -493,7 +493,7 @@ IF (QT_QMAKE_EXECUTABLE)
IF(QT_QMAKE_EXECUTABLE) IF(QT_QMAKE_EXECUTABLE)
_qt4_query_qmake(QT_VERSION QTVERSION) _qt4_query_qmake(QT_VERSION QTVERSION)
ENDIF(QT_QMAKE_EXECUTABLE) ENDIF(QT_QMAKE_EXECUTABLE)
ENDIF("${QTVERSION}" MATCHES "Unknown") ENDIF(NOT QTVERSION)
# check that we found the Qt4 qmake, Qt3 qmake output won't match here # check that we found the Qt4 qmake, Qt3 qmake output won't match here
STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}") STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}")
@ -1072,15 +1072,6 @@ IF (QT4_QMAKE_FOUND)
# get the directory of the current file, used later on in the file # get the directory of the current file, used later on in the file
GET_FILENAME_COMPONENT( _qt4_current_dir "${CMAKE_CURRENT_LIST_FILE}" PATH) GET_FILENAME_COMPONENT( _qt4_current_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
######################################
#
# Macros for building Qt files
#
######################################
INCLUDE("${_qt4_current_dir}/Qt4Macros.cmake")
###################################### ######################################
# #
# decide if Qt got found # decide if Qt got found
@ -1116,6 +1107,89 @@ IF (QT4_QMAKE_FOUND)
INCLUDE("${_qt4_current_dir}/Qt4ConfigDependentSettings.cmake") INCLUDE("${_qt4_current_dir}/Qt4ConfigDependentSettings.cmake")
#######################################
#
# Check the plugins of Qt
#
#######################################
SET( QT_PLUGIN_TYPES accessible bearer codecs decorations designer gfxdrivers graphicssystems iconengines imageformats inputmethods mousedrivers phonon_backend script sqldrivers )
SET( QT_ACCESSIBLE_PLUGINS qtaccessiblecompatwidgets qtaccessiblewidgets )
SET( QT_BEARER_PLUGINS qcorewlanbearer qgenericbearer )
SET( QT_CODECS_PLUGINS qcncodecs qjpcodecs qkrcodecs qtwcodecs )
SET( QT_DECORATIONS_PLUGINS qdecorationdefault qdecorationwindows )
SET( QT_DESIGNER_PLUGINS arthurplugin containerextension customwidgetplugin phononwidgets qdeclarativeview qt3supportwidgets qwebview taskmenuextension worldtimeclockplugin )
SET( QT_GRAPHICSDRIVERS_PLUGINS qgfxtransformed qgfxvnc qscreenvfb )
SET( QT_GRAPHICSSYSTEMS_PLUGINS qglgraphicssystem qtracegraphicssystem )
SET( QT_ICONENGINES_PLUGINS qsvgicon )
SET( QT_IMAGEFORMATS_PLUGINS qgif qjpeg qmng qico qsvg qtiff )
SET( QT_INPUTMETHODS_PLUGINS qimsw_multi )
SET( QT_MOUSEDRIVERS_PLUGINS qwstslibmousehandler )
SET( QT_PHONON_BACKEND_PLUGINS phonon_qt7 )
SET( QT_SCRIPT_PLUGINS qtscriptdbus )
SET( QT_SQLDRIVERS_PLUGINS qsqldb2 qsqlibase qsqlite qsqlite2 qsqlmysql qsqloci qsqlodbc qsqlpsql qsqltds )
IF(QT_QMAKE_CHANGED)
FOREACH(QT_PLUGIN_TYPE ${QT_PLUGIN_TYPES})
STRING(TOUPPER ${QT_PLUGIN_TYPE} _upper_qt_plugin_type)
SET(QT_${_upper_qt_plugin_type}_PLUGINS_DIR ${QT_PLUGINS_DIR}/${QT_PLUGIN_TYPE})
FOREACH(QT_PLUGIN ${QT_${_upper_qt_plugin_type}_PLUGINS})
STRING(TOUPPER ${QT_PLUGIN} _upper_qt_plugin)
UNSET(QT_${_upper_qt_plugin}_LIBRARY_RELEASE CACHE)
UNSET(QT_${_upper_qt_plugin}_LIBRARY_DEBUG CACHE)
UNSET(QT_${_upper_qt_plugin}_LIBRARY CACHE)
UNSET(QT_${_upper_qt_plugin}_PLUGIN_RELEASE CACHE)
UNSET(QT_${_upper_qt_plugin}_PLUGIN_DEBUG CACHE)
UNSET(QT_${_upper_qt_plugin}_PLUGIN CACHE)
ENDFOREACH(QT_PLUGIN)
ENDFOREACH(QT_PLUGIN_TYPE)
ENDIF(QT_QMAKE_CHANGED)
# find_library works better than find_file but we need to set prefixes to only match plugins
FOREACH(QT_PLUGIN_TYPE ${QT_PLUGIN_TYPES})
STRING(TOUPPER ${QT_PLUGIN_TYPE} _upper_qt_plugin_type)
SET(QT_${_upper_qt_plugin_type}_PLUGINS_DIR ${QT_PLUGINS_DIR}/${QT_PLUGIN_TYPE})
FOREACH(QT_PLUGIN ${QT_${_upper_qt_plugin_type}_PLUGINS})
STRING(TOUPPER ${QT_PLUGIN} _upper_qt_plugin)
IF(QT_IS_STATIC)
FIND_LIBRARY(QT_${_upper_qt_plugin}_LIBRARY_RELEASE
NAMES ${QT_PLUGIN}${QT_LIBINFIX} ${QT_PLUGIN}${QT_LIBINFIX}4
PATHS ${QT_${_upper_qt_plugin_type}_PLUGINS_DIR} NO_DEFAULT_PATH
)
FIND_LIBRARY(QT_${_upper_qt_plugin}_LIBRARY_DEBUG
NAMES ${QT_PLUGIN}${QT_LIBINFIX}_debug ${QT_PLUGIN}${QT_LIBINFIX}d ${QT_PLUGIN}${QT_LIBINFIX}d4
PATHS ${QT_${_upper_qt_plugin_type}_PLUGINS_DIR} NO_DEFAULT_PATH
)
_QT4_ADJUST_LIB_VARS(${QT_PLUGIN})
ELSE(QT_IS_STATIC)
# find_library works easier/better than find_file but we need to set suffixes to only match plugins
SET(CMAKE_FIND_LIBRARY_SUFFIXES_DEFAULT ${CMAKE_FIND_LIBRARY_SUFFIXES})
SET(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_SHARED_MODULE_SUFFIX} ${CMAKE_SHARED_LIBRARY_SUFFIX})
FIND_LIBRARY(QT_${_upper_qt_plugin}_PLUGIN_RELEASE
NAMES ${QT_PLUGIN}${QT_LIBINFIX} ${QT_PLUGIN}${QT_LIBINFIX}4
PATHS ${QT_${_upper_qt_plugin_type}_PLUGINS_DIR} NO_DEFAULT_PATH
)
FIND_LIBRARY(QT_${_upper_qt_plugin}_PLUGIN_DEBUG
NAMES ${QT_PLUGIN}${QT_LIBINFIX}_debug ${QT_PLUGIN}${QT_LIBINFIX}d ${QT_PLUGIN}${QT_LIBINFIX}d4
PATHS ${QT_${_upper_qt_plugin_type}_PLUGINS_DIR} NO_DEFAULT_PATH
)
MARK_AS_ADVANCED(QT_${_upper_qt_plugin}_PLUGIN_RELEASE QT_${_upper_qt_plugin}_PLUGIN_DEBUG)
SET(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_DEFAULT})
ENDIF(QT_IS_STATIC)
ENDFOREACH(QT_PLUGIN)
ENDFOREACH(QT_PLUGIN_TYPE)
######################################
#
# Macros for building Qt files
#
######################################
INCLUDE("${_qt4_current_dir}/Qt4Macros.cmake")
####################################### #######################################
# #
# compatibility settings # compatibility settings

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save