- bugfixes to install related files to fix:

- missing glest.ini during make install (this file is handled by the data install)
 - properly handles destdir for all installed files
 - customizable paths for all installation destinations (the following can now be set):
   		MEGAGLEST_BIN_INSTALL_PATH   -  "bin/"  -  "The installation path for binaries (this is appended to the CMAKE_INSTALL_PREFIX)")
		MEGAGLEST_DATA_INSTALL_PATH  - "share/megaglest/"  -  "The installation path for data files (this is appended to the CMAKE_INSTALL_PREFIX)")
		MEGAGLEST_DESKTOP_INSTALL_PATH  - "share/applications/"  - "The installation path for desktop files (this is appended to the CMAKE_INSTALL_PREFIX)")
		MEGAGLEST_ICON_INSTALL_PATH  -  "share/pixmaps/"   - "The installation path for icon files (this is appended to the CMAKE_INSTALL_PREFIX)")
		CUSTOM_DATA_INSTALL_PATH  -  "'\\\"${CMAKE_INSTALL_PREFIX}/${MEGAGLEST_DATA_INSTALL_PATH}\\\"'"   -  "The FULL installation path for data files (this is build automatically by combining CMAKE_INSTALL_PREFIX and MEGAGLEST_DATA_INSTALL_PATH)")
- Fixed startup scripts for tools (remove bin folder)
- Fixed source and data tarball scripts to include required files (missed the proper main ini files)
- Debian can now easily package up megaglest and build deb files
This commit is contained in:
Mark Vejvoda 2011-05-14 17:31:40 +00:00
parent 230bdee567
commit 8c59da57cd
10 changed files with 54 additions and 37 deletions

View File

@ -102,16 +102,23 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
ENDIF()
IF(CMAKE_INSTALL_PREFIX STREQUAL "")
#SET(MEGAGLEST_BIN_INSTALL_PATH "")
#SET(MEGAGLEST_DATA_INSTALL_PATH "")
MESSAGE(STATUS "*NOTE: NOT USING a Custom Data Install Path...")
ELSE()
SET(MEGAGLEST_BIN_INSTALL_PATH "bin/")
SET(MEGAGLEST_DATA_INSTALL_PATH "share/megaglest/")
SET(MEGAGLEST_DESKTOP_INSTALL_PATH "share/applications/")
SET(MEGAGLEST_ICON_INSTALL_PATH "share/pixmaps/")
SET(CUSTOM_DATA_INSTALL_PATH "'\\\"${CMAKE_INSTALL_PREFIX}/${MEGAGLEST_DATA_INSTALL_PATH}\\\"'")
IF(NOT MEGAGLEST_BIN_INSTALL_PATH)
SET(MEGAGLEST_BIN_INSTALL_PATH "bin/" CACHE STRING "The installation path for binaries (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_DATA_INSTALL_PATH)
SET(MEGAGLEST_DATA_INSTALL_PATH "share/megaglest/" CACHE STRING "The installation path for data files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_DESKTOP_INSTALL_PATH)
SET(MEGAGLEST_DESKTOP_INSTALL_PATH "share/applications/" CACHE STRING "The installation path for desktop files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT MEGAGLEST_ICON_INSTALL_PATH)
SET(MEGAGLEST_ICON_INSTALL_PATH "share/pixmaps/" CACHE STRING "The installation path for icon files (this is appended to the CMAKE_INSTALL_PREFIX)")
ENDIF()
IF(NOT CUSTOM_DATA_INSTALL_PATH)
SET(CUSTOM_DATA_INSTALL_PATH "'\\\"${CMAKE_INSTALL_PREFIX}/${MEGAGLEST_DATA_INSTALL_PATH}\\\"'" CACHE STRING "The FULL installation path for data files (this is build automatically by combining CMAKE_INSTALL_PREFIX and MEGAGLEST_DATA_INSTALL_PATH)")
ENDIF()
SET(CUSTOM_DATA_INSTALL_PATH_VALUE "-DCUSTOM_DATA_INSTALL_PATH=${CUSTOM_DATA_INSTALL_PATH}")
MESSAGE(STATUS "*NOTE: Custom Data Install Path is [${CUSTOM_DATA_INSTALL_PATH}]")

View File

@ -23,7 +23,8 @@ cp "$CURRENTDIR/../../data/glest_game/megaglest.ico" $RELEASEDIR
cp "$CURRENTDIR/../../data/glest_game/g3dviewer.ico" $RELEASEDIR
cp "$CURRENTDIR/../../data/glest_game/editor.ico" $RELEASEDIR
cp "$CURRENTDIR/../../data/glest_game/servers.ini" $RELEASEDIR
cp "$CURRENTDIR/../../data/glest_game/glest.ini" $RELEASEDIR
cp "$CURRENTDIR/../../data/glest_game/glest.ini" $RELEASEDIR/glest_windows.ini
cp "$CURRENTDIR/../../mk/linux/glest.ini" $RELEASEDIR/glest_linux.ini
cp "$CURRENTDIR/../../data/glest_game/glestkeys.ini" $RELEASEDIR
cp "$CURRENTDIR/../../data/glest_game/configuration.xml" $RELEASEDIR

View File

@ -19,4 +19,4 @@ cd $GAMEDIR
# export game library directory
test -n "${LIBDIR}" && export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${GAMEDIR}/${LIBDIR}"
./bin/megaglest_configurator
./megaglest_configurator

View File

@ -124,4 +124,4 @@ findMissingSO "$LDCONFIG" "$GAMEDIR/$LIBDIR/${DIRECTFB_LINKEDLIBNAME}" "$DIRECTF
findMissingSO "$LDCONFIG" "$GAMEDIR/$LIBDIR/${FUSION_LINKEDLIBNAME}" "$FUSION_LIBLOOKUP1" "$FUSION_LIBLOOKUP2"
findMissingSO "$LDCONFIG" "$GAMEDIR/$LIBDIR/${DIRECT_LINKEDLIBNAME}" "$DIRECT_LIBLOOKUP1" "$DIRECT_LIBLOOKUP2"
./bin/megaglest_g3dviewer "$1"
./megaglest_g3dviewer "$1"

View File

@ -124,4 +124,4 @@ findMissingSO "$LDCONFIG" "$GAMEDIR/$LIBDIR/${DIRECTFB_LINKEDLIBNAME}" "$DIRECTF
findMissingSO "$LDCONFIG" "$GAMEDIR/$LIBDIR/${FUSION_LINKEDLIBNAME}" "$FUSION_LIBLOOKUP1" "$FUSION_LIBLOOKUP2"
findMissingSO "$LDCONFIG" "$GAMEDIR/$LIBDIR/${DIRECT_LINKEDLIBNAME}" "$DIRECT_LIBLOOKUP1" "$DIRECT_LIBLOOKUP2"
./bin/megaglest_editor "$1"
./megaglest_editor "$1"

View File

@ -118,6 +118,7 @@ ELSE()
ENDIF()
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
#MESSAGE(STATUS "EXTERNAL_LIBS = [${EXTERNAL_LIBS}]")
# Requires an install prefix for the items below to work
IF(NOT CMAKE_INSTALL_PREFIX STREQUAL "")

View File

@ -51,8 +51,8 @@ ENDIF()
FIND_PACKAGE(OGG REQUIRED)
INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
ENDIF()

View File

@ -125,9 +125,15 @@ Config::Config(std::pair<ConfigType,ConfigType> type, std::pair<string,string> f
if(foundPath == false) {
foundPath = tryCustomPath(cfgType, fileName, "/usr/share/megaglest/");
}
if(foundPath == false) {
foundPath = tryCustomPath(cfgType, fileName, "/usr/share/games/megaglest/");
}
if(foundPath == false) {
foundPath = tryCustomPath(cfgType, fileName, "/usr/local/share/megaglest/");
}
if(foundPath == false) {
foundPath = tryCustomPath(cfgType, fileName, "/usr/local/share/games/megaglest/");
}
#endif
if(fileMustExist.first == true && fileExists(fileName.first) == false) {

View File

@ -2277,6 +2277,10 @@ int glestMain(int argc, char** argv) {
//return -1;
//CHANGED relative path from [/home/softcoder/Code/megaglest/trunk/mk/linux/techs/megapack/factions/egypt/units/desert_camp/../../upgrades/spear_weapons/images/piercing.bmp] to [/home/softcoder/Code/megaglest/trunk/mk/linux/techs/megapack/factions/egypt/units/desert_camp/upgrades/spear_weapons/images/piercing.bmp]
#if defined(CUSTOM_DATA_INSTALL_PATH)
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("\n\nCUSTOM_DATA_INSTALL_PATH = [%s]\n\n",CUSTOM_DATA_INSTALL_PATH);
#endif
const int knownArgCount = sizeof(GAME_ARGS) / sizeof(GAME_ARGS[0]);
for(int idx = 1; idx < argc; ++idx) {
if( hasCommandArgument(knownArgCount, (char **)&GAME_ARGS[0], argv[idx], NULL, 0, true) == false) {

View File

@ -71,9 +71,6 @@ IF( ${CURL_VERSION} VERSION_LESS 7.16.4)
message(FATAL_ERROR " CURL version = [${CURL_VERSION}] we require AT LEAST [7.16.4]")
ENDIF()
FIND_PACKAGE(SDL REQUIRED)
INCLUDE_DIRECTORIES(${SDL_INCLUDE_DIR})
IF(UNIX)
@ -98,13 +95,13 @@ IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENAL_LIBRARY})
ENDIF()
FIND_PACKAGE(OGG REQUIRED)
INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
IF(UNIX)
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
ENDIF()
# FIND_PACKAGE(OGG REQUIRED)
# INCLUDE_DIRECTORIES(${OGG_INCLUDE_DIR})
# IF(UNIX)
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OGG_LIBRARY})
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_LIBRARY})
# SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${VORBIS_FILE_LIBRARY})
# ENDIF()
FIND_PACKAGE(LUA REQUIRED)
INCLUDE_DIRECTORIES(${LUA_INCLUDE_DIR})
@ -163,7 +160,6 @@ SET(MG_INCLUDE_FILES "")
SET(MG_SOURCE_FILES "")
INCLUDE_DIRECTORIES( ${MG_INCLUDES_ROOT}platform/sdl )
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${PROJECT_SOURCE_DIR}/source/shared_lib/sources/libircclient/src/libircclient.c)
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/source/shared_lib/include/libircclient/include)
@ -211,7 +207,6 @@ FOREACH(DIR IN LISTS DIRS_WITH_SRC)
ENDIF(APPLE)
ENDFOREACH(DIR)
#MESSAGE(STATUS "Source files: ${MG_INCLUDE_FILES}")
#MESSAGE(STATUS "Source files: ${MG_SOURCE_FILES}")
#MESSAGE(STATUS "Include dirs: ${INCLUDE_DIRECTORIES}")
@ -233,26 +228,29 @@ SET_SOURCE_FILES_PROPERTIES(${MG_SOURCE_FILES} PROPERTIES COMPILE_FLAGS
SET_SOURCE_FILES_PROPERTIES(${MG_INCLUDE_FILES} PROPERTIES HEADER_FILE_ONLY 1)
SET(TARGET_NAME "libmegaglest")
IF(NOT WIN32)
ADD_LIBRARY(libmegaglest STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
ADD_LIBRARY(${TARGET_NAME} STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
MESSAGE(STATUS "Building shared game library as a STATIC library and saving to [${LIBRARY_OUTPUT_PATH}]")
ELSE()
SET(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/data/glest_game)
ADD_LIBRARY(libmegaglest STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
ADD_LIBRARY(${TARGET_NAME} STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
MESSAGE(STATUS "Building shared game library as a SHARED library and saving to [${LIBRARY_OUTPUT_PATH}]")
ENDIF()
#ADD_LIBRARY(libmegaglest SHARED ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
#ADD_LIBRARY(libmegaglest STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
# ADD_LIBRARY(libmegaglest SHARED ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
# ADD_LIBRARY(libmegaglest STATIC ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
MESSAGE(STATUS "EXTERNAL_LIBS = [${EXTERNAL_LIBS}]")
IF(WIN32)
TARGET_LINK_LIBRARIES(libmegaglest stdc++ gcc odbc32 wsock32 winspool winmm shell32 comctl32 ctl3d32 advapi32 wsock32 opengl32 glu32 ole32 oleaut32 uuid mingw32 ddraw dsound dxguid ws2_32 iphlpapi wsock32 libogg libvorbis libvorbisfile zlib jpeg libpng xerces-c2_8_0 OpenAL32 libcurl winmm gdi32 opengl32 glu32 SDL SDLmain lua5.1 streflop stdc++ moldname mingwex msvcrt user32 kernel32)
TARGET_LINK_LIBRARIES(libmegaglest streflop)
TARGET_LINK_LIBRARIES(libmegaglest ${EXTERNAL_LIBS})
TARGET_LINK_LIBRARIES(${TARGET_NAME} stdc++ gcc odbc32 wsock32 winspool winmm shell32 comctl32 ctl3d32 advapi32 wsock32 opengl32 glu32 ole32 oleaut32 uuid mingw32 ddraw dsound dxguid ws2_32 iphlpapi wsock32 libogg libvorbis libvorbisfile zlib jpeg libpng xerces-c2_8_0 OpenAL32 libcurl winmm gdi32 opengl32 glu32 SDL SDLmain lua5.1 streflop stdc++ moldname mingwex msvcrt user32 kernel32)
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
ELSE()
TARGET_LINK_LIBRARIES(libmegaglest streflop)
TARGET_LINK_LIBRARIES(libmegaglest ${EXTERNAL_LIBS})
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
ENDIF()