Very basic stuff working on linux 32-bit with dmd and phobos2.
This commit is contained in:
parent
f23eee9828
commit
67f0225e42
152 changed files with 113 additions and 0 deletions
45
tests/FullSkeleton/cmake/Modules/CMakeDCompiler.cmake.in
Normal file
45
tests/FullSkeleton/cmake/Modules/CMakeDCompiler.cmake.in
Normal file
|
@ -0,0 +1,45 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 CMakeCCompiler.cmake.in
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
SET(CMAKE_D_COMPILER "@CMAKE_D_COMPILER@")
|
||||
SET(CMAKE_D_COMPILER_ARG1 "@CMAKE_D_COMPILER_ARG1@")
|
||||
SET(CMAKE_AR "@CMAKE_AR@")
|
||||
SET(CMAKE_RANLIB "@CMAKE_RANLIB@")
|
||||
SET(CMAKE_COMPILER_IS_GDC @CMAKE_COMPILER_IS_GDC@)
|
||||
SET(CMAKE_COMPILER_IS_DMD @CMAKE_COMPILER_IS_DMD@)
|
||||
SET(CMAKE_D_COMPILER_LOADED 1)
|
||||
SET(CMAKE_COMPILER_IS_MINGW @CMAKE_COMPILER_IS_MINGW@)
|
||||
SET(CMAKE_COMPILER_IS_CYGWIN @CMAKE_COMPILER_IS_CYGWIN@)
|
||||
IF(CMAKE_COMPILER_IS_CYGWIN)
|
||||
SET(CYGWIN 1)
|
||||
SET(UNIX 1)
|
||||
ENDIF(CMAKE_COMPILER_IS_CYGWIN)
|
||||
|
||||
SET(CMAKE_D_COMPILER_ENV_VAR "DC")
|
||||
|
||||
IF(CMAKE_COMPILER_IS_MINGW)
|
||||
SET(MINGW 1)
|
||||
ENDIF(CMAKE_COMPILER_IS_MINGW)
|
||||
SET(CMAKE_COMPILER_IS_GDC_RUN 1)
|
||||
SET(CMAKE_D_SOURCE_FILE_EXTENSIONS d)
|
||||
SET(CMAKE_D_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
|
||||
SET(CMAKE_D_LINKER_PREFERENCE None)
|
||||
IF(UNIX)
|
||||
SET(CMAKE_D_OUTPUT_EXTENSION .o)
|
||||
ELSE(UNIX)
|
||||
SET(CMAKE_D_OUTPUT_EXTENSION .obj)
|
||||
ENDIF(UNIX)
|
||||
# save the size of void* in case where cache is removed
|
||||
# and the this file is still around
|
||||
#SET(CMAKE_SIZEOF_VOID_P @CMAKE_SIZEOF_VOID_P@)
|
237
tests/FullSkeleton/cmake/Modules/CMakeDInformation.cmake
Normal file
237
tests/FullSkeleton/cmake/Modules/CMakeDInformation.cmake
Normal file
|
@ -0,0 +1,237 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 CMakeCInformation.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
# This file sets the basic flags for the D language in CMake.
|
||||
# It also loads the available platform file for the system-compiler
|
||||
# if it exists.
|
||||
|
||||
GET_FILENAME_COMPONENT(CMAKE_BASE_NAME ${CMAKE_D_COMPILER} NAME_WE)
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_BASE_NAME gdc)
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_BASE_NAME dmd)
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_SYSTEM_AND_D_COMPILER_INFO_FILE
|
||||
${CMAKE_ROOT}/Modules/Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME}.cmake)
|
||||
INCLUDE(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME} OPTIONAL)
|
||||
|
||||
# This should be included before the _INIT variables are
|
||||
# used to initialize the cache. Since the rule variables
|
||||
# have if blocks on them, users can still define them here.
|
||||
# But, it should still be after the platform file so changes can
|
||||
# be made to those values.
|
||||
|
||||
IF(CMAKE_USER_MAKE_RULES_OVERRIDE)
|
||||
INCLUDE(${CMAKE_USER_MAKE_RULES_OVERRIDE})
|
||||
ENDIF(CMAKE_USER_MAKE_RULES_OVERRIDE)
|
||||
|
||||
IF(CMAKE_USER_MAKE_RULES_OVERRIDE_D)
|
||||
INCLUDE(${CMAKE_USER_MAKE_RULES_OVERRIDE_D})
|
||||
ENDIF(CMAKE_USER_MAKE_RULES_OVERRIDE_D)
|
||||
|
||||
# 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_D_FLAGS ${CMAKE_SHARED_LIBRARY_D_FLAGS})
|
||||
SET(CMAKE_SHARED_MODULE_CREATE_D_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_D_FLAGS})
|
||||
ENDIF(NOT CMAKE_MODULE_EXISTS)
|
||||
|
||||
SET (CMAKE_D_FLAGS "$ENV{CFLAGS} ${CMAKE_D_FLAGS_INIT}" CACHE STRING
|
||||
"Flags for D compiler.")
|
||||
|
||||
IF(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
|
||||
# default build type is none
|
||||
IF(NOT CMAKE_NO_BUILD_TYPE)
|
||||
SET (CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE_INIT} CACHE STRING
|
||||
"Choose the type of build, options are: None(CMAKE_D_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.")
|
||||
ENDIF(NOT CMAKE_NO_BUILD_TYPE)
|
||||
SET (CMAKE_D_FLAGS_DEBUG "${CMAKE_D_FLAGS_DEBUG_INIT}" CACHE STRING
|
||||
"Flags used by the compiler during debug builds.")
|
||||
SET (CMAKE_D_FLAGS_MINSIZEREL "${CMAKE_D_FLAGS_MINSIZEREL_INIT}" CACHE STRING
|
||||
"Flags used by the compiler during release minsize builds.")
|
||||
SET (CMAKE_D_FLAGS_RELEASE "${CMAKE_D_FLAGS_RELEASE_INIT}" CACHE STRING
|
||||
"Flags used by the compiler during release builds (/MD /Ob1 /Oi /Ot /Oy /Gs will produce slightly less optimized but smaller files).")
|
||||
SET (CMAKE_D_FLAGS_RELWITHDEBINFO "${CMAKE_D_FLAGS_RELWITHDEBINFO_INIT}" CACHE STRING
|
||||
"Flags used by the compiler during Release with Debug Info builds.")
|
||||
ENDIF(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
|
||||
|
||||
IF(CMAKE_D_STANDARD_LIBRARIES_INIT)
|
||||
SET(CMAKE_D_STANDARD_LIBRARIES "${CMAKE_D_STANDARD_LIBRARIES_INIT}"
|
||||
CACHE STRING "Libraries linked by defalut with all D applications.")
|
||||
MARK_AS_ADVANCED(CMAKE_D_STANDARD_LIBRARIES)
|
||||
ENDIF(CMAKE_D_STANDARD_LIBRARIES_INIT)
|
||||
|
||||
INCLUDE(CMakeCommonLanguageInclude)
|
||||
|
||||
# now define the following rule variables
|
||||
|
||||
# CMAKE_D_CREATE_SHARED_LIBRARY
|
||||
# CMAKE_D_CREATE_SHARED_MODULE
|
||||
# CMAKE_D_CREATE_STATIC_LIBRARY
|
||||
# CMAKE_D_COMPILE_OBJECT
|
||||
# CMAKE_D_LINK_EXECUTABLE
|
||||
|
||||
# variables supplied by the generator at use time
|
||||
# <TARGET>
|
||||
# <TARGET_BASE> the target without the suffix
|
||||
# <OBJECTS>
|
||||
# <OBJECT>
|
||||
# <LINK_LIBRARIES>
|
||||
# <FLAGS>
|
||||
# <LINK_FLAGS>
|
||||
|
||||
# D compiler information
|
||||
# <CMAKE_D_COMPILER>
|
||||
# <CMAKE_SHARED_LIBRARY_CREATE_D_FLAGS>
|
||||
# <CMAKE_SHARED_MODULE_CREATE_D_FLAGS>
|
||||
# <CMAKE_D_LINK_FLAGS>
|
||||
|
||||
# Static library tools
|
||||
# <CMAKE_AR>
|
||||
# <CMAKE_RANLIB>
|
||||
|
||||
IF("$ENV{D_PATH}" STREQUAL "")
|
||||
STRING(LENGTH ${CMAKE_D_COMPILER} CMAKE_D_COMPILER_LENGTH)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
MATH(EXPR CMAKE_D_COMPILER_LENGTH "${CMAKE_D_COMPILER_LENGTH} - 12")
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
MATH(EXPR CMAKE_D_COMPILER_LENGTH "${CMAKE_D_COMPILER_LENGTH} - 8")
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
STRING(SUBSTRING ${CMAKE_D_COMPILER} 0 ${CMAKE_D_COMPILER_LENGTH} D_PATH)
|
||||
ELSE("$ENV{D_PATH}" STREQUAL "")
|
||||
SET(D_PATH "$ENV{D_PATH}")
|
||||
ENDIF("$ENV{D_PATH}" STREQUAL "")
|
||||
MESSAGE(STATUS "D Compiler Install Prefix (use D_PATH env var to override): ${D_PATH}")
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_OUTPUT_D_FLAG "-o ")
|
||||
SET(CMAKE_SHARED_LIBRARY_D_FLAGS "-fPIC")
|
||||
SET(CMAKE_SHARED_LIBRARY_CREATE_D_FLAGS "-shared")
|
||||
SET(CMAKE_INCLUDE_FLAG_D "-I") # -I
|
||||
SET(CMAKE_INCLUDE_FLAG_D_SEP "") # , or empty
|
||||
SET(CMAKE_LIBRARY_PATH_FLAG "-L")
|
||||
SET(CMAKE_LINK_LIBRARY_FLAG "-l")
|
||||
SET(CMAKE_D_VERSION_FLAG "-fversion=")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_OUTPUT_D_FLAG "-of")
|
||||
SET(CMAKE_D_VERSION_FLAG "-version=")
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
SET(CMAKE_INCLUDE_FLAG_D "-I") # -I
|
||||
SET(CMAKE_INCLUDE_FLAG_D_SEP "") # , or empty
|
||||
SET(CMAKE_LINK_LIBRARY_FLAG "-L+")
|
||||
SET(CMAKE_LIBRARY_PATH_FLAG "-L+")
|
||||
SET(CMAKE_LIBRARY_PATH_TERMINATOR "\\")
|
||||
FIND_PROGRAM(DMD_LIBRARIAN "lib.exe")
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
SET(CMAKE_SHARED_LIBRARY_D_FLAGS "-fPIC")
|
||||
SET(CMAKE_SHARED_LIBRARY_CREATE_D_FLAGS "-shared")
|
||||
SET(CMAKE_INCLUDE_FLAG_D "-I") # -I
|
||||
SET(CMAKE_INCLUDE_FLAG_D_SEP "") # , or empty
|
||||
SET(CMAKE_LIBRARY_PATH_FLAG "-L")
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
|
||||
IF(CMAKE_D_USE_TANGO)
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(DSTDLIB_TYPE "-fversion=Tango")
|
||||
SET(DSTDLIB_FLAGS "-lgtango")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
SET(DSTDLIB_TYPE "-version=Tango")
|
||||
SET(DSTDLIB_FLAGS "-L${D_PATH}/lib -ltango -lphobos")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
ENDIF(CMAKE_D_USE_TANGO)
|
||||
IF(CMAKE_D_USE_PHOBOS)
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(DSTDLIB_TYPE "-fversion=Phobos")
|
||||
SET(DSTDLIB_FLAGS "-lgphobos")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
SET(DSTDLIB_TYPE "-version=Phobos")
|
||||
SET(DSTDLIB_FLAGS "-L${D_PATH}/lib -lphobos")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
ENDIF(CMAKE_D_USE_PHOBOS)
|
||||
|
||||
# create a D shared library
|
||||
IF(NOT CMAKE_D_CREATE_SHARED_LIBRARY)
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_D_CREATE_SHARED_LIBRARY
|
||||
"<CMAKE_D_COMPILER> <CMAKE_SHARED_LIBRARY_D_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_D_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_D_FLAG><TARGET_SONAME> ${CMAKE_OUTPUT_D_FLAG}<TARGET> <OBJECTS> <LINK_LIBRARIES>")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_D_CREATE_SHARED_LIBRARY
|
||||
"<CMAKE_D_COMPILER> <CMAKE_SHARED_LIBRARY_D_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_D_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_D_FLAG><TARGET_SONAME> ${CMAKE_OUTPUT_D_FLAG}<TARGET> <OBJECTS> <LINK_LIBRARIES> ${DSTDLIB_FLAGS}")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
ENDIF(NOT CMAKE_D_CREATE_SHARED_LIBRARY)
|
||||
|
||||
# create a D shared module just copy the shared library rule
|
||||
IF(NOT CMAKE_D_CREATE_SHARED_MODULE)
|
||||
SET(CMAKE_D_CREATE_SHARED_MODULE ${CMAKE_D_CREATE_SHARED_LIBRARY})
|
||||
ENDIF(NOT CMAKE_D_CREATE_SHARED_MODULE)
|
||||
|
||||
# create a D static library
|
||||
IF(NOT CMAKE_D_CREATE_STATIC_LIBRARY)
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
SET(CMAKE_D_CREATE_STATIC_LIBRARY
|
||||
"<CMAKE_AR> cr <TARGET>.lib <LINK_FLAGS> <OBJECTS> "
|
||||
"<CMAKE_RANLIB> <TARGET>.lib "
|
||||
"<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS> "
|
||||
"<CMAKE_RANLIB> <TARGET> "
|
||||
)
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
SET(CMAKE_D_CREATE_STATIC_LIBRARY
|
||||
"<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS> "
|
||||
"<CMAKE_RANLIB> <TARGET> "
|
||||
)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
SET(CMAKE_D_CREATE_STATIC_LIBRARY
|
||||
"<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>"
|
||||
"<CMAKE_RANLIB> <TARGET>")
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
SET(CMAKE_D_CREATE_STATIC_LIBRARY
|
||||
"${DMD_LIBRARIAN} -c -p256 <TARGET> <OBJECTS>")
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
ENDIF(NOT CMAKE_D_CREATE_STATIC_LIBRARY)
|
||||
|
||||
# compile a D file into an object file
|
||||
IF(NOT CMAKE_D_COMPILE_OBJECT)
|
||||
SET(CMAKE_D_COMPILE_OBJECT
|
||||
"<CMAKE_D_COMPILER> <FLAGS> ${CMAKE_OUTPUT_D_FLAG}<OBJECT> -c <SOURCE>")
|
||||
ENDIF(NOT CMAKE_D_COMPILE_OBJECT)
|
||||
|
||||
IF(NOT CMAKE_D_LINK_EXECUTABLE)
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(CMAKE_D_LINK_EXECUTABLE
|
||||
"<CMAKE_D_COMPILER> <FLAGS> <CMAKE_D_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> ${CMAKE_OUTPUT_D_FLAG}<TARGET> <LINK_LIBRARIES> ${DSTDLIB_FLAGS} ${DSTDLIB_TYPE}")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
SET(CMAKE_D_LINK_EXECUTABLE
|
||||
"gcc ${DLINK_FLAGS} <CMAKE_D_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES> -lpthread -lm ${DSTDLIB_FLAGS}")
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
SET(CMAKE_D_LINK_EXECUTABLE
|
||||
"<CMAKE_D_COMPILER> <FLAGS> <CMAKE_D_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> ${CMAKE_OUTPUT_D_FLAG}<TARGET> <LINK_LIBRARIES>")
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
ENDIF(NOT CMAKE_D_LINK_EXECUTABLE)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
CMAKE_D_FLAGS
|
||||
CMAKE_D_FLAGS_DEBUG
|
||||
CMAKE_D_FLAGS_MINSIZEREL
|
||||
CMAKE_D_FLAGS_RELEASE
|
||||
CMAKE_D_FLAGS_RELWITHDEBINFO
|
||||
)
|
||||
SET(CMAKE_D_INFORMATION_LOADED 1)
|
108
tests/FullSkeleton/cmake/Modules/CMakeDetermineDCompiler.cmake
Normal file
108
tests/FullSkeleton/cmake/Modules/CMakeDetermineDCompiler.cmake
Normal file
|
@ -0,0 +1,108 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 CMakeDetermineCCompiler.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
# determine the compiler to use for D programs
|
||||
# NOTE, a generator may set CMAKE_D_COMPILER before
|
||||
# loading this file to force a compiler.
|
||||
# use environment variable DC first if defined by user, next use
|
||||
# the cmake variable CMAKE_GENERATOR_D which can be defined by a generator
|
||||
# as a default compiler
|
||||
|
||||
IF(NOT CMAKE_D_COMPILER)
|
||||
|
||||
# prefer the environment variable DC
|
||||
IF($ENV{DC} MATCHES ".+")
|
||||
GET_FILENAME_COMPONENT(CMAKE_D_COMPILER_INIT $ENV{DC} PROGRAM PROGRAM_ARGS CMAKE_D_FLAGS_ENV_INIT)
|
||||
IF(CMAKE_D_FLAGS_ENV_INIT)
|
||||
SET(CMAKE_D_COMPILER_ARG1 "${CMAKE_D_FLAGS_ENV_INIT}" CACHE STRING "First argument to D compiler")
|
||||
ENDIF(CMAKE_D_FLAGS_ENV_INIT)
|
||||
IF(EXISTS ${CMAKE_D_COMPILER_INIT})
|
||||
ELSE(EXISTS ${CMAKE_D_COMPILER_INIT})
|
||||
MESSAGE(FATAL_ERROR "Could not find compiler set in environment variable C:\n$ENV{DC}.")
|
||||
ENDIF(EXISTS ${CMAKE_D_COMPILER_INIT})
|
||||
ENDIF($ENV{DC} MATCHES ".+")
|
||||
|
||||
# next try prefer the compiler specified by the generator
|
||||
IF(CMAKE_GENERATOR_D)
|
||||
IF(NOT CMAKE_D_COMPILER_INIT)
|
||||
SET(CMAKE_D_COMPILER_INIT ${CMAKE_GENERATOR_D})
|
||||
ENDIF(NOT CMAKE_D_COMPILER_INIT)
|
||||
ENDIF(CMAKE_GENERATOR_D)
|
||||
|
||||
# finally list compilers to try
|
||||
IF(CMAKE_D_COMPILER_INIT)
|
||||
SET(CMAKE_D_COMPILER_LIST ${CMAKE_D_COMPILER_INIT})
|
||||
ELSE(CMAKE_D_COMPILER_INIT)
|
||||
SET(CMAKE_D_COMPILER_LIST gdc dmd)
|
||||
ENDIF(CMAKE_D_COMPILER_INIT)
|
||||
|
||||
# Find the compiler.
|
||||
FIND_PROGRAM(CMAKE_D_COMPILER NAMES ${CMAKE_D_COMPILER_LIST} DOC "C compiler")
|
||||
IF(CMAKE_D_COMPILER_INIT AND NOT CMAKE_D_COMPILER)
|
||||
SET(CMAKE_D_COMPILER "${CMAKE_D_COMPILER_INIT}" CACHE FILEPATH "C compiler" FORCE)
|
||||
ENDIF(CMAKE_D_COMPILER_INIT AND NOT CMAKE_D_COMPILER)
|
||||
ENDIF(NOT CMAKE_D_COMPILER)
|
||||
MARK_AS_ADVANCED(CMAKE_D_COMPILER)
|
||||
GET_FILENAME_COMPONENT(COMPILER_LOCATION "${CMAKE_D_COMPILER}" PATH)
|
||||
|
||||
FIND_PROGRAM(CMAKE_AR NAMES ar PATHS ${COMPILER_LOCATION} )
|
||||
|
||||
FIND_PROGRAM(CMAKE_RANLIB NAMES ranlib)
|
||||
IF(NOT CMAKE_RANLIB)
|
||||
SET(CMAKE_RANLIB : CACHE INTERNAL "noop for ranlib")
|
||||
ENDIF(NOT CMAKE_RANLIB)
|
||||
MARK_AS_ADVANCED(CMAKE_RANLIB)
|
||||
|
||||
# do not test for GNU if the generator is visual studio
|
||||
IF(${CMAKE_GENERATOR} MATCHES "Visual Studio")
|
||||
SET(CMAKE_COMPILER_IS_GDC_RUN 1)
|
||||
ENDIF(${CMAKE_GENERATOR} MATCHES "Visual Studio")
|
||||
|
||||
|
||||
IF(NOT CMAKE_COMPILER_IS_GDC_RUN)
|
||||
# test to see if the d compiler is gdc
|
||||
SET(CMAKE_COMPILER_IS_GDC_RUN 1)
|
||||
IF("${CMAKE_D_COMPILER}" MATCHES ".*gdc.*" )
|
||||
SET(CMAKE_COMPILER_IS_GDC 1)
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Determining if the D compiler is GDC succeeded with "
|
||||
"the following output:\n${CMAKE_D_COMPILER}\n\n")
|
||||
EXEC_PROGRAM(${CMAKE_D_COMPILER} ARGS "--version" OUTPUT_VARIABLE CMAKE_COMPILER_OUTPUT)
|
||||
IF("${CMAKE_COMPILER_OUTPUT}" MATCHES ".*mingw.*" )
|
||||
SET(CMAKE_COMPILER_IS_MINGW 1)
|
||||
ENDIF("${CMAKE_COMPILER_OUTPUT}" MATCHES ".*mingw.*" )
|
||||
IF("${CMAKE_COMPILER_OUTPUT}" MATCHES ".*THIS_IS_CYGWIN.*" )
|
||||
SET(CMAKE_COMPILER_IS_CYGWIN 1)
|
||||
ENDIF("${CMAKE_COMPILER_OUTPUT}" MATCHES ".*THIS_IS_CYGWIN.*" )
|
||||
ELSE("${CMAKE_D_COMPILER}" MATCHES ".*dmd.*" )
|
||||
SET(CMAKE_COMPILER_IS_DMD 1)
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Determining if the D compiler is DMD succeeded with "
|
||||
"the following output:\n${CMAKE_D_COMPILER}\n\n")
|
||||
ENDIF("${CMAKE_D_COMPILER}" MATCHES ".*gdc.*" )
|
||||
ENDIF(NOT CMAKE_COMPILER_IS_GDC_RUN)
|
||||
|
||||
|
||||
# configure variables set in this file for fast reload later on
|
||||
IF(EXISTS ${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in)
|
||||
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in
|
||||
"${CMAKE_PLATFORM_ROOT_BIN}/CMakeDCompiler.cmake" IMMEDIATE)
|
||||
ELSE(EXISTS ${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in)
|
||||
CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeDCompiler.cmake.in
|
||||
"${CMAKE_PLATFORM_ROOT_BIN}/CMakeDCompiler.cmake" IMMEDIATE)
|
||||
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in)
|
||||
|
||||
MARK_AS_ADVANCED(CMAKE_AR)
|
||||
SET(CMAKE_D_COMPILER_ENV_VAR "DC")
|
||||
|
175
tests/FullSkeleton/cmake/Modules/CMakeTestDCompiler.cmake
Normal file
175
tests/FullSkeleton/cmake/Modules/CMakeTestDCompiler.cmake
Normal file
|
@ -0,0 +1,175 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 CMakeTestCCompiler.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
# This file is used by EnableLanguage in cmGlobalGenerator to
|
||||
# determine that that selected D compiler can actually compile
|
||||
# and link the most basic of programs. If not, a fatal error
|
||||
# is set and cmake stops processing commands and will not generate
|
||||
# any makefiles or projects.
|
||||
|
||||
IF(NOT CMAKE_D_COMPILER_WORKS)
|
||||
MESSAGE(STATUS "Check for working D compiler: ${CMAKE_D_COMPILER}")
|
||||
FILE(WRITE ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
"int main(char[][] args)\n"
|
||||
"{return args.sizeof-1;}\n")
|
||||
STRING(REGEX MATCH "dmd" DMDTEST "${CMAKE_D_COMPILER}")
|
||||
IF(DMDTEST STREQUAL "dmd")
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_COMPILER_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_COMPILER_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
CMAKE_FLAGS "-DLINK_LIBRARIES=${D_PATH}/lib/libphobos.a"
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
ELSE(DMDTEST STREQUAL "dmd")
|
||||
TRY_COMPILE(CMAKE_D_COMPILER_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ENDIF(DMDTEST STREQUAL "dmd")
|
||||
SET(C_TEST_WAS_RUN 1)
|
||||
ENDIF(NOT CMAKE_D_COMPILER_WORKS)
|
||||
|
||||
IF(NOT CMAKE_D_COMPILER_WORKS)
|
||||
MESSAGE(STATUS "Check for working D compiler: ${CMAKE_D_COMPILER} -- broken")
|
||||
message(STATUS "To force a specific D compiler set the DC environment variable")
|
||||
message(STATUS " ie - export DC=\"/opt/dmd/bin/dmd\"")
|
||||
message(STATUS "If the D path is not set please use the D_PATH variable")
|
||||
message(STATUS " ie - export D_PATH=\"/opt/dmd\"")
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
||||
"Determining if the D compiler works failed with "
|
||||
"the following output:\n${OUTPUT}\n\n")
|
||||
MESSAGE(FATAL_ERROR "The D compiler \"${CMAKE_D_COMPILER}\" "
|
||||
"is not able to compile a simple test program.\nIt fails "
|
||||
"with the following output:\n ${OUTPUT}\n\n"
|
||||
"CMake will not be able to correctly generate this project.")
|
||||
ELSE(NOT CMAKE_D_COMPILER_WORKS)
|
||||
IF(C_TEST_WAS_RUN)
|
||||
MESSAGE(STATUS "Check for working D compiler: ${CMAKE_D_COMPILER} -- works")
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Determining if the D compiler works passed with "
|
||||
"the following output:\n${OUTPUT}\n\n")
|
||||
ENDIF(C_TEST_WAS_RUN)
|
||||
SET(CMAKE_D_COMPILER_WORKS 1 CACHE INTERNAL "")
|
||||
# re-configure this file CMakeDCompiler.cmake so that it gets
|
||||
# the value for CMAKE_SIZEOF_VOID_P
|
||||
# configure variables set in this file for fast reload later on
|
||||
IF(EXISTS ${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in)
|
||||
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in
|
||||
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeDCompiler.cmake IMMEDIATE)
|
||||
ELSE(EXISTS ${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in)
|
||||
CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeDCompiler.cmake.in
|
||||
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeDCompiler.cmake IMMEDIATE)
|
||||
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/cmake/Modules/CMakeDCompiler.cmake.in)
|
||||
ENDIF(NOT CMAKE_D_COMPILER_WORKS)
|
||||
|
||||
IF(NOT CMAKE_D_PHOBOS_WORKS)
|
||||
MESSAGE(STATUS "Check for working Phobos")
|
||||
FILE(WRITE ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
"import std.stdio;\n"
|
||||
"int main(char[][] args)\n"
|
||||
"{ writefln(\"%s\", args[0]); return args.sizeof-1;}\n")
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_PHOBOS_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
#CMAKE_FLAGS "-DLINK_LIBRARIES=gphobos"
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_PHOBOS_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
CMAKE_FLAGS "-DLINK_LIBRARIES=gphobos"
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_PHOBOS_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_PHOBOS_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
CMAKE_FLAGS "-DLINK_LIBRARIES=${D_PATH}/lib/libphobos.a"
|
||||
COMPILE_DEFINITIONS "-I${D_PATH}/include -I${D_PATH}/import"
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(C_TEST_WAS_RUN 1)
|
||||
ENDIF(NOT CMAKE_D_PHOBOS_WORKS)
|
||||
|
||||
IF(NOT CMAKE_D_PHOBOS_WORKS)
|
||||
MESSAGE(STATUS "Check for working Phobos -- unavailable")
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
||||
"Determining if Phobos works failed with "
|
||||
"the following output:\n${OUTPUT}\n\n")
|
||||
#MESSAGE(FATAL_ERROR "Phobos does not work")
|
||||
ELSE(NOT CMAKE_D_PHOBOS_WORKS)
|
||||
IF(C_TEST_WAS_RUN)
|
||||
MESSAGE(STATUS "Check for working Phobos -- works")
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Determining if Phobos works passed with "
|
||||
"the following output:\n${OUTPUT}\n\n")
|
||||
ENDIF(C_TEST_WAS_RUN)
|
||||
SET(CMAKE_D_PHOBOS_WORKS 1 CACHE INTERNAL "")
|
||||
ENDIF(NOT CMAKE_D_PHOBOS_WORKS)
|
||||
|
||||
IF(NOT CMAKE_D_TANGO_WORKS)
|
||||
MESSAGE(STATUS "Check for working Tango")
|
||||
FILE(WRITE ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
"import tango.io.Stdout;"
|
||||
"int main(char[][] args)\n"
|
||||
"{Stdout.newline();return args.sizeof-1;}\n")
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
TRY_COMPILE(CMAKE_D_TANGO_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
CMAKE_FLAGS "-DLINK_LIBRARIES=gtango"
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
IF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_TANGO_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
TRY_COMPILE(CMAKE_D_TANGO_WORKS ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/testDCompiler.d
|
||||
CMAKE_FLAGS "-DLINK_LIBRARIES=${D_PATH}/lib/libtango.a;${D_PATH}/lib/libphobos.a"
|
||||
COMPILE_DEFINITIONS "-I${D_PATH}/include -I${D_PATH}/import"
|
||||
OUTPUT_VARIABLE OUTPUT)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
SET(C_TEST_WAS_RUN 1)
|
||||
ENDIF(NOT CMAKE_D_TANGO_WORKS)
|
||||
|
||||
IF(NOT CMAKE_D_TANGO_WORKS)
|
||||
MESSAGE(STATUS "Check for working Tango -- unavailable")
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
||||
"Determining if Tango works failed with "
|
||||
"the following output:\n${OUTPUT}\n\n")
|
||||
#MESSAGE(FATAL_ERROR "Tango does not work: \n${OUTPUT}\n\n")
|
||||
ELSE(NOT CMAKE_D_TANGO_WORKS)
|
||||
IF(C_TEST_WAS_RUN)
|
||||
MESSAGE(STATUS "Check for working Tango -- works")
|
||||
FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Determining if Tango works passed with "
|
||||
"the following output:\n${OUTPUT}\n\n")
|
||||
ENDIF(C_TEST_WAS_RUN)
|
||||
SET(CMAKE_D_TANGO_WORKS 1 CACHE INTERNAL "")
|
||||
ENDIF(NOT CMAKE_D_TANGO_WORKS)
|
||||
|
||||
# if both tango and phobos are selected try to choose which one is available
|
||||
IF(CMAKE_D_USE_TANGO AND CMAKE_D_USE_PHOBOS)
|
||||
MESSAGE(FATAL_ERROR "Tango AND Phobos selected, please choose one or the other!")
|
||||
ENDIF(CMAKE_D_USE_TANGO AND CMAKE_D_USE_PHOBOS)
|
||||
|
||||
# ensure the user has the appropriate std lib available
|
||||
IF(CMAKE_D_USE_TANGO AND NOT CMAKE_D_TANGO_WORKS)
|
||||
MESSAGE(FATAL_ERROR "Tango is required for this project, but it is not available!")
|
||||
ENDIF(CMAKE_D_USE_TANGO AND NOT CMAKE_D_TANGO_WORKS)
|
||||
|
||||
IF(CMAKE_D_USE_PHOBOS AND NOT CMAKE_D_PHOBOS_WORKS)
|
||||
MESSAGE(FATAL_ERROR "Phobos is required for this project, but it is not available!")
|
||||
ENDIF(CMAKE_D_USE_PHOBOS AND NOT CMAKE_D_PHOBOS_WORKS)
|
||||
|
58
tests/FullSkeleton/cmake/Modules/CPackConfig.cmake
Normal file
58
tests/FullSkeleton/cmake/Modules/CPackConfig.cmake
Normal file
|
@ -0,0 +1,58 @@
|
|||
# This file will be configured to contain variables for CPack. These variables
|
||||
# should be set in the CMake list file of the project before CPack module is
|
||||
# included. Example variables are:
|
||||
# CPACK_GENERATOR - Generator used to create package
|
||||
# CPACK_INSTALL_CMAKE_PROJECTS - For each project (path, name, component)
|
||||
# CPACK_CMAKE_GENERATOR - CMake Generator used for the projects
|
||||
# CPACK_INSTALL_COMMANDS - Extra commands to install components
|
||||
# CPACK_INSTALL_DIRECTORIES - Extra directories to install
|
||||
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
|
||||
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
|
||||
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
|
||||
# CPACK_PACKAGE_FILE_NAME - Name of the package generated
|
||||
# CPACK_PACKAGE_ICON - Icon used for the package
|
||||
# CPACK_PACKAGE_INSTALL_DIRECTORY - Name of directory for the installer
|
||||
# CPACK_PACKAGE_NAME - Package project name
|
||||
# CPACK_PACKAGE_VENDOR - Package project vendor
|
||||
# CPACK_PACKAGE_VERSION - Package project version
|
||||
# CPACK_PACKAGE_VERSION_MAJOR - Package project version (major)
|
||||
# CPACK_PACKAGE_VERSION_MINOR - Package project version (minor)
|
||||
# CPACK_PACKAGE_VERSION_PATCH - Package project version (patch)
|
||||
|
||||
# There are certain generator specific ones
|
||||
|
||||
# NSIS Generator:
|
||||
# CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Name of the registry key for the installer
|
||||
# CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra commands used during uninstall
|
||||
# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra commands used during install
|
||||
|
||||
|
||||
SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
|
||||
SET(CPACK_GENERATOR "TGZ;TBZ2;ZIP")
|
||||
SET(CPACK_INSTALL_CMAKE_PROJECTS "/home/tim/projects/mmorlg.D/cmake/Modules;mmorlg;ALL;/")
|
||||
SET(CPACK_MODULE_PATH "/home/tim/projects/mmorlg.D/cmake/Modules")
|
||||
SET(CPACK_NSIS_DISPLAY_NAME "mmorlg 0.1.0")
|
||||
SET(CPACK_OUTPUT_CONFIG_FILE "/home/tim/projects/mmorlg.D/cmake/Modules/CPackConfig.cmake")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_FILE "/home/tim/projects/mmorlg.D/README")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "mmorlg")
|
||||
SET(CPACK_PACKAGE_EXECUTABLES "mmorlg;mmorlg")
|
||||
SET(CPACK_PACKAGE_FILE_NAME "mmorlg-0.1-linux-i686")
|
||||
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "mmorlg 0.1.0")
|
||||
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "mmorlg 0.1.0")
|
||||
SET(CPACK_PACKAGE_NAME "mmorlg")
|
||||
SET(CPACK_PACKAGE_VENDOR "mmorlg")
|
||||
SET(CPACK_PACKAGE_VERSION "0.1.0")
|
||||
SET(CPACK_PACKAGE_VERSION_MAJOR "0")
|
||||
SET(CPACK_PACKAGE_VERSION_MINOR "1")
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "0")
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "/home/tim/projects/mmorlg.D/COPYING")
|
||||
SET(CPACK_RESOURCE_FILE_README "/usr/share/cmake/Templates/CPack.GenericDescription.txt")
|
||||
SET(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake/Templates/CPack.GenericWelcome.txt")
|
||||
SET(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
|
||||
SET(CPACK_SOURCE_IGNORE_FILES "\\.svn/;/debug/;/optimized/;/documentation/;[a-z]*\\.kdev*;[a-z]*\\.tag;[a-z]*\\.pyc")
|
||||
SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/tim/projects/mmorlg.D/cmake/Modules/CPackSourceConfig.cmake")
|
||||
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "mmorlg-0.1")
|
||||
SET(CPACK_SOURCE_STRIP_FILES "")
|
||||
SET(CPACK_STRIP_FILES "mmorlg/mmorlg")
|
||||
SET(CPACK_SYSTEM_NAME "Linux")
|
||||
SET(CPACK_TOPLEVEL_TAG "Linux")
|
62
tests/FullSkeleton/cmake/Modules/CPackSourceConfig.cmake
Normal file
62
tests/FullSkeleton/cmake/Modules/CPackSourceConfig.cmake
Normal file
|
@ -0,0 +1,62 @@
|
|||
# This file will be configured to contain variables for CPack. These variables
|
||||
# should be set in the CMake list file of the project before CPack module is
|
||||
# included. Example variables are:
|
||||
# CPACK_GENERATOR - Generator used to create package
|
||||
# CPACK_INSTALL_CMAKE_PROJECTS - For each project (path, name, component)
|
||||
# CPACK_CMAKE_GENERATOR - CMake Generator used for the projects
|
||||
# CPACK_INSTALL_COMMANDS - Extra commands to install components
|
||||
# CPACK_INSTALL_DIRECTORIES - Extra directories to install
|
||||
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
|
||||
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
|
||||
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
|
||||
# CPACK_PACKAGE_FILE_NAME - Name of the package generated
|
||||
# CPACK_PACKAGE_ICON - Icon used for the package
|
||||
# CPACK_PACKAGE_INSTALL_DIRECTORY - Name of directory for the installer
|
||||
# CPACK_PACKAGE_NAME - Package project name
|
||||
# CPACK_PACKAGE_VENDOR - Package project vendor
|
||||
# CPACK_PACKAGE_VERSION - Package project version
|
||||
# CPACK_PACKAGE_VERSION_MAJOR - Package project version (major)
|
||||
# CPACK_PACKAGE_VERSION_MINOR - Package project version (minor)
|
||||
# CPACK_PACKAGE_VERSION_PATCH - Package project version (patch)
|
||||
|
||||
# There are certain generator specific ones
|
||||
|
||||
# NSIS Generator:
|
||||
# CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Name of the registry key for the installer
|
||||
# CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra commands used during uninstall
|
||||
# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra commands used during install
|
||||
|
||||
|
||||
SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
|
||||
SET(CPACK_GENERATOR "TGZ;TBZ2")
|
||||
SET(CPACK_IGNORE_FILES "\\.svn/;/debug/;/optimized/;/documentation/;[a-z]*\\.kdev*;[a-z]*\\.tag;[a-z]*\\.pyc")
|
||||
SET(CPACK_INSTALLED_DIRECTORIES "/home/tim/projects/mmorlg.D;/")
|
||||
SET(CPACK_INSTALL_CMAKE_PROJECTS "")
|
||||
SET(CPACK_MODULE_PATH "/home/tim/projects/mmorlg.D/cmake/Modules")
|
||||
SET(CPACK_NSIS_DISPLAY_NAME "mmorlg 0.1.0")
|
||||
SET(CPACK_OUTPUT_CONFIG_FILE "/home/tim/projects/mmorlg.D/cmake/Modules/CPackConfig.cmake")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_FILE "/home/tim/projects/mmorlg.D/README")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "mmorlg")
|
||||
SET(CPACK_PACKAGE_EXECUTABLES "mmorlg;mmorlg")
|
||||
SET(CPACK_PACKAGE_FILE_NAME "mmorlg-0.1")
|
||||
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "mmorlg 0.1.0")
|
||||
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "mmorlg 0.1.0")
|
||||
SET(CPACK_PACKAGE_NAME "mmorlg")
|
||||
SET(CPACK_PACKAGE_VENDOR "mmorlg")
|
||||
SET(CPACK_PACKAGE_VERSION "0.1.0")
|
||||
SET(CPACK_PACKAGE_VERSION_MAJOR "0")
|
||||
SET(CPACK_PACKAGE_VERSION_MINOR "1")
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "0")
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "/home/tim/projects/mmorlg.D/COPYING")
|
||||
SET(CPACK_RESOURCE_FILE_README "/usr/share/cmake/Templates/CPack.GenericDescription.txt")
|
||||
SET(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake/Templates/CPack.GenericWelcome.txt")
|
||||
SET(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
|
||||
SET(CPACK_SOURCE_IGNORE_FILES "\\.svn/;/debug/;/optimized/;/documentation/;[a-z]*\\.kdev*;[a-z]*\\.tag;[a-z]*\\.pyc")
|
||||
SET(CPACK_SOURCE_INSTALLED_DIRECTORIES "/home/tim/projects/mmorlg.D;/")
|
||||
SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/tim/projects/mmorlg.D/cmake/Modules/CPackSourceConfig.cmake")
|
||||
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "mmorlg-0.1")
|
||||
SET(CPACK_SOURCE_STRIP_FILES "")
|
||||
SET(CPACK_SOURCE_TOPLEVEL_TAG "Linux-Source")
|
||||
SET(CPACK_STRIP_FILES "")
|
||||
SET(CPACK_SYSTEM_NAME "Linux")
|
||||
SET(CPACK_TOPLEVEL_TAG "Linux-Source")
|
|
@ -0,0 +1,8 @@
|
|||
# define system dependent compiler flags
|
||||
|
||||
IF(CMAKE_COMPILER_IS_GDC)
|
||||
add_definitions(-DHAVE_CONFIG_H -Wall -Werror)
|
||||
ELSE(CMAKE_COMPILER_IS_GDC)
|
||||
add_definitions(-version=HaveConfig)
|
||||
ENDIF(CMAKE_COMPILER_IS_GDC)
|
||||
|
124
tests/FullSkeleton/cmake/Modules/DefineInstallationPaths.cmake
Normal file
124
tests/FullSkeleton/cmake/Modules/DefineInstallationPaths.cmake
Normal file
|
@ -0,0 +1,124 @@
|
|||
if (UNIX)
|
||||
IF (NOT APPLICATION_NAME)
|
||||
MESSAGE(STATUS "${PROJECT_NAME} is used as APPLICATION_NAME")
|
||||
SET(APPLICATION_NAME ${PROJECT_NAME})
|
||||
ENDIF (NOT APPLICATION_NAME)
|
||||
|
||||
# Suffix for Linux
|
||||
SET(LIB_SUFFIX
|
||||
CACHE STRING "Define suffix of directory name (32/64)"
|
||||
)
|
||||
|
||||
SET(EXEC_INSTALL_PREFIX
|
||||
"${CMAKE_INSTALL_PREFIX}"
|
||||
CACHE PATH "Base directory for executables and libraries"
|
||||
FORCE
|
||||
)
|
||||
SET(SHARE_INSTALL_PREFIX
|
||||
"${CMAKE_INSTALL_PREFIX}/share"
|
||||
CACHE PATH "Base directory for files which go to share/"
|
||||
FORCE
|
||||
)
|
||||
SET(DATA_INSTALL_PREFIX
|
||||
"${SHARE_INSTALL_PREFIX}/${APPLICATION_NAME}"
|
||||
CACHE PATH "The parent directory where applications can install their data" FORCE)
|
||||
|
||||
# The following are directories where stuff will be installed to
|
||||
SET(BIN_INSTALL_DIR
|
||||
"${EXEC_INSTALL_PREFIX}/bin"
|
||||
CACHE PATH "The ${APPLICATION_NAME} binary install dir (default prefix/bin)"
|
||||
FORCE
|
||||
)
|
||||
SET(SBIN_INSTALL_DIR
|
||||
"${EXEC_INSTALL_PREFIX}/sbin"
|
||||
CACHE PATH "The ${APPLICATION_NAME} sbin install dir (default prefix/sbin)"
|
||||
FORCE
|
||||
)
|
||||
SET(LIB_INSTALL_DIR
|
||||
"${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}"
|
||||
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is prefix/lib)"
|
||||
FORCE
|
||||
)
|
||||
SET(LIBEXEC_INSTALL_DIR
|
||||
"${EXEC_INSTALL_PREFIX}/libexec"
|
||||
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is prefix/libexec)"
|
||||
FORCE
|
||||
)
|
||||
SET(PLUGIN_INSTALL_DIR
|
||||
"${LIB_INSTALL_DIR}/${APPLICATION_NAME}"
|
||||
CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is prefix/lib/${APPLICATION_NAME})"
|
||||
FORCE
|
||||
)
|
||||
SET(INCLUDE_INSTALL_DIR
|
||||
"${CMAKE_INSTALL_PREFIX}/include"
|
||||
CACHE PATH "The subdirectory to the header prefix (default prefix/include)"
|
||||
FORCE
|
||||
)
|
||||
|
||||
SET(DATA_INSTALL_DIR
|
||||
"${DATA_INSTALL_PREFIX}"
|
||||
CACHE PATH "The parent directory where applications can install their data (default prefix/share/${APPLICATION_NAME})"
|
||||
FORCE
|
||||
)
|
||||
SET(HTML_INSTALL_DIR
|
||||
"${DATA_INSTALL_PREFIX}/doc/HTML"
|
||||
CACHE PATH "The HTML install dir for documentation (default data/doc/html)"
|
||||
FORCE
|
||||
)
|
||||
SET(ICON_INSTALL_DIR
|
||||
"${DATA_INSTALL_PREFIX}/icons"
|
||||
CACHE PATH "The icon install dir (default data/icons/)"
|
||||
FORCE
|
||||
)
|
||||
SET(SOUND_INSTALL_DIR
|
||||
"${DATA_INSTALL_PREFIX}/sounds"
|
||||
CACHE PATH "The install dir for sound files (default data/sounds)"
|
||||
FORCE
|
||||
)
|
||||
|
||||
SET(LOCALE_INSTALL_DIR
|
||||
"${SHARE_INSTALL_PREFIX}/locale"
|
||||
CACHE PATH "The install dir for translations (default prefix/share/locale)"
|
||||
FORCE
|
||||
)
|
||||
|
||||
SET(XDG_APPS_DIR
|
||||
"${SHARE_INSTALL_PREFIX}/applications/"
|
||||
CACHE PATH "The XDG apps dir"
|
||||
FORCE
|
||||
)
|
||||
SET(XDG_DIRECTORY_DIR
|
||||
"${SHARE_INSTALL_PREFIX}/desktop-directories"
|
||||
CACHE PATH "The XDG directory"
|
||||
FORCE
|
||||
)
|
||||
|
||||
SET(SYSCONF_INSTALL_DIR
|
||||
"${EXEC_INSTALL_PREFIX}/etc"
|
||||
CACHE PATH "The ${APPLICATION_NAME} sysconfig install dir (default prefix/etc)"
|
||||
FORCE
|
||||
)
|
||||
SET(MAN_INSTALL_DIR
|
||||
"${SHARE_INSTALL_PREFIX}/man"
|
||||
CACHE PATH "The ${APPLICATION_NAME} man install dir (default prefix/man)"
|
||||
FORCE
|
||||
)
|
||||
SET(INFO_INSTALL_DIR
|
||||
"${SHARE_INSTALL_PREFIX}/info"
|
||||
CACHE PATH "The ${APPLICATION_NAME} info install dir (default prefix/info)"
|
||||
FORCE
|
||||
)
|
||||
endif (UNIX)
|
||||
|
||||
if (WIN32)
|
||||
# Same same
|
||||
SET(BIN_INSTALL_DIR .)
|
||||
SET(SBIN_INSTALL_DIR .)
|
||||
SET(LIB_INSTALL_DIR .)
|
||||
SET(PLUGIN_INSTALL_DIR plugins)
|
||||
SET(HTML_INSTALL_DIR doc/HTML)
|
||||
SET(ICON_INSTALL_DIR .)
|
||||
SET(SOUND_INSTALL_DIR .)
|
||||
SET(LOCALE_INSTALL_DIR lang)
|
||||
endif (WIN32)
|
||||
|
31
tests/FullSkeleton/cmake/Modules/DefineProjectDefaults.cmake
Normal file
31
tests/FullSkeleton/cmake/Modules/DefineProjectDefaults.cmake
Normal file
|
@ -0,0 +1,31 @@
|
|||
# Required cmake version
|
||||
cmake_minimum_required(VERSION 2.4.3)
|
||||
|
||||
# Always include srcdir and builddir in include path
|
||||
# This saves typing ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY} in
|
||||
# about every subdir
|
||||
# since cmake 2.4.0
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
# Put the include dirs which are in the source or build tree
|
||||
# before all other include dirs, so the headers in the sources
|
||||
# are prefered over the already installed ones
|
||||
# since cmake 2.4.1
|
||||
set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
|
||||
|
||||
# Use colored output
|
||||
# since cmake 2.4.0
|
||||
set(CMAKE_COLOR_MAKEFILE ON)
|
||||
|
||||
# Define the generic version of the libraries here
|
||||
set(GENERIC_LIB_VERSION "2.0.0")
|
||||
set(GENERIC_LIB_SOVERSION "2")
|
||||
|
||||
# Set the default build type to release with debug info
|
||||
if (NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE Debug
|
||||
CACHE STRING
|
||||
"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel."
|
||||
FORCE
|
||||
)
|
||||
endif (NOT CMAKE_BUILD_TYPE)
|
43
tests/FullSkeleton/cmake/Modules/FindGDCPath.cmake
Normal file
43
tests/FullSkeleton/cmake/Modules/FindGDCPath.cmake
Normal file
|
@ -0,0 +1,43 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
|
||||
|
||||
# - Find GDC Include Path
|
||||
#
|
||||
# GDC_INCLUDE_PATH = path to where object.d is found
|
||||
#
|
||||
|
||||
SET(GDC_POSSIBLE_INCLUDE_PATHS
|
||||
/usr/include/d/4.2.1
|
||||
/usr/include/d/4.2.0
|
||||
/usr/include/d/4.1.2
|
||||
/usr/include/d/4.1.1
|
||||
/usr/include/d/4.1.0
|
||||
/usr/include/d/4.0.4
|
||||
/usr/include/d/4.0.3
|
||||
/usr/include/d/4.0.2
|
||||
/usr/include/d/4.0.1
|
||||
/usr/include/d/4.0.0
|
||||
/usr/include/d/4.0.6
|
||||
/usr/include/d/4.0.5
|
||||
/usr/include/d/3.4.4
|
||||
/usr/include/d/3.4.3
|
||||
/usr/include/d/3.4.2
|
||||
/usr/include/d/3.4.1
|
||||
/usr/include/d/3.4.0
|
||||
)
|
||||
|
||||
FIND_PATH(GDC_INCLUDE_PATH object.d
|
||||
${GDC_POSSIBLE_INCLUDE_PATHS})
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
GDC_INCLUDE_PATH
|
||||
)
|
453
tests/FullSkeleton/cmake/Modules/FindGTK2.cmake
Normal file
453
tests/FullSkeleton/cmake/Modules/FindGTK2.cmake
Normal file
|
@ -0,0 +1,453 @@
|
|||
# - Try to find GTK2
|
||||
# Once done this will define
|
||||
#
|
||||
# GTK2_FOUND - System has Boost
|
||||
# GTK2_INCLUDE_DIRS - GTK2 include directory
|
||||
# GTK2_LIBRARIES - Link these to use GTK2
|
||||
# GTK2_LIBRARY_DIRS - The path to where the GTK2 library files are.
|
||||
# GTK2_DEFINITIONS - Compiler switches required for using GTK2
|
||||
#
|
||||
# Copyright (c) 2007 Andreas Schneider <mail@cynapses.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the New
|
||||
# BSD license.
|
||||
# For details see
|
||||
# http://cmake-modules.googlecode.com/svn/trunk/Modules/COPYING-CMAKE-SCRIPTS
|
||||
#
|
||||
|
||||
set(GTK2_DEBUG ON)
|
||||
|
||||
macro(GTK2_DEBUG_MESSAGE _message)
|
||||
if (GTK2_DEBUG)
|
||||
message(STATUS "(DEBUG) ${_message}")
|
||||
endif (GTK2_DEBUG)
|
||||
endmacro(GTK2_DEBUG_MESSAGE _message)
|
||||
|
||||
if (GTK2_LIBRARIES AND GTK2_INCLUDE_DIRS)
|
||||
# in cache already
|
||||
set(GTK2_FOUND TRUE)
|
||||
else (GTK2_LIBRARIES AND GTK2_INCLUDE_DIRS)
|
||||
if (UNIX)
|
||||
# use pkg-config to get the directories and then use these values
|
||||
# in the FIND_PATH() and FIND_LIBRARY() calls
|
||||
include(UsePkgConfig)
|
||||
|
||||
pkgconfig(gtk+-2.0 _GTK2IncDir _GTK2LinkDir _GTK2LinkFlags _GTK2Cflags)
|
||||
|
||||
find_path(GTK2_GTK_INCLUDE_DIR
|
||||
NAMES
|
||||
gtk/gtk.h
|
||||
PATHS
|
||||
$ENV{GTK2_HOME}
|
||||
${_GTK2IncDir}
|
||||
/usr/include/gtk-2.0
|
||||
/usr/local/include/gtk-2.0
|
||||
/opt/include/gtk-2.0
|
||||
/opt/gnome/include/gtk-2.0
|
||||
/sw/include/gtk-2.0
|
||||
)
|
||||
gtk2_debug_message("GTK2_GTK_INCLUDE_DIR is ${GTK2_GTK_INCLUDE_DIR}")
|
||||
|
||||
# Some Linux distributions (e.g. Red Hat) have glibconfig.h
|
||||
# and glib.h in different directories, so we need to look
|
||||
# for both.
|
||||
# - Atanas Georgiev <atanas@cs.columbia.edu>
|
||||
pkgconfig(glib-2.0 _GLIB2IncDir _GLIB2LinkDir _GLIB2LinkFlags _GLIB2Cflags)
|
||||
pkgconfig(gmodule-2.0 _GMODULE2IncDir _GMODULE2LinkDir _GMODULE2LinkFlags _GMODULE2Cflags)
|
||||
|
||||
find_path(GTK2_GLIBCONFIG_INCLUDE_DIR
|
||||
NAMES
|
||||
glibconfig.h
|
||||
PATHS
|
||||
${_GLIB2IncDir}
|
||||
${_GMODULE2IncDir}
|
||||
/opt/gnome/lib64/glib-2.0/include
|
||||
/opt/gnome/lib/glib-2.0/include
|
||||
/opt/lib/glib-2.0/include
|
||||
/usr/lib64/glib-2.0/include
|
||||
/usr/lib/glib-2.0/include
|
||||
/sw/lib/glib-2.0/include
|
||||
)
|
||||
gtk2_debug_message("GTK2_GLIBCONFIG_INCLUDE_DIR is ${GTK2_GLIBCONFIG_INCLUDE_DIR}")
|
||||
|
||||
find_path(GTK2_GLIB_INCLUDE_DIR
|
||||
NAMES
|
||||
glib.h
|
||||
PATHS
|
||||
${_GLIB2IncDir}
|
||||
${_GMODULE2IncDir}
|
||||
/opt/include/glib-2.0
|
||||
/opt/gnome/include/glib-2.0
|
||||
/usr/include/glib-2.0
|
||||
/sw/include/glib-2.0
|
||||
)
|
||||
gtk2_debug_message("GTK2_GLIB_INCLUDE_DIR is ${GTK2_GLIB_INCLUDE_DIR}")
|
||||
|
||||
pkgconfig(gdk-2.0 _GDK2IncDir _GDK2LinkDir _GDK2LinkFlags _GDK2Cflags)
|
||||
|
||||
find_path(GTK2_GDK_INCLUDE_DIR
|
||||
NAMES
|
||||
gdkconfig.h
|
||||
PATHS
|
||||
${_GDK2IncDir}
|
||||
/opt/gnome/lib/gtk-2.0/include
|
||||
/opt/gnome/lib64/gtk-2.0/include
|
||||
/opt/lib/gtk-2.0/include
|
||||
/usr/lib/gtk-2.0/include
|
||||
/usr/lib64/gtk-2.0/include
|
||||
/sw/lib/gtk-2.0/include
|
||||
)
|
||||
gtk2_debug_message("GTK2_GDK_INCLUDE_DIR is ${GTK2_GDK_INCLUDE_DIR}")
|
||||
|
||||
find_path(GTK2_GTKGL_INCLUDE_DIR
|
||||
NAMES
|
||||
gtkgl/gtkglarea.h
|
||||
PATHS
|
||||
${_GLIB2IncDir}
|
||||
/usr/include
|
||||
/usr/local/include
|
||||
/usr/openwin/share/include
|
||||
/opt/gnome/include
|
||||
/opt/include
|
||||
/sw/include
|
||||
)
|
||||
gtk2_debug_message("GTK2_GTKGL_INCLUDE_DIR is ${GTK2_GTKGL_INCLUDE_DIR}")
|
||||
|
||||
pkgconfig(libglade-2.0 _GLADEIncDir _GLADELinkDir _GLADELinkFlags _GLADECflags)
|
||||
|
||||
find_path(GTK2_GLADE_INCLUDE_DIR
|
||||
NAMES
|
||||
glade/glade.h
|
||||
PATHS
|
||||
${_GLADEIncDir}
|
||||
/opt/gnome/include/libglade-2.0
|
||||
/usr/include/libglade-2.0
|
||||
/opt/include/libglade-2.0
|
||||
/sw/include/libglade-2.0
|
||||
)
|
||||
gtk2_debug_message("GTK2_GLADE_INCLUDE_DIR is ${GTK2_GLADE_INCLUDE_DIR}")
|
||||
|
||||
pkgconfig(pango _PANGOIncDir _PANGOLinkDir _PANGOLinkFlags _PANGOCflags)
|
||||
|
||||
find_path(GTK2_PANGO_INCLUDE_DIR
|
||||
NAMES
|
||||
pango/pango.h
|
||||
PATHS
|
||||
${_PANGOIncDir}
|
||||
/usr/include/pango-1.0
|
||||
/opt/gnome/include/pango-1.0
|
||||
/opt/include/pango-1.0
|
||||
/sw/include/pango-1.0
|
||||
)
|
||||
gtk2_debug_message("GTK2_PANGO_INCLUDE_DIR is ${GTK2_PANGO_INCLUDE_DIR}")
|
||||
|
||||
pkgconfig(cairo _CAIROIncDir _CAIROLinkDir _CAIROLinkFlags _CAIROCflags)
|
||||
|
||||
find_path(GTK2_CAIRO_INCLUDE_DIR
|
||||
NAMES
|
||||
cairo.h
|
||||
PATHS
|
||||
${_CAIROIncDir}
|
||||
/opt/gnome/include/cairo
|
||||
/usr/include
|
||||
/usr/include/cairo
|
||||
/opt/include
|
||||
/opt/include/cairo
|
||||
/sw/include
|
||||
/sw/include/cairo
|
||||
)
|
||||
gtk2_debug_message("GTK2_CAIRO_INCLUDE_DIR is ${GTK2_CAIRO_INCLUDE_DIR}")
|
||||
|
||||
pkgconfig(atk _ATKIncDir _ATKLinkDir _ATKLinkFlags _ATKCflags)
|
||||
|
||||
find_path(GTK2_ATK_INCLUDE_DIR
|
||||
NAMES
|
||||
atk/atk.h
|
||||
PATHS
|
||||
${_ATKIncDir}
|
||||
/opt/gnome/include/atk-1.0
|
||||
/usr/include/atk-1.0
|
||||
/opt/include/atk-1.0
|
||||
/sw/include/atk-1.0
|
||||
)
|
||||
gtk2_debug_message("GTK2_ATK_INCLUDE_DIR is ${GTK2_ATK_INCLUDE_DIR}")
|
||||
|
||||
find_library(GTK2_GTK_LIBRARY
|
||||
NAMES
|
||||
gtk-x11-2.0
|
||||
PATHS
|
||||
${_GTK2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GTK_LIBRARY is ${GTK2_GTK_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GDK_LIBRARY
|
||||
NAMES
|
||||
gdk-x11-2.0
|
||||
PATHS
|
||||
${_GDK2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GDK_LIBRARY is ${GTK2_GDK_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GDK_PIXBUF_LIBRARY
|
||||
NAMES
|
||||
gdk_pixbuf-2.0
|
||||
PATHS
|
||||
${_GDK2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GDK_PIXBUF_LIBRARY is ${GTK2_GDK_PIXBUF_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GMODULE_LIBRARY
|
||||
NAMES
|
||||
gmodule-2.0
|
||||
PATHS
|
||||
${_GMODULE2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GMODULE_LIBRARY is ${GTK2_GMODULE_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GTHREAD_LIBRARY
|
||||
NAMES
|
||||
gthread-2.0
|
||||
PATHS
|
||||
${_GTK2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GTHREAD_LIBRARY is ${GTK2_GTHREAD_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GOBJECT_LIBRARY
|
||||
NAMES
|
||||
gobject-2.0
|
||||
PATHS
|
||||
${_GTK2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GOBJECT_LIBRARY is ${GTK2_GOBJECT_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GLIB_LIBRARY
|
||||
NAMES
|
||||
glib-2.0
|
||||
PATHS
|
||||
${_GLIB2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GLIB_LIBRARY is ${GTK2_GLIB_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GTKGL_LIBRARY
|
||||
NAMES
|
||||
gtkgl
|
||||
PATHS
|
||||
${_GTK2LinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GTKGL_LIBRARY is ${GTK2_GTKGL_LIBRARY}")
|
||||
|
||||
find_library(GTK2_GLADE_LIBRARY
|
||||
NAMES
|
||||
glade-2.0
|
||||
PATHS
|
||||
${_GLADELinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_GLADE_LIBRARY is ${GTK2_GLADE_LIBRARY}")
|
||||
|
||||
find_library(GTK2_PANGO_LIBRARY
|
||||
NAMES
|
||||
pango-1.0
|
||||
PATHS
|
||||
${_PANGOLinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_PANGO_LIBRARY is ${GTK2_PANGO_LIBRARY}")
|
||||
|
||||
find_library(GTK2_CAIRO_LIBRARY
|
||||
NAMES
|
||||
pangocairo-1.0
|
||||
PATHS
|
||||
${_CAIROLinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_PANGO_LIBRARY is ${GTK2_CAIRO_LIBRARY}")
|
||||
|
||||
find_library(GTK2_ATK_LIBRARY
|
||||
NAMES
|
||||
atk-1.0
|
||||
PATHS
|
||||
${_ATKinkDir}
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/openwin/lib
|
||||
/usr/X11R6/lib
|
||||
/opt/gnome/lib
|
||||
/opt/lib
|
||||
/sw/lib
|
||||
)
|
||||
gtk2_debug_message("GTK2_ATK_LIBRARY is ${GTK2_ATK_LIBRARY}")
|
||||
|
||||
set(GTK2_INCLUDE_DIRS
|
||||
${GTK2_GTK_INCLUDE_DIR}
|
||||
${GTK2_GLIBCONFIG_INCLUDE_DIR}
|
||||
${GTK2_GLIB_INCLUDE_DIR}
|
||||
${GTK2_GDK_INCLUDE_DIR}
|
||||
${GTK2_GLADE_INCLUDE_DIR}
|
||||
${GTK2_PANGO_INCLUDE_DIR}
|
||||
${GTK2_CAIRO_INCLUDE_DIR}
|
||||
${GTK2_ATK_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
if (GTK2_GTK_LIBRARY AND GTK2_GTK_INCLUDE_DIR)
|
||||
if (GTK2_GDK_LIBRARY AND GTK2_GDK_PIXBUF_LIBRARY AND GTK2_GDK_INCLUDE_DIR)
|
||||
if (GTK2_GMODULE_LIBRARY)
|
||||
if (GTK2_GTHREAD_LIBRARY)
|
||||
if (GTK2_GOBJECT_LIBRARY)
|
||||
if (GTK2_GLADE_LIBRARY AND GTK2_GLADE_INCLUDE_DIR)
|
||||
if (GTK2_PANGO_LIBRARY AND GTK2_PANGO_INCLUDE_DIR)
|
||||
if (GTK2_CAIRO_LIBRARY AND GTK2_CAIRO_INCLUDE_DIR)
|
||||
if (GTK2_ATK_LIBRARY AND GTK2_ATK_INCLUDE_DIR)
|
||||
|
||||
# set GTK2 libraries
|
||||
set (GTK2_LIBRARIES
|
||||
${GTK2_GTK_LIBRARY}
|
||||
${GTK2_GDK_LIBRARY}
|
||||
${GTK2_GDK_PIXBUF_LIBRARY}
|
||||
${GTK2_GMODULE_LIBRARY}
|
||||
${GTK2_GTHREAD_LIBRARY}
|
||||
${GTK2_GOBJECT_LIBRARY}
|
||||
${GTK2_GLADE_LIBRARY}
|
||||
${GTK2_PANGO_LIBRARY}
|
||||
${GTK2_CAIRO_LIBRARY}
|
||||
${GTK2_ATK_LIBRARY}
|
||||
)
|
||||
|
||||
# check for gtkgl support
|
||||
if (GTK2_GTKGL_LIBRARY AND GTK2_GTKGL_INCLUDE_DIR)
|
||||
set(GTK2_GTKGL_FOUND TRUE)
|
||||
|
||||
set(GTK2_INCLUDE_DIRS
|
||||
${GTK2_INCLUDE_DIR}
|
||||
${GTK2_GTKGL_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
set(GTK2_LIBRARIES
|
||||
${GTK2_LIBRARIES}
|
||||
${GTK2_GTKGL_LIBRARY}
|
||||
)
|
||||
endif (GTK2_GTKGL_LIBRARY AND GTK2_GTKGL_INCLUDE_DIR)
|
||||
|
||||
else (GTK2_ATK_LIBRARY AND GTK2_ATK_INCLUDE_DIR)
|
||||
message(SEND_ERROR "Could not find ATK")
|
||||
endif (GTK2_ATK_LIBRARY AND GTK2_ATK_INCLUDE_DIR)
|
||||
else (GTK2_CAIRO_LIBRARY AND GTK2_CAIRO_INCLUDE_DIR)
|
||||
message(SEND_ERROR "Could not find CAIRO")
|
||||
endif (GTK2_CAIRO_LIBRARY AND GTK2_CAIRO_INCLUDE_DIR)
|
||||
else (GTK2_PANGO_LIBRARY AND GTK2_PANGO_INCLUDE_DIR)
|
||||
message(SEND_ERROR "Could not find PANGO")
|
||||
endif (GTK2_PANGO_LIBRARY AND GTK2_PANGO_INCLUDE_DIR)
|
||||
else (GTK2_GLADE_LIBRARY AND GTK2_GLADE_INCLUDE_DIR)
|
||||
message(SEND_ERROR "Could not find GLADE")
|
||||
endif (GTK2_GLADE_LIBRARY AND GTK2_GLADE_INCLUDE_DIR)
|
||||
else (GTK2_GOBJECT_LIBRARY)
|
||||
message(SEND_ERROR "Could not find GOBJECT")
|
||||
endif (GTK2_GOBJECT_LIBRARY)
|
||||
else (GTK2_GTHREAD_LIBRARY)
|
||||
message(SEND_ERROR "Could not find GTHREAD")
|
||||
endif (GTK2_GTHREAD_LIBRARY)
|
||||
else (GTK2_GMODULE_LIBRARY)
|
||||
message(SEND_ERROR "Could not find GMODULE")
|
||||
endif (GTK2_GMODULE_LIBRARY)
|
||||
else (GTK2_GDK_LIBRARY AND GTK2_GDK_PIXBUF_LIBRARY AND GTK2_GDK_INCLUDE_DIR)
|
||||
message(SEND_ERROR "Could not find GDK (GDK_PIXBUF)")
|
||||
endif (GTK2_GDK_LIBRARY AND GTK2_GDK_PIXBUF_LIBRARY AND GTK2_GDK_INCLUDE_DIR)
|
||||
else (GTK2_GTK_LIBRARY AND GTK2_GTK_INCLUDE_DIR)
|
||||
message(SEND_ERROR "Could not find GTK2-X11")
|
||||
endif (GTK2_GTK_LIBRARY AND GTK2_GTK_INCLUDE_DIR)
|
||||
|
||||
|
||||
if (GTK2_INCLUDE_DIRS AND GTK2_LIBRARIES)
|
||||
set(GTK2_FOUND TRUE)
|
||||
endif (GTK2_INCLUDE_DIRS AND GTK2_LIBRARIES)
|
||||
|
||||
if (GTK2_FOUND)
|
||||
if (NOT GTK2_FIND_QUIETLY)
|
||||
message(STATUS "Found GTK2: ${GTK2_LIBRARIES}")
|
||||
endif (NOT GTK2_FIND_QUIETLY)
|
||||
else (GTK2_FOUND)
|
||||
if (GTK2_FIND_REQUIRED)
|
||||
message(FATAL_ERROR "Could not find GTK2")
|
||||
endif (GTK2_FIND_REQUIRED)
|
||||
endif (GTK2_FOUND)
|
||||
|
||||
# show the GTK2_INCLUDE_DIRS and GTK2_LIBRARIES variables only in the advanced view
|
||||
mark_as_advanced(GTK2_INCLUDE_DIRS GTK2_LIBRARIES)
|
||||
|
||||
endif (UNIX)
|
||||
endif (GTK2_LIBRARIES AND GTK2_INCLUDE_DIRS)
|
||||
|
65
tests/FullSkeleton/cmake/Modules/FindNCurses.cmake
Normal file
65
tests/FullSkeleton/cmake/Modules/FindNCurses.cmake
Normal file
|
@ -0,0 +1,65 @@
|
|||
#------------------------------------------------------------------------------
|
||||
# Desc:
|
||||
# Tabs: 3
|
||||
#
|
||||
# Copyright (c) 2007 Novell, Inc. All Rights Reserved.
|
||||
#
|
||||
# This program and the accompanying materials are made available
|
||||
# under the terms of the Eclipse Public License v1.0 which
|
||||
# accompanies this distribution, and is available at
|
||||
# http://www.eclipse.org/legal/epl-v10.html
|
||||
#
|
||||
# To contact Novell about this file by physical or electronic mail,
|
||||
# you may find current contact information at www.novell.com.
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Author: Andrew Hodgkinson <ahodgkinson@novell.com>
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Include the local modules directory
|
||||
|
||||
set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMakeModules")
|
||||
|
||||
# Locate ncurses files
|
||||
|
||||
if( NOT NCURSES_FOUND)
|
||||
|
||||
find_path( NCURSES_INCLUDE_DIR ncurses.h
|
||||
PATHS /usr/include
|
||||
/usr/local/include
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
MARK_AS_ADVANCED( NCURSES_INCLUDE_DIR)
|
||||
|
||||
find_library( NCURSES_LIBRARY
|
||||
NAMES ncurses
|
||||
PATHS /usr/lib
|
||||
/usr/local/lib
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
MARK_AS_ADVANCED( NCURSES_LIBRARY)
|
||||
|
||||
if( NCURSES_INCLUDE_DIR AND NCURSES_LIBRARY)
|
||||
set( NCURSES_FOUND TRUE)
|
||||
set( NCURSES_INCLUDE_DIRS ${NCURSES_INCLUDE_DIR})
|
||||
set( NCURSES_LIBRARIES ${NCURSES_LIBRARY})
|
||||
endif( NCURSES_INCLUDE_DIR AND NCURSES_LIBRARY)
|
||||
|
||||
if( NCURSES_FOUND)
|
||||
if( NOT NCURSES_FIND_QUIETLY)
|
||||
message( STATUS "Found ncurses libraries: ${NCURSES_LIBRARIES}")
|
||||
message( STATUS "Found ncurses inc dirs: ${NCURSES_INCLUDE_DIRS}")
|
||||
endif( NOT NCURSES_FIND_QUIETLY)
|
||||
else( NCURSES_FOUND)
|
||||
if( NCURSES_FIND_REQUIRED)
|
||||
message( FATAL_ERROR "Could not find ncurses")
|
||||
else( NCURSES_FIND_REQUIRED)
|
||||
if( NOT NCURSES_FIND_QUIETLY)
|
||||
message( STATUS "Could not find ncurses")
|
||||
endif( NOT NCURSES_FIND_QUIETLY)
|
||||
endif( NCURSES_FIND_REQUIRED)
|
||||
endif( NCURSES_FOUND)
|
||||
|
||||
endif( NOT NCURSES_FOUND)
|
||||
|
21
tests/FullSkeleton/cmake/Modules/MacroAddCompileFlags.cmake
Normal file
21
tests/FullSkeleton/cmake/Modules/MacroAddCompileFlags.cmake
Normal file
|
@ -0,0 +1,21 @@
|
|||
# - MACRO_ADD_COMPILE_FLAGS(target_name flag1 ... flagN)
|
||||
|
||||
# Copyright (c) 2006, Oswald Buddenhagen, <ossi@kde.org>
|
||||
# Copyright (c) 2006, Andreas Schneider, <mail@cynapses.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
|
||||
macro (MACRO_ADD_COMPILE_FLAGS _target)
|
||||
|
||||
get_target_property(_flags ${_target} COMPILE_FLAGS)
|
||||
if (_flags)
|
||||
set(_flags ${_flags} ${ARGN})
|
||||
else (_flags)
|
||||
set(_flags ${ARGN})
|
||||
endif (_flags)
|
||||
|
||||
set_target_properties(${_target} PROPERTIES COMPILE_FLAGS ${_flags})
|
||||
|
||||
endmacro (MACRO_ADD_COMPILE_FLAGS)
|
20
tests/FullSkeleton/cmake/Modules/MacroAddLinkFlags.cmake
Normal file
20
tests/FullSkeleton/cmake/Modules/MacroAddLinkFlags.cmake
Normal file
|
@ -0,0 +1,20 @@
|
|||
# - MACRO_ADD_LINK_FLAGS(target_name flag1 ... flagN)
|
||||
|
||||
# Copyright (c) 2006, Oswald Buddenhagen, <ossi@kde.org>
|
||||
# Copyright (c) 2006, Andreas Schneider, <mail@cynapses.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
macro (MACRO_ADD_LINK_FLAGS _target)
|
||||
|
||||
get_target_property(_flags ${_target} LINK_FLAGS)
|
||||
if (_flags)
|
||||
set(_flags "${_flags} ${ARGN}")
|
||||
else (_flags)
|
||||
set(_flags "${ARGN}")
|
||||
endif (_flags)
|
||||
|
||||
set_target_properties(${_target} PROPERTIES LINK_FLAGS "${_flags}")
|
||||
|
||||
endmacro (MACRO_ADD_LINK_FLAGS)
|
30
tests/FullSkeleton/cmake/Modules/MacroAddPlugin.cmake
Normal file
30
tests/FullSkeleton/cmake/Modules/MacroAddPlugin.cmake
Normal file
|
@ -0,0 +1,30 @@
|
|||
# - MACRO_ADD_PLUGIN(name [WITH_PREFIX] file1 .. fileN)
|
||||
#
|
||||
# Create a plugin from the given source files.
|
||||
# If WITH_PREFIX is given, the resulting plugin will have the
|
||||
# prefix "lib", otherwise it won't.
|
||||
#
|
||||
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
|
||||
# Copyright (c) 2006, Laurent Montel, <montel@kde.org>
|
||||
# Copyright (c) 2006, Andreas Schneider, <mail@cynapses.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
|
||||
macro (MACRO_ADD_PLUGIN _target_NAME _with_PREFIX)
|
||||
|
||||
if (${_with_PREFIX} STREQUAL "WITH_PREFIX")
|
||||
set(_first_SRC)
|
||||
else (${_with_PREFIX} STREQUAL "WITH_PREFIX")
|
||||
set(_first_SRC ${_with_PREFIX})
|
||||
endif (${_with_PREFIX} STREQUAL "WITH_PREFIX")
|
||||
|
||||
add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN})
|
||||
|
||||
if (_first_SRC)
|
||||
set_target_properties(${_target_NAME} PROPERTIES PREFIX "")
|
||||
endif (_first_SRC)
|
||||
|
||||
endmacro (MACRO_ADD_PLUGIN _name _sources)
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
# - MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
|
||||
# MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
|
||||
|
||||
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
MACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD _errorMessage)
|
||||
|
||||
STRING(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" insource)
|
||||
IF(insource)
|
||||
MESSAGE(FATAL_ERROR "${_errorMessage}")
|
||||
ENDIF(insource)
|
||||
|
||||
ENDMACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD)
|
35
tests/FullSkeleton/cmake/Modules/Platform/Linux-dmd.cmake
Normal file
35
tests/FullSkeleton/cmake/Modules/Platform/Linux-dmd.cmake
Normal file
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 gcc.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
IF(CMAKE_D_USE_TANGO)
|
||||
SET(DSTDLIB_FLAGS "-version=Tango")
|
||||
ENDIF(CMAKE_D_USE_TANGO)
|
||||
IF(CMAKE_D_USE_PHOBOS)
|
||||
SET(DSTDLIB_FLAGS "-version=Phobos")
|
||||
ENDIF(CMAKE_D_USE_PHOBOS)
|
||||
IF(CMAKE_D_BUILD_DOCS)
|
||||
SET(DDOC_FLAGS "-D -Dddocumentation")
|
||||
#FOREACH(item ${CMAKE_D_DDOC_FILES})
|
||||
# SET(DDOC_FLAGS "${DDOC_FLAGS} ${item}")
|
||||
#ENDFOREACH(item)
|
||||
ENDIF(CMAKE_D_BUILD_DOCS)
|
||||
|
||||
SET (CMAKE_D_FLAGS_INIT "-version=Posix ${DSTDLIB_FLAGS} -I$ENV{D_PATH}/include -I$ENV{D_PATH}/import")
|
||||
SET (CMAKE_D_FLAGS_DEBUG_INIT "-g ${DDOC_FLAGS}")
|
||||
# SET (CMAKE_D_FLAGS_MINSIZEREL_INIT "-Os ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELEASE_INIT "-O -release -inline ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELWITHDEBINFO_INIT "-O -g ${DDOC_FLAGS}")
|
||||
# SET (CMAKE_D_CREATE_PREPROCESSED_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
|
||||
SET (CMAKE_D_CREATE_ASSEMBLY_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
|
||||
# SET (CMAKE_INCLUDE_SYSTEM_FLAG_D "-isystem ")
|
36
tests/FullSkeleton/cmake/Modules/Platform/Linux-gdc.cmake
Normal file
36
tests/FullSkeleton/cmake/Modules/Platform/Linux-gdc.cmake
Normal file
|
@ -0,0 +1,36 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 gcc.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
IF(CMAKE_D_USE_TANGO)
|
||||
SET(DSTDLIB_FLAGS "-fversion=Tango")
|
||||
ENDIF(CMAKE_D_USE_TANGO)
|
||||
IF(CMAKE_D_USE_PHOBOS)
|
||||
SET(DSTDLIB_FLAGS "-fversion=Phobos")
|
||||
ENDIF(CMAKE_D_USE_PHOBOS)
|
||||
IF(CMAKE_D_BUILD_DOCS)
|
||||
SET(DDOC_FLAGS "-fdoc -fdoc-dir=documentation")
|
||||
FOREACH(item ${CMAKE_D_DDOC_FILES})
|
||||
SET(DDOC_FLAGS "${DDOC_FLAGS} -fdoc-inc=${item}")
|
||||
ENDFOREACH(item)
|
||||
ENDIF(CMAKE_D_BUILD_DOCS)
|
||||
|
||||
SET (CMAKE_D_FLAGS_INIT "-fversion=Posix ${DSTDLIB_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_DEBUG_INIT "-g ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_MINSIZEREL_INIT "-Os ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELEASE_INIT "-O3 -fomit-frame-pointer -fweb -frelease -finline-functions ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELWITHDEBINFO_INIT "-O2 -g ${DDOC_FLAGS}")
|
||||
# SET (CMAKE_D_CREATE_PREPROCESSED_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
|
||||
SET (CMAKE_D_CREATE_ASSEMBLY_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
|
||||
#SET (CMAKE_INCLUDE_SYSTEM_FLAG_D "-isystem ")
|
||||
|
36
tests/FullSkeleton/cmake/Modules/Platform/Windows-dmd.cmake
Normal file
36
tests/FullSkeleton/cmake/Modules/Platform/Windows-dmd.cmake
Normal file
|
@ -0,0 +1,36 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 gcc.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
IF(CMAKE_D_USE_TANGO)
|
||||
SET(DSTDLIB_FLAGS "-version=Tango")
|
||||
ENDIF(CMAKE_D_USE_TANGO)
|
||||
IF(CMAKE_D_USE_PHOBOS)
|
||||
SET(DSTDLIB_FLAGS "-version=Phobos")
|
||||
ENDIF(CMAKE_D_USE_PHOBOS)
|
||||
IF(CMAKE_D_BUILD_DOCS)
|
||||
SET(DDOC_FLAGS "-D -Dddocumentation")
|
||||
#FOREACH(item ${CMAKE_D_DDOC_FILES})
|
||||
# SET(DDOC_FLAGS "${DDOC_FLAGS} ${item}")
|
||||
#ENDFOREACH(item)
|
||||
ENDIF(CMAKE_D_BUILD_DOCS)
|
||||
|
||||
SET (CMAKE_D_FLAGS_INIT "-version=Win ${DSTDLIB_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_DEBUG_INIT "-g ${DDOC_FLAGS}")
|
||||
# SET (CMAKE_D_FLAGS_MINSIZEREL_INIT "-Os ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELEASE_INIT "-O -release -inline ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELWITHDEBINFO_INIT "-O -g ${DDOC_FLAGS}")
|
||||
# SET (CMAKE_D_CREATE_PREPROCESSED_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
|
||||
SET (CMAKE_D_CREATE_ASSEMBLY_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
|
||||
# SET (CMAKE_INCLUDE_SYSTEM_FLAG_D "-isystem ")
|
||||
|
36
tests/FullSkeleton/cmake/Modules/Platform/Windows-gdc.cmake
Normal file
36
tests/FullSkeleton/cmake/Modules/Platform/Windows-gdc.cmake
Normal file
|
@ -0,0 +1,36 @@
|
|||
#
|
||||
# CMakeD - CMake module for D Language
|
||||
#
|
||||
# Copyright (c) 2007, Selman Ulug <selman.ulug@gmail.com>
|
||||
# Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
# Modified from CMake 2.6.5 gcc.cmake
|
||||
# See http://www.cmake.org/HTML/Copyright.html for details
|
||||
#
|
||||
|
||||
IF(CMAKE_D_USE_TANGO)
|
||||
SET(DSTDLIB_FLAGS "-fversion=Tango")
|
||||
ENDIF(CMAKE_D_USE_TANGO)
|
||||
IF(CMAKE_D_USE_PHOBOS)
|
||||
SET(DSTDLIB_FLAGS "-fversion=Phobos")
|
||||
ENDIF(CMAKE_D_USE_PHOBOS)
|
||||
IF(CMAKE_D_BUILD_DOCS)
|
||||
SET(DDOC_FLAGS "-fdoc -fdoc-dir=documentation")
|
||||
FOREACH(item ${CMAKE_D_DDOC_FILES})
|
||||
SET(DDOC_FLAGS "${DDOC_FLAGS} -fdoc-inc=${item}")
|
||||
ENDFOREACH(item)
|
||||
ENDIF(CMAKE_D_BUILD_DOCS)
|
||||
|
||||
SET (CMAKE_D_FLAGS_INIT "-fversion=Win ${DSTDLIB_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_DEBUG_INIT "-g ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_MINSIZEREL_INIT "-Os ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELEASE_INIT "-O3 -fomit-frame-pointer -fweb -frelease -finline-functions ${DDOC_FLAGS}")
|
||||
SET (CMAKE_D_FLAGS_RELWITHDEBINFO_INIT "-O2 -g ${DDOC_FLAGS}")
|
||||
# SET (CMAKE_D_CREATE_PREPROCESSED_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
|
||||
SET (CMAKE_D_CREATE_ASSEMBLY_SOURCE "<CMAKE_D_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
|
||||
#SET (CMAKE_INCLUDE_SYSTEM_FLAG_D "-isystem ")
|
||||
|
61
tests/FullSkeleton/cmake/Modules/UseDDoc.cmake
Normal file
61
tests/FullSkeleton/cmake/Modules/UseDDoc.cmake
Normal file
|
@ -0,0 +1,61 @@
|
|||
# check if the user wants to build ddocs
|
||||
#
|
||||
# Copyright (c) 2007 Tim Burrell <tim.burrell@gmail.com>
|
||||
#
|
||||
# All rights reserved.
|
||||
#
|
||||
# See Copyright.txt for details.
|
||||
#
|
||||
|
||||
# Do not build documentation by default
|
||||
if (NOT CMAKE_D_BUILD_DOCS)
|
||||
set(CMAKE_D_BUILD_DOCS False CACHE BOOLEAN TRUE FORCE)
|
||||
else (NOT CMAKE_D_BUILD_DOCS)
|
||||
# check for specified ddoc files
|
||||
# default to the candydoc usual
|
||||
set(CMAKE_D_BUILD_DOCS True CACHE BOOLEAN FALSE FORCE)
|
||||
if (NOT CMAKE_D_DDOC_FILES)
|
||||
set(CMAKE_D_DDOC_FILES "documentation/candydoc/candy.ddoc;documentation/candydoc/modules.ddoc" CACHE STRING FALSE FORCE)
|
||||
else (NOT CMAKE_D_DDOC_FILES)
|
||||
set(CMAKE_D_DDOC_FILES "${CMAKE_D_DDOC_FILES}" CACHE STRING FALSE FORCE)
|
||||
endif (NOT CMAKE_D_DDOC_FILES)
|
||||
|
||||
# copy the candydoc files
|
||||
file(GLOB_RECURSE CANDY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/candydoc/*")
|
||||
foreach(item ${CANDY_DOC_FILES})
|
||||
string(REGEX REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/" "" item ${item})
|
||||
configure_file(${item} ${CMAKE_CURRENT_BINARY_DIR}/documentation/${item} COPYONLY)
|
||||
endforeach(item)
|
||||
|
||||
# create modules.ddoc
|
||||
file(GLOB_RECURSE sources "${CMAKE_CURRENT_SOURCE_DIR}/*.d")
|
||||
set(first True)
|
||||
foreach(item ${sources})
|
||||
# first make sure we're not config.d
|
||||
string(REGEX MATCH "config\\.d" ignore ${item})
|
||||
if (NOT ${ignore} MATCHES "")
|
||||
# fix up the output
|
||||
string(REGEX REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/" "" item ${item})
|
||||
string(REGEX REPLACE "\\.d" ".html" htmlFile ${item})
|
||||
string(REGEX REPLACE "^.*/" "" htmlFile ${htmlFile})
|
||||
string(REGEX REPLACE "\\.d" "" item ${item})
|
||||
string(REGEX REPLACE "/" "." item ${item})
|
||||
if (first)
|
||||
set(modules "${item}")
|
||||
set(first False)
|
||||
set(CMAKE_D_DDOC_CLEAN_FILES "${CMAKE_CURRENT_BINARY_DIR}/documentation/${htmlFile}" CACHE STRING FALSE FORCE)
|
||||
else (first)
|
||||
set(modules "${modules};${item}")
|
||||
set(CMAKE_D_DDOC_CLEAN_FILES "${CMAKE_D_DDOC_CLEAN_FILES}" "${CMAKE_CURRENT_BINARY_DIR}/documentation/${htmlFile}" CACHE STRING FALSE FORCE)
|
||||
endif (first)
|
||||
endif (NOT ${ignore} MATCHES "")
|
||||
endforeach(item)
|
||||
|
||||
# create formatted modules string
|
||||
set(modString "MODULES = \n")
|
||||
foreach(item ${modules})
|
||||
set(modString "${modString}\t$(MODULE ${item})\n")
|
||||
endforeach(item)
|
||||
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/documentation/candydoc/modules.ddoc" ${modString})
|
||||
endif (NOT CMAKE_D_BUILD_DOCS)
|
||||
|
123
tests/FullSkeleton/cmake/Modules/UseDoxygen.cmake
Normal file
123
tests/FullSkeleton/cmake/Modules/UseDoxygen.cmake
Normal file
|
@ -0,0 +1,123 @@
|
|||
# -helper macro to add a "doc" target with CMake build system.
|
||||
# and configure doxy.config.in to doxy.config
|
||||
#
|
||||
# target "doc" allows building the documentation with doxygen/dot on WIN32 and Linux
|
||||
# Creates .chm windows help file if MS HTML help workshop
|
||||
# (available from http://msdn.microsoft.com/workshop/author/htmlhelp)
|
||||
# is installed with its DLLs in PATH.
|
||||
#
|
||||
#
|
||||
# Please note, that the tools, e.g.:
|
||||
# doxygen, dot, latex, dvips, makeindex, gswin32, etc.
|
||||
# must be in path.
|
||||
#
|
||||
# Note about Visual Studio Projects:
|
||||
# MSVS has its own path environment which may differ from the shell.
|
||||
# See "Menu Tools/Options/Projects/VC++ Directories" in VS 7.1
|
||||
#
|
||||
# author Jan Woetzel 2004-2006
|
||||
# www.mip.informatik.uni-kiel.de/~jw
|
||||
|
||||
|
||||
FIND_PACKAGE(Doxygen)
|
||||
|
||||
IF (DOXYGEN_FOUND)
|
||||
|
||||
# click+jump in Emacs and Visual Studio (for doxy.config) (jw)
|
||||
IF (CMAKE_BUILD_TOOL MATCHES "(msdev|devenv)")
|
||||
SET(DOXY_WARN_FORMAT "\"$file($line) : $text \"")
|
||||
ELSE (CMAKE_BUILD_TOOL MATCHES "(msdev|devenv)")
|
||||
SET(DOXY_WARN_FORMAT "\"$file:$line: $text \"")
|
||||
ENDIF (CMAKE_BUILD_TOOL MATCHES "(msdev|devenv)")
|
||||
|
||||
# we need latex for doxygen because of the formulas
|
||||
FIND_PACKAGE(LATEX)
|
||||
IF (NOT LATEX_COMPILER)
|
||||
MESSAGE(STATUS "latex command LATEX_COMPILER not found but usually required. You will probably get warnings and user inetraction on doxy run.")
|
||||
ENDIF (NOT LATEX_COMPILER)
|
||||
IF (NOT MAKEINDEX_COMPILER)
|
||||
MESSAGE(STATUS "makeindex command MAKEINDEX_COMPILER not found but usually required.")
|
||||
ENDIF (NOT MAKEINDEX_COMPILER)
|
||||
IF (NOT DVIPS_CONVERTER)
|
||||
MESSAGE(STATUS "dvips command DVIPS_CONVERTER not found but usually required.")
|
||||
ENDIF (NOT DVIPS_CONVERTER)
|
||||
|
||||
IF (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in")
|
||||
MESSAGE(STATUS "Generate ${CMAKE_CURRENT_BINARY_DIR}/doxy.config from doxy.config.in")
|
||||
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/doxy.config
|
||||
@ONLY )
|
||||
# use (configured) doxy.config from (out of place) BUILD tree:
|
||||
SET(DOXY_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/doxy.config")
|
||||
ELSE (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in")
|
||||
# use static hand-edited doxy.config from SOURCE tree:
|
||||
SET(DOXY_CONFIG "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
|
||||
IF (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
|
||||
MESSAGE(STATUS "WARNING: using existing ${CMAKE_CURRENT_SOURCE_DIR}/doxy.config instead of configuring from doxy.config.in file.")
|
||||
ELSE (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
|
||||
IF (EXISTS "${CMAKE_MODULE_PATH}/doxy.config.in")
|
||||
# using template doxy.config.in
|
||||
MESSAGE(STATUS "Generate ${CMAKE_CURRENT_BINARY_DIR}/doxy.config from doxy.config.in")
|
||||
CONFIGURE_FILE(${CMAKE_MODULE_PATH}/doxy.config.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/doxy.config
|
||||
@ONLY )
|
||||
SET(DOXY_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/doxy.config")
|
||||
ELSE (EXISTS "${CMAKE_MODULE_PATH}/doxy.config.in")
|
||||
# failed completely...
|
||||
MESSAGE(SEND_ERROR "Please create ${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in (or doxy.config as fallback)")
|
||||
ENDIF(EXISTS "${CMAKE_MODULE_PATH}/doxy.config.in")
|
||||
|
||||
ENDIF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
|
||||
ENDIF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in")
|
||||
|
||||
ADD_CUSTOM_TARGET(doc ${DOXYGEN_EXECUTABLE} ${DOXY_CONFIG} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/doxy.config)
|
||||
|
||||
# create a windows help .chm file using hhc.exe
|
||||
# HTMLHelp DLL must be in path!
|
||||
# fallback: use hhw.exe interactively
|
||||
IF (WIN32)
|
||||
FIND_PACKAGE(HTMLHelp)
|
||||
IF (HTML_HELP_COMPILER)
|
||||
SET (TMP "${CMAKE_CURRENT_BINARY_DIR}\\doc\\html\\index.hhp")
|
||||
STRING(REGEX REPLACE "[/]" "\\\\" HHP_FILE ${TMP} )
|
||||
# MESSAGE(SEND_ERROR "DBG HHP_FILE=${HHP_FILE}")
|
||||
ADD_CUSTOM_TARGET(winhelp ${HTML_HELP_COMPILER} ${HHP_FILE})
|
||||
ADD_DEPENDENCIES (winhelp doc)
|
||||
|
||||
IF (NOT TARGET_DOC_SKIP_INSTALL)
|
||||
# install windows help?
|
||||
# determine useful name for output file
|
||||
# should be project and version unique to allow installing
|
||||
# multiple projects into one global directory
|
||||
IF (EXISTS "${PROJECT_BINARY_DIR}/doc/html/index.chm")
|
||||
IF (PROJECT_NAME)
|
||||
SET(OUT "${PROJECT_NAME}")
|
||||
ELSE (PROJECT_NAME)
|
||||
SET(OUT "Documentation") # default
|
||||
ENDIF(PROJECT_NAME)
|
||||
IF (${PROJECT_NAME}_VERSION_MAJOR)
|
||||
SET(OUT "${OUT}-${${PROJECT_NAME}_VERSION_MAJOR}")
|
||||
IF (${PROJECT_NAME}_VERSION_MINOR)
|
||||
SET(OUT "${OUT}.${${PROJECT_NAME}_VERSION_MINOR}")
|
||||
IF (${PROJECT_NAME}_VERSION_PATCH)
|
||||
SET(OUT "${OUT}.${${PROJECT_NAME}_VERSION_PATCH}")
|
||||
ENDIF(${PROJECT_NAME}_VERSION_PATCH)
|
||||
ENDIF(${PROJECT_NAME}_VERSION_MINOR)
|
||||
ENDIF(${PROJECT_NAME}_VERSION_MAJOR)
|
||||
# keep suffix
|
||||
SET(OUT "${OUT}.chm")
|
||||
|
||||
#MESSAGE("DBG ${PROJECT_BINARY_DIR}/doc/html/index.chm \n${OUT}")
|
||||
# create target used by install and package commands
|
||||
INSTALL(FILES "${PROJECT_BINARY_DIR}/doc/html/index.chm"
|
||||
DESTINATION "doc"
|
||||
RENAME "${OUT}"
|
||||
)
|
||||
ENDIF(EXISTS "${PROJECT_BINARY_DIR}/doc/html/index.chm")
|
||||
ENDIF(NOT TARGET_DOC_SKIP_INSTALL)
|
||||
|
||||
ENDIF(HTML_HELP_COMPILER)
|
||||
# MESSAGE(SEND_ERROR "HTML_HELP_COMPILER=${HTML_HELP_COMPILER}")
|
||||
ENDIF (WIN32)
|
||||
ENDIF(DOXYGEN_FOUND)
|
||||
|
24
tests/FullSkeleton/cmake/Modules/UsePkgConfigVariable.cmake
Normal file
24
tests/FullSkeleton/cmake/Modules/UsePkgConfigVariable.cmake
Normal file
|
@ -0,0 +1,24 @@
|
|||
# - pkg-config variable module for CMake
|
||||
#
|
||||
# Defines the following macros:
|
||||
#
|
||||
# PKGCONFIG_VAR(package varname outputvar)
|
||||
#
|
||||
|
||||
include(UsePkgConfig REQUIRED)
|
||||
|
||||
MACRO(PKGCONFIG_VAR _package _varname _outputvar)
|
||||
# reset the variables at the beginning
|
||||
SET(${_outputvar})
|
||||
|
||||
# if pkg-config has been found
|
||||
IF(PKGCONFIG_EXECUTABLE)
|
||||
EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull )
|
||||
|
||||
# and if the package of interest also exists for pkg-config, then get the information
|
||||
IF(NOT _return_VALUE)
|
||||
EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable=${_varname} OUTPUT_VARIABLE ${_outputvar} )
|
||||
ENDIF(NOT _return_VALUE)
|
||||
ENDIF(PKGCONFIG_EXECUTABLE)
|
||||
ENDMACRO(PKGCONFIG_VAR _package _varname _outputvar)
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue