CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(FatELF) EXECUTE_PROCESS( COMMAND hg tip --template hg-{rev}:{node|short} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" RESULT_VARIABLE HGVERSION_RC OUTPUT_VARIABLE FATELF_VERSION ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE ) IF(CMAKE_COMPILER_IS_GNUCC) ADD_DEFINITIONS(-pipe -fsigned-char -Wall -Werror) ENDIF(CMAKE_COMPILER_IS_GNUCC) ADD_DEFINITIONS(-DAPPID=fatelf) ADD_DEFINITIONS(-DAPPREV="${FATELF_VERSION}") INCLUDE_DIRECTORIES(include) ADD_LIBRARY(fatelf-utils STATIC utils/fatelf-utils.c) MACRO(ADD_FATELF_EXECUTABLE _NAME) ADD_EXECUTABLE(${_NAME} utils/${_NAME}.c) TARGET_LINK_LIBRARIES(${_NAME} fatelf-utils) INSTALL(TARGETS ${_NAME} RUNTIME DESTINATION bin) ENDMACRO(ADD_FATELF_EXECUTABLE) ADD_FATELF_EXECUTABLE(fatelf-glue) ADD_FATELF_EXECUTABLE(fatelf-info) ADD_FATELF_EXECUTABLE(fatelf-extract) ADD_FATELF_EXECUTABLE(fatelf-replace) ADD_FATELF_EXECUTABLE(fatelf-remove) ADD_FATELF_EXECUTABLE(fatelf-verify) ADD_FATELF_EXECUTABLE(fatelf-split) ADD_FATELF_EXECUTABLE(fatelf-validate) # end of CMakeLists.txt ...