X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=tools%2Fminiswig%2FCMakeLists.txt;h=7023334da5594a254cf2ffb13d9825c83e825ce9;hb=3aa6936791cf24344e27d452ab2fd8c33fb5a2e8;hp=de255c24d6363957bb10a32733de6068b0d47ca3;hpb=2d4bda804822bd8d08bd5120f1e7b94d38ce3aee;p=supertux.git diff --git a/tools/miniswig/CMakeLists.txt b/tools/miniswig/CMakeLists.txt index de255c24d..7023334da 100644 --- a/tools/miniswig/CMakeLists.txt +++ b/tools/miniswig/CMakeLists.txt @@ -24,37 +24,45 @@ PROJECT(MINISWIG) ## add additional compiler switches ADD_DEFINITIONS(-include ${CMAKE_BINARY_DIR}/config.h) +# the autogenerated bison/flex is not warning free usually +REMOVE_DEFINITIONS(-Wall -W) + +## Include paths to make generated files work + +INCLUDE_DIRECTORIES (${MINISWIG_SOURCE_DIR}) + +## build list of source files + +FILE(GLOB MINISWIG_SOURCES RELATIVE ${MINISWIG_SOURCE_DIR} create_docu.cpp create_wrapper.cpp main.cpp tree.cpp xmlwriter.cpp) ## Add target for bison parser generation +MARK_AS_ADVANCED(BISON_EXECUTABLE) FIND_PROGRAM(BISON_EXECUTABLE bison) IF (NOT BISON_EXECUTABLE) MESSAGE(FATAL_ERROR "bison not found - aborting") ENDIF (NOT BISON_EXECUTABLE) ADD_CUSTOM_COMMAND( - OUTPUT ${MINISWIG_SOURCE_DIR}/parser.cpp ${MINISWIG_SOURCE_DIR}/parser.hpp + OUTPUT ${MINISWIG_BINARY_DIR}/parser.cpp ${MINISWIG_BINARY_DIR}/parser.hpp COMMAND ${BISON_EXECUTABLE} - ARGS -d -o ${MINISWIG_SOURCE_DIR}/parser.cpp ${MINISWIG_SOURCE_DIR}/parser.yy + ARGS -d -o ${MINISWIG_BINARY_DIR}/parser.cpp ${MINISWIG_SOURCE_DIR}/parser.yy DEPENDS parser.yy ) ## Add target for flex lexical analyzer generation +MARK_AS_ADVANCED(FLEX_EXECUTABLE) FIND_PROGRAM(FLEX_EXECUTABLE flex) IF (NOT FLEX_EXECUTABLE) MESSAGE(FATAL_ERROR "flex not found - aborting") ENDIF (NOT FLEX_EXECUTABLE) ADD_CUSTOM_COMMAND( - OUTPUT ${MINISWIG_SOURCE_DIR}/lexer.cpp + OUTPUT ${MINISWIG_BINARY_DIR}/lexer.cpp COMMAND ${FLEX_EXECUTABLE} - ARGS -o ${MINISWIG_SOURCE_DIR}/lexer.cpp ${MINISWIG_SOURCE_DIR}/lexer.ll - DEPENDS lexer.ll ${MINISWIG_SOURCE_DIR}/parser.hpp + ARGS -o ${MINISWIG_BINARY_DIR}/lexer.cpp ${MINISWIG_SOURCE_DIR}/lexer.ll + DEPENDS lexer.ll ${MINISWIG_BINARY_DIR}/parser.hpp ) -## build list of source files - -FILE(GLOB MINISWIG_SOURCES RELATIVE ${MINISWIG_SOURCE_DIR} *.cpp) - ## Add target for miniswig binary -ADD_EXECUTABLE(miniswig ${MINISWIG_SOURCES} ${MINISWIG_SOURCE_DIR}/parser.cpp ${MINISWIG_SOURCE_DIR}/lexer.cpp) +ADD_EXECUTABLE(miniswig ${MINISWIG_SOURCES} ${MINISWIG_BINARY_DIR}/parser.cpp ${MINISWIG_BINARY_DIR}/lexer.cpp)