33 lines
1.2 KiB
CMake
33 lines
1.2 KiB
CMake
|
# Swift language support
|
||
|
cmake_minimum_required (VERSION 3.15)
|
||
|
|
||
|
file (READ ../xK-version project_version)
|
||
|
configure_file (../xK-version xK-version.tag COPYONLY)
|
||
|
string (STRIP "${project_version}" project_version)
|
||
|
|
||
|
# There were two issues when building this from the main CMakeLists.txt:
|
||
|
# a) renaming main.swift to xM.swift requires removing top-level statements,
|
||
|
# b) there is a "redefinition of module 'FFI'" error.
|
||
|
project (xM VERSION "${project_version}"
|
||
|
DESCRIPTION "Cocoa frontend for xC" LANGUAGES Swift)
|
||
|
|
||
|
set (root "${PROJECT_SOURCE_DIR}/..")
|
||
|
add_custom_command (OUTPUT xC-proto.swift
|
||
|
COMMAND env LC_ALL=C awk
|
||
|
-f ${root}/liberty/tools/lxdrgen.awk
|
||
|
-f ${root}/liberty/tools/lxdrgen-swift.awk
|
||
|
-v PrefixCamel=Relay
|
||
|
${root}/xC.lxdr > xC-proto.swift
|
||
|
DEPENDS
|
||
|
${root}/liberty/tools/lxdrgen.awk
|
||
|
${root}/liberty/tools/lxdrgen-swift.awk
|
||
|
${root}/xC.lxdr
|
||
|
COMMENT "Generating xC relay protocol code" VERBATIM)
|
||
|
|
||
|
set (MACOSX_BUNDLE_GUI_IDENTIFIER name.janouch.${PROJECT_NAME})
|
||
|
|
||
|
# Other requirements: macOS 10.14 for Network, and macOS 11 for Logger.
|
||
|
set (CMAKE_Swift_LANGUAGE_VERSION 5)
|
||
|
add_executable (xM MACOSX_BUNDLE
|
||
|
main.swift ${PROJECT_BINARY_DIR}/xC-proto.swift)
|