Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- cmake_minimum_required(VERSION 3.0)
- set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules" ${CMAKE_MODULE_PATH})
- set(CMAKE_CXX_STANDARD 14)
- #### PROJECT TMXL BUILD ####
- project(TMXL)
- set(TMLX_LIBRARY_NAME ${PROJECT_NAME})
- set(TMXL_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/TMXL")
- file(GLOB TMXL_LIBRARY_HEADERS "${PROJECT_SOURCE_DIR}/TMXL/*.h")
- file(GLOB TMXL_LIBRARY_SOURCES "${PROJECT_SOURCE_DIR}/TMXL/*.cpp")
- add_library(${TMLX_LIBRARY_NAME} SHARED ${TMXL_SOURCE_LIST} ${TMXL_LIBRARY_HEADERS} ${TMXL_LIBRARY_SOURCES})
- find_package(SFML REQUIRED window graphics system)
- if(SFML_FOUND)
- include_directories(${SFML_INCLUDE_DIR})
- target_link_libraries(${TMLX_LIBRARY_NAME} ${SFML_LIBRARIES} ${SFML_DEPENDENCIES})
- endif()
- #include_directories("${CMAKE_SOURCE_DIR}/extlibs")
- set(TINYXML2_LIBRARY_NAME tinyxml2)
- add_library(${TINYXML2_LIBRARY_NAME} "${CMAKE_SOURCE_DIR}/extlibs/tinyxml2/tinyxml2.h"
- "${CMAKE_SOURCE_DIR}/extlibs/tinyxml2/tinyxml2.cpp")
- target_link_libraries(${TMLX_LIBRARY_NAME} tinyxml2)
- #### PROJECT TMXL BUILD ####
- #### EXAMPLES BUILD ####
- add_subdirectory(examples/Base)
- install(TARGETS ${TINYXML2_LIBRARY_NAME} DESTINATION ${CMAKE_BINARY_DIR})
- #### EXAMPLES BUILD ####
- cmake_minimum_required(VERSION 3.0)
- project(BaseExample)
- include_directories(${TMXL_INCLUDE_DIR})
- add_executable(${PROJECT_NAME} main.cpp)
- install(TARGETS ${TINYXML2_LIBRARY_NAME} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
- install(TARGETS ${TMLX_LIBRARY_NAME} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
- target_link_libraries(${PROJECT_NAME} ${TMLX_LIBRARY_NAME})
- target_link_libraries(${PROJECT_NAME} ${SFML_LIBRARIES} ${SFML_DEPENDENCIES})
- target_link_libraries(${PROJECT_NAME} ${TINYXML2_LIBRARY_NAME})
- add_custom_target(new_target
- ${CMAKE_COMMAND} -E copy file ${directory}/file
- )
- CMAKE_ARCHIVE_OUTPUT_DIR
- CMAKE_LIBRARY_OUTPUT_DIR
- CMAKE_RUNTIME_OUTPUT_DIR
- add_custom_target(copy_target ALL
- ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/folder ${CMAKE_RUNTIME_OUTPUT_DIR}/folder
- DEPENDS my_program
- COMMENT "Copy neded folder to compiling executable"
- )
Add Comment
Please, Sign In to add comment