2018-01-03 12:41:16 -05:00
|
|
|
cmake_minimum_required(VERSION 3.0.2)
|
2014-02-13 05:47:20 -05:00
|
|
|
project (MCADefrag)
|
|
|
|
|
2015-12-19 09:30:32 -05:00
|
|
|
# Without this, the MSVC variable isn't defined for MSVC builds ( https://www.cmake.org/pipermail/cmake/2011-November/047130.html )
|
2014-02-15 18:24:34 -05:00
|
|
|
enable_language(CXX C)
|
2014-02-13 05:47:20 -05:00
|
|
|
|
2014-02-15 18:24:34 -05:00
|
|
|
include(../../SetFlags.cmake)
|
|
|
|
set_flags()
|
|
|
|
set_lib_flags()
|
|
|
|
enable_profile()
|
2014-02-13 05:47:20 -05:00
|
|
|
|
|
|
|
# Set include paths to the used libraries:
|
2016-08-24 15:45:03 -04:00
|
|
|
include_directories(SYSTEM "../../lib")
|
2014-02-13 05:47:20 -05:00
|
|
|
include_directories("../../src")
|
|
|
|
|
|
|
|
|
|
|
|
function(flatten_files arg1)
|
|
|
|
set(res "")
|
|
|
|
foreach(f ${${arg1}})
|
|
|
|
get_filename_component(f ${f} ABSOLUTE)
|
|
|
|
list(APPEND res ${f})
|
|
|
|
endforeach()
|
|
|
|
set(${arg1} "${res}" PARENT_SCOPE)
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
|
|
|
|
# Include the libraries:
|
2014-02-16 06:37:31 -05:00
|
|
|
|
2014-02-16 07:09:00 -05:00
|
|
|
add_subdirectory(../../lib/zlib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/lib/zlib)
|
2014-02-13 05:47:20 -05:00
|
|
|
|
2014-02-15 18:24:34 -05:00
|
|
|
set_exe_flags()
|
2014-02-13 05:47:20 -05:00
|
|
|
|
|
|
|
# Include the shared files:
|
|
|
|
set(SHARED_SRC
|
|
|
|
../../src/StringCompression.cpp
|
|
|
|
../../src/StringUtils.cpp
|
2014-08-12 11:05:04 -04:00
|
|
|
../../src/LoggerListeners.cpp
|
|
|
|
../../src/Logger.cpp
|
2014-02-13 05:47:20 -05:00
|
|
|
)
|
|
|
|
set(SHARED_HDR
|
|
|
|
../../src/ByteBuffer.h
|
|
|
|
../../src/StringUtils.h
|
|
|
|
)
|
2014-11-29 17:58:26 -05:00
|
|
|
|
2014-02-15 18:24:34 -05:00
|
|
|
flatten_files(SHARED_SRC)
|
|
|
|
flatten_files(SHARED_HDR)
|
|
|
|
source_group("Shared" FILES ${SHARED_SRC} ${SHARED_HDR})
|
|
|
|
|
2014-02-13 05:47:20 -05:00
|
|
|
set(SHARED_OSS_SRC
|
|
|
|
../../src/OSSupport/CriticalSection.cpp
|
2014-12-25 02:47:35 -05:00
|
|
|
../../src/OSSupport/Event.cpp
|
2014-02-13 05:47:20 -05:00
|
|
|
../../src/OSSupport/File.cpp
|
|
|
|
../../src/OSSupport/IsThread.cpp
|
2014-11-29 17:58:26 -05:00
|
|
|
../../src/OSSupport/StackTrace.cpp
|
2017-06-19 05:05:19 -04:00
|
|
|
../../src/OSSupport/WinStackWalker.cpp
|
2014-02-13 05:47:20 -05:00
|
|
|
)
|
2014-12-04 16:51:40 -05:00
|
|
|
|
2014-02-13 05:47:20 -05:00
|
|
|
set(SHARED_OSS_HDR
|
|
|
|
../../src/OSSupport/CriticalSection.h
|
2014-12-25 02:47:35 -05:00
|
|
|
../../src/OSSupport/Event.h
|
2014-02-13 05:47:20 -05:00
|
|
|
../../src/OSSupport/File.h
|
|
|
|
../../src/OSSupport/IsThread.h
|
2014-11-29 17:58:26 -05:00
|
|
|
../../src/OSSupport/StackTrace.h
|
2017-06-19 05:05:19 -04:00
|
|
|
../../src/OSSupport/WinStackWalker.h
|
2014-02-13 05:47:20 -05:00
|
|
|
)
|
2014-02-15 18:24:34 -05:00
|
|
|
|
2014-11-29 17:58:26 -05:00
|
|
|
|
2014-02-13 05:47:20 -05:00
|
|
|
flatten_files(SHARED_OSS_SRC)
|
|
|
|
flatten_files(SHARED_OSS_HDR)
|
2014-02-15 18:24:34 -05:00
|
|
|
|
2014-02-13 05:47:20 -05:00
|
|
|
source_group("Shared\\OSSupport" FILES ${SHARED_OSS_SRC} ${SHARED_OSS_HDR})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Include the main source files:
|
|
|
|
set(SOURCES
|
|
|
|
MCADefrag.cpp
|
|
|
|
Globals.cpp
|
|
|
|
)
|
|
|
|
set(HEADERS
|
|
|
|
MCADefrag.h
|
|
|
|
Globals.h
|
|
|
|
)
|
|
|
|
|
|
|
|
source_group("" FILES ${SOURCES} ${HEADERS})
|
|
|
|
|
|
|
|
add_executable(MCADefrag
|
|
|
|
${SOURCES}
|
|
|
|
${HEADERS}
|
|
|
|
${SHARED_SRC}
|
|
|
|
${SHARED_HDR}
|
|
|
|
${SHARED_OSS_SRC}
|
|
|
|
${SHARED_OSS_HDR}
|
|
|
|
)
|
|
|
|
|
2018-01-03 12:41:16 -05:00
|
|
|
target_link_libraries(MCADefrag zlib fmt::fmt)
|