Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- set(PROJECT_NAME g3log)
- project(${PROJECT_NAME} CXX)
- ############ Header Files #############
- set(HEADERS_FILES
- # Here instead of these paths
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/active.hpp
- # We should have something like (as for config below):
- ${CMAKE_CURRENT_SOURCE_DIR}../../../../latest/src/g3log/active.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/crashhandler.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/filesink.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/future.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/g3log.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/generated_definitions.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/logcapture.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/loglevels.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/logmessage.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/logworker.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/moveoncopy.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/shared_queue.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/sink.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/sinkhandle.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/sinkwrapper.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/stacktrace_windows.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/std2_make_unique.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/stlpatch_future.hpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log/time.hpp
- )
- source_group("Headers" FILES ${HEADERS_FILES})
- ############ Source Files #############
- set(SRC_FILES
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/crashhandler_windows.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/filesink.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/g3log.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/logcapture.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/loglevels.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/logmessage.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/logworker.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/stacktrace_windows.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../../../latest/src/time.cpp
- )
- source_group("Sources" FILES ${SRC_FILES})
- # Warning: pch and target are the same for every configuration
- add_library(${PROJECT_NAME} STATIC ${SRC_FILES} ${HEADERS_FILES})
- if("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
- string(CONCAT OUT_DIR
- $<$<CONFIG:ReleaseDebug>:${CMAKE_CURRENT_SOURCE_DIR}../../../../../build/vc2017_x86/lib/>
- $<$<CONFIG:Release>:${CMAKE_CURRENT_SOURCE_DIR}../../../../../build/vc2017_x86/lib/>
- $<$<CONFIG:Debug>:${CMAKE_CURRENT_SOURCE_DIR}../../../../../build/vc2017_x86d/lib/>
- $<$<NOT:$<OR:$<CONFIG:ReleaseDebug>,$<CONFIG:Release>,$<CONFIG:Debug>>>:${CMAKE_SOURCE_DIR}/${CMAKE_VS_PLATFORM_NAME}/$<CONFIG>>
- )
- elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "x64")
- string(CONCAT OUT_DIR
- $<$<CONFIG:Debug>:${CMAKE_CURRENT_SOURCE_DIR}../../../../../build/vc2017_x64d/lib/>
- $<$<CONFIG:ReleaseDebug>:${CMAKE_CURRENT_SOURCE_DIR}../../../../../build/vc2017_x64/lib/>
- $<$<CONFIG:Release>:${CMAKE_CURRENT_SOURCE_DIR}../../../../../build/vc2017_x64/lib/>
- $<$<NOT:$<OR:$<CONFIG:Debug>,$<CONFIG:ReleaseDebug>,$<CONFIG:Release>>>:${CMAKE_SOURCE_DIR}/${CMAKE_VS_PLATFORM_NAME}/$<CONFIG>>
- )
- else()
- message(WARNING "${CMAKE_VS_PLATFORM_NAME} arch is not supported!")
- endif()
- set_target_properties(${PROJECT_NAME} PROPERTIES ARCHIVE_OUTPUT_DIRECTORY ${OUT_DIR})
- set_target_properties(${PROJECT_NAME} PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${OUT_DIR})
- (...)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement