config:移除xmake,设置针对boost设置具体信息而不是find_package.
This commit is contained in:
parent
766b4f8cdd
commit
ceed885924
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,4 +1,4 @@
|
||||
build
|
||||
buil*
|
||||
.vs
|
||||
.cache
|
||||
cmake-*
|
||||
|
4
.vscode/settings.json
vendored
4
.vscode/settings.json
vendored
@ -27,6 +27,10 @@
|
||||
"cmake.environment": {
|
||||
"PATH": "${env:PATH};"
|
||||
},
|
||||
// "cmake.configureArgs": [
|
||||
// "-Wno-dev",
|
||||
// "-DSYSTEM_XP=ON"
|
||||
// ],
|
||||
"cmake.options.statusBarVisibility": "visible",
|
||||
"cmake.generator": "Ninja",
|
||||
"C_Cpp.default.compileCommands": "${workspaceRoot}/build/compile_commands.json",
|
||||
|
@ -1,24 +1,37 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
project(transm LANGUAGES CXX)
|
||||
project(transm VERSION 1.2.3 LANGUAGES CXX)
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
set(COMPILER_ID ${CMAKE_CXX_COMPILER_ID})
|
||||
if(MSVC)
|
||||
add_compile_options(/source-charset:utf-8)
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
message(status "add mingw param.")
|
||||
message(STATUS "add mingw param.")
|
||||
add_compile_options(-finput-charset=utf-8)
|
||||
add_compile_options(-fexec-charset=gbk)
|
||||
add_compile_options(-Wa,-mbig-obj)
|
||||
set(COMPILER_ID "mingw")
|
||||
set(MINGW32_XP_BOOST ON)
|
||||
add_definitions(-DMINGW32_XP_BOOST)
|
||||
include(config/MBoost.cmake)
|
||||
endif()
|
||||
|
||||
string(TOLOWER ${COMPILER_ID} COMPILER_ID)
|
||||
if(DEFINED IOS_ISH)
|
||||
message(STATUS "INPUT IOS_ISH ${IOS_ISH}")
|
||||
endif()
|
||||
|
||||
if(DEFINED MINGW32_XP_BOOST)
|
||||
message(STATUS "transm use xp defined ${SYSTEM_XP}")
|
||||
add_definitions(-D_WIN32_WINNT=0x0501)
|
||||
else()
|
||||
add_definitions(-D_WIN32_WINNT=0x0601)
|
||||
endif()
|
||||
|
||||
set(CMAKE_DEBUG_POSTFIX "d")
|
||||
set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib/${CMAKE_BUILD_TYPE})
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
||||
@ -26,7 +39,6 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
||||
)
|
||||
|
||||
add_definitions(-DFMT_HEADER_ONLY)
|
||||
add_definitions(-D_WIN32_WINNT=0x0601)
|
||||
include_directories(3rd)
|
||||
include_directories(.)
|
||||
include_directories(${PROJECT_BINARY_DIR})
|
||||
@ -51,13 +63,18 @@ execute_process(
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
configure_file(version.h.in version.h)
|
||||
message(STATUS "build dir:${PROJECT_BINARY_DIR}")
|
||||
message(STATUS "${CMAKE_SYSTEM_NAME} build dir:${PROJECT_BINARY_DIR}")
|
||||
|
||||
install(TARGETS tsc DESTINATION bin)
|
||||
install(TARGETS tss DESTINATION bin)
|
||||
|
||||
if (DEFINED MINGW32_XP_BOOST)
|
||||
install(FILES ${MINGW32_DLLS} DESTINATION bin)
|
||||
install(FILES ${WIN_XP_COLOR_TOOL} DESTINATION bin)
|
||||
endif()
|
||||
|
||||
# ********************************************************** pack infomation
|
||||
set(CPACK_PACKAGE_NAME "transm")
|
||||
set(CPACK_PACKAGE_VERSION "1.2.3")
|
||||
set(CPACK_PACKAGE_CONTACT "taynpg <taynpg@163.com>")
|
||||
set(CPACK_PACKAGE_DESCRIPTION "A simple tool that uses a server (tss) as a relay center to indirectly transfer files between two (or more) clients (tsc).")
|
||||
set(CPACK_PACKAGE_VENDOR "taynpg")
|
||||
@ -65,13 +82,17 @@ if(WIN32)
|
||||
set(CPACK_NSIS_MODIFY_PATH ON)
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
set(CPACK_GENERATOR "NSIS64;ZIP")
|
||||
set(ARCH_SUFFIX "win64")
|
||||
elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
set(CPACK_GENERATOR "NSIS;ZIP")
|
||||
set(ARCH_SUFFIX "win32")
|
||||
else()
|
||||
message(WARNING "Unknown target architecture")
|
||||
endif()
|
||||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "transm")
|
||||
elseif(UNIX AND NOT APPLE)
|
||||
set(CPACK_GENERATOR "DEB;TGZ")
|
||||
set(ARCH_SUFFIX "amd64")
|
||||
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64")
|
||||
set(CPACK_DEBIAN_PACKAGE_SECTION "utils")
|
||||
set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
|
||||
@ -79,4 +100,5 @@ elseif(UNIX AND NOT APPLE)
|
||||
elseif(APPLE)
|
||||
set(CPACK_GENERATOR "DragNDrop")
|
||||
endif()
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-v${PROJECT_VERSION}-${COMPILER_ID}.${ARCH_SUFFIX}")
|
||||
include(CPack)
|
||||
|
@ -6,6 +6,11 @@ set(CMAKE_CXX_STANDARD 17)
|
||||
if (MSVC)
|
||||
add_compile_options(/source-charset:utf-8)
|
||||
endif()
|
||||
if(DEFINED MINGW32_XP_BOOST)
|
||||
message(STATUS "tsc use mingw32 xp boost.")
|
||||
include_directories(${MBOOST_INCLUDE_DIR})
|
||||
link_directories(${MBOOST_LIB_DIR})
|
||||
endif()
|
||||
|
||||
add_executable(tsc main.cpp client.h client.cpp config.h config.cpp)
|
||||
target_link_libraries(tsc PRIVATE trans_net trans_util filecomplete)
|
||||
@ -14,4 +19,8 @@ target_link_libraries(tsc PRIVATE pthread)
|
||||
endif()
|
||||
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
target_link_libraries(tsc PRIVATE ws2_32 wsock32)
|
||||
endif()
|
||||
if(DEFINED MINGW32_XP_BOOST)
|
||||
target_link_directories(tsc PRIVATE ${MBOOST_LIB_DIR})
|
||||
target_link_libraries(tsc PRIVATE ${MBOOST_LIBS})
|
||||
endif()
|
@ -5,7 +5,7 @@
|
||||
#include <of_str.h>
|
||||
#include <of_util.h>
|
||||
|
||||
#ifdef USE_BOOST_FILESYSTEM
|
||||
#ifdef MINGW32_XP_BOOST
|
||||
#include <boost/filesystem.hpp>
|
||||
namespace fs = boost::filesystem;
|
||||
#else
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "config.h"
|
||||
#include <cassert>
|
||||
|
||||
#ifdef USE_BOOST_FILESYSTEM
|
||||
#ifdef MINGW32_XP_BOOST
|
||||
#include <boost/filesystem.hpp>
|
||||
namespace fs = boost::filesystem;
|
||||
#else
|
||||
|
@ -1,26 +0,0 @@
|
||||
add_rules("mode.debug", "mode.release")
|
||||
set_languages("c++17")
|
||||
add_includedirs(os.scriptdir())
|
||||
target("tsc")
|
||||
add_options("boost")
|
||||
set_kind("binary")
|
||||
add_files("*.cpp")
|
||||
add_deps("ofen")
|
||||
add_deps("trans_util")
|
||||
add_deps("trans_net")
|
||||
add_deps("filecomplete")
|
||||
|
||||
if is_plat("mingw") then
|
||||
add_links("ws2_32", "wsock32")
|
||||
end
|
||||
|
||||
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)
|
13
config/MBoost.cmake
Normal file
13
config/MBoost.cmake
Normal file
@ -0,0 +1,13 @@
|
||||
set(MBOOST_INCLUDE_DIR "C:/boost/include/boost-1_83")
|
||||
set(MBOOST_LIB_DIR "C:/boost/lib")
|
||||
set(MBOOST_LIBS "boost_filesystem-mgw7-mt-x32-1_83")
|
||||
get_filename_component(CXX_COMPILER_PATH ${CMAKE_CXX_COMPILER} DIRECTORY)
|
||||
set(MINGW32_DLLS
|
||||
"${CXX_COMPILER_PATH}/libgcc_s_dw2-1.dll"
|
||||
"${CXX_COMPILER_PATH}/libstdc++-6.dll"
|
||||
"${CXX_COMPILER_PATH}/libwinpthread-1.dll"
|
||||
)
|
||||
set(WIN_XP_COLOR_TOOL
|
||||
"C:/xp/ansicon.exe"
|
||||
"C:/xp/ANSI32.dll"
|
||||
)
|
@ -1 +1 @@
|
||||
Subproject commit 1106518755bc91afb0a110a1b589eca031d980e2
|
||||
Subproject commit a7c6434a7c333a19727aeab8212d20604426b701
|
@ -1,15 +0,0 @@
|
||||
add_rules("mode.debug", "mode.release")
|
||||
set_languages("c++17")
|
||||
if is_mode("debug") then
|
||||
set_suffixname("d")
|
||||
end
|
||||
add_includedirs(os.scriptdir(), {public = true})
|
||||
target("trans_net")
|
||||
set_kind("static")
|
||||
add_files("*.cpp")
|
||||
add_deps("ofen")
|
||||
add_deps("trans_util")
|
||||
|
||||
if is_plat("mingw") then
|
||||
add_links("ws2_32", "wsock32")
|
||||
end
|
2
ofen
2
ofen
@ -1 +1 @@
|
||||
Subproject commit 44c536c583948ac6768fa8b536b9a6222c845bf7
|
||||
Subproject commit 36e05d261821048a4c2fec1042434dd2dfc9b6de
|
@ -6,9 +6,17 @@ set(CMAKE_CXX_STANDARD 17)
|
||||
if (MSVC)
|
||||
add_compile_options(/source-charset:utf-8)
|
||||
endif()
|
||||
if(DEFINED MINGW32_XP_BOOST)
|
||||
message(STATUS "tss use mingw32 xp boost.")
|
||||
include_directories(${MBOOST_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
add_executable(tss main.cpp server.h server.cpp)
|
||||
target_link_libraries(tss PRIVATE trans_net trans_util)
|
||||
if(DEFINED MINGW32_XP_BOOST)
|
||||
target_link_directories(tss PRIVATE ${MBOOST_LIB_DIR})
|
||||
target_link_libraries(tss PRIVATE ${MBOOST_LIBS})
|
||||
endif()
|
||||
if (UNIX)
|
||||
target_link_libraries(tss PRIVATE pthread)
|
||||
endif()
|
||||
|
@ -1,13 +0,0 @@
|
||||
add_rules("mode.debug", "mode.release")
|
||||
set_languages("c++17")
|
||||
add_includedirs(os.scriptdir())
|
||||
target("tss")
|
||||
set_kind("binary")
|
||||
add_files("*.cpp")
|
||||
add_deps("ofen")
|
||||
add_deps("trans_util")
|
||||
add_deps("trans_net")
|
||||
|
||||
if is_plat("mingw") then
|
||||
add_links("ws2_32", "wsock32")
|
||||
end
|
@ -1,14 +0,0 @@
|
||||
add_rules("mode.debug", "mode.release")
|
||||
set_languages("c++17")
|
||||
if is_plat("windows") then
|
||||
add_cxxflags("/source-charset:utf-8")
|
||||
end
|
||||
if is_mode("debug") then
|
||||
set_suffixname("d")
|
||||
end
|
||||
add_includedirs(os.scriptdir(), {public = true})
|
||||
target("trans_util")
|
||||
set_kind("static")
|
||||
add_files("*.cpp")
|
||||
add_deps("ofen")
|
||||
add_deps("filecomplete")
|
22
xmake.lua
22
xmake.lua
@ -1,22 +0,0 @@
|
||||
add_rules("mode.debug", "mode.release")
|
||||
set_languages("c++17")
|
||||
if is_plat("windows") then
|
||||
add_cxxflags("/source-charset:utf-8")
|
||||
end
|
||||
if is_plat("mingw") then
|
||||
add_cxxflags("-Wno-unused-variable -finput-charset=utf-8 -fexec-charset=gbk")
|
||||
end
|
||||
if has_config("xp") then
|
||||
add_defines("_WIN32_WINNT=0x0501")
|
||||
else
|
||||
add_defines("_WIN32_WINNT=0x0601")
|
||||
end
|
||||
add_defines("FMT_HEADER_ONLY")
|
||||
add_includedirs("$(projectdir)/3rd", {public = true})
|
||||
add_includedirs("$(projectdir)/build", {public = true})
|
||||
includes("util", "ofen", "net", "server", "client", "filecomplete")
|
||||
add_configfiles("config.h.in", {filename = "version.h"})
|
||||
|
||||
option("xp")
|
||||
set_default(false)
|
||||
set_showmenu(true)
|
Loading…
x
Reference in New Issue
Block a user