Switch to CMake build system

This commit is contained in:
ShadowNinja 2016-11-19 19:42:28 -05:00
parent de2520a898
commit aa94489160
5 changed files with 56 additions and 40 deletions

10
.gitignore vendored
View File

@ -1,6 +1,6 @@
/bin
*~ *~
*.o /bin
*.obj /CMakeCache.txt
.scon* /CMakeFiles
/Makefile
/cmake_install.cmake

41
CMakeLists.txt Normal file
View 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")

View File

@ -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"]
)

View 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

@ -1 +1 @@
Subproject commit af67491f974f9b8bd7db14f9e4c1141aa98c10c3 Subproject commit e390874cf010463bf13366523a03761553cf5663