aboutsummaryrefslogtreecommitdiff
path: root/utils/adlmidi-2/CMakeLists.txt
diff options
context:
space:
mode:
authorWohlstand <admin@wohlnet.ru>2021-01-07 13:17:37 +0300
committerWohlstand <admin@wohlnet.ru>2021-01-07 13:17:37 +0300
commit57485b48ca9ce31e6b94b1ce5f1d892ff0b786bf (patch)
tree6efc3ff09f4cde2d9d0a7233518031b071d456af /utils/adlmidi-2/CMakeLists.txt
parent2712113e3895988a0f712e8bd1c0e109e6d6f139 (diff)
downloadlibADLMIDI-57485b48ca9ce31e6b94b1ce5f1d892ff0b786bf.tar.gz
libADLMIDI-57485b48ca9ce31e6b94b1ce5f1d892ff0b786bf.tar.bz2
libADLMIDI-57485b48ca9ce31e6b94b1ce5f1d892ff0b786bf.zip
adlmidi2: Add the test check for termio and termios type
#241
Diffstat (limited to 'utils/adlmidi-2/CMakeLists.txt')
-rw-r--r--utils/adlmidi-2/CMakeLists.txt15
1 files changed, 15 insertions, 0 deletions
diff --git a/utils/adlmidi-2/CMakeLists.txt b/utils/adlmidi-2/CMakeLists.txt
index 6be0332..71dfbb7 100644
--- a/utils/adlmidi-2/CMakeLists.txt
+++ b/utils/adlmidi-2/CMakeLists.txt
@@ -13,6 +13,9 @@ if(NOT ADLMIDI_DOS)
option(ADLMIDI2_VIDEO_OUT_SUPPORT "Allow video recording with using of FFMPEG" ON)
endif()
+try_compile(HAS_TERMIO ${CMAKE_BINARY_DIR}/compile_tests "${CMAKE_CURRENT_SOURCE_DIR}/cmake/check-termio.c")
+try_compile(HAS_TERMIOS ${CMAKE_BINARY_DIR}/compile_tests "${CMAKE_CURRENT_SOURCE_DIR}/cmake/check-termios.c")
+
set(adlmidi2_src)
list(APPEND adlmidi2_src
midiplay.cc
@@ -33,6 +36,18 @@ endif()
set_nopie(adlmidi2)
+if(HAS_TERMIO)
+ target_compile_definitions(adlmidi2 PRIVATE -DHAS_TERMIO)
+endif()
+
+if(HAS_TERMIOS)
+ target_compile_definitions(adlmidi2 PRIVATE -DHAS_TERMIOS)
+endif()
+
+if(NOT HAS_TERMIO AND NOT HAS_TERMIOS)
+ message(FATAL_ERROR "Failed to recognize the termio or termios terminal I/O type")
+endif()
+
if(ADLMIDI2_HAS_PUZZLE_GAME)
target_compile_definitions(adlmidi2 PUBLIC SUPPORT_PUZZLE_GAME)
endif()