Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
CMake
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
2,682
Issues
2,682
List
Boards
Labels
Milestones
Merge Requests
23
Merge Requests
23
Packages
Packages
Container Registry
External Wiki
External Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
CMake
CMake
Commits
fa782867
Commit
fa782867
authored
Oct 23, 2002
by
Bill Hoffman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
closer to removing autoconf
parent
f6a70573
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
172 additions
and
34 deletions
+172
-34
Modules/CMakeCCompiler.cmake.in
Modules/CMakeCCompiler.cmake.in
+4
-0
Modules/CMakeDefaultMakeRuleVariables.cmake
Modules/CMakeDefaultMakeRuleVariables.cmake
+69
-0
Modules/CMakeDetermineCCompiler.cmake
Modules/CMakeDetermineCCompiler.cmake
+10
-1
Modules/CMakeDetermineCXXCompiler.cmake
Modules/CMakeDetermineCXXCompiler.cmake
+4
-1
Modules/CMakeDetermineSystem.cmake
Modules/CMakeDetermineSystem.cmake
+3
-1
Modules/CMakePrintSystemInformation.cmake
Modules/CMakePrintSystemInformation.cmake
+31
-0
Modules/CMakeSystem.cmake.in
Modules/CMakeSystem.cmake.in
+3
-0
Modules/CMakeSystemSpecificInformation.cmake
Modules/CMakeSystemSpecificInformation.cmake
+45
-31
Modules/CYGWIN.cmake
Modules/CYGWIN.cmake
+3
-0
No files found.
Modules/CMakeCCompiler.cmake.in
0 → 100644
View file @
fa782867
SET(CMAKE_C_COMPILER "@CMAKE_C_COMPILER@")
SET(CMAKE_AR "@CMAKE_AR@")
SET(CMAKE_RANLIB "@CMAKE_RANLIB@")
SET(CMAKE_COMPILER_IS_GNUGCC @CMAKE_COMPILER_IS_GNUGCC@)
Modules/CMakeDefaultMakeRuleVariables.cmake
0 → 100644
View file @
fa782867
# this file contains rule variables that tell cmake how to
# do things like build a .o file, create a shared or static library
#
# create a shared C++ librar
IF
(
NOT CMAKE_CXX_CREATE_SHARED_LIBRARY
)
SET
(
CMAKE_CXX_CREATE_SHARED_LIBRARY
"
${
CMAKE_CXX_COMPILER
}
${
CMAKE_SHARED_LIBRARY_CREATE_FLAGS
}
"
"
${
CMAKE_CXX_LINK_SHARED_OUT_FLAG
}
<TARGET> <OBJECTS>"
)
ENDIF
(
NOT CMAKE_CXX_CREATE_SHARED_LIBRARY
)
# create a c++ shared module
IF
(
NOT CMAKE_CXX_CREATE_SHARED_MODULE
)
SET
(
CMAKE_CXX_CREATE_SHARED_MODULE
"
${
CMAKE_CXX_COMPILER
}
${
CMAKE_SHARED_MODULE_CREATE_FLAGS
}
"
"
${
CMAKE_CXX_LINK_SHARED_OUT_FLAG
}
<TARGET> <OBJECTS>"
)
ENDIF
(
NOT CMAKE_CXX_CREATE_SHARED_MODULE
)
# create a C shared library
IF
(
NOT CMAKE_C_CREATE_SHARED_LIBRARY
)
SET
(
CMAKE_C_CREATE_SHARED_LIBRARY
"
${
CMAKE_C_COMPILER
}
${
CMAKE_SHARED_LIBRARY_CREATE_FLAGS
}
"
"
${
CMAKE_C_LINK_SHARED_OUT_FLAG
}
<TARGET> <OBJECTS>"
)
ENDIF
(
NOT CMAKE_C_CREATE_SHARED_LIBRARY
)
# create a C shared module
IF
(
NOT CMAKE_C_CREATE_SHARED_MODULE
)
SET
(
CMAKE_C_CREATE_SHARED_MODULE
"
${
CMAKE_C_COMPILER
}
${
CMAKE_SHARED_MODULE_CREATE_FLAGS
}
"
"
${
CMAKE_C_LINK_SHARED_OUT_FLAG
}
<TARGET> <OBJECTS>"
)
ENDIF
(
NOT CMAKE_C_CREATE_SHARED_MODULE
)
# create a C++ static library
IF
(
NOT CMAKE_CXX_CREATE_STATIC_LIBRARY
)
SET
(
CMAKE_CXX_CREATE_STATIC_LIBRARY
"
${
CMAKE_CXX_AR
}
cr <TARGET> <OBJECTS> "
"
${
CMAKE_RANLIB
}
<TARGET> "
)
ENDIF
(
NOT CMAKE_CXX_CREATE_STATIC_LIBRARY
)
# create a C static library
IF
(
NOT CMAKE_C_CREATE_STATIC_LIBRARY
)
SET
(
CMAKE_C_CREATE_STATIC_LIBRARY
"
${
CMAKE_AR
}
cr <TARGET> <OBJECTS> "
"
${
CMAKE_RANLIB
}
<TARGET> "
)
ENDIF
(
NOT CMAKE_C_CREATE_STATIC_LIBRARY
)
# compile a C++ file into an object file
IF
(
NOT CMAKE_CXX_COMPILE_OBJECT
)
SET
(
CMAKE_CXX_COMPILE_OBJECT
"
${
CMAKE_CXX_COMPILER
}
-o <OBJECT> <INCLUDE_FLAGS> <SHARED_FLAGS>
${
CMAKE_CXX_FLAGS
}
-c <SOURCE>"
)
ENDIF
(
NOT CMAKE_CXX_COMPILE_OBJECT
)
# compile a C file into an object file
IF
(
NOT CMAKE_C_COMPILE_OBJECT
)
SET
(
CMAKE_C_COMPILE_OBJECT
"
${
CMAKE_C_COMPILER
}
-o <OBJECT> <INCLUDE_FLAGS> <SHARED_FLAGS>
${
CMAKE_C_FLAGS
}
-c <SOURCE>"
)
ENDIF
(
NOT CMAKE_C_COMPILE_OBJECT
)
IF
(
NOT CMAKE_C_LINK_EXECUTABLE
)
SET
(
CMAKE_C_LINK_EXECUTABLE
"
${
CMAKE_C_COMPILER
}
<SHARED_FLAGS> <OBJECTS> -o <TARGET> "
)
ENDIF
(
NOT CMAKE_C_LINK_EXECUTABLE
)
IF
(
NOT CMAKE_CXX_LINK_EXECUTABLE
)
SET
(
CMAKE_CXX_LINK_EXECUTABLE
"
${
CMAKE_CXX_COMPILER
}
<SHARED_FLAGS> <OBJECTS> -o <TARGET> "
)
ENDIF
(
NOT CMAKE_CXX_LINK_EXECUTABLE
)
Modules/CMakeDetermineCCompiler.cmake
View file @
fa782867
...
...
@@ -2,7 +2,14 @@
# NOTE, a generator may set CMAKE_C_COMPILER before
# loading this file to force a compiler.
FIND_PROGRAM
(
CMAKE_C_COMPILER NAMES $ENV{CC} gcc cc cl bcc PATHS /bin /usr/bin /usr/local/bin
)
FIND_PROGRAM
(
CMAKE_C_COMPILER_FULLPATH NAMES $ENV{CC} gcc cc cl bcc
)
GET_FILENAME_COMPONENT
(
CMAKE_C_COMPILER
${
CMAKE_C_COMPILER_FULLPATH
}
NAME_WE
)
FIND_PROGRAM
(
CMAKE_AR NAMES ar PATHS /bin /usr/bin /usr/local/bin
)
FIND_PROGRAM
(
CMAKE_RANLIB NAMES ranlib PATHS /bin /usr/bin /usr/local/bin
)
IF
(
NOT CMAKE_RANLIB
)
SET
(
RANLIB :
)
ENDIF
(
NOT CMAKE_RANLIB
)
# test to see if the c compiler is gnu
EXEC_PROGRAM
(
${
CMAKE_C_COMPILER
}
ARGS -E
${
CMAKE_ROOT
}
/Modules/CMakeTestGNU.c OUTPUT_VARIABLE CMAKE_COMPILER_OUTPUT RETURN_VALUE CMAKE_COMPILER_RETURN
)
...
...
@@ -13,3 +20,5 @@ IF(NOT CMAKE_COMPILER_RETURN)
ENDIF
(
${
CMAKE_COMPILER_OUTPUT
}
MATCHES
".*THIS_IS_GNU.*"
)
ENDIF
(
NOT CMAKE_COMPILER_RETURN
)
CONFIGURE_FILE
(
${
CMAKE_ROOT
}
/Modules/CMakeCCompiler.cmake.in
${
PROJECT_BINARY_DIR
}
/CMakeCCompiler.cmake
)
Modules/CMakeDetermineCXXCompiler.cmake
View file @
fa782867
...
...
@@ -2,7 +2,8 @@
# NOTE, a generator may set CMAKE_CXX_COMPILER before
# loading this file to force a compiler.
FIND_PROGRAM
(
CMAKE_CXX_COMPILER NAMES $ENV{CXX} c++ g++ CC aCC cl bcc PATHS /bin /usr/bin /usr/local/bin
)
FIND_PROGRAM
(
CMAKE_CXX_COMPILER_FULLPATH NAMES $ENV{CXX} c++ g++ CC aCC cl bcc
)
GET_FILENAME_COMPONENT
(
CMAKE_CXX_COMPILER
${
CMAKE_CXX_COMPILER_FULLPATH
}
NAME_WE
)
# test to see if the cxx compiler is gnu
EXEC_PROGRAM
(
${
CMAKE_CXX_COMPILER
}
ARGS -E
${
CMAKE_ROOT
}
/Modules/CMakeTestGNU.c OUTPUT_VARIABLE CMAKE_COMPILER_OUTPUT RETURN_VALUE CMAKE_COMPILER_RETURN
)
...
...
@@ -12,3 +13,5 @@ IF(NOT CMAKE_COMPILER_RETURN)
SET
(
CMAKE_COMPILER_IS_GNUGXX 1
)
ENDIF
(
${
CMAKE_COMPILER_OUTPUT
}
MATCHES
".*THIS_IS_GNU.*"
)
ENDIF
(
NOT CMAKE_COMPILER_RETURN
)
SET
(
CMAKE_CXX_AR
${
CMAKE_AR
}
)
Modules/CMakeDetermineSystem.cmake
View file @
fa782867
...
...
@@ -59,4 +59,6 @@ SET(CMAKE_SYSTEM ${CMAKE_SYSTEM_NAME})
IF
(
CMAKE_SYSTEM_VERSION
)
SET
(
CMAKE_SYSTEM
${
CMAKE_SYSTEM
}
-
${
CMAKE_SYSTEM_VERSION
}
)
ENDIF
(
CMAKE_SYSTEM_VERSION
)
MESSAGE
(
${
PROJECT_BIN_DIR
}
/CMakeSystem.cmake
)
CONFIGURE_FILE
(
${
CMAKE_ROOT
}
/Modules/CMakeSystem.cmake.in
${
PROJECT_BINARY_DIR
}
/CMakeSystem.cmake
)
Modules/CMakePrintSystemInformation.cmake
0 → 100644
View file @
fa782867
# this file can be used for diagnostic purposes
# just include it in a project to see various internal cmake
# variables
MESSAGE
(
"CMAKE_SYSTEM is
${
CMAKE_SYSTEM
}
${
CMAKE_SYSTEM_NAME
}
${
CMAKE_SYSTEM_VERSION
}
"
)
MESSAGE
(
"CMAKE_SYSTEM file is
${
CMAKE_SYSTEM_INFO_FILE
}
"
)
MESSAGE
(
"CMAKE_C_COMPILER is
${
CMAKE_C_COMPILER
}
"
)
MESSAGE
(
"CMAKE_CXX_COMPILER is
${
CMAKE_CXX_COMPILER
}
"
)
MESSAGE
(
"CMAKE_SHARED_LIBRARY_CREATE_FLAGS is
${
CMAKE_SHARED_LIBRARY_CREATE_FLAGS
}
"
)
MESSAGE
(
"CMAKE_DL_LIBS is
${
CMAKE_DL_LIBS
}
"
)
MESSAGE
(
"CMAKE_SHARED_LIBRARY_PREFIX is
${
CMAKE_SHARED_LIBRARY_PREFIX
}
"
)
MESSAGE
(
"CMAKE_SHARED_LIBRARY_SUFFIX is
${
CMAKE_SHARED_LIBRARY_SUFFIX
}
"
)
MESSAGE
(
"CMAKE_COMPILER_IS_GNUGCC =
${
CMAKE_COMPILER_IS_GNUGCC
}
"
)
MESSAGE
(
"CMAKE_COMPILER_IS_GNUGXX =
${
CMAKE_COMPILER_IS_GNUGXX
}
"
)
MESSAGE
(
"CMAKE_CXX_CREATE_SHARED_LIBRARY is
${
CMAKE_CXX_CREATE_SHARED_LIBRARY
}
"
)
MESSAGE
(
"CMAKE_CXX_CREATE_SHARED_MODULE is
${
CMAKE_CXX_CREATE_SHARED_MODULE
}
"
)
MESSAGE
(
"CMAKE_CXX_CREATE_STATIC_LIBRARY is
${
CMAKE_CXX_CREATE_STATIC_LIBRARY
}
"
)
MESSAGE
(
"CMAKE_CXX_COMPILE_OBJECT is
${
CMAKE_CXX_COMPILE_OBJECT
}
"
)
MESSAGE
(
"CMAKE_CXX_LINK_EXECUTABLE
${
CMAKE_CXX_LINK_EXECUTABLE
}
"
)
MESSAGE
(
"CMAKE_C_CREATE_SHARED_LIBRARY is
${
CMAKE_C_CREATE_SHARED_LIBRARY
}
"
)
MESSAGE
(
"CMAKE_C_CREATE_SHARED_MODULE is
${
CMAKE_C_CREATE_SHARED_MODULE
}
"
)
MESSAGE
(
"CMAKE_C_CREATE_STATIC_LIBRARY is
${
CMAKE_C_CREATE_STATIC_LIBRARY
}
"
)
MESSAGE
(
"CMAKE_C_COMPILE_OBJECT is
${
CMAKE_C_COMPILE_OBJECT
}
"
)
MESSAGE
(
"CMAKE_C_LINK_EXECUTABLE
${
CMAKE_C_LINK_EXECUTABLE
}
"
)
MESSAGE
(
"CMAKE_SYSTEM_AND_CXX_COMPILER_INFO_FILE
${
CMAKE_SYSTEM_AND_CXX_COMPILER_INFO_FILE
}
"
)
MESSAGE
(
"CMAKE_SYSTEM_AND_C_COMPILER_INFO_FILE
${
CMAKE_SYSTEM_AND_C_COMPILER_INFO_FILE
}
"
)
Modules/CMakeSystem.cmake.in
0 → 100644
View file @
fa782867
SET(CMAKE_SYSTEM "@CMAKE_SYSTEM@")
SET(CMAKE_SYSTEM_NAME "@CMAKE_SYSTEM_NAME@")
SET(CMAKE_SYSTEM_VERSION "@CMAKE_SYSTEM_VERSION@")
Modules/CMakeSystemSpecificInformation.cmake
View file @
fa782867
...
...
@@ -5,20 +5,24 @@
# makefiles. Next, it will include a system specific file. Finally,
# it will optionally include a system and compiler specific file that
# can be used to override any of this information.
# For debugging new systems, and expert users, if the
# CMAKE_USER_MAKE_RULES_OVERRIDE is set to a file name, that
# file will be included last, and can override any variable
# 1. set default values that will work for most system
SET
(
CMAKE_STATIC_LIBRARY_PREFIX
"lib"
)
SET
(
CMAKE_STATIC_LIBRARY_SUFFIX
".a"
)
SET
(
CMAKE_SHARED_LIBRARY_C_FLAGS
""
)
# -pic
SET
(
CMAKE_SHARED_LIBRARY_CXX_FLAGS
""
)
# -pic
# for gnu compiler always
SET
(
CMAKE_SHARED_LIBRARY_CREATE_FLAGS
""
)
# -shared
SET
(
CMAKE_SHARED_LIBRARY_PREFIX
"lib"
)
# lib
SET
(
CMAKE_SHARED_LIBRARY_SUFFIX
".so"
)
# .so
SET
(
CMAKE_SHARED_LIBRARY_LINK_FLAGS
""
)
# +s,
or some flag that an exe needs to use a
shared lib
SET
(
CMAKE_SHARED_LIBRARY_LINK_FLAGS
""
)
# +s,
flag for exe link to use
shared lib
SET
(
CMAKE_SHARED_LIBRARY_RUNTIME_FLAG
""
)
# -rpath
SET
(
CMAKE_SHARED_LIBRARY_RUNTIME_FLAG_SEP
""
)
# : or empty
SET
(
CMAKE_LIBRARY_PATH_FLAG
"-L"
)
SET
(
CMAKE_LINK_LIBRARY_FLAG
"-l"
)
IF
(
CMAKE_COMPILER_IS_GNUGXX
)
SET
(
CMAKE_SHARED_LIBRARY_C_FLAGS
"-fPIC"
)
# -pic
SET
(
CMAKE_SHARED_LIBRARY_CXX_FLAGS
"-fPIC"
)
# -pic
...
...
@@ -38,35 +42,45 @@ ELSE(EXISTS ${CMAKE_SYSTEM_INFO_FILE})
"cmake@www.cmake.org so it can be added to cmake"")
ENDIF(EXISTS
${
CMAKE_SYSTEM_INFO_FILE
}
)
# Set up default values for things that have not been set either
# in SYSTEM.cmake or SYSTEM-compiler.cmake
IF(NOT CMAKE_CXX_CREATE_SHARED_LIBRARY)
SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
"
${
CMAKE_CXX_COMPILE
}
${
CMAKE_SHARED_LIBRARY_CREATE_FLAGS
}
"
"
${
CMAKE_CXX_LINK_SHARED_OUT_FLAG
}
<TARGET> <OBJECTS>
")
ENDIF(NOT CMAKE_CXX_CREATE_SHARED_LIBRARY)
IF(NOT CMAKE_CXX_CREATE_STATIC_LIBRARY)
SET(CMAKE_CXX_CREATE_STATIC_LIBRARY
"
${
CMAKE_CXX_AR
}
${
CMAKE_AR_FLAGS
}
<TARGET> <OBJECTS>
")
ENDIF(NOT CMAKE_CXX_CREATE_STATIC_LIBRARY)
IF(NOT CMAKE_CXX_COMPILE)
SET(CMAKE_CXX_COMPILE
"
${
CMAKE_CXX_COMPILER
}
-o <OBJECT>
${
CMAKE_CXX_FLAGS
}
-c <SOURCE>
")
ENDIF(NOT CMAKE_CXX_COMPILE)
# 3. include optional systemname-compiler.cmake files
IF(CMAKE_C_COMPILER)
INCLUDE(
${
CMAKE_ROOT
}
/Modules/
${
CMAKE_SYSTEM_NAME
}
-
${
CMAKE_C_COMPILER
}
.cmake OPTIONAL)
GET_FILENAME_COMPONENT(CMAKE_BASE_NAME
${
CMAKE_C_COMPILER
}
NAME_WE)
# since the gnu compiler has several names force gcc
IF(CMAKE_COMPILER_IS_GNUGCC)
SET(CMAKE_BASE_NAME gcc)
ENDIF(CMAKE_COMPILER_IS_GNUGCC)
SET(CMAKE_SYSTEM_AND_C_COMPILER_INFO_FILE
${
CMAKE_ROOT
}
/Modules/
${
CMAKE_SYSTEM_NAME
}
-
${
CMAKE_BASE_NAME
}
.cmake)
INCLUDE(
${
CMAKE_SYSTEM_AND_C_COMPILER_INFO_FILE
}
OPTIONAL)
ENDIF(CMAKE_C_COMPILER)
IF(CMAKE_CXX_COMPILER)
INCLUDE(
${
CMAKE_ROOT
}
/Modules/
${
CMAKE_SYSTEM_NAME
}
-
${
CMAKE_CXX_COMPILER
}
.cmake
OPTIONAL)
GET_FILENAME_COMPONENT(CMAKE_BASE_NAME
${
CMAKE_CXX_COMPILER
}
NAME_WE)
# since the gnu compiler has several names force gcc
IF(CMAKE_COMPILER_IS_GNUGXX)
SET(CMAKE_BASE_NAME g++)
ENDIF(CMAKE_COMPILER_IS_GNUGXX)
SET(CMAKE_SYSTEM_AND_CXX_COMPILER_INFO_FILE
${
CMAKE_ROOT
}
/Modules/
${
CMAKE_SYSTEM_NAME
}
-
${
CMAKE_BASE_NAME
}
.cmake)
INCLUDE(
${
CMAKE_SYSTEM_AND_CXX_COMPILER_INFO_FILE
}
OPTIONAL)
ENDIF(CMAKE_CXX_COMPILER)
# for most systems a module is the same as a shared library
# so unless the variable CMAKE_MODULE_EXISTS is set just
# copy the values from the LIBRARY variables
IF(NOT CMAKE_MODULE_EXISTS)
SET(CMAKE_SHARED_MODULE_C_FLAGS
${
CMAKE_SHARED_LIBRARY_C_FLAGS)
SET(CMAKE_SHARED_MODULE_CXX_FLAGS
${
CMAKE_SHARED_LIBRARY_CXX_FLAGS
}
)
SET(CMAKE_SHARED_MODULE_CREATE_FLAGS
${
CMAKE_SHARED_LIBRARY_CREATE_FLAGS
}
)
SET(CMAKE_SHARED_MODULE_PREFIX
${
CMAKE_SHARED_LIBRARY_PREFIX
}
)
SET(CMAKE_SHARED_MODULE_SUFFIX
${
CMAKE_SHARED_LIBRARY_SUFFIX
}
)
SET(CMAKE_SHARED_MODULE_LINK_FLAGS
${
CMAKE_SHARED_LIBRARY_LINK_FLAGS
}
)
SET(CMAKE_SHARED_MODULE_RUNTIME_FLAG
${
CMAKE_SHARED_LIBRARY_RUNTIME_FLAG
}
)
SET(CMAKE_SHARED_MODULE_RUNTIME_FLAG_SEP
${
CMAKE_SHARED_MODULE_RUNTIME_FLAG_SEP
}
)
ENDIF(NOT CMAKE_MODULE_EXISTS)
# include default rules that work for most unix like systems and compilers
# this file will not set anything if it is already set
INCLUDE(
${
CMAKE_ROOT
}
/Modules/CMakeDefaultMakeRuleVariables.cmake)
IF(CMAKE_USER_MAKE_RULES_OVERRIDE)
INCLUDE(
${
CMAKE_USER_MAKE_RULES_OVERRIDE
}
)
ENDIF(CMAKE_USER_MAKE_RULES_OVERRIDE)
Modules/CYGWIN.cmake
View file @
fa782867
...
...
@@ -2,3 +2,6 @@ SET(CMAKE_SHARED_LIBRARY_CREATE_FLAGS "-shared")
SET
(
CMAKE_DL_LIBS
"-lgdi32"
)
SET
(
CMAKE_SHARED_LIBRARY_PREFIX
""
)
SET
(
CMAKE_SHARED_LIBRARY_SUFFIX
".dll"
)
# no pic for gcc on cygwin
SET
(
CMAKE_SHARED_LIBRARY_C_FLAGS
""
)
SET
(
CMAKE_SHARED_LIBRARY_CXX_FLAGS
""
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment