CMakeLists.txt:checking, tuning the build system (#232)

* build.zg.sh scripts deprected

* update for BSD

* removed checking for VLC (not implemented)

* docs updated

* Install.md created.

* scripts moved to scripts/ directory
This commit is contained in:
Andy Alt
2018-09-17 17:35:19 -05:00
committed by GitHub
parent df81c2a956
commit 7c359ca82d
44 changed files with 957 additions and 858 deletions

View File

@@ -1,12 +1,12 @@
# common libraries
SET(EXTERNAL_LIBS "")
OPTION(BUILD_MODEL_VIEWER "Build model viewer" OFF)
SET(TARGET_NAME "zetaglest_g3dviewer")
SET(TARGET_NAME_MANPAGE "${TARGET_NAME}.6")
IF(BUILD_ZETAGLEST_MODEL_VIEWER)
MESSAGE(STATUS "Will try to build ZetaGlest model viewer")
MESSAGE(STATUS "Build ${TARGET_NAME} = ${BUILD_MODEL_VIEWER}")
IF(BUILD_MODEL_VIEWER)
SET(EXTERNAL_LIBS "")
SET(TARGET_NAME_MANPAGE "${TARGET_NAME}.6")
ADD_DEFINITIONS("-std=c++11")
FIND_PACKAGE(${SDL_VERSION_NAME} REQUIRED)
@@ -159,35 +159,29 @@ IF(BUILD_ZETAGLEST_MODEL_VIEWER)
ENDIF()
INCLUDE_DIRECTORIES( ${GLEST_LIB_INCLUDE_ROOT}platform/${SDL_VERSION_SNAME} )
SET(MG_SOURCE_FILES "../glest_game/graphics/particle_type.cpp" "../glest_game/graphics/unit_particle_type.cpp" "../glest_game/global/config.cpp")
SET(ZG_SOURCE_FILES "../glest_game/graphics/particle_type.cpp" "../glest_game/graphics/unit_particle_type.cpp" "../glest_game/global/config.cpp")
FOREACH(DIR IN LISTS DIRS_WITH_SRC)
INCLUDE_DIRECTORIES( ${DIR} )
set(SRC_DIR_TO_GLOB ${DIR})
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.cpp)
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
SET(ZG_SOURCE_FILES ${ZG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
FILE(GLOB INCLUDE_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.h)
SET(MG_INCLUDE_FILES ${MG_INCLUDE_FILES} ${INCLUDE_FILES_FROM_THIS_DIR})
SET(ZG_INCLUDE_FILES ${ZG_INCLUDE_FILES} ${INCLUDE_FILES_FROM_THIS_DIR})
IF(APPLE)
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.mm)
#MESSAGE(STATUS "SRC_FILES_FROM_THIS_DIR: ${SRC_FILES_FROM_THIS_DIR}")
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
SET(ZG_SOURCE_FILES ${ZG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
FILE(GLOB SRC_FILES_FROM_THIS_DIR ${SRC_DIR_TO_GLOB}/*.m)
#MESSAGE(STATUS "SRC_FILES_FROM_THIS_DIR: ${SRC_FILES_FROM_THIS_DIR}")
SET(MG_SOURCE_FILES ${MG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
SET(ZG_SOURCE_FILES ${ZG_SOURCE_FILES} ${SRC_FILES_FROM_THIS_DIR})
ENDIF(APPLE)
ENDFOREACH(DIR)
IF(WANT_DEV_OUTPATH)
SET(EXECUTABLE_OUTPUT_PATH "${ZETAGLEST_FRIENDLY_OUTPUT_PATH}")
ENDIF()
SET_SOURCE_FILES_PROPERTIES(${ZG_INCLUDE_FILES} PROPERTIES HEADER_FILE_ONLY 1)
MESSAGE(STATUS "\n***Note: The final output path for ZetaGlest G3d Viewer will be [${ZETAGLEST_BIN_OUTPUT_DIR}]\n")
SET_SOURCE_FILES_PROPERTIES(${MG_INCLUDE_FILES} PROPERTIES HEADER_FILE_ONLY 1)
ADD_EXECUTABLE(${TARGET_NAME} ${MG_SOURCE_FILES} ${MG_INCLUDE_FILES})
ADD_EXECUTABLE(${TARGET_NAME} ${ZG_SOURCE_FILES} ${ZG_INCLUDE_FILES})
IF(WANT_USE_STREFLOP AND NOT STREFLOP_FOUND)
TARGET_LINK_LIBRARIES(${TARGET_NAME} streflop)
@@ -196,21 +190,18 @@ IF(BUILD_ZETAGLEST_MODEL_VIEWER)
TARGET_LINK_LIBRARIES(${TARGET_NAME} libzetaglest)
TARGET_LINK_LIBRARIES(${TARGET_NAME} ${EXTERNAL_LIBS})
# Requires an install prefix for the items below to work
IF(NOT CMAKE_INSTALL_PREFIX STREQUAL "")
# Installation of the program
INSTALL(TARGETS
${TARGET_NAME}
DESTINATION ${ZETAGLEST_BIN_OUTPUT_DIR})
# Installation of the program
INSTALL(TARGETS
${TARGET_NAME}
DESTINATION "${INSTALL_DIR_BIN}")
# Installation of the program manpage file
INSTALL(FILES
"${PROJECT_SOURCE_DIR}/${TARGET_NAME_MANPAGE}"
DESTINATION ${ZETAGLEST_MANPAGE_INSTALL_PATH})
# Installation of the program manpage file
INSTALL(FILES
"${PROJECT_SOURCE_DIR}/man/${TARGET_NAME_MANPAGE}"
DESTINATION ${INSTALL_DIR_MAN})
# Installation of the program config and image files
INSTALL(FILES
"${PROJECT_SOURCE_DIR}/mk/shared/g3dviewer.ico"
DESTINATION ${ZETAGLEST_INI_INSTALL_PATH})
ENDIF()
# Installation of the program config and image files
INSTALL(FILES
"${PROJECT_SOURCE_DIR}/mk/shared/g3dviewer.ico"
DESTINATION ${INSTALL_DIR_INI})
ENDIF()