diff options
-rw-r--r-- | CMakeLists.txt | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 168eb01..360b931 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,21 +2,29 @@ cmake_minimum_required(VERSION 3.10) project(extent-sampling VERSION 0.1.0) find_package(GSL REQUIRED) -# TODO: Make indent optional -find_program(INDENT NAMES indent REQUIRED) find_program(SC NAMES sc REQUIRED) +find_program(INDENT NAMES indent) -# Generate C source files from SC source files. +# Generate C source files from SC source files, and optionally indent +# them. file(GLOB SC_SOURCES "src/*.sc") foreach(sc_source ${SC_SOURCES}) get_filename_component(source_basename ${sc_source} NAME_WE) set(c_file ${source_basename}.c) - add_custom_command( - OUTPUT ${c_file} - COMMAND ${SC} ${sc_source} ${c_file} - COMMAND ${INDENT} ${c_file} - DEPENDS ${sc_source} src/macros/macros.sc - VERBATIM) + if(${INDENT} STREQUAL INDENT-NOTFOUND) + add_custom_command( + OUTPUT ${c_file} + COMMAND ${SC} ${sc_source} ${c_file} + DEPENDS ${sc_source} src/macros/macros.sc + VERBATIM) + else() + add_custom_command( + OUTPUT ${c_file} + COMMAND ${SC} ${sc_source} ${c_file} + COMMAND ${INDENT} ${c_file} + DEPENDS ${sc_source} src/macros/macros.sc + VERBATIM) + endif() list(APPEND C_SOURCES ${c_file}) endforeach() |