Switch to CMake build system
This commit is contained in:
parent
de2520a898
commit
aa94489160
10
.gitignore
vendored
10
.gitignore
vendored
@ -1,6 +1,6 @@
|
||||
/bin
|
||||
*~
|
||||
*.o
|
||||
*.obj
|
||||
.scon*
|
||||
|
||||
/bin
|
||||
/CMakeCache.txt
|
||||
/CMakeFiles
|
||||
/Makefile
|
||||
/cmake_install.cmake
|
||||
|
41
CMakeLists.txt
Normal file
41
CMakeLists.txt
Normal file
@ -0,0 +1,41 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
project(MC2MT)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
"${PROJECT_SOURCE_DIR}/src/main.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/convert.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/threads.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/MCMap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/MTMap.cpp"
|
||||
)
|
||||
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/Modules/")
|
||||
|
||||
add_subdirectory(nbt)
|
||||
|
||||
find_package(Threads REQUIRED)
|
||||
find_package(Boost REQUIRED COMPONENTS "filesystem" "system")
|
||||
find_package(SQLite3 REQUIRED)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
Threads::Threads
|
||||
"nbt"
|
||||
${ZLIB_LIBRARY}
|
||||
${SQLite3_LIBRARY}
|
||||
${Boost_LIBRARIES}
|
||||
)
|
||||
include_directories(
|
||||
"${NBT_SOURCE_DIR}/src"
|
||||
${ZLIB_INCLUDE_DIRS}
|
||||
${Boost_INCLUDE_DIRS}
|
||||
${SQLite3_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
if (MINGW)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mthreads")
|
||||
endif()
|
||||
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||
COMPILE_FLAGS "-std=c++11 -Wall -Wextra -Wpedantic"
|
||||
RUNTIME_OUTPUT_DIRECTORY "bin")
|
34
SConstruct
34
SConstruct
@ -1,34 +0,0 @@
|
||||
import os
|
||||
|
||||
vars = Variables(None, ARGUMENTS)
|
||||
|
||||
vars.AddVariables(
|
||||
BoolVariable("debug", "Make a debug build", False)
|
||||
)
|
||||
|
||||
env = Environment(
|
||||
variables = vars,
|
||||
LIBPATH = ["nbt/bin"],
|
||||
CPPPATH = ["src", "nbt/src"],
|
||||
)
|
||||
|
||||
Help(vars.GenerateHelpText(env))
|
||||
|
||||
env.MergeFlags("--std=c++11 -Wall -Wextra -Wpedantic")
|
||||
if env["debug"]:
|
||||
env.MergeFlags("-O0 -g")
|
||||
else:
|
||||
env.MergeFlags("-O3")
|
||||
|
||||
sources = [
|
||||
"src/main.cpp",
|
||||
"src/convert.cpp",
|
||||
"src/threads.cpp",
|
||||
"src/MCMap.cpp",
|
||||
"src/MTMap.cpp",
|
||||
]
|
||||
|
||||
env.Program("bin/MC2MT", sources,
|
||||
LIBS = ["nbt", "z", "boost_filesystem", "boost_system", "sqlite3", "pthread"]
|
||||
)
|
||||
|
9
cmake/Modules/FindSQLite3.cmake
Normal file
9
cmake/Modules/FindSQLite3.cmake
Normal file
@ -0,0 +1,9 @@
|
||||
mark_as_advanced(SQLite3_LIBRARY SQLite3_INCLUDE_DIR)
|
||||
|
||||
find_path(SQLite3_INCLUDE_DIR "sqlite3.h")
|
||||
|
||||
find_library(SQLite3_LIBRARY NAMES "sqlite3")
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(SQLite3 DEFAULT_MSG SQLite3_LIBRARY SQLite3_INCLUDE_DIR)
|
||||
|
2
nbt
2
nbt
@ -1 +1 @@
|
||||
Subproject commit af67491f974f9b8bd7db14f9e4c1141aa98c10c3
|
||||
Subproject commit e390874cf010463bf13366523a03761553cf5663
|
Loading…
x
Reference in New Issue
Block a user