author | koda |
Mon, 18 Mar 2013 10:06:07 +0100 | |
branch | cmake_pascal |
changeset 8754 | 0c08d07e791a |
parent 8752 | 48cf2ccb83c6 |
child 8758 | cb3b470f1000 |
permissions | -rw-r--r-- |
8750
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
1 |
# This file is used by EnableLanguage in cmGlobalGenerator to determine that |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
2 |
# the Ada builder GNAT_EXECUTABLE_BUILDER = gnatmake can actually compile |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
3 |
# and link the most basic of programs. If not, a fatal error is set and |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
4 |
# cmake stops processing commands and will not generate any makefiles or |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
5 |
# projects. |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
6 |
|
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
7 |
IF(NOT CMAKE_Pascal_COMPILER_WORKS) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
8 |
MESSAGE(STATUS "Check for working Pascal compiler: ${CMAKE_Pascal_COMPILER}") |
8754
0c08d07e791a
this should make cmake-pascal stuff work on linux too
koda
parents:
8752
diff
changeset
|
9 |
FILE(WRITE ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeTmp/testpascalcompiler.pas |
8750
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
10 |
"program testPascalCompiler; |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
11 |
begin |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
12 |
end. |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
13 |
") |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
14 |
|
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
15 |
FILE(WRITE ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeTmp/CMakeLists.txt |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
16 |
"set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake_modules) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
17 |
set(CMAKE_VERBOSE_MAKEFILE ON CACHE BOOL \"\" FORCE) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
18 |
project(test Pascal) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
19 |
add_executable(testpascalcompiler testpascalcompiler.pas) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
20 |
") |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
21 |
|
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
22 |
# To avoid try_compile recurse error, use any binary directory other than |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
23 |
# ${CMAKE_BINARY_DIR}. The choice of |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
24 |
# bindir = ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp is |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
25 |
# especially advantageous since it makes an in-source build which |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
26 |
# means that no special variables need to be set to find files. |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
27 |
try_compile(CMAKE_Pascal_COMPILER_WORKS |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
28 |
${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeTmp |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
29 |
${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeTmp |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
30 |
projectName |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
31 |
OUTPUT_VARIABLE OUTPUT |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
32 |
) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
33 |
SET(PASCAL_TEST_WAS_RUN 1) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
34 |
ENDIF(NOT CMAKE_Pascal_COMPILER_WORKS) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
35 |
|
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
36 |
IF(NOT CMAKE_Pascal_COMPILER_WORKS) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
37 |
MESSAGE(STATUS "Check for working Pascal compiler: ${CMAKE_Pascal_COMPILER} -- broken") |
8752
48cf2ccb83c6
with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents:
8750
diff
changeset
|
38 |
FILE(APPEND ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeError.log |
8750
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
39 |
"Determining if the Pascal compiler works failed with " |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
40 |
"the following output:\n${OUTPUT}\n\n") |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
41 |
MESSAGE(FATAL_ERROR "The Pascal builder \"${CMAKE_Pascal_COMPILER}\" " |
8752
48cf2ccb83c6
with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents:
8750
diff
changeset
|
42 |
"is not able to compile and link a simple test program.\nIt fails " |
8750
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
43 |
"with the following output:\n ${OUTPUT}\n\n" |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
44 |
"CMake will not be able to correctly generate this project.") |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
45 |
ELSE(NOT CMAKE_Pascal_COMPILER_WORKS) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
46 |
IF(PASCAL_TEST_WAS_RUN) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
47 |
MESSAGE(STATUS "Check for working Pascal compiler: ${CMAKE_Pascal_COMPILER} -- works") |
8752
48cf2ccb83c6
with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents:
8750
diff
changeset
|
48 |
FILE(APPEND ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeOutput.log |
8750
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
49 |
"Determining if the Pascal compiler works passed with " |
8752
48cf2ccb83c6
with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents:
8750
diff
changeset
|
50 |
"the following output:\n${OUTPUT}\n\n") |
8750
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
51 |
ENDIF(PASCAL_TEST_WAS_RUN) |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
52 |
SET(CMAKE_Pascal_COMPILER_WORKS 1 CACHE INTERNAL "") |
d9e57426e759
barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff
changeset
|
53 |
ENDIF(NOT CMAKE_Pascal_COMPILER_WORKS) |