Re #224 Improved / Secured ROBOT, ROBOT_MODULE and ROBOT_DATA macros

git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@3051 30fe4595-0a0c-4342-8851-515496e4dcbd

Former-commit-id: e635305abcf27d44ddbfd5b7a919dfdab5a2ed28
Former-commit-id: d6d920d1471e05befdda28107aad4fc3329dc3c8
This commit is contained in:
pouillot 2010-10-24 12:50:47 +00:00
parent d35f1a0b85
commit f8eedca393
13 changed files with 194 additions and 174 deletions

View file

@ -155,19 +155,19 @@ ENDMACRO(GENERATE_ROBOT_DEF_FILE ROBOTNAME DEF_FILE)
# SOURCES : List of files to use as build sources if any ; not needed if MODULE used # SOURCES : List of files to use as build sources if any ; not needed if MODULE used
# CLONENAMES : The names of the clones to generate # CLONENAMES : The names of the clones to generate
MACRO(ROBOT_MODULE) MACRO(ROBOT_MODULE)
SET(ROBOT_SYNTAX "NAME,1,1,HAS_ROBOTNAME,ROBOTNAME") SET(RBM_SYNTAX "NAME,1,1,RBM_HAS_NAME,ROBOTNAME")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "INTERFACE,0,-1,HAS_INTERFACE,INTERFACE") SET(RBM_SYNTAX ${RBM_SYNTAX} "INTERFACE,0,-1,RBM_HAS_INTERFACE,RBM_INTERFACE")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SOURCES,0,-1,HAS_SOURCES,SOURCES") SET(RBM_SYNTAX ${RBM_SYNTAX} "SOURCES,0,-1,RBM_HAS_SOURCES,RBM_SOURCES")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "CLONENAMES,0,-1,HAS_CLONENAMES,CLONENAMES") SET(RBM_SYNTAX ${RBM_SYNTAX} "CLONENAMES,0,-1,RBM_HAS_CLONENAMES,RBM_CLONENAMES")
SPLIT_ARGN(${ROBOT_SYNTAX} ARGUMENTS ${ARGN}) SPLIT_ARGN(${RBM_SYNTAX} ARGUMENTS ${ARGN})
IF(NOT HAS_ROBOTNAME) IF(NOT RBM_HAS_NAME)
MESSAGE(FATAL_ERROR "Cannot build a robot module with no specified name") MESSAGE(FATAL_ERROR "Cannot build a robot module with no specified name")
ENDIF(NOT HAS_ROBOTNAME) ENDIF(NOT RBM_HAS_NAME)
IF(NOT HAS_SOURCES) IF(NOT RBM_HAS_SOURCES)
MESSAGE(FATAL_ERROR "Cannot build a robot module without sources / module to copy") MESSAGE(FATAL_ERROR "Cannot build a robot module without sources / module to copy")
ENDIF(NOT HAS_SOURCES) ENDIF(NOT RBM_HAS_SOURCES)
PROJECT("robot_${ROBOTNAME}") PROJECT("robot_${ROBOTNAME}")
@ -178,12 +178,12 @@ MACRO(ROBOT_MODULE)
# Generate / add .def file for Windows # Generate / add .def file for Windows
IF(WIN32) IF(WIN32)
IF(NOT HAS_INTERFACE) IF(NOT RBM_HAS_INTERFACE)
SET(INTERFACE "LEGACY_MIN") SET(RBM_INTERFACE "LEGACY_MIN")
ENDIF(NOT HAS_INTERFACE) ENDIF(NOT RBM_HAS_INTERFACE)
SET(ROBOT_DEF_FILE ${CMAKE_CURRENT_BINARY_DIR}/${ROBOTNAME}_gen.def) SET(ROBOT_DEF_FILE ${CMAKE_CURRENT_BINARY_DIR}/${ROBOTNAME}_gen.def)
GENERATE_ROBOT_DEF_FILE(${ROBOTNAME} ${ROBOT_DEF_FILE} ${INTERFACE}) GENERATE_ROBOT_DEF_FILE(${ROBOTNAME} ${ROBOT_DEF_FILE} ${RBM_INTERFACE})
SET(SOURCES ${SOURCES} ${ROBOT_DEF_FILE}) SET(RBM_SOURCES ${RBM_SOURCES} ${ROBOT_DEF_FILE})
ENDIF(WIN32) ENDIF(WIN32)
#disable developer warning #disable developer warning
@ -196,7 +196,7 @@ MACRO(ROBOT_MODULE)
SET(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:msvcrt.lib") SET(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:msvcrt.lib")
ENDIF(WIN32) ENDIF(WIN32)
ADD_LIBRARY(${ROBOTNAME} SHARED ${SOURCES}) ADD_LIBRARY(${ROBOTNAME} SHARED ${RBM_SOURCES})
IF(UNIX) IF(UNIX)
SET_TARGET_PROPERTIES(${ROBOTNAME} PROPERTIES PREFIX "") SET_TARGET_PROPERTIES(${ROBOTNAME} PROPERTIES PREFIX "")
ENDIF(UNIX) ENDIF(UNIX)
@ -206,70 +206,77 @@ MACRO(ROBOT_MODULE)
SD_INSTALL_FILES(LIB drivers/${ROBOTNAME} TARGETS ${ROBOTNAME}) SD_INSTALL_FILES(LIB drivers/${ROBOTNAME} TARGETS ${ROBOTNAME})
IF(HAS_CLONENAMES) IF(RBM_HAS_CLONENAMES)
GET_TARGET_PROPERTY(MODNAME ${ROBOTNAME} LOCATION) GET_TARGET_PROPERTY(MODNAME ${ROBOTNAME} LOCATION)
SET(MODPREFIX "") SET(MODPREFIX "")
SET(MODSUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX}) SET(MODSUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX})
FOREACH(CLONENAME ${CLONENAMES}) FOREACH(CLONENAME ${RBM_CLONENAMES})
SET(CLONE_MODNAME ${MODPREFIX}${CLONENAME}${MODSUFFIX}) SET(CLONE_MODNAME ${MODPREFIX}${CLONENAME}${MODSUFFIX})
ADD_CUSTOM_COMMAND(TARGET ${ROBOTNAME} POST_BUILD ADD_CUSTOM_COMMAND(TARGET ${ROBOTNAME} POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${MODNAME} ${CLONE_MODNAME}) COMMAND ${CMAKE_COMMAND} -E copy ${MODNAME} ${CLONE_MODNAME})
SD_INSTALL_FILES(LIB drivers/${CLONENAME} FILES ${CLONE_MODNAME}) SD_INSTALL_FILES(LIB drivers/${CLONENAME} FILES ${CLONE_MODNAME})
ENDFOREACH(CLONENAME ${CLONENAMES}) ENDFOREACH(CLONENAME ${RBM_CLONENAMES})
ENDIF(HAS_CLONENAMES) ENDIF(RBM_HAS_CLONENAMES)
ENDMACRO(ROBOT_MODULE) ENDMACRO(ROBOT_MODULE)
# Robot data installation # Robot data installation
# Args: # Args:
# NAME : Name of the robot (may be a clone) # NAME : Name of the robot (may be a clone)
# SHIPPREFIX : Dir. prefix for source files/subdirs to install in the robot's data dir # PREFIX : Dir. prefix for source files/subdirs to install in the robot's data dir
# SHIPFILES : Extra (non default) files to install in the robot's data dir # FILES : Extra (non default) files to install in the robot's data dir
# SHIPSUBDIRS : Data subdirectories to install in the robot's data dir # SUBDIRS : Data subdirectories to install in the robot's data dir
MACRO(ROBOT_DATA) MACRO(ROBOT_DATA)
SET(ROBOT_SYNTAX "NAME,1,1,HAS_ROBOTNAME,ROBOTNAME") SET(RBD_SYNTAX "NAME,1,1,RBD_HAS_NAME,ROBOTNAME")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SHIPPREFIX,0,-1,HAS_SHIPPREFIX,SHIPPREFIX") SET(RBD_SYNTAX ${RBD_SYNTAX} "PREFIX,0,-1,RBD_HAS_PREFIX,RBD_PREFIX")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SHIPFILES,0,-1,HAS_EXTRA_SHIP,EXTRA_SHIP") SET(RBD_SYNTAX ${RBD_SYNTAX} "FILES,0,-1,RBD_HAS_FILES,RBD_FILES")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SHIPSUBDIRS,0,-1,HAS_SHIPSUBDIRS,SHIPSUBDIRS") SET(RBD_SYNTAX ${RBD_SYNTAX} "SUBDIRS,0,-1,RBD_HAS_SUBDIRS,RBD_SUBDIRS")
SPLIT_ARGN(${ROBOT_SYNTAX} ARGUMENTS ${ARGN}) SPLIT_ARGN(${RBD_SYNTAX} ARGUMENTS ${ARGN})
IF(NOT HAS_ROBOTNAME) #MESSAGE(STATUS "ROBOT_DATA(${ROBOTNAME}): PREFIX=${RBD_PREFIX} FILES=${RBD_FILES} SUBDIRS=${RBD_SUBDIRS}")
IF(NOT RBD_HAS_NAME)
MESSAGE(FATAL_ERROR "Cannot install data for a robot module with no specified name") MESSAGE(FATAL_ERROR "Cannot install data for a robot module with no specified name")
ENDIF(NOT HAS_ROBOTNAME) ENDIF(NOT RBD_HAS_NAME)
SET(REAL_SHIPFILES) # Reset the list (remember, it's a CMakeLists.txt global variable :-()
IF(HAS_EXTRA_SHIP)
IF(HAS_SHIPPREFIX)
FOREACH(SHIP_FILE ${EXTRA_SHIP})
LIST(APPEND REAL_SHIPFILES ${SHIPPREFIX}/${SHIP_FILE})
ENDFOREACH(SHIP_FILE ${EXTRA_SHIP})
ELSE(HAS_SHIPPREFIX)
SET(REAL_SHIPFILES ${EXTRA_SHIP})
ENDIF(HAS_SHIPPREFIX)
ENDIF(HAS_EXTRA_SHIP)
IF(HAS_SHIPPREFIX)
LIST(APPEND REAL_SHIPFILES ${SHIPPREFIX}/${ROBOTNAME}.xml)
ELSE(HAS_SHIPPREFIX)
LIST(APPEND REAL_SHIPFILES ${ROBOTNAME}.xml)
ENDIF(HAS_SHIPPREFIX)
#MESSAGE(STATUS "Files to install for ${ROBOTNAME} robot: ${REAL_SHIPFILES}")
SD_INSTALL_FILES(DATA drivers/${ROBOTNAME} FILES ${REAL_SHIPFILES})
IF(HAS_SHIPSUBDIRS) SET(REAL_FILES) # Reset the list (remember, it's a CMakeLists.txt global variable :-()
IF(HAS_SHIPPREFIX) IF(RBD_HAS_FILES)
SET(REAL_SHIPSUBDIRS) # Reset the list (remember, it's a CMakeLists.txt global variable :-() IF(RBD_HAS_PREFIX)
FOREACH(SHIPSUBDIR ${SHIPSUBDIRS}) FOREACH(_FILE ${RBD_FILES})
LIST(APPEND REAL_SHIPSUBDIRS ${SHIPPREFIX}/${SHIPSUBDIR}) LIST(APPEND REAL_FILES ${RBD_PREFIX}/${_FILE})
ENDFOREACH(SHIPSUBDIR ${SHIPSUBDIRS}) ENDFOREACH(_FILE ${RBD_FILES})
ELSE(HAS_SHIPPREFIX) ELSE(RBD_HAS_PREFIX)
SET(REAL_SHIPSUBDIRS ${SHIPSUBDIRS}) SET(REAL_FILES ${RBD_FILES})
ENDIF(HAS_SHIPPREFIX) ENDIF(RBD_HAS_PREFIX)
#MESSAGE(STATUS "Subdirs to install for ${ROBOTNAME} robot: ${REAL_SHIPSUBDIRS}") #MESSAGE(STATUS "Files to install(-1) for ${ROBOTNAME} robot: ${REAL_FILES}")
INSTALL(DIRECTORY ${REAL_SHIPSUBDIRS} ENDIF(RBD_HAS_FILES)
#MESSAGE(STATUS "Files to install(0) for ${ROBOTNAME} robot: ${REAL_FILES}")
IF(RBD_HAS_PREFIX)
LIST(APPEND REAL_FILES ${RBD_PREFIX}/${ROBOTNAME}.xml)
ELSE(RBD_HAS_PREFIX)
LIST(APPEND REAL_FILES ${ROBOTNAME}.xml)
ENDIF(RBD_HAS_PREFIX)
MESSAGE(STATUS "Files to install for ${ROBOTNAME} robot: ${REAL_FILES}")
SD_INSTALL_FILES(DATA drivers/${ROBOTNAME} FILES ${REAL_FILES})
IF(RBD_HAS_SUBDIRS)
IF(RBD_HAS_PREFIX)
SET(REAL_SUBDIRS) # Reset the list (remember, it's a CMakeLists.txt global variable :-()
FOREACH(SUBDIR ${RBD_SUBDIRS})
LIST(APPEND REAL_SUBDIRS ${RBD_PREFIX}/${SUBDIR})
ENDFOREACH(SUBDIR ${RBD_SUBDIRS})
ELSE(RBD_HAS_PREFIX)
SET(REAL_SUBDIRS ${RBD_SUBDIRS})
ENDIF(RBD_HAS_PREFIX)
#MESSAGE(STATUS "Subdirs to install for ${ROBOTNAME} robot: ${REAL_SUBDIRS}")
INSTALL(DIRECTORY ${REAL_SUBDIRS}
DESTINATION ${SD_DATADIR}/drivers/${ROBOTNAME} DESTINATION ${SD_DATADIR}/drivers/${ROBOTNAME}
PATTERN ".svn" EXCLUDE PATTERN ".svn" EXCLUDE
PATTERN "*.xcf*" EXCLUDE) PATTERN "*.xcf*" EXCLUDE)
ENDIF(HAS_SHIPSUBDIRS) ENDIF(RBD_HAS_SUBDIRS)
ENDMACRO(ROBOT_DATA) ENDMACRO(ROBOT_DATA)
# Robot project definition (module build and install, with associated data) # Robot project definition (module build and install, with associated data)
@ -279,68 +286,67 @@ ENDMACRO(ROBOT_DATA)
# See GENERATE_ROBOT_DEF_FILE macro. # See GENERATE_ROBOT_DEF_FILE macro.
# If not specified, defaults to "LEGACY_MIN" ; not used if MODULE used # If not specified, defaults to "LEGACY_MIN" ; not used if MODULE used
# SOURCES : List of files to use as build sources if any ; not needed if MODULE used # SOURCES : List of files to use as build sources if any ; not needed if MODULE used
# SHIPPREFIX : Dir. prefix for source files/subdirs to install in the robot's data dir # PREFIX : Dir. prefix for source files/subdirs to install in the robot's data dir
# SHIPFILES : Extra (non default) files to install in the robot's data dir # FILES : Extra (non default) files to install in the robot's data dir
# SHIPSUBDIRS : Data subdirectories to install in the robot's data dir # SUBDIRS : Data subdirectories to install in the robot's data dir
MACRO(ROBOT) MACRO(ROBOT)
SET(ROBOT_SYNTAX "NAME,1,1,HAS_ROBOTNAME,ROBOTNAME") SET(RB_SYNTAX "NAME,1,1,RB_HAS_NAME,ROBOTNAME")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "INTERFACE,0,-1,HAS_INTERFACE,INTERFACE") SET(RB_SYNTAX ${RB_SYNTAX} "INTERFACE,0,-1,RB_HAS_INTERFACE,RB_INTERFACE")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SOURCES,0,-1,HAS_SOURCES,SOURCES") SET(RB_SYNTAX ${RB_SYNTAX} "SOURCES,0,-1,RB_HAS_SOURCES,RB_SOURCES")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SHIPPREFIX,0,-1,HAS_SHIPPREFIX,SHIPPREFIX") SET(RB_SYNTAX ${RB_SYNTAX} "PREFIX,0,-1,RB_HAS_PREFIX,RB_PREFIX")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SHIP,0,-1,HAS_EXTRA_SHIP,EXTRA_SHIP") SET(RB_SYNTAX ${RB_SYNTAX} "FILES,0,-1,RB_HAS_FILES,RB_FILES")
SET(ROBOT_SYNTAX ${ROBOT_SYNTAX} "SHIPSUBDIRS,0,-1,HAS_SHIPSUBDIRS,SHIPSUBDIRS") SET(RB_SYNTAX ${RB_SYNTAX} "SUBDIRS,0,-1,RB_HAS_SUBDIRS,RB_SUBDIRS")
SPLIT_ARGN(${ROBOT_SYNTAX} ARGUMENTS ${ARGN}) #SET(__DEBUG__ TRUE)
SPLIT_ARGN(${RB_SYNTAX} ARGUMENTS ${ARGN})
#SET(__DEBUG__ FALSE)
IF(NOT HAS_ROBOTNAME) #MESSAGE(STATUS "ROBOT(${ROBOTNAME}): INTERFACE=${RB_INTERFACE} (${RB_HAS_INTERFACE}) SOURCES=${RB_SOURCES} (${RB_HAS_SOURCES}) PREFIX=${RB_PREFIX} (${RB_HAS_PREFIX}) FILES=${RB_FILES} (${RB_HAS_FILES}) SUBDIRS=${RB_SUBDIRS} (${RB_HAS_SUBDIRS})")
IF(NOT RB_HAS_NAME)
MESSAGE(FATAL_ERROR "Cannot build a robot with no specified name") MESSAGE(FATAL_ERROR "Cannot build a robot with no specified name")
ENDIF(NOT HAS_ROBOTNAME) ENDIF(NOT RB_HAS_NAME)
IF(NOT HAS_SOURCES) IF(NOT RB_HAS_SOURCES)
MESSAGE(FATAL_ERROR "Cannot build a robot without sources") MESSAGE(FATAL_ERROR "Cannot build a robot without sources")
ENDIF(NOT HAS_SOURCES) ENDIF(NOT RB_HAS_SOURCES)
IF(HAS_INTERFACE) IF(RB_HAS_INTERFACE)
ROBOT_MODULE(NAME ${ROBOTNAME} INTERFACE ${INTERFACE} SOURCES ${SOURCES}) ROBOT_MODULE(NAME ${ROBOTNAME} INTERFACE ${RB_INTERFACE} SOURCES ${RB_SOURCES})
ELSE(HAS_INTERFACE) ELSE(RB_HAS_INTERFACE)
ROBOT_MODULE(NAME ${ROBOTNAME} SOURCES ${SOURCES}) ROBOT_MODULE(NAME ${ROBOTNAME} SOURCES ${RB_SOURCES})
ENDIF(HAS_INTERFACE) ENDIF(RB_HAS_INTERFACE)
IF(HAS_SHIPPREFIX) #TODO: Make all this stuff only one line ?
IF(HAS_EXTRA_SHIP) IF(RB_HAS_PREFIX)
IF(HAS_SHIPSUBDIRS) IF(RB_HAS_FILES)
ROBOT_DATA(NAME ${ROBOTNAME} SHIPPREFIX ${SHIPPREFIX} IF(RB_HAS_SUBDIRS)
SHIPFILES ${EXTRA_SHIP} SHIPSUBDIRS ${SHIPSUBDIRS}) ROBOT_DATA(NAME ${ROBOTNAME} PREFIX ${RB_PREFIX} FILES ${RB_FILES} SUBDIRS ${RB_SUBDIRS})
ELSE(HAS_SHIPSUBDIRS) ELSE(RB_HAS_SUBDIRS)
ROBOT_DATA(NAME ${ROBOTNAME} SHIPPREFIX ${SHIPPREFIX} ROBOT_DATA(NAME ${ROBOTNAME} PREFIX ${RB_PREFIX} FILES ${RB_FILES})
SHIPFILES ${EXTRA_SHIP}) ENDIF(RB_HAS_SUBDIRS)
ENDIF(HAS_SHIPSUBDIRS) ELSE(RB_HAS_FILES)
ELSE(HAS_EXTRA_SHIP) IF(RB_HAS_SUBDIRS)
IF(HAS_SHIPSUBDIRS) ROBOT_DATA(NAME ${ROBOTNAME} PREFIX ${RB_PREFIX} SUBDIRS ${RB_SUBDIRS})
ROBOT_DATA(NAME ${ROBOTNAME} SHIPPREFIX ${SHIPPREFIX} ELSE(RB_HAS_SUBDIRS)
SHIPSUBDIRS ${SHIPSUBDIRS}) ROBOT_DATA(NAME ${ROBOTNAME} PREFIX ${RB_PREFIX})
ELSE(HAS_SHIPSUBDIRS) ENDIF(RB_HAS_SUBDIRS)
ROBOT_DATA(NAME ${ROBOTNAME} SHIPPREFIX ${SHIPPREFIX}) ENDIF(RB_HAS_FILES)
ENDIF(HAS_SHIPSUBDIRS) ELSE(RB_HAS_PREFIX)
ENDIF(HAS_EXTRA_SHIP) IF(RB_HAS_FILES)
ELSE(HAS_SHIPPREFIX) IF(RB_HAS_SUBDIRS)
IF(HAS_EXTRA_SHIP) ROBOT_DATA(NAME ${ROBOTNAME} FILES ${RB_FILES} SUBDIRS ${RB_SUBDIRS})
IF(HAS_SHIPSUBDIRS) ELSE(RB_HAS_SUBDIRS)
ROBOT_DATA(NAME ${ROBOTNAME} ROBOT_DATA(NAME ${ROBOTNAME} FILES ${RB_FILES})
SHIPFILES ${EXTRA_SHIP} SHIPSUBDIRS ${SHIPSUBDIRS}) ENDIF(RB_HAS_SUBDIRS)
ELSE(HAS_SHIPSUBDIRS) ELSE(RB_HAS_FILES)
ROBOT_DATA(NAME ${ROBOTNAME} IF(RB_HAS_SUBDIRS)
SHIPFILES ${EXTRA_SHIP}) ROBOT_DATA(NAME ${ROBOTNAME} SUBDIRS ${RB_SUBDIRS})
ENDIF(HAS_SHIPSUBDIRS) ELSE(RB_HAS_SUBDIRS)
ELSE(HAS_EXTRA_SHIP)
IF(HAS_SHIPSUBDIRS)
ROBOT_DATA(NAME ${ROBOTNAME}
SHIPSUBDIRS ${SHIPSUBDIRS})
ELSE(HAS_SHIPSUBDIRS)
ROBOT_DATA(NAME ${ROBOTNAME}) ROBOT_DATA(NAME ${ROBOTNAME})
ENDIF(HAS_SHIPSUBDIRS) ENDIF(RB_HAS_SUBDIRS)
ENDIF(HAS_EXTRA_SHIP) ENDIF(RB_HAS_FILES)
ENDIF(HAS_SHIPPREFIX) ENDIF(RB_HAS_PREFIX)
ENDMACRO(ROBOT) ENDMACRO(ROBOT)
MACRO(ADD_INTERFACE_INCLUDEDIR) MACRO(ADD_INTERFACE_INCLUDEDIR)
@ -350,8 +356,10 @@ MACRO(ADD_INTERFACE_INCLUDEDIR)
SET(INCLUDE_CANDIDATE ${SD_INCLUDEDIR_ABS}) SET(INCLUDE_CANDIDATE ${SD_INCLUDEDIR_ABS})
ENDIF(IN_SOURCETREE) ENDIF(IN_SOURCETREE)
FIND_PATH(INTERFACE_INCLUDE_DIR raceman.h PATHS ${INCLUDE_CANDIDATE} /usr/include /usr/local/include NO_DEFAULT_PATH) FIND_PATH(INTERFACE_INCLUDE_DIR raceman.h
FIND_PATH(INTERFACE_INCLUDE_DIR raceman.h PATHS ${INCLUDE_CANDIDATE} /usr/include /usr/local/include) PATHS ${INCLUDE_CANDIDATE} /usr/include /usr/local/include NO_DEFAULT_PATH)
FIND_PATH(INTERFACE_INCLUDE_DIR raceman.h
PATHS ${INCLUDE_CANDIDATE} /usr/include /usr/local/include)
IF(INTERFACE_INCLUDE_DIR) IF(INTERFACE_INCLUDE_DIR)
INCLUDE_DIRECTORIES(${INTERFACE_INCLUDE_DIR}) INCLUDE_DIRECTORIES(${INTERFACE_INCLUDE_DIR})
ELSE(INTERFACE_INCLUDE_DIR) ELSE(INTERFACE_INCLUDE_DIR)
@ -371,8 +379,12 @@ MACRO(ADD_OSSPEC_INCLUDEDIR)
ELSE(IN_SOURCETREE) ELSE(IN_SOURCETREE)
SET(CANDIDATE_SPEC ${SD_INCLUDEDIR}) SET(CANDIDATE_SPEC ${SD_INCLUDEDIR})
ENDIF(IN_SOURCETREE) ENDIF(IN_SOURCETREE)
FIND_PATH(OSSPEC_INCLUDE_DIR osspec.h PATHS ${CANDIDATE_SPEC} /usr/include /usr/local/include NO_DEFAULT_PATH CACHE DOC "osspec header directory") FIND_PATH(OSSPEC_INCLUDE_DIR osspec.h
FIND_PATH(OSSPEC_INCLUDE_DIR osspec.h PATHS ${CANDIDATE_SPEC} /usr/include /usr/local/include CACHE DOC "osspec header directory") PATHS ${CANDIDATE_SPEC} /usr/include /usr/local/include
NO_DEFAULT_PATH CACHE DOC "osspec header directory")
FIND_PATH(OSSPEC_INCLUDE_DIR osspec.h
PATHS ${CANDIDATE_SPEC} /usr/include /usr/local/include
CACHE DOC "osspec header directory")
IF(OSSPEC_INCLUDE_DIR) IF(OSSPEC_INCLUDE_DIR)
INCLUDE_DIRECTORIES(${OSSPEC_INCLUDE_DIR}) INCLUDE_DIRECTORIES(${OSSPEC_INCLUDE_DIR})
ELSE(OSSPEC_INCLUDE_DIR) ELSE(OSSPEC_INCLUDE_DIR)

View file

@ -83,6 +83,9 @@ ENDMACRO(SPLIT_ARGN_IS_KEYWORD SAG_KEYWORDS SAG_ITEM)
MACRO(SPLIT_ARGN) MACRO(SPLIT_ARGN)
SPLIT_ARGN_KEYWORDS(SA_KEYWORDS ${ARGN}) SPLIT_ARGN_KEYWORDS(SA_KEYWORDS ${ARGN})
IF(__DEBUG__)
MESSAGE(STATUS "KEYWORDS: ${SA_KEYWORDS}")
ENDIF()
SPLIT_ARGN_CLEAN_ISVARS(${ARGN}) SPLIT_ARGN_CLEAN_ISVARS(${ARGN})
SET(SA_EXPECT_KEYWORD TRUE) SET(SA_EXPECT_KEYWORD TRUE)
SET(SA_EXPECT_VALUE FALSE) SET(SA_EXPECT_VALUE FALSE)
@ -97,6 +100,9 @@ MACRO(SPLIT_ARGN)
ELSE(NOT SA_START) ELSE(NOT SA_START)
#Check if the current item is a keyword #Check if the current item is a keyword
SPLIT_ARGN_IS_KEYWORD(SA_KEYWORDS ${SA_ITEM} SA_ISKEYWORD) SPLIT_ARGN_IS_KEYWORD(SA_KEYWORDS ${SA_ITEM} SA_ISKEYWORD)
IF(__DEBUG__)
MESSAGE(STATUS "ITEM=${SA_ITEM} KEYWORD=${SA_ISKEYWORD}")
ENDIF()
IF(SA_ISKEYWORD) IF(SA_ISKEYWORD)
#Check if it is what we expect #Check if it is what we expect
@ -105,6 +111,9 @@ MACRO(SPLIT_ARGN)
ELSE(NOT SA_EXPECT_KEYWORD) ELSE(NOT SA_EXPECT_KEYWORD)
#Save information about the keyword #Save information about the keyword
SPLIT_ARGN_GET_KEYWORD(${SA_ITEM} SA_KEYWORD_FOUND SA_CUR_KEYWORD SA_CUR_MINCOUNT SA_CUR_MAXCOUNT SA_CUR_ISVARNAME SA_CUR_VARNAME ${ARGN}) SPLIT_ARGN_GET_KEYWORD(${SA_ITEM} SA_KEYWORD_FOUND SA_CUR_KEYWORD SA_CUR_MINCOUNT SA_CUR_MAXCOUNT SA_CUR_ISVARNAME SA_CUR_VARNAME ${ARGN})
IF(__DEBUG__)
MESSAGE(STATUS "KEYWORD: FOUND=${SA_KEYWORD_FOUND} KEYW=${SA_CUR_KEYWORD} MIN=${SA_CUR_MINCOUNT} MAX=${SA_CUR_MAXCOUNT} ISVAR=${SA_CUR_ISVARNAME} VARNAME=${SA_CUR_VARNAME}")
ENDIF()
IF(SA_KEYWORD_FOUND) IF(SA_KEYWORD_FOUND)
SET(SA_CUR_INDEX 0) SET(SA_CUR_INDEX 0)
IF(NOT "${SA_CUR_VARNAME}" STREQUAL "_") IF(NOT "${SA_CUR_VARNAME}" STREQUAL "_")

View file

@ -5,12 +5,12 @@ SET(ROBOT_NAME "K1999")
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp) SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS 1 2) SET(ROBOT_SUBDIRS 1 2)
#ADD_SDLIB_INCLUDEDIR(math) #ADD_SDLIB_INCLUDEDIR(math)
#ROBOT(${ROBOT_NAME} ROBOT_SOURCES ROBOT_SHIP ROBOT_SHIPSUBDIRS) #ROBOT(${ROBOT_NAME} ROBOT_SOURCES ROBOT_FILES ROBOT_SUBDIRS)
ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -6,11 +6,11 @@ SET(ROBOT_NAME "bt")
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp cardata.cpp driver.cpp learn.cpp opponent.cpp pit.cpp SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp cardata.cpp driver.cpp learn.cpp opponent.cpp pit.cpp
spline.cpp strategy.cpp strategy.h cardata.h driver.h learn.h opponent.h pit.h spline.h) spline.cpp strategy.cpp strategy.h cardata.h driver.h learn.h opponent.h pit.h spline.h)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 6 7 8 9 155-DTM cg-nascar-rwd clkdtm dtm155 dtma4 SET(ROBOT_SUBDIRS 0 1 2 3 4 5 6 7 8 9 155-DTM cg-nascar-rwd clkdtm dtm155 dtma4
dtmastra dtmclk dtmfalcon dtmm3 gt40 mclaren-f1 xj-220 dtmastra dtmclk dtmfalcon dtmm3 gt40 mclaren-f1 xj-220
pc-350z pc-996 pc-ciclon-300 pc-f360 pc-gt4 pc-nsx pc-350z pc-996 pc-ciclon-300 pc-f360 pc-gt4 pc-nsx
sc-boxer-96 sc-spirit-300 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-murasama-nsx) sc-boxer-96 sc-spirit-300 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-murasama-nsx)
ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES}
SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -4,15 +4,15 @@ SET(ROBOT_NAME "human")
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp pref.cpp human.h pref.h) SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp pref.cpp human.h pref.h)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS cars) SET(ROBOT_SUBDIRS cars)
FILE(GLOB files_xml *.xml) FILE(GLOB files_xml *.xml)
ADD_SDLIB_INCLUDEDIR(tgfclient) ADD_SDLIB_INCLUDEDIR(tgfclient)
ROBOT(NAME ${ROBOT_NAME} INTERFACE WELCOME SOURCES ${ROBOT_SOURCES} ROBOT(NAME ${ROBOT_NAME} INTERFACE WELCOME SOURCES ${ROBOT_SOURCES}
SHIP ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
SD_INSTALL_FILES(DATA drivers/${ROBOT_NAME} USER drivers/${ROBOT_NAME} SD_INSTALL_FILES(DATA drivers/${ROBOT_NAME} USER drivers/${ROBOT_NAME}
FILES ${files_xml}) FILES ${files_xml})

View file

@ -7,8 +7,8 @@ SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp cardata.cpp correct.cpp driver.cpp
correct.h driver.h learn.h linalg.h name.h opponent.h pit.h correct.h driver.h learn.h linalg.h name.h opponent.h pit.h
spline.h strategy.h) spline.h strategy.h)
SET(ROBOT_SHIP) SET(ROBOT_FILES)
SET(ROBOT_SHIPSUBDIRS 1 2 3 4 5 6 7 8 9 10 sc-boxer-96 sc-spirit-300 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-murasama-nsx svg) SET(ROBOT_SUBDIRS 1 2 3 4 5 6 7 8 9 10 sc-boxer-96 sc-spirit-300 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-murasama-nsx svg)
ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -6,8 +6,8 @@ SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp opponent.cpp pit.cpp strategy.cpp
linalg.h opponent.h strategy.h pit.h cardata.h cardata.cpp spline.cpp linalg.h opponent.h strategy.h pit.h cardata.h cardata.cpp spline.cpp
spline.h raceline.cpp raceline.h kdriver.cpp kdriver.h util.h util.cpp) spline.h raceline.cpp raceline.h kdriver.cpp kdriver.h util.h util.cpp)
SET(ROBOT_SHIP logo.rgb default.xml) SET(ROBOT_FILES logo.rgb default.xml)
SET(ROBOT_SHIPSUBDIRS 1 2 5 6 tracks trb1-cavallo-360rb ls1-archer-r9) SET(ROBOT_SUBDIRS 1 2 5 6 tracks trb1-cavallo-360rb ls1-archer-r9)
ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) ROBOT(NAME ${ROBOT_NAME} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -4,18 +4,17 @@ SET(ROBOT_NAME "networkhuman")
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp pref.cpp networkhuman.h pref.h) SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp pref.cpp networkhuman.h pref.h)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIP_SUBDIR tracks) SET(ROBOT_SUBDIRS)
FILE(GLOB files_xml *.xml) FILE(GLOB files_xml *.xml)
ADD_SDLIB_INCLUDEDIR(tgfclient networking) ADD_SDLIB_INCLUDEDIR(tgfclient networking)
ROBOT(NAME ${ROBOT_NAME} INTERFACE WELCOME SOURCES ${ROBOT_SOURCES} ROBOT(NAME ${ROBOT_NAME} INTERFACE WELCOME SOURCES ${ROBOT_SOURCES}
SHIP ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
SD_INSTALL_FILES(DATA drivers/${ROBOT_NAME} USER drivers/${ROBOT_NAME} SD_INSTALL_FILES(DATA drivers/${ROBOT_NAME} USER drivers/${ROBOT_NAME}
FILES ${files_xml}) FILES ${files_xml})
#ADD_SDLIB_LIBRARY(${ROBOT_NAME} tgf tgfclient)
ADD_SDLIB_LIBRARY(${ROBOT_NAME} tgf client networking) ADD_SDLIB_LIBRARY(${ROBOT_NAME} tgf client networking)

View file

@ -87,64 +87,64 @@ ROBOT_MODULE(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE} SOURCES ${ROBOT_SOU
CLONENAMES ${ROBOT_CLONES}) CLONENAMES ${ROBOT_CLONES})
# The data associated to the ubiquitous robot module and its clones. # The data associated to the ubiquitous robot module and its clones.
SET(ROBOT_SHIP logo.rgb readme.txt default.xml) SET(ROBOT_FILES logo.rgb readme.txt default.xml)
SET(ROBOT_SHIPSUBDIRS 0 trb1-cavallo-360rb tracks SET(ROBOT_SUBDIRS 0 trb1-cavallo-360rb tracks
ls1-archer-r9 ls1-cavallo-570s1 ls1-newcastle-fury ls1-taipan-ltsr ls1-archer-r9 ls1-cavallo-570s1 ls1-newcastle-fury ls1-taipan-ltsr
ls1-toro-rgt ls1-vulture-v6r ls1-zentek-z7r ls1-toro-rgt ls1-vulture-v6r ls1-zentek-z7r
sc-boxer-96 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-boxer-96 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220
sc-murasama-nsx sc-spirit-300) sc-murasama-nsx sc-spirit-300)
ROBOT_DATA(NAME ${ROBOT_NAME} SHIPPREFIX src ROBOT_DATA(NAME ${ROBOT_NAME} PREFIX src
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
# 36GP # 36GP
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 6 7 8 9 SET(ROBOT_SUBDIRS 0 1 2 3 4 5 6 7 8 9
36gp-ettore-t59 36gp-milano-12c36 36gp-silber-w25b 36gp-tridenti-6c34 36gp-tridenti-v8ri 36gp-ettore-t59 36gp-milano-12c36 36gp-silber-w25b 36gp-tridenti-6c34 36gp-tridenti-v8ri
tracks) tracks)
ROBOT_DATA(NAME simplix_36GP SHIPPREFIX simplix_36GP ROBOT_DATA(NAME simplix_36GP PREFIX simplix_36GP
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
# SuperCars # SuperCars
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 6 7 8 12 13 SET(ROBOT_SUBDIRS 0 1 2 3 4 5 6 7 8 12 13
sc-boxer-96 sc-spirit-300 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-murasama-nsx sc-boxer-96 sc-spirit-300 sc-cavallo-360 sc-fmc-gt4 sc-lynx-220 sc-murasama-nsx
tracks) tracks)
ROBOT_DATA(NAME simplix_sc SHIPPREFIX simplix_sc ROBOT_DATA(NAME simplix_sc PREFIX simplix_sc
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
# LS-GT1 # LS-GT1
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 8 9 12 13 SET(ROBOT_SUBDIRS 0 1 2 3 4 5 8 9 12 13
ls1-toro-rgt ls1-cavallo-570s1 ls1-newcastle-fury ls1-archer-r9 ls1-toro-rgt ls1-cavallo-570s1 ls1-newcastle-fury ls1-archer-r9
ls1-zentek-z7r ls1-taipan-ltsr ls1-vulture-v6r ls1-zentek-z7r ls1-taipan-ltsr ls1-vulture-v6r
tracks) tracks)
ROBOT_DATA(NAME simplix_ls1 SHIPPREFIX simplix_ls1 ROBOT_DATA(NAME simplix_ls1 PREFIX simplix_ls1
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
# TRB1 # TRB1
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 SET(ROBOT_SUBDIRS 0 1 2 3 4 5 6 7 8 9 10 11 12 13
trb1-boxer-trbrs trb1-sector-rb1 trb1-spirit-rb1lt trb1-boxer-trbrs trb1-sector-rb1 trb1-spirit-rb1lt
trb1-cavallo-360rb trb1-silber-rblk trb1-taipan-rb1 trb1-zaxxon-rb trb1-cavallo-360rb trb1-silber-rblk trb1-taipan-rb1 trb1-zaxxon-rb
tracks) tracks)
ROBOT_DATA(NAME simplix_trb1 SHIPPREFIX simplix_trb1 ROBOT_DATA(NAME simplix_trb1 PREFIX simplix_trb1
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
# MP5 # MP5
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 mp5-fmc tracks) SET(ROBOT_SUBDIRS 0 1 2 3 4 5 mp5-fmc tracks)
ROBOT_DATA(NAME simplix_mp5 SHIPPREFIX simplix_mp5 ROBOT_DATA(NAME simplix_mp5 PREFIX simplix_mp5
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
# Work-in-progress / unofficial simplix instances. # Work-in-progress / unofficial simplix instances.
IF(NOT OPTION_OFFICIAL_ONLY) IF(NOT OPTION_OFFICIAL_ONLY)
SET(ROBOT_SHIPSUBDIRS 0 1 2 3 4 5 6 7 8 9 mpa1-murasama tracks) SET(ROBOT_SUBDIRS 0 1 2 3 4 5 6 7 8 9 mpa1-murasama tracks)
ROBOT_DATA(NAME simplix_mpa1 SHIPPREFIX simplix_mpa1 ROBOT_DATA(NAME simplix_mpa1 PREFIX simplix_mpa1
SHIPFILES ${ROBOT_SHIP} SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) FILES ${ROBOT_FILES} SUBDIRS ${ROBOT_SUBDIRS})
ENDIF() ENDIF()

View file

@ -8,9 +8,9 @@ SET(ROBOT_INTERFACE LEGACY WELCOME)
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp
strategy.cpp cardata.cpp raceline.cpp) strategy.cpp cardata.cpp raceline.cpp)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS cars 1 2 3 4 5 6 7 8 9 10 11 12 ) SET(ROBOT_SUBDIRS cars 1 2 3 4 5 6 7 8 9 10 11 12 )
ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE} ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE}
SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES}
SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -8,9 +8,9 @@ SET(ROBOT_INTERFACE LEGACY WELCOME)
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp
strategy.cpp cardata.cpp raceline.cpp) strategy.cpp cardata.cpp raceline.cpp)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS cars 1 2 3 4 7 8) SET(ROBOT_SUBDIRS cars 1 2 3 4 7 8)
ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE} ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE}
SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES}
SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -8,9 +8,9 @@ SET(ROBOT_INTERFACE LEGACY WELCOME)
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp
strategy.cpp cardata.cpp raceline.cpp) strategy.cpp cardata.cpp raceline.cpp)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS cars 1 2 3 4 5 6 7 8 9 10 11 12) SET(ROBOT_SUBDIRS cars 1 2 3 4 5 6 7 8 9 10 11 12)
ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE} ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE}
SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES}
SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) SUBDIRS ${ROBOT_SUBDIRS})

View file

@ -8,9 +8,9 @@ SET(ROBOT_INTERFACE LEGACY WELCOME)
SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp SET(ROBOT_SOURCES ${ROBOT_NAME}.cpp driver.cpp opponent.cpp spline.cpp pit.cpp
strategy.cpp cardata.cpp raceline.cpp) strategy.cpp cardata.cpp raceline.cpp)
SET(ROBOT_SHIP logo.rgb) SET(ROBOT_FILES logo.rgb)
SET(ROBOT_SHIPSUBDIRS cars 1 2 3 4 5 6 7 8 9 10 11 12 13 14) SET(ROBOT_SUBDIRS cars 1 2 3 4 5 6 7 8 9 10 11 12 13 14)
ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE} ROBOT(NAME ${ROBOT_NAME} INTERFACE ${ROBOT_INTERFACE}
SOURCES ${ROBOT_SOURCES} SHIP ${ROBOT_SHIP} SOURCES ${ROBOT_SOURCES} FILES ${ROBOT_FILES}
SHIPSUBDIRS ${ROBOT_SHIPSUBDIRS}) SUBDIRS ${ROBOT_SUBDIRS})