~ubuntu-branches/ubuntu/wily/openms/wily

« back to all changes in this revision

Viewing changes to .pc/doc-path-gets-its-own-env-variable/cmake/OpenMSBuildSystem_configh.cmake

  • Committer: Package Import Robot
  • Author(s): Filippo Rusconi
  • Date: 2012-11-12 15:58:12 UTC
  • Revision ID: package-import@ubuntu.com-20121112155812-e6mvctvil4ko9npv
Tags: 1.9.0-1
1.9.0 First Debian package release (Closes: #691129).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
## define some directories
 
3
if ("${INSTALL_PREFIX}" STREQUAL ".")
 
4
        set(CF_OPENMS_DATA_PATH ${PROJECT_SOURCE_DIR}/share/OpenMS CACHE INTERNAL "Path to the shared documents of OpenMS.")
 
5
        set(CMAKE_INSTALL_PREFIX ${PROJECT_SOURCE_DIR})
 
6
else()
 
7
        set(CF_OPENMS_DATA_PATH ${INSTALL_PREFIX}/share/OpenMS CACHE INTERNAL "Path to the shared documents of OpenMS.")
 
8
        set(CMAKE_INSTALL_PREFIX ${INSTALL_PREFIX})
 
9
endif()
 
10
 
 
11
 
 
12
 
 
13
set(CF_OPENMS_TEST_DATA_PATH ${PROJECT_SOURCE_DIR}/source/TEST/data/ CACHE INTERNAL "Path to the test data")
 
14
 
 
15
## check for Microsoft Visual Studio compiler
 
16
if (MSVC)
 
17
        set(OPENMS_COMPILER_MSVC "1" CACHE INTERNAL "Do we use Microsoft Compiler?")
 
18
endif()
 
19
## check for G++
 
20
if (CMAKE_COMPILER_IS_GNUCXX)
 
21
        set(OPENMS_COMPILER_GXX "1" CACHE INTERNAL "Do we use G++ Compiler?")
 
22
endif()
 
23
 
 
24
INCLUDE(TestBigEndian)
 
25
TEST_BIG_ENDIAN(OPENMS_BIG_ENDIAN)
 
26
 
 
27
## check 32/64 bit architecture (defined above!)
 
28
if (NOT DEFINED OPENMS_64BIT_ARCHITECTURE)
 
29
        message(FATAL_ERROR "Cmake script was re-ordered and is now invalid! Please make sure that OPENMS_64BIT_ARCHITECTURE is defined when config.h.in is configured!")
 
30
endif()
 
31
 
 
32
include(CheckTypeSize) ## Check sizeof a type
 
33
CHECK_TYPE_SIZE("unsigned char" SIZE_UCHAR)
 
34
CHECK_TYPE_SIZE("unsigned short" SIZE_USHORT)
 
35
CHECK_TYPE_SIZE("unsigned int" SIZE_UINT)
 
36
CHECK_TYPE_SIZE("unsigned long" SIZE_ULONG)
 
37
CHECK_TYPE_SIZE("unsigned long long" SIZE_ULONGLONG)
 
38
CHECK_TYPE_SIZE("short" SIZE_SHORT)
 
39
CHECK_TYPE_SIZE("int" SIZE_INT)
 
40
CHECK_TYPE_SIZE("long" SIZE_LONG)
 
41
CHECK_TYPE_SIZE("long long" SIZE_LONGLONG)
 
42
 
 
43
CHECK_TYPE_SIZE("int32_t" SIZE_INT32)
 
44
if (HAVE_SIZE_INT32)
 
45
        set(CF_OPENMS_INT32_TYPE int32_t)
 
46
else()
 
47
        ## search for another Int32 type
 
48
        if (SIZE_INT MATCHES "4")
 
49
                set(CF_OPENMS_INT32_TYPE int)
 
50
        elseif (SIZE_SHORT MATCHES "4")
 
51
                set(CF_OPENMS_INT32_TYPE short)
 
52
        elseif (SIZE_LONG MATCHES "4")
 
53
                set(CF_OPENMS_INT32_TYPE long)
 
54
        else()
 
55
                Message(FATAL_ERROR "Cannot find signed 32bit integer type. Please contact the developers!")
 
56
        endif()
 
57
endif()
 
58
 
 
59
CHECK_TYPE_SIZE("int64_t" SIZE_INT64)
 
60
if (HAVE_SIZE_INT64)
 
61
        set(CF_OPENMS_INT64_TYPE int64_t)
 
62
else()
 
63
        ## search for another Int64 type
 
64
        if (SIZE_INT MATCHES "8")
 
65
                set(CF_OPENMS_INT64_TYPE int)
 
66
        elseif (SIZE_LONG MATCHES "8")
 
67
                set(CF_OPENMS_INT64_TYPE long)
 
68
        elseif (SIZE_LONGLONG MATCHES "8")
 
69
                set(CF_OPENMS_INT64_TYPE "long long")
 
70
        else()
 
71
                Message(FATAL_ERROR "Cannot find signed 64bit integer type. Please contact the developers!")
 
72
        endif()
 
73
endif()
 
74
 
 
75
CHECK_TYPE_SIZE("uint8_t" SIZE_UINT8)
 
76
if (HAVE_SIZE_UINT8)
 
77
        set(CF_OPENMS_BYTE_TYPE uint8_t)
 
78
else()
 
79
        ## search for another uint8 type
 
80
        if (SIZE_UCHAR MATCHES "1")
 
81
                set(CF_OPENMS_BYTE_TYPE "unsigned char")
 
82
        elseif (SIZE_USHORT MATCHES "1")
 
83
                set(CF_OPENMS_BYTE_TYPE "unsigned short")
 
84
        else()
 
85
                Message(FATAL_ERROR "Cannot find unsigned 8bit integer (byte) type. Please contact the developers!")
 
86
        endif()
 
87
endif()
 
88
 
 
89
 
 
90
CHECK_TYPE_SIZE("uint64_t" SIZE_UINT64)
 
91
if (HAVE_SIZE_UINT64)
 
92
        set(CF_OPENMS_UINT64_TYPE uint64_t)
 
93
else()
 
94
        ## search for another uint64 type
 
95
        if (SIZE_ULONG MATCHES "8")
 
96
                set(CF_OPENMS_UINT64_TYPE "unsigned long")
 
97
        elseif (SIZE_ULONGLONG MATCHES "8")
 
98
                set(CF_OPENMS_UINT64_TYPE "unsigned long long")
 
99
        else()
 
100
                Message(FATAL_ERROR "Cannot find uint64 type. Please contact the developers!")
 
101
        endif()
 
102
endif()
 
103
 
 
104
## system headers:
 
105
include(CheckIncludeFileCXX) ## Check if the include file exists.
 
106
 
 
107
CHECK_INCLUDE_FILE_CXX("unistd.h" OPENMS_HAS_UNISTD_H)
 
108
CHECK_INCLUDE_FILE_CXX("process.h" OPENMS_HAS_PROCESS_H)
 
109
 
 
110
CHECK_INCLUDE_FILE_CXX("time.h" OPENMS_HAS_TIME_H)
 
111
CHECK_INCLUDE_FILE_CXX("sys/types.h" OPENMS_HAS_SYS_TYPES_H)
 
112
CHECK_INCLUDE_FILE_CXX("sys/times.h" OPENMS_HAS_SYS_TIMES_H)
 
113
CHECK_INCLUDE_FILE_CXX("sys/time.h"  OPENMS_HAS_SYS_TIME_H)
 
114
CHECK_INCLUDE_FILE_CXX("stdint.h"  OPENMS_HAS_STDINT_H)
 
115
 
 
116
include(CheckFunctionExists)
 
117
## in MinGW we have the signal.h header, but no kill() as in Linux, so we need to check for the kill() function
 
118
CHECK_FUNCTION_EXISTS("kill" OPENMS_HAS_KILL)
 
119
CHECK_FUNCTION_EXISTS("sysconf" OPENMS_HAS_SYSCONF)
 
120
 
 
121
## user flag with default "QMYSQL" (put in config.h)
 
122
set(CF_QT_DB_PLUGIN "QMYSQL" CACHE STRING "User switch to change the Qt database plugin.")
 
123
 
 
124
## replace any variables in config.h.in with current values
 
125
set (CONFIGURED_CONFIG_H ${PROJECT_BINARY_DIR}/include/OpenMS/config.h)
 
126
configure_file(${PROJECT_SOURCE_DIR}/include/OpenMS/config.h.in ${CONFIGURED_CONFIG_H})
 
127
 
 
128
## replace any variables in openms_package_version.h.in with current values
 
129
set (CONFIGURED_OPENMS_PACKAGE_VERSION_H ${PROJECT_BINARY_DIR}/include/OpenMS/openms_package_version.h)
 
130
configure_file(${PROJECT_SOURCE_DIR}/include/OpenMS/openms_package_version.h.in ${CONFIGURED_OPENMS_PACKAGE_VERSION_H})