FIND_PACKAGE(SDL REQUIRED) FIND_PACKAGE(SDL_image REQUIRED) FIND_PACKAGE(SDL_mixer REQUIRED) FIND_PACKAGE(SDL_net REQUIRED) FIND_PACKAGE(SDL_ttf REQUIRED) FIND_PACKAGE(SDL_gfx REQUIRED) FIND_PACKAGE(CURL REQUIRED) FIND_PACKAGE(LibXml2 REQUIRED) FIND_PACKAGE(PhysFS REQUIRED) FIND_PACKAGE(PNG REQUIRED) FIND_PACKAGE(Gettext REQUIRED) IF (POLICY CMP0015) CMAKE_POLICY(SET CMP0015 OLD) ENDIF() SET(FLAGS "-DPACKAGE_VERSION=\\\"${VERSION}\\\"") SET(FLAGS "${FLAGS} -DPKG_DATADIR=\\\"${PKG_DATADIR}/\\\"") SET(FLAGS "${FLAGS} -DLOCALEDIR=\\\"${LOCALEDIR}/\\\"") IF (ENABLE_NLS) SET(FLAGS "${FLAGS} -DENABLE_NLS=1") ENDIF() IF (ENABLE_MANASERV) SET(FLAGS "${FLAGS} -DMANASERV_SUPPORT=1") ENDIF() IF (ENABLE_EATHENA) SET(FLAGS "${FLAGS} -DEATHENA_SUPPORT=1") ENDIF() IF (CMAKE_BUILD_TYPE) STRING(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER) IF(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug OR CMAKE_BUILD_TYPE_TOLOWER MATCHES relwithdebinfo) SET(FLAGS "${FLAGS} -DDEBUG") ENDIF() ENDIF() IF (WIN32) SET(EXTRA_LIBRARIES ws2_32 winmm) FIND_PACKAGE(LibIntl REQUIRED) ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR BEOS) FIND_PACKAGE(LibIntl REQUIRED) ELSEIF (CMAKE_SYSTEM_NAME STREQUAL SunOS) # explicit linking to libintl is required on Solaris SET(EXTRA_LIBRARIES intl) ENDIF() SET(FLAGS "${FLAGS} -DUSE_MUMBLE") IF (WITH_OPENGL) FIND_PACKAGE(OpenGL REQUIRED) INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR}) SET(FLAGS "${FLAGS} -DUSE_OPENGL") ENDIF (WITH_OPENGL) IF (USE_X11) FIND_PACKAGE(X11 REQUIRED) INCLUDE_DIRECTORIES(${X11_INCLUDE_DIR}) SET(FLAGS "${FLAGS} -DUSE_X11") ENDIF (USE_X11) INCLUDE_DIRECTORIES( "guichan/include" ${CMAKE_CURRENT_SOURCE_DIR} ${SDL_INCLUDE_DIR} ${SDLIMAGE_INCLUDE_DIR} ${SDLMIXER_INCLUDE_DIR} ${SDLNET_INCLUDE_DIR} ${SDLTTF_INCLUDE_DIR} ${SDLGFX_INCLUDE_DIR} ${PNG_INCLUDE_DIR} ${PHYSFS_INCLUDE_DIR} ${CURL_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR} ) # enable rc-handling with mingw # most likely this part can be kicked out with some later cmake version IF (MINGW) FIND_PATH(MINGW_INCLUDE_DIR windows.h $ENV{INCLUDE}) IF (MINGW_INCLUDE_DIR) MESSAGE(STATUS "Found mingw headers: ${MINGW_INCLUDE_DIR}") INCLUDE_DIRECTORIES(${MINGW_INCLUDE_DIR}) ELSE() MESSAGE(FATAL_ERROR "Unable to find mingw headers. Required for windres") ENDIF() SET(CMAKE_RC_COMPILER_INIT windres) ENABLE_LANGUAGE(RC) SET(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> <FLAGS> <DEFINES> -O coff -o <OBJECT> <SOURCE>") ENDIF() # Fix some stuff that gets not hidden by mainline modules MARK_AS_ADVANCED(PHYSFS_INCLUDE_DIR) MARK_AS_ADVANCED(PHYSFS_LIBRARY) MARK_AS_ADVANCED(SDLIMAGE_INCLUDE_DIR) MARK_AS_ADVANCED(SDLIMAGE_LIBRARY) MARK_AS_ADVANCED(SDLMAIN_LIBRARY) MARK_AS_ADVANCED(SDLMIXER_INCLUDE_DIR) MARK_AS_ADVANCED(SDLMIXER_LIBRARY) MARK_AS_ADVANCED(SDLNET_INCLUDE_DIR) MARK_AS_ADVANCED(SDLNET_LIBRARY) MARK_AS_ADVANCED(SDL_INCLUDE_DIR) MARK_AS_ADVANCED(SDL_LIBRARY) SET(SRCS gui/widgets/avatarlistbox.cpp gui/widgets/avatarlistbox.h gui/widgets/battletab.cpp gui/widgets/battletab.h gui/widgets/browserbox.cpp gui/widgets/browserbox.h gui/widgets/button.cpp gui/widgets/button.h gui/widgets/chattab.cpp gui/widgets/chattab.h gui/widgets/checkbox.cpp gui/widgets/checkbox.h gui/widgets/container.cpp gui/widgets/container.h gui/widgets/desktop.cpp gui/widgets/desktop.h gui/widgets/dropdown.cpp gui/widgets/dropdown.h gui/widgets/emoteshortcutcontainer.cpp gui/widgets/emoteshortcutcontainer.h gui/widgets/extendedlistbox.cpp gui/widgets/extendedlistbox.h gui/widgets/extendedlistmodel.h gui/widgets/extendednamesmodel.cpp gui/widgets/extendednamesmodel.h gui/widgets/flowcontainer.cpp gui/widgets/flowcontainer.h gui/widgets/guildchattab.cpp gui/widgets/guildchattab.h gui/widgets/horizontcontainer.cpp gui/widgets/horizontcontainer.h gui/widgets/icon.cpp gui/widgets/icon.h gui/widgets/inttextfield.cpp gui/widgets/inttextfield.h gui/widgets/itemcontainer.cpp gui/widgets/itemcontainer.h gui/widgets/itemlinkhandler.cpp gui/widgets/itemlinkhandler.h gui/widgets/dropshortcutcontainer.cpp gui/widgets/dropshortcutcontainer.h gui/widgets/itemshortcutcontainer.cpp gui/widgets/itemshortcutcontainer.h gui/widgets/spellshortcutcontainer.cpp gui/widgets/spellshortcutcontainer.h gui/widgets/label.cpp gui/widgets/label.h gui/widgets/layout.cpp gui/widgets/layout.h gui/widgets/layouthelper.cpp gui/widgets/layouthelper.h gui/widgets/linkhandler.h gui/widgets/listbox.cpp gui/widgets/listbox.h gui/widgets/mouseevent.h gui/widgets/namesmodel.cpp gui/widgets/namesmodel.h gui/widgets/passwordfield.cpp gui/widgets/passwordfield.h gui/widgets/playerbox.cpp gui/widgets/playerbox.h gui/widgets/popup.cpp gui/widgets/popup.h gui/widgets/popuplist.cpp gui/widgets/popuplist.h gui/widgets/progressbar.cpp gui/widgets/progressbar.h gui/widgets/progressindicator.cpp gui/widgets/progressindicator.h gui/widgets/radiobutton.cpp gui/widgets/radiobutton.h gui/widgets/radiogroup.cpp gui/widgets/radiogroup.h gui/widgets/scrollarea.cpp gui/widgets/scrollarea.h gui/widgets/setupitem.cpp gui/widgets/setupitem.h gui/widgets/setuptab.cpp gui/widgets/setuptab.h gui/widgets/setuptabscroll.cpp gui/widgets/setuptabscroll.h gui/widgets/setuptouchitem.cpp gui/widgets/setuptouchitem.h gui/widgets/shopitems.cpp gui/widgets/shopitems.h gui/widgets/shoplistbox.cpp gui/widgets/shoplistbox.h gui/widgets/shortcutcontainer.cpp gui/widgets/shortcutcontainer.h gui/widgets/slider.cpp gui/widgets/slider.h gui/widgets/sliderlist.cpp gui/widgets/sliderlist.h gui/widgets/tab.cpp gui/widgets/tab.h gui/widgets/tabbedarea.cpp gui/widgets/tabbedarea.h gui/widgets/guitable.cpp gui/widgets/guitable.h gui/widgets/tablemodel.cpp gui/widgets/tablemodel.h gui/widgets/tabstrip.cpp gui/widgets/tabstrip.h gui/widgets/textbox.cpp gui/widgets/textbox.h gui/widgets/textfield.cpp gui/widgets/textfield.h gui/widgets/textpreview.cpp gui/widgets/textpreview.h gui/widgets/tradetab.cpp gui/widgets/tradetab.h gui/widgets/vertcontainer.cpp gui/widgets/vertcontainer.h gui/widgets/whispertab.cpp gui/widgets/whispertab.h gui/widgets/widget2.h gui/widgets/widgetgroup.cpp gui/widgets/widgetgroup.h gui/widgets/window.cpp gui/widgets/window.h gui/widgets/windowcontainer.cpp gui/widgets/windowcontainer.h gui/beingpopup.cpp gui/beingpopup.h gui/buydialog.cpp gui/buydialog.h gui/buyselldialog.cpp gui/buyselldialog.h gui/changeemaildialog.cpp gui/changeemaildialog.h gui/changepassworddialog.cpp gui/changepassworddialog.h gui/charselectdialog.cpp gui/charselectdialog.h gui/charcreatedialog.cpp gui/charcreatedialog.h gui/chatwindow.cpp gui/chatwindow.h gui/confirmdialog.cpp gui/confirmdialog.h gui/connectiondialog.cpp gui/connectiondialog.h gui/debugwindow.cpp gui/debugwindow.h gui/didyouknowwindow.cpp gui/didyouknowwindow.h gui/editserverdialog.cpp gui/editserverdialog.h gui/equipmentwindow.cpp gui/equipmentwindow.h gui/focushandler.cpp gui/focushandler.h gui/gui.cpp gui/gui.h gui/helpwindow.cpp gui/helpwindow.h gui/inventorywindow.cpp gui/inventorywindow.h gui/itempopup.cpp gui/itempopup.h gui/spellpopup.cpp gui/spellpopup.h gui/statuspopup.cpp gui/statuspopup.h gui/killstats.cpp gui/killstats.h gui/itemamountwindow.cpp gui/itemamountwindow.h gui/logindialog.cpp gui/logindialog.h gui/minimap.cpp gui/minimap.h gui/ministatuswindow.cpp gui/ministatuswindow.h gui/npcdialog.cpp gui/npcdialog.h gui/npcpostdialog.cpp gui/npcpostdialog.h gui/okdialog.cpp gui/okdialog.h gui/editdialog.cpp gui/editdialog.h gui/outfitwindow.cpp gui/outfitwindow.h gui/botcheckerwindow.cpp gui/botcheckerwindow.h gui/textcommandeditor.cpp gui/textcommandeditor.h gui/palette.cpp gui/palette.h gui/popupmenu.cpp gui/popupmenu.h gui/questswindow.cpp gui/questswindow.h gui/quitdialog.cpp gui/quitdialog.h gui/registerdialog.cpp gui/registerdialog.h gui/sdlinput.cpp gui/sdlinput.h gui/selldialog.cpp gui/selldialog.h gui/serverdialog.cpp gui/serverdialog.h gui/setup.cpp gui/setup.h gui/setup_audio.cpp gui/setup_audio.h gui/setup_colors.cpp gui/setup_colors.h gui/setup_joystick.cpp gui/setup_joystick.h gui/setup_other.cpp gui/setup_other.h gui/setup_theme.cpp gui/setup_theme.h gui/setup_touch.cpp gui/setup_touch.h gui/setup_chat.cpp gui/setup_chat.h gui/setup_input.cpp gui/setup_input.h gui/setup_perfomance.cpp gui/setup_perfomance.h gui/setup_relations.cpp gui/setup_relations.h gui/setup_players.cpp gui/setup_players.h gui/setup_video.cpp gui/setup_video.h gui/setup_visual.cpp gui/setup_visual.h gui/setupactiondata.h gui/sdlfont.cpp gui/sdlfont.h gui/shopwindow.cpp gui/shopwindow.h gui/shortcutwindow.cpp gui/shortcutwindow.h gui/skilldialog.cpp gui/skilldialog.h gui/socialwindow.cpp gui/socialwindow.h gui/speechbubble.cpp gui/speechbubble.h gui/statuswindow.cpp gui/statuswindow.h gui/textdialog.cpp gui/textdialog.h gui/textpopup.cpp gui/textpopup.h gui/theme.cpp gui/theme.h gui/tradewindow.cpp gui/tradewindow.h gui/unregisterdialog.cpp gui/unregisterdialog.h gui/updaterwindow.cpp gui/updaterwindow.h gui/userpalette.cpp gui/userpalette.h gui/viewport.cpp gui/viewport.h gui/whoisonline.cpp gui/whoisonline.h gui/windowmenu.cpp gui/windowmenu.h gui/worldselectdialog.cpp gui/worldselectdialog.h net/adminhandler.h net/charhandler.cpp net/charhandler.h net/chathandler.h net/download.cpp net/download.h net/gamehandler.h net/generalhandler.h net/guildhandler.h net/inventoryhandler.h net/logindata.h net/loginhandler.h net/messagehandler.h net/messagein.cpp net/messagein.h net/messageout.cpp net/messageout.h net/npchandler.h net/net.cpp net/net.h net/partyhandler.h net/playerhandler.h net/serverinfo.h net/specialhandler.h net/tradehandler.h net/worldinfo.h net/packetcounters.cpp net/packetcounters.h resources/action.cpp resources/action.h resources/ambientlayer.cpp resources/ambientlayer.h resources/animation.cpp resources/animation.h resources/atlasmanager.cpp resources/atlasmanager.h resources/beinginfo.cpp resources/beinginfo.h resources/chardb.cpp resources/chardb.h resources/colordb.cpp resources/colordb.h resources/cursor.cpp resources/cursor.h resources/dye.cpp resources/dye.h resources/emotedb.cpp resources/emotedb.h resources/fboinfo.h resources/image.cpp resources/image.h resources/imagehelper.cpp resources/imagehelper.h resources/imageset.h resources/imageset.cpp resources/imagewriter.cpp resources/imagewriter.h resources/itemdb.cpp resources/itemdb.h resources/iteminfo.h resources/iteminfo.cpp resources/mapdb.cpp resources/mapdb.h resources/mapreader.cpp resources/mapreader.h resources/monsterdb.cpp resources/monsterdb.h resources/npcdb.cpp resources/npcdb.h resources/openglimagehelper.cpp resources/openglimagehelper.h resources/resource.cpp resources/resource.h resources/resourcemanager.cpp resources/resourcemanager.h resources/sdlimagehelper.cpp resources/sdlimagehelper.h resources/sdlmusic.cpp resources/sdlmusic.h resources/soundeffect.h resources/soundeffect.cpp resources/spritedef.h resources/spritedef.cpp resources/subimage.cpp resources/subimage.h resources/wallpaper.cpp resources/wallpaper.h utils/translation/podict.cpp utils/translation/podict.h utils/translation/poparser.cpp utils/translation/poparser.h utils/translation/translationmanager.cpp utils/translation/translationmanager.h utils/base64.cpp utils/base64.h utils/checkutils.cpp utils/checkutils.h utils/copynpaste.cpp utils/copynpaste.h utils/dtor.h utils/gettext.h utils/langs.cpp utils/langs.h utils/mathutils.h utils/paths.cpp utils/paths.h utils/perfomance.cpp utils/perfomance.h utils/physfsrwops.cpp utils/physfsrwops.h utils/process.cpp utils/process.h utils/stringutils.cpp utils/stringutils.h utils/stringvector.h utils/mutex.h utils/mkdir.cpp utils/mkdir.h utils/xml.cpp utils/xml.h test/testlauncher.cpp test/testlauncher.h test/testmain.cpp test/testmain.h actionmanager.cpp actionmanager.h actor.cpp actor.h actorsprite.cpp actorsprite.h actorspritelistener.h actorspritemanager.cpp actorspritemanager.h animatedsprite.cpp animatedsprite.h animationdelayload.cpp animationdelayload.h animationparticle.cpp animationparticle.h auctionmanager.cpp auctionmanager.h avatar.cpp avatar.h being.cpp being.h spellmanager.cpp spellmanager.h chatlogger.cpp chatlogger.h client.cpp client.h commandhandler.cpp commandhandler.h commands.cpp commands.h compoundsprite.cpp compoundsprite.h configlistener.h configuration.cpp configuration.h debug.h defaults.cpp defaults.h depricatedevent.cpp depricatedevent.h effectmanager.cpp effectmanager.h emoteshortcut.cpp emoteshortcut.h equipment.h flooritem.cpp flooritem.h game.cpp game.h graphics.cpp graphics.h graphicsmanager.cpp graphicsmanager.h graphicsvertexes.cpp graphicsvertexes.h guild.cpp guild.h guildmanager.cpp guildmanager.h imageparticle.cpp imageparticle.h imagesprite.cpp imagesprite.h inventory.cpp inventory.h item.cpp item.h itemshortcut.cpp itemshortcut.h dropshortcut.cpp dropshortcut.h spellshortcut.cpp spellshortcut.h textcommand.cpp textcommand.h inputmanager.cpp inputmanager.h inputevent.cpp inputevent.h joystick.cpp joystick.h keyboardconfig.cpp keyboardconfig.h keyboarddata.h keydata.h keyevent.cpp keyevent.h keyinput.cpp keyinput.h listener.cpp listener.h localconsts.h localplayer.cpp localplayer.h logger.cpp logger.h main.cpp main.h map.cpp map.h maplayer.cpp maplayer.h mgl.cpp mgl.h mobileopenglgraphics.cpp mobileopenglgraphics.h mouseinput.cpp mouseinput.h normalopenglgraphics.cpp normalopenglgraphics.h particle.cpp particle.h particlecontainer.cpp particlecontainer.h particleemitter.cpp particleemitter.h particleemitterprop.h party.cpp party.h playerinfo.cpp playerinfo.h playerrelations.cpp playerrelations.h position.cpp position.h properties.h rotationalparticle.cpp rotationalparticle.h safeopenglgraphics.cpp safeopenglgraphics.h shopitem.cpp shopitem.h simpleanimation.cpp simpleanimation.h soundmanager.cpp soundmanager.h sprite.h statuseffect.cpp statuseffect.h text.cpp text.h textmanager.cpp textmanager.h textparticle.cpp textparticle.h tileset.h touchactions.cpp touchactions.h touchmanager.cpp touchmanager.h units.cpp units.h variabledata.h vector.cpp vector.h mumblemanager.cpp mumblemanager.h ) SET(SRCS_GUICHAN guichan/include/guichan/actionevent.hpp guichan/include/guichan/actionlistener.hpp guichan/include/guichan/basiccontainer.hpp guichan/include/guichan/cliprectangle.hpp guichan/include/guichan/color.hpp guichan/include/guichan/deathlistener.hpp guichan/include/guichan/event.hpp guichan/include/guichan/exception.hpp guichan/include/guichan/focushandler.hpp guichan/include/guichan/focuslistener.hpp guichan/include/guichan/font.hpp guichan/include/guichan/graphics.hpp guichan/include/guichan/gui.hpp guichan/include/guichan/image.hpp guichan/include/guichan/input.hpp guichan/include/guichan/inputevent.hpp guichan/include/guichan/key.hpp guichan/include/guichan/keyevent.hpp guichan/include/guichan/keyinput.hpp guichan/include/guichan/keylistener.hpp guichan/include/guichan/listmodel.hpp guichan/include/guichan/mouseevent.hpp guichan/include/guichan/mouseinput.hpp guichan/include/guichan/mouselistener.hpp guichan/include/guichan/platform.hpp guichan/include/guichan/rectangle.hpp guichan/include/guichan/selectionevent.hpp guichan/include/guichan/selectionlistener.hpp guichan/include/guichan/sdl/sdlgraphics.hpp guichan/include/guichan/sdl/sdlpixel.hpp guichan/include/guichan/widget.hpp guichan/include/guichan/widgetlistener.hpp guichan/include/guichan/widgets/button.hpp guichan/include/guichan/widgets/checkbox.hpp guichan/include/guichan/widgets/container.hpp guichan/include/guichan/widgets/label.hpp guichan/include/guichan/widgets/listbox.hpp guichan/include/guichan/widgets/radiobutton.hpp guichan/include/guichan/widgets/scrollarea.hpp guichan/include/guichan/widgets/slider.hpp guichan/include/guichan/widgets/textbox.hpp guichan/include/guichan/widgets/textfield.hpp guichan/include/guichan/widgets/window.hpp guichan/actionevent.cpp guichan/basiccontainer.cpp guichan/cliprectangle.cpp guichan/color.cpp guichan/event.cpp guichan/exception.cpp guichan/focushandler.cpp guichan/font.cpp guichan/graphics.cpp guichan/gui.cpp guichan/image.cpp guichan/inputevent.cpp guichan/key.cpp guichan/keyevent.cpp guichan/keyinput.cpp guichan/mouseevent.cpp guichan/mouseinput.cpp guichan/rectangle.cpp guichan/selectionevent.cpp guichan/widget.cpp guichan/sdl/sdlgraphics.cpp guichan/widgets/button.cpp guichan/widgets/checkbox.cpp guichan/widgets/container.cpp guichan/widgets/label.cpp guichan/widgets/listbox.cpp guichan/widgets/radiobutton.cpp guichan/widgets/scrollarea.cpp guichan/widgets/slider.cpp guichan/widgets/textbox.cpp guichan/widgets/textfield.cpp guichan/widgets/window.cpp ) SET(SRCS_EVOL net/ea/gui/guildtab.cpp net/ea/gui/guildtab.h net/ea/gui/partytab.cpp net/ea/gui/partytab.h net/ea/adminhandler.cpp net/ea/adminhandler.h net/ea/beinghandler.cpp net/ea/beinghandler.h net/ea/buysellhandler.cpp net/ea/buysellhandler.h net/ea/charserverhandler.cpp net/ea/charserverhandler.h net/ea/chathandler.cpp net/ea/chathandler.h net/ea/eaprotocol.h net/ea/gamehandler.cpp net/ea/gamehandler.h net/ea/guildhandler.cpp net/ea/guildhandler.h net/ea/inventoryhandler.cpp net/ea/inventoryhandler.h net/ea/itemhandler.cpp net/ea/itemhandler.h net/ea/loginhandler.cpp net/ea/loginhandler.h net/ea/network.cpp net/ea/network.h net/ea/npchandler.cpp net/ea/npchandler.h net/ea/partyhandler.cpp net/ea/partyhandler.h net/ea/playerhandler.cpp net/ea/playerhandler.h net/ea/specialhandler.cpp net/ea/specialhandler.h net/ea/token.h net/ea/tradehandler.cpp net/ea/tradehandler.h ) SET(SRCS_TMWA net/tmwa/gui/guildtab.cpp net/tmwa/gui/guildtab.h net/tmwa/gui/partytab.cpp net/tmwa/gui/partytab.h net/tmwa/adminhandler.cpp net/tmwa/adminhandler.h net/tmwa/beinghandler.cpp net/tmwa/beinghandler.h net/tmwa/buysellhandler.cpp net/tmwa/buysellhandler.h net/tmwa/charserverhandler.cpp net/tmwa/charserverhandler.h net/tmwa/chathandler.cpp net/tmwa/chathandler.h net/tmwa/gamehandler.cpp net/tmwa/gamehandler.h net/tmwa/generalhandler.cpp net/tmwa/generalhandler.h net/tmwa/guildhandler.cpp net/tmwa/guildhandler.h net/tmwa/inventoryhandler.cpp net/tmwa/inventoryhandler.h net/tmwa/itemhandler.cpp net/tmwa/itemhandler.h net/tmwa/loginhandler.cpp net/tmwa/loginhandler.h net/tmwa/messagehandler.cpp net/tmwa/messagehandler.h net/tmwa/messagein.cpp net/tmwa/messagein.h net/tmwa/messageout.cpp net/tmwa/messageout.h net/tmwa/network.cpp net/tmwa/network.h net/tmwa/npchandler.cpp net/tmwa/npchandler.h net/tmwa/partyhandler.cpp net/tmwa/partyhandler.h net/tmwa/playerhandler.cpp net/tmwa/playerhandler.h net/tmwa/protocol.h net/tmwa/questhandler.cpp net/tmwa/questhandler.h net/tmwa/specialhandler.cpp net/tmwa/specialhandler.h net/tmwa/tradehandler.cpp net/tmwa/tradehandler.h ) SET(SRCS_EATHENA net/eathena/gui/guildtab.cpp net/eathena/gui/guildtab.h net/eathena/gui/partytab.cpp net/eathena/gui/partytab.h net/eathena/adminhandler.cpp net/eathena/adminhandler.h net/eathena/beinghandler.cpp net/eathena/beinghandler.h net/eathena/buysellhandler.cpp net/eathena/buysellhandler.h net/eathena/charserverhandler.cpp net/eathena/charserverhandler.h net/eathena/chathandler.cpp net/eathena/chathandler.h net/eathena/gamehandler.cpp net/eathena/gamehandler.h net/eathena/generalhandler.cpp net/eathena/generalhandler.h net/eathena/guildhandler.cpp net/eathena/guildhandler.h net/eathena/inventoryhandler.cpp net/eathena/inventoryhandler.h net/eathena/itemhandler.cpp net/eathena/itemhandler.h net/eathena/loginhandler.cpp net/eathena/loginhandler.h net/eathena/messagehandler.cpp net/eathena/messagehandler.h net/eathena/messagein.cpp net/eathena/messagein.h net/eathena/messageout.cpp net/eathena/messageout.h net/eathena/network.cpp net/eathena/network.h net/eathena/npchandler.cpp net/eathena/npchandler.h net/eathena/partyhandler.cpp net/eathena/partyhandler.h net/eathena/playerhandler.cpp net/eathena/playerhandler.h net/eathena/protocol.h net/eathena/specialhandler.cpp net/eathena/specialhandler.h net/eathena/tradehandler.cpp net/eathena/tradehandler.h ) SET(SRCS_MANASERV gui/specialswindow.cpp gui/specialswindow.h utils/sha256.cpp utils/sha256.h net/manaserv/attributes.cpp net/manaserv/attributes.h net/manaserv/adminhandler.cpp net/manaserv/adminhandler.h net/manaserv/beinghandler.cpp net/manaserv/beinghandler.h net/manaserv/buysellhandler.cpp net/manaserv/buysellhandler.h net/manaserv/charhandler.cpp net/manaserv/charhandler.h net/manaserv/chathandler.cpp net/manaserv/chathandler.h net/manaserv/connection.cpp net/manaserv/connection.h net/manaserv/defines.h net/manaserv/effecthandler.cpp net/manaserv/effecthandler.h net/manaserv/gamehandler.cpp net/manaserv/gamehandler.h net/manaserv/generalhandler.cpp net/manaserv/generalhandler.h net/manaserv/guildhandler.cpp net/manaserv/guildhandler.h net/manaserv/internal.cpp net/manaserv/internal.h net/manaserv/inventoryhandler.cpp net/manaserv/inventoryhandler.h net/manaserv/itemhandler.h net/manaserv/itemhandler.cpp net/manaserv/loginhandler.cpp net/manaserv/loginhandler.h net/manaserv/messagehandler.cpp net/manaserv/messagehandler.h net/manaserv/messagein.cpp net/manaserv/messagein.h net/manaserv/messageout.cpp net/manaserv/messageout.h net/manaserv/network.cpp net/manaserv/network.h net/manaserv/npchandler.cpp net/manaserv/npchandler.h net/manaserv/partyhandler.cpp net/manaserv/partyhandler.h net/manaserv/playerhandler.cpp net/manaserv/playerhandler.h net/manaserv/protocol.h net/manaserv/specialhandler.cpp net/manaserv/specialhandler.h net/manaserv/tradehandler.cpp net/manaserv/tradehandler.h resources/specialdb.cpp resources/specialdb.h ) IF (WIN32) SET(SRCS ${SRCS} utils/specialfolder.cpp utils/specialfolder.h manaplus.rc ) ENDIF () SET (PROGRAMS manaplus) IF (ENABLE_MANASERV) IF (ENABLE_EATHENA) ADD_EXECUTABLE(manaplus WIN32 ${SRCS_GUICHAN} ${SRCS} ${SRCS_MANASERV} ${SRCS_EATHENA} ${SRCS_TMWA} ${SRCS_EVOL}) ELSE(ENABLE_EATHENA) ADD_EXECUTABLE(manaplus WIN32 ${SRCS_GUICHAN} ${SRCS} ${SRCS_MANASERV} ${SRCS_TMWA} ${SRCS_EVOL}) ENDIF(ENABLE_EATHENA) ELSE(ENABLE_MANASERV) IF (ENABLE_EATHENA) ADD_EXECUTABLE(manaplus WIN32 ${SRCS_GUICHAN} ${SRCS} ${SRCS_EATHENA} ${SRCS_TMWA} ${SRCS_EVOL}) ELSE(ENABLE_EATHENA) ADD_EXECUTABLE(manaplus WIN32 ${SRCS_GUICHAN} ${SRCS} ${SRCS_TMWA} ${SRCS_EVOL}) ENDIF(ENABLE_EATHENA) ENDIF(ENABLE_MANASERV) TARGET_LINK_LIBRARIES(manaplus ${SDLGFX_LIBRARIES} ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY} ${SDLMIXER_LIBRARY} ${SDLNET_LIBRARY} ${SDLTTF_LIBRARY} ${PNG_LIBRARIES} ${PHYSFS_LIBRARY} ${CURL_LIBRARIES} ${LIBXML2_LIBRARIES} ${OPENGL_LIBRARIES} ${LIBINTL_LIBRARIES} ${EXTRA_LIBRARIES}) INSTALL(TARGETS manaplus RUNTIME DESTINATION ${PKG_BINDIR}) IF (CMAKE_SYSTEM_NAME STREQUAL SunOS) # we expect the SMCgtxt package to be present on Solaris; # the Solaris gettext is not API-compatible to GNU gettext SET_TARGET_PROPERTIES(manaplus PROPERTIES LINK_FLAGS "-L/usr/local/lib") ENDIF() SET_TARGET_PROPERTIES(manaplus PROPERTIES COMPILE_FLAGS "${FLAGS}")