# Attempt to find gengetopt. If not found, compile it.
-FIND_PROGRAM(GENGETOPT gengetopt)
-IF (GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
- GET_FILENAME_COMPONENT(CLITK_CMAKE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
- ADD_SUBDIRECTORY(${CLITK_CMAKE_DIR}/../utilities/gengetopt ${CMAKE_CURRENT_BINARY_DIR}/gengetopt)
-ELSE(GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
- ADD_EXECUTABLE(gengetopt IMPORTED)
- SET_PROPERTY(TARGET gengetopt PROPERTY IMPORTED_LOCATION ${GENGETOPT})
-ENDIF(GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
+find_program(GENGETOPT gengetopt)
+if(GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
+ get_filename_component(CLITK_CMAKE_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
+ add_subdirectory(${CLITK_CMAKE_DIR}/../utilities/gengetopt ${CMAKE_CURRENT_BINARY_DIR}/gengetopt)
+else(GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
+ add_executable(gengetopt IMPORTED)
+ set_property(TARGET gengetopt PROPERTY IMPORTED_LOCATION ${GENGETOPT})
+endif(GENGETOPT STREQUAL "GENGETOPT-NOTFOUND")
-MACRO (WRAP_GGO GGO_SRCS)
- FOREACH(GGO_FILE ${ARGN})
- GET_FILENAME_COMPONENT(GGO_BASEFILENAME ${GGO_FILE} NAME_WE)
- GET_FILENAME_COMPONENT(GGO_FILE_ABS ${GGO_FILE} ABSOLUTE)
- SET(GGO_H ${GGO_BASEFILENAME}_ggo.h)
- SET(GGO_C ${GGO_BASEFILENAME}_ggo.c)
- SET(GGO_OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${GGO_H} ${CMAKE_CURRENT_BINARY_DIR}/${GGO_C})
- ADD_CUSTOM_COMMAND(OUTPUT ${GGO_OUTPUT}
+macro(WRAP_GGO GGO_SRCS)
+ foreach(GGO_FILE ${ARGN})
+ get_filename_component(GGO_BASEFILENAME ${GGO_FILE} NAME_WE)
+ get_filename_component(GGO_FILE_ABS ${GGO_FILE} ABSOLUTE)
+ set(GGO_H ${GGO_BASEFILENAME}_ggo.h)
+ set(GGO_C ${GGO_BASEFILENAME}_ggo.c)
+ set(GGO_OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${GGO_H} ${CMAKE_CURRENT_BINARY_DIR}/${GGO_C})
+ add_custom_command(OUTPUT ${GGO_OUTPUT}
COMMAND gengetopt
ARGS < ${GGO_FILE_ABS}
--output-dir=${CMAKE_CURRENT_BINARY_DIR}
--include-getopt
DEPENDS ${GGO_FILE_ABS}
)
- SET(${GGO_SRCS} ${${GGO_SRCS}} ${GGO_OUTPUT})
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
- ENDFOREACH(GGO_FILE)
- SET_SOURCE_FILES_PROPERTIES(${${GGO_SRCS}} PROPERTIES GENERATED TRUE)
- IF(CMAKE_COMPILER_IS_GNUCXX)
- FIND_PROGRAM(DEFAULT_GCC gcc)
- EXEC_PROGRAM(${DEFAULT_GCC} ARGS "-dumpversion" OUTPUT_VARIABLE GCCVER)
- IF("${GCCVER}" VERSION_GREATER "4.5.2")
- SET_SOURCE_FILES_PROPERTIES(${${GGO_SRCS}} PROPERTIES COMPILE_FLAGS "-Wno-unused-but-set-variable")
- ENDIF("${GCCVER}" VERSION_GREATER "4.5.2")
- ENDIF(CMAKE_COMPILER_IS_GNUCXX)
-ENDMACRO (WRAP_GGO)
+ set(${GGO_SRCS} ${${GGO_SRCS}} ${GGO_OUTPUT})
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ endforeach(GGO_FILE)
+ set_source_files_properties(${${GGO_SRCS}} PROPERTIES GENERATED TRUE)
+ if(CMAKE_COMPILER_IS_GNUCXX)
+ find_program(DEFAULT_GCC gcc)
+ exec_program(${DEFAULT_GCC} ARGS "-dumpversion" OUTPUT_VARIABLE GCCVER)
+ if("${GCCVER}" VERSION_GREATER "4.5.2")
+ set_source_files_properties(${${GGO_SRCS}} PROPERTIES COMPILE_FLAGS "-Wno-unused-but-set-variable")
+ endif("${GCCVER}" VERSION_GREATER "4.5.2")
+ endif(CMAKE_COMPILER_IS_GNUCXX)
+endmacro(WRAP_GGO)