OGRE MSVC SDK Cmake Template

cmake_minimum_required (VERSION 3.0)
cmake_policy(VERSION 3.0)

set(OGRE_HOME ${CMAKE_SOURCE_DIR}/ogre)

# Set Project Name
set(ProjName "OgreTemplateProject")
project(${ProjName})

# Set Install Directory
file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/install_dir")
set(INSTALL_DIR "${CMAKE_BINARY_DIR}/install_dir")

# Create Library
file(MAKE_DIRECTORY ${CMAKE_SOURCE_DIR}/lib)
file(GLOB_RECURSE LIBS "ogre/*.lib")
file(COPY ${LIBS} DESTINATION ${CMAKE_SOURCE_DIR}/lib)
link_directories(${CMAKE_SOURCE_DIR}/lib)

# Copy Ogre Library
add_custom_target(copy_files ALL  
  VERBATIM 
  # COMMAND_EXPAND_LISTS 
  COMMAND ${CMAKE_COMMAND} -E 
                  copy_directory  
                  "${OGRE_HOME}" 
                  "${INSTALL_DIR}" 
) 

# Install
file(GLOB_RECURSE SOURCE
        "${ProjName}/*.cpp"
        "${ProjName}/*.c"
)
add_executable(${ProjName} ${SOURCE})
target_link_libraries(${ProjName} ${LIBS})
install(TARGETS ${ProjName} DESTINATION "${INSTALL_DIR}/bin")

# Add Include Directories
file (GLOB PROJECT_HEADERS "${CMAKE_SOURCE_DIR}/${ProjName}/include")

FILE(GLOB_RECURSE new_list "ogre/*.h")
SET(dir_list "")
FOREACH(file_path ${new_list})
    GET_FILENAME_COMPONENT(dir_path ${file_path} PATH)
    SET(dir_list ${dir_list} ${dir_path})
ENDFOREACH()
LIST(REMOVE_DUPLICATES dir_list)
SET(OGRE_HEADERS ${dir_list})

target_include_directories(${ProjName} PUBLIC 
                           "${PROJECT_HEADERS}"
                           "${OGRE_HEADERS}")

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值