config:项目设置boost只针对具体库

This commit is contained in:
taynpg 2025-02-15 23:33:31 +08:00
parent 1106518755
commit a7c6434a7c
3 changed files with 9 additions and 34 deletions

View File

@ -13,6 +13,10 @@ if(DEFINED IOS_ISH)
message(STATUS "filecomplete USE IOS_ISH")
add_definitions(-DIOS_ISH)
endif()
if(DEFINED MINGW32_XP_BOOST)
message(STATUS "filecomplete use mingw32 xp boost.")
include_directories(${MBOOST_INCLUDE_DIR})
endif()
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_SYSTEM_NAME MATCHES "Windows")
MESSAGE(STATUS "Add MinGW Param.")
@ -30,7 +34,10 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin/${CMAKE_BUILD_TYPE}
add_library(filecomplete STATIC filecomplete.h filecomplete.cpp)
target_include_directories(filecomplete PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
if(DEFINED MINGW32_XP_BOOST)
target_link_directories(filecomplete PRIVATE ${MBOOST_LIB_DIR})
target_link_libraries(filecomplete PRIVATE ${MBOOST_LIBS})
endif()
if(DEFINED GEN_EXAMPLE)
message(STATUS "USE TEST")
add_executable(example main.cpp)

View File

@ -7,7 +7,7 @@
#include <string>
#include <vector>
#ifdef USE_BOOST_FILESYSTEM
#ifdef MINGW32_XP_BOOST
#include <boost/filesystem.hpp>
namespace fs = boost::filesystem;
#else

View File

@ -1,32 +0,0 @@
add_rules("mode.debug", "mode.release")
set_languages("c++17")
if is_plat("windows") then
add_cxxflags("/source-charset:utf-8")
add_defines("BINARY_GBK")
end
if is_plat("mingw") then
add_cxxflags("-Wno-unused-variable -finput-charset=utf-8 -fexec-charset=gbk")
add_defines("BINARY_GBK")
end
if is_mode("debug") then
set_suffixname("d")
end
add_includedirs(os.scriptdir(), {public = true})
target("filecomplete")
add_options("boost", "iosish")
set_kind("static")
add_files("*.cpp")
option("boost")
set_default(false)
set_showmenu(true)
boost_root_dir = os.getenv("BOOST_HEADER_DIR")
boost_lib_dir = os.getenv("BOOST_LIB_DIR")
boost_libs = os.getenv("BOOST_LIBS")
add_includedirs(boost_root_dir)
add_defines("USE_BOOST_FILESYSTEM")
add_linkdirs(boost_lib_dir)
add_links(boost_libs)
option("iosish")
set_default(false)
set_showmenu(true)
add_defines("IOS_ISH", "MFLUSH_STDOUT")