summaryrefslogtreecommitdiff
path: root/hscript/CMakeLists.txt
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2019-10-27 08:49:03 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2019-10-27 08:49:03 -0500
commitb4215cbbf297a79dc70e8c2cde85b849033cb144 (patch)
tree01aaca55d22c672d61a5df23be59003da34e90ea /hscript/CMakeLists.txt
parentcbc3c3ead5a29ca5d4f802793042d072b9fd25fb (diff)
downloadhorizon-b4215cbbf297a79dc70e8c2cde85b849033cb144.tar.gz
horizon-b4215cbbf297a79dc70e8c2cde85b849033cb144.tar.bz2
horizon-b4215cbbf297a79dc70e8c2cde85b849033cb144.tar.xz
horizon-b4215cbbf297a79dc70e8c2cde85b849033cb144.zip
hscript: Make portable to std::filesystem OR boost::filesystem
Diffstat (limited to 'hscript/CMakeLists.txt')
-rw-r--r--hscript/CMakeLists.txt13
1 files changed, 10 insertions, 3 deletions
diff --git a/hscript/CMakeLists.txt b/hscript/CMakeLists.txt
index d0c5473..e6e86b6 100644
--- a/hscript/CMakeLists.txt
+++ b/hscript/CMakeLists.txt
@@ -11,12 +11,19 @@ set(HSCRIPT_INCLUDE
script.hh
)
-find_package(Boost REQUIRED COMPONENTS filesystem)
-
add_library(hscript ${HSCRIPT_SOURCE})
target_compile_features(hscript PRIVATE cxx_nullptr)
target_compile_features(hscript PUBLIC cxx_unicode_literals)
-target_link_libraries(hscript ${BLKID_LIBRARIES} ${Boost_FILESYSTEM_LIBRARY} ${LIBUDEV_LIBRARIES} ${PARTED_LIBRARIES})
+if("cxx_std_17" IN_LIST CMAKE_CXX_COMPILE_FEATURES)
+ set_property(TARGET hscript PROPERTY CXX_STANDARD 17)
+ SET(FS_LIBRARY stdc++fs)
+ add_definitions(-DFS_IS_STDCXX)
+ELSE()
+ find_package(Boost REQUIRED COMPONENTS filesystem)
+ SET(FS_LIBRARY ${Boost_FILESYSTEM_LIBRARY})
+ add_definitions(-DFS_IS_BOOST)
+ENDIF()
+target_link_libraries(hscript ${BLKID_LIBRARIES} ${FS_LIBRARY} ${LIBUDEV_LIBRARIES} ${PARTED_LIBRARIES})
install(TARGETS hscript DESTINATION lib)
install(FILES ${HSCRIPT_INCLUDE} DESTINATION include/hscript)