From 9802130c71a3bb885beb16e2193e49e753bd8019 Mon Sep 17 00:00:00 2001 From: Robert Sipka Date: Fri, 9 Dec 2016 11:50:59 +0100 Subject: [PATCH] Fix the order in cmake build settings/options and their status messages. (#1480) JerryScript-DCO-1.0-Signed-off-by: Robert Sipka rsipka.uszeged@partner.samsung.com --- CMakeLists.txt | 22 +++---- jerry-core/CMakeLists.txt | 129 +++++++++++++++++++------------------- tools/build.py | 93 +++++++++++++-------------- 3 files changed, 123 insertions(+), 121 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 87565b94e..d8152889f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,17 +23,17 @@ string(TOUPPER "${PLATFORM}" PLATFORM) set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS ) # Components +set(JERRY_CMDLINE ON CACHE BOOL "Build jerry command line tool?") set(JERRY_LIBC ON CACHE BOOL "Build and use jerry-libc?") set(JERRY_LIBM ON CACHE BOOL "Build and use jerry-libm?") -set(JERRY_CMDLINE ON CACHE BOOL "Build jerry command line tool?") set(UNITTESTS OFF CACHE BOOL "Build unit tests?") # Optional build settings -set(PORT_DIR "${CMAKE_SOURCE_DIR}/targets/default" CACHE STRING "Use default or external port?") -set(ENABLE_LTO ON CACHE BOOL "Enable LTO build?") set(ENABLE_ALL_IN_ONE OFF CACHE BOOL "Enable all-in-one build?") -set(ENABLE_STRIP ON CACHE BOOL "Enable stripping all symbols from release binary?") +set(ENABLE_LTO ON CACHE BOOL "Enable LTO build?") set(ENABLE_STATIC_LINK ON CACHE BOOL "Enable static linking?") +set(ENABLE_STRIP ON CACHE BOOL "Enable stripping all symbols from release binary?") +set(PORT_DIR "${CMAKE_SOURCE_DIR}/targets/default" CACHE STRING "Use default or external port?") if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE "Release") @@ -48,18 +48,18 @@ if("${PLATFORM}" STREQUAL "DARWIN") endif() # Status messages +message(STATUS "CMAKE_BUILD_TYPE " ${CMAKE_BUILD_TYPE}) message(STATUS "CMAKE_SYSTEM_NAME " ${CMAKE_SYSTEM_NAME}) message(STATUS "CMAKE_SYSTEM_PROCESSOR " ${CMAKE_SYSTEM_PROCESSOR}) -message(STATUS "CMAKE_BUILD_TYPE " ${CMAKE_BUILD_TYPE}) +message(STATUS "ENABLE_ALL_IN_ONE " ${ENABLE_ALL_IN_ONE}) +message(STATUS "ENABLE_LTO " ${ENABLE_LTO}) +message(STATUS "ENABLE_STATIC_LINK " ${ENABLE_STATIC_LINK}) +message(STATUS "ENABLE_STRIP " ${ENABLE_STRIP}) +message(STATUS "JERRY_CMDLINE " ${JERRY_CMDLINE}) message(STATUS "JERRY_LIBC " ${JERRY_LIBC}) message(STATUS "JERRY_LIBM " ${JERRY_LIBM}) -message(STATUS "JERRY_CMDLINE " ${JERRY_CMDLINE}) -message(STATUS "UNITTESTS " ${UNITTESTS}) message(STATUS "PORT_DIR " ${PORT_DIR}) -message(STATUS "ENABLE_LTO " ${ENABLE_LTO}) -message(STATUS "ENABLE_ALL_IN_ONE " ${ENABLE_ALL_IN_ONE}) -message(STATUS "ENABLE_STRIP " ${ENABLE_STRIP}) -message(STATUS "ENABLE_STATIC_LINK " ${ENABLE_STATIC_LINK}) +message(STATUS "UNITTESTS " ${UNITTESTS}) # Setup directories # Project binary dir diff --git a/jerry-core/CMakeLists.txt b/jerry-core/CMakeLists.txt index 23052b600..592b83f6c 100644 --- a/jerry-core/CMakeLists.txt +++ b/jerry-core/CMakeLists.txt @@ -17,31 +17,31 @@ set(JERRY_CORE_NAME jerry-core) project (${JERRY_CORE_NAME} C) # Optional features -set(FEATURE_PROFILE "es5.1" CACHE STRING "Profile types: es5.1, minimal, es2015-subset") +set(FEATURE_CPOINTER_32_BIT OFF CACHE BOOL "Enable 32 bit compressed pointers?") set(FEATURE_ERROR_MESSAGES OFF CACHE BOOL "Enable error messages?") +set(FEATURE_MEM_STATS OFF CACHE BOOL "Enable memory statistics?") +set(FEATURE_MEM_STRESS_TEST OFF CACHE BOOL "Enable mem-stress test?") +set(FEATURE_PARSER_DUMP OFF CACHE BOOL "Enable parser byte-code dumps?") +set(FEATURE_PROFILE "es5.1" CACHE STRING "Profile types: es5.1, minimal, es2015-subset") +set(FEATURE_REGEXP_DUMP OFF CACHE BOOL "Enable regexp byte-code dumps?") +set(FEATURE_SNAPSHOT_EXEC OFF CACHE BOOL "Enable executing snapshot files?") +set(FEATURE_SNAPSHOT_SAVE OFF CACHE BOOL "Enable saving snapshot files?") set(FEATURE_VALGRIND OFF CACHE BOOL "Enable Valgrind support?") set(FEATURE_VALGRIND_FREYA OFF CACHE BOOL "Enable Valgrind-Freya support?") -set(FEATURE_CPOINTER_32_BIT OFF CACHE BOOL "Enable 32 bit compressed pointers?") -set(FEATURE_MEM_STRESS_TEST OFF CACHE BOOL "Enable mem-stress test?") -set(FEATURE_MEM_STATS OFF CACHE BOOL "Enable memory statistics?") -set(FEATURE_PARSER_DUMP OFF CACHE BOOL "Enable parser byte-code dumps?") -set(FEATURE_REGEXP_DUMP OFF CACHE BOOL "Enable regexp byte-code dumps?") -set(FEATURE_SNAPSHOT_SAVE OFF CACHE BOOL "Enable saving snapshot files?") -set(FEATURE_SNAPSHOT_EXEC OFF CACHE BOOL "Enable executing snapshot files?") set(MEM_HEAP_SIZE_KB "512" CACHE STRING "Size of memory heap, in kilobytes") # Status messages -message(STATUS "FEATURE_PROFILE " ${FEATURE_PROFILE}) +message(STATUS "FEATURE_CPOINTER_32_BIT " ${FEATURE_CPOINTER_32_BIT}) message(STATUS "FEATURE_ERROR_MESSAGES " ${FEATURE_ERROR_MESSAGES}) +message(STATUS "FEATURE_MEM_STATS " ${FEATURE_MEM_STATS}) +message(STATUS "FEATURE_MEM_STRESS_TEST " ${FEATURE_MEM_STRESS_TEST}) +message(STATUS "FEATURE_PARSER_DUMP " ${FEATURE_PARSER_DUMP}) +message(STATUS "FEATURE_PROFILE " ${FEATURE_PROFILE}) +message(STATUS "FEATURE_REGEXP_DUMP " ${FEATURE_REGEXP_DUMP}) +message(STATUS "FEATURE_SNAPSHOT_EXEC " ${FEATURE_SNAPSHOT_EXEC}) +message(STATUS "FEATURE_SNAPSHOT_SAVE " ${FEATURE_SNAPSHOT_SAVE}) message(STATUS "FEATURE_VALGRIND " ${FEATURE_VALGRIND}) message(STATUS "FEATURE_VALGRIND_FREYA " ${FEATURE_VALGRIND_FREYA}) -message(STATUS "FEATURE_CPOINTER_32_BIT " ${FEATURE_CPOINTER_32_BIT}) -message(STATUS "FEATURE_MEM_STRESS_TEST " ${FEATURE_MEM_STRESS_TEST}) -message(STATUS "FEATURE_MEM_STATS " ${FEATURE_MEM_STATS}) -message(STATUS "FEATURE_PARSER_DUMP " ${FEATURE_PARSER_DUMP}) -message(STATUS "FEATURE_REGEXP_DUMP " ${FEATURE_REGEXP_DUMP}) -message(STATUS "FEATURE_SNAPSHOT_SAVE " ${FEATURE_SNAPSHOT_SAVE}) -message(STATUS "FEATURE_SNAPSHOT_EXEC " ${FEATURE_SNAPSHOT_EXEC}) message(STATUS "MEM_HEAP_SIZE_KB " ${MEM_HEAP_SIZE_KB}) # Include directories @@ -116,6 +116,37 @@ if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug") set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_NDEBUG) endif() +# Jerry heap-section +if(DEFINED JERRY_HEAP_SECTION_ATTR) + set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_HEAP_SECTION_ATTR=${JERRY_HEAP_SECTION_ATTR}) +endif() + +# Checks the optional features +# Enable 32 bit cpointers +if(FEATURE_CPOINTER_32_BIT) + set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_CPOINTER_32_BIT) +endif() + +# Fill error messages for builtin error objects +if(FEATURE_ERROR_MESSAGES) + set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_ENABLE_ERROR_MESSAGES) +endif() + +# Memory statistics +if(FEATURE_MEM_STATS) + set(DEFINES_JERRY ${DEFINES_JERRY} JMEM_STATS) +endif() + +# Memory management stress-test mode +if(FEATURE_MEM_STRESS_TEST) + set(DEFINES_JERRY ${DEFINES_JERRY} JMEM_GC_BEFORE_EACH_ALLOC) +endif() + +# Parser byte-code dumps +if(FEATURE_PARSER_DUMP) + set(DEFINES_JERRY ${DEFINES_JERRY} PARSER_DUMP_BYTE_CODE) +endif() + # Profile modes set(CONFIG_DISABLE_ES2015 CONFIG_DISABLE_ARRAYBUFFER_BUILTIN) @@ -123,16 +154,16 @@ set(CONFIG_DISABLE_ES2015 if(FEATURE_PROFILE STREQUAL "minimal") set(DEFINES_JERRY ${DEFINES_JERRY} ${CONFIG_DISABLE_ES2015} - CONFIG_DISABLE_NUMBER_BUILTIN - CONFIG_DISABLE_STRING_BUILTIN - CONFIG_DISABLE_BOOLEAN_BUILTIN - CONFIG_DISABLE_ERROR_BUILTINS + CONFIG_DISABLE_ANNEXB_BUILTIN CONFIG_DISABLE_ARRAY_BUILTIN - CONFIG_DISABLE_MATH_BUILTIN - CONFIG_DISABLE_JSON_BUILTIN + CONFIG_DISABLE_BOOLEAN_BUILTIN CONFIG_DISABLE_DATE_BUILTIN + CONFIG_DISABLE_ERROR_BUILTINS + CONFIG_DISABLE_JSON_BUILTIN + CONFIG_DISABLE_MATH_BUILTIN + CONFIG_DISABLE_NUMBER_BUILTIN CONFIG_DISABLE_REGEXP_BUILTIN - CONFIG_DISABLE_ANNEXB_BUILTIN) + CONFIG_DISABLE_STRING_BUILTIN) elseif(FEATURE_PROFILE STREQUAL "es5.1") set(DEFINES_JERRY ${DEFINES_JERRY} ${CONFIG_DISABLE_ES2015}) @@ -140,14 +171,19 @@ elseif(NOT FEATURE_PROFILE STREQUAL "es2015-subset") message(FATAL_ERROR "FEATURE_PROFILE='${FEATURE_PROFILE}' isn't supported") endif() -# Jerry heap-section -if(DEFINED JERRY_HEAP_SECTION_ATTR) - set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_HEAP_SECTION_ATTR=${JERRY_HEAP_SECTION_ATTR}) +# RegExp byte-code dumps +if(FEATURE_REGEXP_DUMP) + set(DEFINES_JERRY ${DEFINES_JERRY} REGEXP_DUMP_BYTE_CODE) endif() -# Fill error messages for builtin error objects -if(FEATURE_ERROR_MESSAGES) - set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_ENABLE_ERROR_MESSAGES) +# Snapshot exec +if(FEATURE_SNAPSHOT_EXEC) + set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_ENABLE_SNAPSHOT_EXEC) +endif() + +# Snapshot save +if(FEATURE_SNAPSHOT_SAVE) + set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_ENABLE_SNAPSHOT_SAVE) endif() # Valgrind @@ -162,41 +198,6 @@ if(FEATURE_VALGRIND_FREYA) set(INCLUDE_CORE ${INCLUDE_CORE} ${INCLUDE_THIRD_PARTY_VALGRIND}) endif() -# Enable 32 bit cpointers -if(FEATURE_CPOINTER_32_BIT) - set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_CPOINTER_32_BIT) -endif() - -# Memory management stress-test mode -if(FEATURE_MEM_STRESS_TEST) - set(DEFINES_JERRY ${DEFINES_JERRY} JMEM_GC_BEFORE_EACH_ALLOC) -endif() - -# Memory statistics -if(FEATURE_MEM_STATS) - set(DEFINES_JERRY ${DEFINES_JERRY} JMEM_STATS) -endif() - -# Parser byte-code dumps -if(FEATURE_PARSER_DUMP) - set(DEFINES_JERRY ${DEFINES_JERRY} PARSER_DUMP_BYTE_CODE) -endif() - -# RegExp byte-code dumps -if(FEATURE_REGEXP_DUMP) - set(DEFINES_JERRY ${DEFINES_JERRY} REGEXP_DUMP_BYTE_CODE) -endif() - -# Snapshot save -if(FEATURE_SNAPSHOT_SAVE) - set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_ENABLE_SNAPSHOT_SAVE) -endif() - -# Snapshot exec -if(FEATURE_SNAPSHOT_EXEC) - set(DEFINES_JERRY ${DEFINES_JERRY} JERRY_ENABLE_SNAPSHOT_EXEC) -endif() - # Size of heap math(EXPR MEM_HEAP_AREA_SIZE "${MEM_HEAP_SIZE_KB} * 1024") set(DEFINES_JERRY ${DEFINES_JERRY} CONFIG_MEM_HEAP_AREA_SIZE=${MEM_HEAP_AREA_SIZE}) diff --git a/tools/build.py b/tools/build.py index 9dfaa1aff..39afc31d8 100755 --- a/tools/build.py +++ b/tools/build.py @@ -41,38 +41,38 @@ def get_arguments(): return help if devhelp_arguments.devhelp else argparse.SUPPRESS parser = argparse.ArgumentParser(parents=[devhelp_preparser]) - parser.add_argument('-v', '--verbose', action='store_const', const='ON', default='OFF', help='increase verbosity') - parser.add_argument('--clean', action='store_true', default=False, help='clean build') - parser.add_argument('-j', '--jobs', metavar='N', action='store', type=int, default=multiprocessing.cpu_count() + 1, help='Allowed N build jobs at once (default: %(default)s)') - parser.add_argument('--debug', action='store_const', const='Debug', default='Release', dest='build_type', help='debug build') - parser.add_argument('--builddir', metavar='DIR', action='store', default=BUILD_DIR, help='specify output directory (default: %(default)s)') - parser.add_argument('--lto', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='enable link-time optimizations (%(choices)s; default: %(default)s)') parser.add_argument('--all-in-one', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='all-in-one build (%(choices)s; default: %(default)s)') - parser.add_argument('--profile', metavar='PROFILE', choices=['es5.1', 'minimal', 'es2015-subset'], default='es5.1', type=str.lower, help='specify the profile (%(choices)s; default: %(default)s)') - parser.add_argument('--error-messages', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable error messages (%(choices)s; default: %(default)s)') - parser.add_argument('--snapshot-save', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable saving snapshot files (%(choices)s; default: %(default)s)') - parser.add_argument('--snapshot-exec', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable executing snapshot files (%(choices)s; default: %(default)s)') - parser.add_argument('--cpointer-32bit', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable 32 bit compressed pointers (%(choices)s; default: %(default)s)') - parser.add_argument('--toolchain', metavar='FILE', action='store', default=default_toolchain(), help='add toolchain file (default: %(default)s)') + parser.add_argument('--builddir', metavar='DIR', action='store', default=BUILD_DIR, help='specify output directory (default: %(default)s)') + parser.add_argument('--clean', action='store_true', default=False, help='clean build') parser.add_argument('--cmake-param', metavar='OPT', action='append', default=[], help='add custom argument to CMake') parser.add_argument('--compile-flag', metavar='OPT', action='append', default=[], help='add custom compile flag') - parser.add_argument('--linker-flag', metavar='OPT', action='append', default=[], help='add custom linker flag') - parser.add_argument('--link-lib', metavar='OPT', action='append', default=[], help='add custom library to be linked') + parser.add_argument('--cpointer-32bit', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable 32 bit compressed pointers (%(choices)s; default: %(default)s)') + parser.add_argument('--debug', action='store_const', const='Debug', default='Release', dest='build_type', help='debug build') + parser.add_argument('--error-messages', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable error messages (%(choices)s; default: %(default)s)') + parser.add_argument('-j', '--jobs', metavar='N', action='store', type=int, default=multiprocessing.cpu_count() + 1, help='Allowed N build jobs at once (default: %(default)s)') + parser.add_argument('--jerry-cmdline', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='build jerry command line tool (%(choices)s; default: %(default)s)') parser.add_argument('--jerry-libc', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='build and use jerry-libc (%(choices)s; default: %(default)s)') parser.add_argument('--jerry-libm', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='build and use jerry-libm (%(choices)s; default: %(default)s)') - parser.add_argument('--jerry-cmdline', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='build jerry command line tool (%(choices)s; default: %(default)s)') + parser.add_argument('--link-lib', metavar='OPT', action='append', default=[], help='add custom library to be linked') + parser.add_argument('--linker-flag', metavar='OPT', action='append', default=[], help='add custom linker flag') + parser.add_argument('--lto', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='enable link-time optimizations (%(choices)s; default: %(default)s)') + parser.add_argument('--profile', metavar='PROFILE', choices=['es5.1', 'minimal', 'es2015-subset'], default='es5.1', type=str.lower, help='specify the profile (%(choices)s; default: %(default)s)') + parser.add_argument('--snapshot-exec', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable executing snapshot files (%(choices)s; default: %(default)s)') + parser.add_argument('--snapshot-save', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help='enable saving snapshot files (%(choices)s; default: %(default)s)') parser.add_argument('--static-link', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='enable static linking of binaries (%(choices)s; default: %(default)s)') parser.add_argument('--strip', metavar='X', choices=['ON', 'OFF'], default='ON', type=str.upper, help='strip release binaries (%(choices)s; default: %(default)s)') + parser.add_argument('--toolchain', metavar='FILE', action='store', default=default_toolchain(), help='add toolchain file (default: %(default)s)') parser.add_argument('--unittests', action='store_const', const='ON', default='OFF', help='build unittests') + parser.add_argument('-v', '--verbose', action='store_const', const='ON', default='OFF', help='increase verbosity') devgroup = parser.add_argument_group('developer options') - devgroup.add_argument('--valgrind', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable Valgrind support (%(choices)s; default: %(default)s)')) - devgroup.add_argument('--valgrind-freya', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable Valgrind-Freya support (%(choices)s; default: %(default)s)')) - devgroup.add_argument('--show-opcodes', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable parser byte-code dumps (%(choices)s; default: %(default)s)')) - devgroup.add_argument('--show-regexp-opcodes', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable regexp byte-code dumps (%(choices)s; default: %(default)s)')) + devgroup.add_argument('--link-map', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable the generation of a link map file for jerry command line tool (%(choices)s; default: %(default)s)')) devgroup.add_argument('--mem-stats', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable memory statistics (%(choices)s; default: %(default)s)')) devgroup.add_argument('--mem-stress-test', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable mem-stress test (%(choices)s; default: %(default)s)')) - devgroup.add_argument('--link-map', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable the generation of a link map file for jerry command line tool (%(choices)s; default: %(default)s)')) + devgroup.add_argument('--show-opcodes', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable parser byte-code dumps (%(choices)s; default: %(default)s)')) + devgroup.add_argument('--show-regexp-opcodes', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable regexp byte-code dumps (%(choices)s; default: %(default)s)')) + devgroup.add_argument('--valgrind', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable Valgrind support (%(choices)s; default: %(default)s)')) + devgroup.add_argument('--valgrind-freya', metavar='X', choices=['ON', 'OFF'], default='OFF', type=str.upper, help=devhelp('enable Valgrind-Freya support (%(choices)s; default: %(default)s)')) arguments = parser.parse_args(args) if arguments.devhelp: @@ -84,37 +84,38 @@ def get_arguments(): def generate_build_options(arguments): build_options = [] + build_options.append('-DENABLE_ALL_IN_ONE=%s' % arguments.all_in_one) + build_options.append('-DCMAKE_BUILD_TYPE=%s' % arguments.build_type) + build_options.extend(arguments.cmake_param) + build_options.append('-DEXTERNAL_COMPILE_FLAGS=' + ' '.join(arguments.compile_flag)) + build_options.append('-DFEATURE_CPOINTER_32_BIT=%s' % arguments.cpointer_32bit) + build_options.append('-DFEATURE_ERROR_MESSAGES=%s' % arguments.error_messages) + build_options.append('-DJERRY_CMDLINE=%s' % arguments.jerry_cmdline) build_options.append('-DJERRY_LIBC=%s' % arguments.jerry_libc) build_options.append('-DJERRY_LIBM=%s' % arguments.jerry_libm) - build_options.append('-DJERRY_CMDLINE=%s' % arguments.jerry_cmdline) - build_options.append('-DCMAKE_VERBOSE_MAKEFILE=%s' % arguments.verbose) - build_options.append('-DCMAKE_BUILD_TYPE=%s' % arguments.build_type) - build_options.append('-DFEATURE_PROFILE=%s' % arguments.profile) - build_options.append('-DFEATURE_ERROR_MESSAGES=%s' % arguments.error_messages) - build_options.append('-DFEATURE_VALGRIND=%s' % arguments.valgrind) - build_options.append('-DFEATURE_VALGRIND_FREYA=%s' % arguments.valgrind_freya) - build_options.append('-DFEATURE_PARSER_DUMP=%s' % arguments.show_opcodes) - build_options.append('-DFEATURE_REGEXP_DUMP=%s' % arguments.show_regexp_opcodes) - build_options.append('-DFEATURE_CPOINTER_32_BIT=%s' % arguments.cpointer_32bit) - build_options.append('-DFEATURE_MEM_STATS=%s' % arguments.mem_stats) - build_options.append('-DFEATURE_MEM_STRESS_TEST=%s' % arguments.mem_stress_test) - build_options.append('-DFEATURE_SNAPSHOT_SAVE=%s' % arguments.snapshot_save) - build_options.append('-DFEATURE_SNAPSHOT_EXEC=%s' % arguments.snapshot_exec) - build_options.append('-DENABLE_ALL_IN_ONE=%s' % arguments.all_in_one) - build_options.append('-DENABLE_LTO=%s' % arguments.lto) - build_options.append('-DENABLE_STRIP=%s' % arguments.strip) - build_options.append('-DUNITTESTS=%s' % arguments.unittests) - build_options.append('-DENABLE_STATIC_LINK=%s' % arguments.static_link) - build_options.append('-DENABLE_LINK_MAP=%s' % arguments.link_map) - - build_options.extend(arguments.cmake_param) - - build_options.append('-DEXTERNAL_COMPILE_FLAGS=' + ' '.join(arguments.compile_flag)) - build_options.append('-DEXTERNAL_LINKER_FLAGS=' + ' '.join(arguments.linker_flag)) build_options.append('-DEXTERNAL_LINK_LIBS=' + ' '.join(arguments.link_lib)) + build_options.append('-DEXTERNAL_LINKER_FLAGS=' + ' '.join(arguments.linker_flag)) + build_options.append('-DENABLE_LTO=%s' % arguments.lto) + build_options.append('-DFEATURE_PROFILE=%s' % arguments.profile) + build_options.append('-DFEATURE_SNAPSHOT_EXEC=%s' % arguments.snapshot_exec) + build_options.append('-DFEATURE_SNAPSHOT_SAVE=%s' % arguments.snapshot_save) + build_options.append('-DENABLE_STATIC_LINK=%s' % arguments.static_link) + build_options.append('-DENABLE_STRIP=%s' % arguments.strip) if arguments.toolchain: - build_options.append('-DCMAKE_TOOLCHAIN_FILE=%s' % arguments.toolchain) + build_options.append('-DCMAKE_TOOLCHAIN_FILE=%s' % arguments.toolchain) + + build_options.append('-DUNITTESTS=%s' % arguments.unittests) + build_options.append('-DCMAKE_VERBOSE_MAKEFILE=%s' % arguments.verbose) + + # developer options + build_options.append('-DENABLE_LINK_MAP=%s' % arguments.link_map) + build_options.append('-DFEATURE_MEM_STATS=%s' % arguments.mem_stats) + build_options.append('-DFEATURE_MEM_STRESS_TEST=%s' % arguments.mem_stress_test) + build_options.append('-DFEATURE_PARSER_DUMP=%s' % arguments.show_opcodes) + build_options.append('-DFEATURE_REGEXP_DUMP=%s' % arguments.show_regexp_opcodes) + build_options.append('-DFEATURE_VALGRIND=%s' % arguments.valgrind) + build_options.append('-DFEATURE_VALGRIND_FREYA=%s' % arguments.valgrind_freya) return build_options