if(NOT DEFINED INPUT) message(FATAL_ERROR "write_json_header.cmake: INPUT not defined") endif() if(NOT DEFINED OUTPUT) message(FATAL_ERROR "write_json_header.cmake: OUTPUT not defined") endif() find_package(Python3 COMPONENTS Interpreter REQUIRED) execute_process( COMMAND ${Python3_EXECUTABLE} -c "import json,sys;print(json.dumps(json.load(open(sys.argv[1])),separators=(', ',':')) )" ${INPUT} OUTPUT_VARIABLE MINIFIED_JSON OUTPUT_STRIP_TRAILING_WHITESPACE ) if(NOT MINIFIED_JSON) message(FATAL_ERROR "write_json_header.cmake: failed to minify ${INPUT}") endif() file(WRITE ${OUTPUT} "#pragma once\nstatic const char MTR_LINE_STATION_JSON[] = R\"json(${MINIFIED_JSON})json\";\n")