From 464158b22f42461d12627ebf851281b3f598611a Mon Sep 17 00:00:00 2001 From: scarab Date: Sat, 16 Aug 2008 19:50:32 +0000 Subject: " - prechod na nove krasne cmake (not yet uplne, ale uz to funguje)" git-svn-id: http://opensvn.csie.org/tuxanci_ng@198 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e --- src/CMakeLists.txt | 169 +++++++++++++++++++++++---------------------- src/modules/CMakeLists.txt | 45 +++++++++--- 2 files changed, 120 insertions(+), 94 deletions(-) (limited to 'src') diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index fad14e6..a63a2cc 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,103 +1,104 @@ -SET ( WORKDIR ${CMAKE_SOURCE_DIR}/src ) -# pro aktualizaci tehle seznamu pouzijte radsi skript nezli to delat rucne -# find ./ -maxdepth 1 -type f -name \*.c |grep "$" |sed -e 's/^\.\//\$\{WORKDIR\}\/DIR\//' -e 's/\.c//' |tr '\n' ' ' > DIRfiles -# nahradte DIR potrebnym adresarem a pak vemte vse co je v DIRfiles a vlozte to sem +############################################################################### +# tuxanci/src/CMakeLists.txt +############################################################################### +# SOURCE SPECIFICATION +############################################################################### +# Command for finding correct file names in directory, replace DIR with +# directory name you want eg: base +# find ./ -maxdepth 1 -type f -name \*.c |grep "$" |sed -e 's/^\.\//\$\{WORKDIR\}\/DIR\//' -e 's/\.c//' |tr '\n' ' ' SET ( SRC_base -${WORKDIR}/base/main ${WORKDIR}/base/shot ${WORKDIR}/base/space ${WORKDIR}/base/checkFront ${WORKDIR}/base/storage ${WORKDIR}/base/myTimer ${WORKDIR}/base/protect ${WORKDIR}/base/list ${WORKDIR}/base/arena ${WORKDIR}/base/server ${WORKDIR}/base/udp_server ${WORKDIR}/base/tcp_server ${WORKDIR}/base/serverSelect ${WORKDIR}/base/serverSendMsg ${WORKDIR}/base/textFile ${WORKDIR}/base/gun ${WORKDIR}/base/arenaFile ${WORKDIR}/base/modules ${WORKDIR}/base/net_multiplayer ${WORKDIR}/base/index ${WORKDIR}/base/item ${WORKDIR}/base/tux ${WORKDIR}/base/director ${WORKDIR}/base/idManager ${WORKDIR}/base/homeDirector ${WORKDIR}/base/proto ${WORKDIR}/base/shareFunction ${WORKDIR}/base/buffer + ${SRC_base} + ${WORKDIR}/base/main ${WORKDIR}/base/shot + ${WORKDIR}/base/space ${WORKDIR}/base/checkFront + ${WORKDIR}/base/storage ${WORKDIR}/base/myTimer + ${WORKDIR}/base/protect ${WORKDIR}/base/list + ${WORKDIR}/base/arena ${WORKDIR}/base/server + ${WORKDIR}/base/udp_server ${WORKDIR}/base/tcp_server + ${WORKDIR}/base/serverSelect ${WORKDIR}/base/serverSendMsg + ${WORKDIR}/base/textFile ${WORKDIR}/base/gun + ${WORKDIR}/base/arenaFile ${WORKDIR}/base/modules + ${WORKDIR}/base/net_multiplayer ${WORKDIR}/base/index + ${WORKDIR}/base/item ${WORKDIR}/base/tux + ${WORKDIR}/base/director ${WORKDIR}/base/idManager + ${WORKDIR}/base/homeDirector ${WORKDIR}/base/proto + ${WORKDIR}/base/shareFunction ${WORKDIR}/base/buffer -${WORKDIR}/net/udp ${WORKDIR}/net/tcp ${WORKDIR}/net/dns + ${WORKDIR}/net/udp ${WORKDIR}/net/tcp + ${WORKDIR}/net/dns ) SET ( SRC_client -${WORKDIR}/client/layer ${WORKDIR}/client/term ${WORKDIR}/client/screen ${WORKDIR}/client/interface ${WORKDIR}/client/client ${WORKDIR}/client/chat ${WORKDIR}/client/configFile ${WORKDIR}/client/language ${WORKDIR}/client/font ${WORKDIR}/client/game ${WORKDIR}/client/radar ${WORKDIR}/client/panel ${WORKDIR}/client/image ${WORKDIR}/client/keyboardBuffer ${WORKDIR}/client/pauza ${WORKDIR}/client/saveDialog ${WORKDIR}/client/saveLoad + ${WORKDIR}/client/layer ${WORKDIR}/client/term + ${WORKDIR}/client/screen ${WORKDIR}/client/interface + ${WORKDIR}/client/client ${WORKDIR}/client/chat + ${WORKDIR}/client/configFile ${WORKDIR}/client/language + ${WORKDIR}/client/font ${WORKDIR}/client/game + ${WORKDIR}/client/radar ${WORKDIR}/client/panel + ${WORKDIR}/client/image ${WORKDIR}/client/keyboardBuffer + ${WORKDIR}/client/pauza ${WORKDIR}/client/saveDialog + ${WORKDIR}/client/saveLoad -${WORKDIR}/screen/screen_choiceArena ${WORKDIR}/screen/screen_settingKeys ${WORKDIR}/screen/screen_table ${WORKDIR}/screen/screen_setting ${WORKDIR}/screen/screen_credits ${WORKDIR}/screen/screen_world ${WORKDIR}/screen/screen_analyze ${WORKDIR}/screen/screen_mainMenu ${WORKDIR}/screen/screen_browser ${WORKDIR}/screen/screen_gameType + ${WORKDIR}/screen/screen_choiceArena + ${WORKDIR}/screen/screen_settingKeys ${WORKDIR}/screen/screen_table + ${WORKDIR}/screen/screen_setting ${WORKDIR}/screen/screen_credits + ${WORKDIR}/screen/screen_world ${WORKDIR}/screen/screen_analyze + ${WORKDIR}/screen/screen_mainMenu ${WORKDIR}/screen/screen_browser + ${WORKDIR}/screen/screen_gameType -${WORKDIR}/widget/widget_check ${WORKDIR}/widget/widget_button ${WORKDIR}/widget/widget_textfield ${WORKDIR}/widget/widget_label ${WORKDIR}/widget/widget_buttonimage ${WORKDIR}/widget/widget_image ${WORKDIR}/widget/widget_select ${WORKDIR}/widget/widget_catchkey ${WORKDIR}/widget/widget_choicegroup + ${WORKDIR}/widget/widget_check ${WORKDIR}/widget/widget_button + ${WORKDIR}/widget/widget_textfield ${WORKDIR}/widget/widget_label + ${WORKDIR}/widget/widget_buttonimage ${WORKDIR}/widget/widget_image + ${WORKDIR}/widget/widget_select ${WORKDIR}/widget/widget_catchkey + ${WORKDIR}/widget/widget_choicegroup ) -SET ( SRC_audio ${WORKDIR}/audio/audio ${WORKDIR}/audio/music ${WORKDIR}/audio/sound) +SET ( SRC_audio + ${WORKDIR}/audio/audio ${WORKDIR}/audio/music + ${WORKDIR}/audio/sound +) SET ( SRC_server -${WORKDIR}/server/log ${WORKDIR}/server/serverConfigFile ${WORKDIR}/server/heightScore ${WORKDIR}/server/publicServer + ${WORKDIR}/server/log ${WORKDIR}/server/serverConfigFile + ${WORKDIR}/server/heightScore ${WORKDIR}/server/publicServer ) -ADD_DEFINITIONS ( -DSUPPORT_NET_UNIX_UDP ) -#ADD_DEFINITIONS ( -DZZEEXX86_READKEY ) -# server nebo klient -IF ( Server ) - ADD_DEFINITIONS ( -DPUBLIC_SERVER ) +############################################################################### +# AUDIO CHECK +############################################################################### +IF ( NO_Audio ) ADD_DEFINITIONS ( -DNO_SOUND ) -ENDIF ( Server ) -IF ( PREFIX ) - ADD_DEFINITIONS ( -DPREFIX="${PREFIX}" ) -ENDIF ( PREFIX ) -IF ( Win ) - SET ( SRC_base ${SRC_base} ${WORKDIR}/tuxanci.rc ) -ENDIF ( Win ) -#include zdrojaku -INCLUDE_DIRECTORIES ( ${WORKDIR}/base ) -INCLUDE_DIRECTORIES ( ${WORKDIR}/net ) -#vytvoreni knihoven -IF ( NOT Win ) -SET ( CMAKE_INSTALL_BINDIR bin ) -SET ( CMAKE_INSTALL_LIBDIR lib ) -ELSE ( NOT Win ) - -SET ( CMAKE_INSTALL_BINDIR ${APPNAME}/bin ) -SET ( CMAKE_INSTALL_LIBDIR ${APPNAME}/lib ) -ENDIF ( NOT Win ) -IF ( NOT Server ) # server nebo klient - IF ( NOT Win ) - MESSAGE ( STATUS "" ) - MESSAGE ( STATUS "<******************************>" ) - FIND_PACKAGE ( SDL REQUIRED ) - FIND_PACKAGE ( SDL_image REQUIRED ) - FIND_PACKAGE ( SDL_ttf REQUIRED ) - LINK_LIBRARIES ( ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY} ${SDLTTF_LIBRARY} SDLmain ) - ELSE ( NOT Win ) - LINK_LIBRARIES ( ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY} ${SDLTTF_LIBRARY} wsock32 ) - ENDIF ( NOT Win ) - MESSAGE ( STATUS "" ) +ELSE ( NO_Audio ) + MESSAGE ( STATUS "" ) MESSAGE ( STATUS "<******************************>" ) - INCLUDE_DIRECTORIES ( ${WORKDIR}/client ) - INCLUDE_DIRECTORIES ( ${WORKDIR}/screen ) - INCLUDE_DIRECTORIES ( ${WORKDIR}/widget ) - INCLUDE_DIRECTORIES ( ${SDL_INCLUDE_DIR} ${SDLIMAGE_INCLUDE_DIR} ${SDLTTF_INCLUDE_DIR}) - SET ( SRC_compile ${SRC_base} ${SRC_client} ) - IF ( NOT NO_Audio ) - MESSAGE ( STATUS "" ) - MESSAGE ( STATUS "<******************************>" ) - SET ( SRC_compile ${SRC_base} ${SRC_client} ${SRC_audio} ) - INCLUDE_DIRECTORIES ( ${WORKDIR}/audio ) - IF ( NOT Win ) - FIND_PACKAGE ( SDL_mixer REQUIRED ) - ENDIF ( NOT Win ) - INCLUDE_DIRECTORIES ( ${SDLMIXER_INCLUDE_DIR} ) - IF ( NOT Win ) - LINK_LIBRARIES ( ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY} ${SDLMIXER_LIBRARY} ${SDLTTF_LIBRARY} SDLmain ) - ELSE ( NOT Win ) - LINK_LIBRARIES ( ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY} ${SDLMIXER_LIBRARY} ${SDLTTF_LIBRARY} wsock32 ) - ENDIF ( NOT Win ) - ELSE (NOT NO_Audio) - MESSAGE ( STATUS "" ) - ADD_DEFINITIONS ( -DNO_SOUND ) - MESSAGE ( STATUS "<******************************>" ) - ENDIF ( NOT NO_Audio ) - ADD_EXECUTABLE ( tuxanci ${SRC_compile} ) - SET (TUX_BIN "tuxanci") -ELSE ( NOT Server ) - # kontrola libdl - IF ( NOT Win ) - LINK_LIBRARIES ( ${CMAKE_DL_LIBS} ) - ELSE ( NOT Win ) - LINK_LIBRARIES ( ${CMAKE_DL_LIBS} wsock32 ) - ENDIF ( NOT Win ) + SET ( SRC_compile ${SRC_base} ${SRC_client} ${SRC_audio} ) + INCLUDE_DIRECTORIES ( ${WORKDIR}/audio ) + INCLUDE_DIRECTORIES ( ${SDLMIXER_INCLUDE_DIR} ) +ENDIF ( NO_Audio ) +############################################################################### +# MODULES +############################################################################### +ADD_SUBDIRECTORY ( modules ) +############################################################################### +# SERVER COMPILATION +############################################################################### +IF ( Server ) MESSAGE ( STATUS "" ) MESSAGE ( STATUS "<******************************>" ) - INCLUDE_DIRECTORIES ( ${WORKDIR}/server ) SET ( SRC_compile ${SRC_base} ${SRC_server} ) ADD_EXECUTABLE ( tuxanci-server ${SRC_compile} ) - SET (TUX_BIN "tuxanci-server") +ENDIF ( Server ) +############################################################################### +# CLIENT COMPILATION +############################################################################### +IF ( NOT Server ) + MESSAGE ( STATUS "" ) + MESSAGE ( STATUS "<******************************>" ) + ADD_EXECUTABLE ( tuxanci ${SRC_compile} ) + SET (TUX_BIN "tuxanci") ENDIF ( NOT Server ) -ADD_SUBDIRECTORY ( modules ) -INSTALL ( TARGETS ${TUX_BIN} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} ) +################################################################################ +# INSTALLATION OF BINARY +################################################################################ +INSTALL ( TARGETS ${APPNAME} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} ) +################################################################################ diff --git a/src/modules/CMakeLists.txt b/src/modules/CMakeLists.txt index b2aaf41..c80704d 100644 --- a/src/modules/CMakeLists.txt +++ b/src/modules/CMakeLists.txt @@ -1,8 +1,16 @@ +############################################################################### +# tuxanci/src/modules/CMakeLists.txt +############################################################################### +# LINKING ( special for modules ) +############################################################################### IF ( NOT Win ) LINK_LIBRARIES ( ${CMAKE_DL_LIBS} ) ELSE ( NOT Win ) LINK_LIBRARIES ( ${CMAKE_DL_LIBS} wsock32 ) ENDIF ( NOT Win ) +############################################################################### +# SOURCE SPECIFICATION +############################################################################### IF ( NOT Server ) SET ( SRC_base_modules ${WORKDIR}/client/interface.h ${WORKDIR}/client/image.h @@ -14,39 +22,56 @@ ELSE ( NOT Server ) ENDIF ( NOT Server ) SET ( SRC_base_modules ${SRC_base_modules} - ${WORKDIR}/base/main.h ${WORKDIR}/base/modules.h ${WORKDIR}/base/shot.h ${WORKDIR}/base/tux.h ${WORKDIR}/base/list ${WORKDIR}/base/gun.h ${WORKDIR}/base/space.h + ${WORKDIR}/base/main.h ${WORKDIR}/base/modules.h + ${WORKDIR}/base/shot.h ${WORKDIR}/base/tux.h + ${WORKDIR}/base/list ${WORKDIR}/base/gun.h + ${WORKDIR}/base/space.h ) SET ( SRC_modWall ${SRC_base_modules} - ${WORKDIR}/base/index ${WORKDIR}/base/space.c + ${WORKDIR}/base/index ${WORKDIR}/base/space.c modWall.c ) SET ( SRC_modPipe ${SRC_base_modules} - ${WORKDIR}/base/index ${WORKDIR}/base/space.c + ${WORKDIR}/base/index ${WORKDIR}/base/space.c modPipe.c ) SET ( SRC_modTeleport ${SRC_base_modules} - ${WORKDIR}/base/index ${WORKDIR}/base/space.c + ${WORKDIR}/base/index ${WORKDIR}/base/space.c modTeleport.c ) SET ( SRC_modMove ${SRC_base_modules} - ${WORKDIR}/base/index ${WORKDIR}/base/space.c + ${WORKDIR}/base/index ${WORKDIR}/base/space.c modMove.c ) SET ( SRC_modAI ${SRC_base_modules} modAI.c ) +############################################################################### +# COMPILATION ITSELF +############################################################################### ADD_LIBRARY ( modWall SHARED ${SRC_modWall} ) ADD_LIBRARY ( modPipe SHARED ${SRC_modPipe} ) ADD_LIBRARY ( modMove SHARED ${SRC_modMove} ) ADD_LIBRARY ( modTeleport SHARED ${SRC_modTeleport} ) ADD_LIBRARY ( modAI SHARED ${SRC_modAI} ) -INSTALL ( TARGETS modWall LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) -INSTALL ( TARGETS modPipe LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) -INSTALL ( TARGETS modMove LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) -INSTALL ( TARGETS modTeleport LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) -INSTALL ( TARGETS modAI LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +INSTALL ( TARGETS modWall + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +INSTALL ( TARGETS modPipe + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +INSTALL ( TARGETS modMove + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +INSTALL ( TARGETS modTeleport + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +INSTALL ( TARGETS modAI + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${APPNAME} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +############################################################################### -- cgit v1.2.3