tools/pas2c/CMakeLists.txt
author koda
Tue, 21 Jan 2014 22:38:13 +0100
changeset 10015 4feced261c68
parent 9238 84e591af6c29
child 13884 4f123ac4f002
permissions -rw-r--r--
partial merge of the webgl branch This commit contains the new pas2c conversion tool, the pascal to c build structure and the opengl2 rendering backend. Patch reviewed by unC0Rr.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9238
84e591af6c29 little cleanup after so many merges
koda
parents: 8044
diff changeset
     1
find_package(GHC REQUIRED)
84e591af6c29 little cleanup after so many merges
koda
parents: 8044
diff changeset
     2
7973
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
     3
set(pas2c_sources
7985
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
     4
        Main.hs
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
     5
        PascalBasics.hs
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
     6
        PascalParser.hs
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
     7
        PascalPreprocessor.hs
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
     8
        PascalUnitSyntaxTree.hs
8044
796f2653f21d some CMake cleanup
koda
parents: 7985
diff changeset
     9
        Pas2C.hs
7985
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    10
    )
7973
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    11
8044
796f2653f21d some CMake cleanup
koda
parents: 7985
diff changeset
    12
set(pas2c_main ${CMAKE_SOURCE_DIR}/tools/pas2c/Main.hs)
7973
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    13
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    14
set(ghc_flags
7985
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    15
        --make ${pas2c_main}
8044
796f2653f21d some CMake cleanup
koda
parents: 7985
diff changeset
    16
        -i${CMAKE_SOURCE_DIR}/tools/pas2c/
7985
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    17
        -o ${EXECUTABLE_OUTPUT_PATH}/pas2c${CMAKE_EXECUTABLE_SUFFIX}
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    18
        -odir ${CMAKE_CURRENT_BINARY_DIR}
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    19
        -hidir ${CMAKE_CURRENT_BINARY_DIR}
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    20
        ${haskell_flags}
259231ebf099 well this was silly
koda
parents: 7973
diff changeset
    21
    )
7973
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    22
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    23
add_custom_command(OUTPUT "${EXECUTABLE_OUTPUT_PATH}/pas2c${CMAKE_EXECUTABLE_SUFFIX}"
9238
84e591af6c29 little cleanup after so many merges
koda
parents: 8044
diff changeset
    24
        COMMAND "${GHC_EXECUTABLE}"
7973
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    25
        ARGS ${ghc_flags}
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    26
        MAIN_DEPENDENCY ${hwserv_main}
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    27
        DEPENDS ${hwserver_sources}
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    28
        )
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    29
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    30
add_custom_target(pas2c ALL DEPENDS "${EXECUTABLE_OUTPUT_PATH}/pas2c${CMAKE_EXECUTABLE_SUFFIX}")
afb67e34a6b5 add CMakeFile for pas2c, add WEBGL config option
koda
parents:
diff changeset
    31