VC141+OWLNext 6.44.2 用の CMakeLists.txt

VC141+OWLNext 6.44.2 用の CMakeLists.txt の例です。

pdf.cpp と pdf.rc から pdf.exe を生成する場合です。ランタイムライブラリは静的リンクです。

cmake_minimum_required(VERSION 3.11)
project(pdf CXX)
set(OWL "C:/lib/owl/6.44.2") ### OWLパス
set(CMAKE_CXX_FLAGS "/EHsc")
include_directories(${OWL}/include)
link_directories(${OWL}/lib)
add_executable(pdf pdf.cpp pdf.rc)

# マルチスレッド対応CRTライブラリを静的リンクさせるため、
# /MDx オプションを /MTx に置き換える。
string(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_DEBUG          ${CMAKE_CXX_FLAGS_DEBUG})
string(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_MINSIZEREL     ${CMAKE_CXX_FLAGS_MINSIZEREL})
string(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELEASE        ${CMAKE_CXX_FLAGS_RELEASE})
string(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELWITHDEBINFO ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})