diff -r 3cad01db0bae -r 04363016580f cmake_modules/CMakePascalInformation.cmake --- a/cmake_modules/CMakePascalInformation.cmake Tue Mar 19 10:34:46 2013 +0100 +++ b/cmake_modules/CMakePascalInformation.cmake Tue Mar 19 10:35:10 2013 +0100 @@ -40,6 +40,7 @@ IF(NOT CMAKE_SHARED_LIBRARY_Pascal_FLAGS) #another similarity, fpc: -fPIC Same as -Cg + #(maybe required only for x86_64) SET(CMAKE_SHARED_LIBRARY_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_C_FLAGS}) ENDIF(NOT CMAKE_SHARED_LIBRARY_Pascal_FLAGS) @@ -157,13 +158,21 @@ # compile a Pascal file into an object file IF(NOT CMAKE_Pascal_COMPILE_OBJECT) - SET(CMAKE_Pascal_COMPILE_OBJECT - " -Cn -FE${EXECUTABLE_OUTPUT_PATH} -FU${CMAKE_CURRENT_BINARY_DIR}/ -Fi${CMAKE_CURRENT_BINARY_DIR} ") + #when you have multiple ld installation make sure you get the one bundled with the system C compiler + get_filename_component(CMAKE_C_COMPILER_DIR ${CMAKE_C_COMPILER} PATH) + if(APPLE) + #add user framework directory + set(CMAKE_Pascal_OSX_FLAGS "-Ff~/Library/Frameworks") + if(CMAKE_OSX_SYSROOT) + set(CMAKE_Pascal_OSX_FLAGS "-XD${CMAKE_OSX_SYSROOT} ${CMAKE_Pascal_OSX_FLAGS}") + endif(CMAKE_OSX_SYSROOT) + endif(APPLE) + SET(CMAKE_Pascal_COMPILE_OBJECT + " -Cn -FE${EXECUTABLE_OUTPUT_PATH} -FU${CMAKE_CURRENT_BINARY_DIR}/ -Fi${CMAKE_CURRENT_BINARY_DIR} -FD${CMAKE_C_COMPILER_DIR} ${CMAKE_Pascal_OSX_FLAGS} ") ENDIF(NOT CMAKE_Pascal_COMPILE_OBJECT) - +# link Pascal objects in a single executable IF(NOT CMAKE_Pascal_LINK_EXECUTABLE) -#GET_FILENAME_COMPONENT(COMPILER_LOCATION "${CMAKE_Pascal_COMPILER}" PATH) set(CMAKE_Pascal_LINK_EXECUTABLE "${EXECUTABLE_OUTPUT_PATH}/ppas.sh") # SET(CMAKE_Pascal_LINK_EXECUTABLE "${CMAKE_Pascal_COMPILER} .adb -cargs -largs ") ENDIF(NOT CMAKE_Pascal_LINK_EXECUTABLE)