2010-05-06 00:08:41 +00:00
|
|
|
# These are Windows/MFC apps
|
|
|
|
IF(WIN32)
|
2010-09-02 19:53:33 +00:00
|
|
|
# ADD_SUBDIRECTORY(bug_report)
|
2010-07-17 16:22:32 +00:00
|
|
|
SET(SEVENZIP_LIBRARY "ryzom_sevenzip")
|
2010-05-06 00:08:41 +00:00
|
|
|
ENDIF(WIN32)
|
|
|
|
|
|
|
|
ADD_SUBDIRECTORY(client_sheets)
|
2010-08-03 21:05:05 +00:00
|
|
|
ADD_SUBDIRECTORY(seven_zip)
|
2010-05-06 00:08:41 +00:00
|
|
|
|
|
|
|
FILE(GLOB SRC *.cpp *.h motion/*.cpp motion/*.h motion/modes/*.cpp motion/modes/*.h r2/*.h r2/*.cpp r2/dmc/*.h r2/dmc/*.cpp interface_v3/*.h interface_v3/*.cpp)
|
|
|
|
|
|
|
|
# Filter out the source files not actually compiled.
|
2010-07-17 16:09:03 +00:00
|
|
|
LIST(REMOVE_ITEM SRC
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/animated_scene_object.cpp
|
2010-05-06 00:08:41 +00:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/animated_scene_object.h
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/animation_fx_sheet.h
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/animation_fx_sheet.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/3d_notes.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/3d_notes.h
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/rosace_functions.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/rosace_functions.h
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/scene_parser.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/scene_parser.h
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/motion/modes/free_head.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/motion/modes/free_head.h
|
2010-05-11 19:45:01 +00:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/lua_dll.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/lua_dll.h
|
2010-05-06 00:08:41 +00:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/view_bitmap_progress.cpp
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/view_bitmap_progress.h)
|
|
|
|
|
|
|
|
# On Unix we'll need to include config.h
|
2010-09-02 19:53:33 +00:00
|
|
|
#IF(UNIX)
|
|
|
|
# INCLUDE(${CMAKE_BINARY_DIR})
|
|
|
|
#ENDIF(UNIX)
|
2010-05-06 00:08:41 +00:00
|
|
|
|
2010-05-31 19:32:36 +00:00
|
|
|
# on Mac, create a .App Bundle
|
|
|
|
if(APPLE)
|
|
|
|
SET(MACOSX_BUNDLE_INFO_STRING "Ryzom Core Client")
|
|
|
|
SET(MACOSX_BUNDLE_ICON_FILE "")
|
|
|
|
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "")
|
2010-07-17 16:22:32 +00:00
|
|
|
SET(MACOSX_BUNDLE_LONG_VERSION_STRING ${NL_VERSION})
|
2010-05-31 19:32:36 +00:00
|
|
|
SET(MACOSX_BUNDLE_BUNDLE_NAME "Ryzom Core Client")
|
|
|
|
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING "0.8")
|
|
|
|
SET(MACOSX_BUNDLE_BUNDLE_VERSION "1.0")
|
|
|
|
SET(MACOSX_BUNDLE_COPYRIGHT "Winchgate and The Ryzom Core Community")
|
2010-05-06 00:08:41 +00:00
|
|
|
|
2010-06-11 09:57:10 +00:00
|
|
|
ADD_EXECUTABLE(ryzom_client MACOSX_BUNDLE ${SRC})
|
2010-05-31 19:32:36 +00:00
|
|
|
|
|
|
|
# TODO: in release mode, cmake could copy all the dylibs into the .app
|
|
|
|
# bundle for redistribution... should some part of cpack handle that?
|
2010-06-11 09:57:10 +00:00
|
|
|
# ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD
|
2010-05-31 19:32:36 +00:00
|
|
|
# # make frameworks directory in app bundle
|
|
|
|
# COMMAND ${CMAKE_COMMAND} -E make_directory
|
2010-06-11 09:57:10 +00:00
|
|
|
# ${CMAKE_CURRENT_BINARY_DIR}/ryzom_client.app/Contents/Frameworks
|
2010-05-31 19:32:36 +00:00
|
|
|
# # copy framework into app bundle
|
2010-07-17 16:09:03 +00:00
|
|
|
# COMMAND ${CMAKE_COMMAND} -E copy ${SOME_LIBRARY}
|
2010-06-11 09:57:10 +00:00
|
|
|
# ${CMAKE_CURRENT_BINARY_DIR}/ryzom_client.app/Contents/Frameworks
|
2010-05-31 19:32:36 +00:00
|
|
|
# # ...
|
|
|
|
# # install_name_tool the lib pathes
|
|
|
|
|
|
|
|
ELSE(APPLE)
|
2010-06-11 09:57:10 +00:00
|
|
|
ADD_EXECUTABLE(ryzom_client ${SRC})
|
2010-05-31 19:32:36 +00:00
|
|
|
ENDIF(APPLE)
|
|
|
|
|
|
|
|
INCLUDE_DIRECTORIES(
|
2010-07-17 16:09:03 +00:00
|
|
|
${LIBXML2_INCLUDE_DIR}
|
|
|
|
${LUA_INCLUDE_DIR}
|
2010-08-20 11:27:17 +00:00
|
|
|
${LUABIND_INCLUDE_DIR}
|
2010-07-17 16:09:03 +00:00
|
|
|
${LIBWWW_INCLUDE_DIR}
|
|
|
|
${CURL_INCLUDE_DIRS}
|
2010-05-06 00:08:41 +00:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
|
2010-07-17 16:09:03 +00:00
|
|
|
TARGET_LINK_LIBRARIES(ryzom_client ${PLATFORM_LINKFLAGS}
|
2010-09-02 19:53:33 +00:00
|
|
|
nelmisc
|
|
|
|
nelnet
|
|
|
|
nelligo
|
|
|
|
nelgeorges
|
|
|
|
nel3d
|
|
|
|
nelsound
|
|
|
|
nelsnd_lowlevel
|
|
|
|
ryzom_clientsheets
|
2010-07-17 16:09:03 +00:00
|
|
|
ryzom_gameshare
|
2010-09-02 19:53:33 +00:00
|
|
|
nelpacs
|
2010-07-17 16:09:03 +00:00
|
|
|
${LUA_LIBRARIES}
|
2010-08-20 11:27:17 +00:00
|
|
|
${LUABIND_LIBRARY}
|
2010-07-17 16:09:03 +00:00
|
|
|
${CURL_LIBRARIES}
|
2010-07-17 16:22:32 +00:00
|
|
|
${LIBWWW_LIBRARY}
|
|
|
|
${SEVENZIP_LIBRARY}
|
2010-08-20 11:27:17 +00:00
|
|
|
expat) # TODO: find expat cleanly using a find script
|
2010-07-17 16:09:03 +00:00
|
|
|
|
2010-08-13 16:16:37 +00:00
|
|
|
IF(NOT APPLE AND NOT WIN32)
|
2010-06-11 09:57:10 +00:00
|
|
|
TARGET_LINK_LIBRARIES(ryzom_client ${X11_LIBRARIES})
|
2010-08-13 16:16:37 +00:00
|
|
|
ENDIF(NOT APPLE AND NOT WIN32)
|
2010-05-31 19:32:36 +00:00
|
|
|
|
2010-05-06 00:08:41 +00:00
|
|
|
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
|
|
|
|
|
2010-09-02 19:53:33 +00:00
|
|
|
NL_DEFAULT_PROPS(ryzom_client "Ryzom, Client: Ryzom Core Client")
|
|
|
|
NL_ADD_RUNTIME_FLAGS(ryzom_client)
|
|
|
|
|
2010-06-30 13:31:31 +00:00
|
|
|
IF(WITH_PCH)
|
|
|
|
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_client ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
|
|
|
|
ENDIF(WITH_PCH)
|
|
|
|
|
2010-09-02 19:53:33 +00:00
|
|
|
INSTALL(TARGETS ryzom_client RUNTIME DESTINATION games COMPONENT client BUNDLE DESTINATION /Applications)
|