diff -r fcb87b74ea7e -r a9957b7797f3 cmake_modules/FindGHC.cmake --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cmake_modules/FindGHC.cmake Wed Mar 06 16:40:56 2013 +0100 @@ -0,0 +1,38 @@ +# - Try to find the Glasgow Haskell Compiler executable +# Once done this will define +# +# GHC_FOUND - system has GHC +# GHC_VERSION - GHC version +# GHC_EXECUTABLE - GHC executable +# +# Copyright (c) 2013, Vittorio Giovara +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +find_program(GHC_EXECUTABLE + NAMES ghc + PATHS /opt/local/bin /usr/local/bin /usr/bin + ) + +if (GHC_EXECUTABLE) + # check Freepascal version + execute_process(COMMAND ${GHC_EXECUTABLE} -V + OUTPUT_VARIABLE GHC_VERSION_OUTPUT + ERROR_VARIABLE GHC_VERSION_ERROR + RESULT_VARIABLE GHC_VERSION_RESULT + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + + if(${GHC_VERSION_RESULT} EQUAL 0) + string(REGEX MATCH "([0-9]+)" GHC_VERSION ${GHC_VERSION_OUTPUT}) + else() + message(SEND_ERROR "Command \"${GHC_EXECUTABLE} -V\" failed with output: ${GHC_VERSION_ERROR}") + endif() +endif() + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(GHC DEFAULT_MSG GHC_EXECUTABLE GHC_VERSION) +mark_as_advanced(GHC_VERSION) +