equal
deleted
inserted
replaced
11 if (FPC_EXECUTABLE) |
11 if (FPC_EXECUTABLE) |
12 exec_program(${FPC_EXECUTABLE} ARGS "-v" OUTPUT_VARIABLE FPC_VERSION_FULL) |
12 exec_program(${FPC_EXECUTABLE} ARGS "-v" OUTPUT_VARIABLE FPC_VERSION_FULL) |
13 |
13 |
14 string(REGEX MATCH "[0-9]+\\.[0-9]+" FPC_VERSION_LONG "${FPC_VERSION_FULL}") |
14 string(REGEX MATCH "[0-9]+\\.[0-9]+" FPC_VERSION_LONG "${FPC_VERSION_FULL}") |
15 string(REGEX REPLACE "([0-9]+\\.[0-9]+)" "\\1" FPC_VERSION "${FPC_VERSION_LONG}") |
15 string(REGEX REPLACE "([0-9]+\\.[0-9]+)" "\\1" FPC_VERSION "${FPC_VERSION_LONG}") |
16 message(STATUS "Found Freepascal: ${FPC_EXECUTABLE} (version ${FPC_VERSION}") |
16 message(STATUS "Found Freepascal: ${FPC_EXECUTABLE} (version ${FPC_VERSION})") |
17 else() |
17 else() |
18 message(FATAL_ERROR "Could NOT find Freepascal") |
18 message(FATAL_ERROR "Could NOT find Freepascal") |
19 endif() |
19 endif() |
20 |
20 |
21 # Check for noexecstack flag support |
21 # Check for noexecstack flag support |
|
22 message(STATUS "Checking whether linker needs explicit noexecstack") |
22 set(NOEXECSTACK_FLAGS "-k-z" "-knoexecstack") |
23 set(NOEXECSTACK_FLAGS "-k-z" "-knoexecstack") |
23 file(WRITE ${EXECUTABLE_OUTPUT_PATH}/checkstack.pas "begin end.") |
24 file(WRITE ${EXECUTABLE_OUTPUT_PATH}/checkstack.pas "begin end.") |
24 |
25 |
25 execute_process(COMMAND ${FPC_EXECUTABLE} ${NOEXECSTACK_FLAGS} checkstack.pas |
26 execute_process(COMMAND ${FPC_EXECUTABLE} ${NOEXECSTACK_FLAGS} checkstack.pas |
26 WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} |
27 WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} |