Loading CMakeLists.txt +16 −0 Original line number Diff line number Diff line Loading @@ -264,7 +264,23 @@ FetchContent_MakeAvailable(expected) find_package(GekkoFS) if (GekkoFS_FOUND) add_compile_definitions(GEKKOFS_PLUGIN) message(STATUS "[${PROJECT_NAME}] Found GekkoFS") endif() ### Hercules: Optional for hercules find_package(Hercules) if (Hercules_FOUND) add_compile_definitions(HERCULES_PLUGIN) message(STATUS "[${PROJECT_NAME}] Found Hercules") endif() ### Expand: Optional for expand find_package(Expand) if (Expand_FOUND) add_compile_definitions(EXPAND_PLUGIN) message(STATUS "[${PROJECT_NAME}] Found Expand") endif() ### Threads: required by ASIO find_package(Threads REQUIRED) Loading cmake/FindExpand.cmake 0 → 100644 +65 −0 Original line number Diff line number Diff line ################################################################################ # Copyright 2018-2023, Barcelona Supercomputing Center (BSC), Spain # # Copyright 2015-2023, Johannes Gutenberg Universitaet Mainz, Germany # # # # This software was partially supported by the # # EC H2020 funded project NEXTGenIO (Project ID: 671951, www.nextgenio.eu). # # # # This software was partially supported by the # # ADA-FS project under the SPPEXA project funded by the DFG. # # # # This file is part of GekkoFS. # # # # GekkoFS is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # GekkoFS is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with GekkoFS. If not, see <https://www.gnu.org/licenses/>. # # # # SPDX-License-Identifier: GPL-3.0-or-later # ################################################################################ find_path(Expand_INCLUDE_DIR NAMES user_functions.hpp PREFIX gkfs ) find_library(Expand_LIBRARY NAMES libexpand_user_lib.so ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args( Expand DEFAULT_MSG Expand_INCLUDE_DIR Expand_LIBRARY ) if(Expand_FOUND) set(Expand_LIBRARIES ${Expand_LIBRARY}) set(Expand_INCLUDE_DIRS ${Expand_INCLUDE_DIR}) if(NOT TARGET Expand::Expand) add_library(Expand::Expand UNKNOWN IMPORTED) set_target_properties(Expand::Expand PROPERTIES IMPORTED_LOCATION "${Expand_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${Expand_INCLUDE_DIR}" ) endif() endif() mark_as_advanced( Expand_INCLUDE_DIR Expand_LIBRARY ) cmake/FindGekkoFS.cmake +2 −2 Original line number Diff line number Diff line Loading @@ -45,8 +45,8 @@ find_package_handle_standard_args( ) if(GekkoFS_FOUND) set(GekkoFS_LIBRARIES ${GekkoFS__LIBRARY}) set(GekkoFS_INCLUDE_DIRS ${GekkoFS__INCLUDE_DIR}) set(GekkoFS_LIBRARIES ${GekkoFS_LIBRARY}) set(GekkoFS_INCLUDE_DIRS ${GekkoFS_INCLUDE_DIR}) if(NOT TARGET GekkoFS::GekkoFS) Loading cmake/FindHercules.cmake 0 → 100644 +65 −0 Original line number Diff line number Diff line ################################################################################ # Copyright 2018-2023, Barcelona Supercomputing Center (BSC), Spain # # Copyright 2015-2023, Johannes Gutenberg Universitaet Mainz, Germany # # # # This software was partially supported by the # # EC H2020 funded project NEXTGenIO (Project ID: 671951, www.nextgenio.eu). # # # # This software was partially supported by the # # ADA-FS project under the SPPEXA project funded by the DFG. # # # # This file is part of GekkoFS. # # # # GekkoFS is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # GekkoFS is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with GekkoFS. If not, see <https://www.gnu.org/licenses/>. # # # # SPDX-License-Identifier: GPL-3.0-or-later # ################################################################################ find_path(Hercules_INCLUDE_DIR NAMES user_functions.hpp PREFIX hercules ) find_library(Hercules_LIBRARY NAMES libhercules_user_lib.so ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args( Hercules DEFAULT_MSG Hercules_INCLUDE_DIR Hercules_LIBRARY ) if(Hercules_FOUND) set(Hercules_LIBRARIES ${Hercules_LIBRARY}) set(Hercules_INCLUDE_DIRS ${Hercules_INCLUDE_DIR}) if(NOT TARGET Hercules::Hercules) add_library(Hercules::Hercules UNKNOWN IMPORTED) set_target_properties(Hercules::Hercules PROPERTIES IMPORTED_LOCATION "${Hercules_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${Hercules_INCLUDE_DIR}" ) endif() endif() mark_as_advanced( Hercules_INCLUDE_DIR Hercules_LIBRARY ) src/posix_file/CMakeLists.txt +21 −2 Original line number Diff line number Diff line Loading @@ -26,8 +26,16 @@ add_library(posix_file STATIC) set(GEKKO_INCLUDES "") if (GEKKOFS_PLUGIN) set(GEKKO_INCLUDES posix_file/fs_plugin/gekko_plugin.cpp posix_file/fs_plugin/gekko_plugin.cpp) set(GEKKO_INCLUDES posix_file/fs_plugin/gekko_plugin.hpp posix_file/fs_plugin/gekko_plugin.cpp) endif() if (EXPAND_plugin) set(EXPAND_INCLUDES posix_file/fs_plugin/expand_plugin.hpp posix_file/fs_plugin/expand_plugin.cpp) endif() if (HERCULES_plugin) set(HERCULES_INCLUDES posix_file/fs_plugin/hercules_plugin.chpp posix_file/fs_plugin/hercules_plugin.cpp) endif() target_sources( posix_file PRIVATE posix_file/types.hpp Loading @@ -42,6 +50,8 @@ target_sources( posix_file/fs_plugin/fs_plugin.cpp posix_file/fs_plugin/posix_plugin.cpp ${GEKKO_INCLUDES} ${HERCULES_INCLUDES} ${EXPAND_INCLUDES} ) Loading @@ -52,8 +62,17 @@ set_property(TARGET posix_file PROPERTY POSITION_INDEPENDENT_CODE ON) set(ADHOC "") if (GEKKOFS_PLUGIN) set(ADHOC ${$ADHOC} GekkoFS::GekkoFS) set(ADHOC ${ADHOC} GekkoFS::GekkoFS) endif() if (EXPAND_PLUGIN) set(ADHOC ${ADHOC} Expand::Expand) endif() if (HERCULES_PLUGIN) set(ADHOC ${ADHOC} Hercules::Hercules) endif() target_link_libraries(posix_file INTERFACE fmt::fmt tl::expected PRIVATE ${ADHOC}) Loading
CMakeLists.txt +16 −0 Original line number Diff line number Diff line Loading @@ -264,7 +264,23 @@ FetchContent_MakeAvailable(expected) find_package(GekkoFS) if (GekkoFS_FOUND) add_compile_definitions(GEKKOFS_PLUGIN) message(STATUS "[${PROJECT_NAME}] Found GekkoFS") endif() ### Hercules: Optional for hercules find_package(Hercules) if (Hercules_FOUND) add_compile_definitions(HERCULES_PLUGIN) message(STATUS "[${PROJECT_NAME}] Found Hercules") endif() ### Expand: Optional for expand find_package(Expand) if (Expand_FOUND) add_compile_definitions(EXPAND_PLUGIN) message(STATUS "[${PROJECT_NAME}] Found Expand") endif() ### Threads: required by ASIO find_package(Threads REQUIRED) Loading
cmake/FindExpand.cmake 0 → 100644 +65 −0 Original line number Diff line number Diff line ################################################################################ # Copyright 2018-2023, Barcelona Supercomputing Center (BSC), Spain # # Copyright 2015-2023, Johannes Gutenberg Universitaet Mainz, Germany # # # # This software was partially supported by the # # EC H2020 funded project NEXTGenIO (Project ID: 671951, www.nextgenio.eu). # # # # This software was partially supported by the # # ADA-FS project under the SPPEXA project funded by the DFG. # # # # This file is part of GekkoFS. # # # # GekkoFS is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # GekkoFS is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with GekkoFS. If not, see <https://www.gnu.org/licenses/>. # # # # SPDX-License-Identifier: GPL-3.0-or-later # ################################################################################ find_path(Expand_INCLUDE_DIR NAMES user_functions.hpp PREFIX gkfs ) find_library(Expand_LIBRARY NAMES libexpand_user_lib.so ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args( Expand DEFAULT_MSG Expand_INCLUDE_DIR Expand_LIBRARY ) if(Expand_FOUND) set(Expand_LIBRARIES ${Expand_LIBRARY}) set(Expand_INCLUDE_DIRS ${Expand_INCLUDE_DIR}) if(NOT TARGET Expand::Expand) add_library(Expand::Expand UNKNOWN IMPORTED) set_target_properties(Expand::Expand PROPERTIES IMPORTED_LOCATION "${Expand_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${Expand_INCLUDE_DIR}" ) endif() endif() mark_as_advanced( Expand_INCLUDE_DIR Expand_LIBRARY )
cmake/FindGekkoFS.cmake +2 −2 Original line number Diff line number Diff line Loading @@ -45,8 +45,8 @@ find_package_handle_standard_args( ) if(GekkoFS_FOUND) set(GekkoFS_LIBRARIES ${GekkoFS__LIBRARY}) set(GekkoFS_INCLUDE_DIRS ${GekkoFS__INCLUDE_DIR}) set(GekkoFS_LIBRARIES ${GekkoFS_LIBRARY}) set(GekkoFS_INCLUDE_DIRS ${GekkoFS_INCLUDE_DIR}) if(NOT TARGET GekkoFS::GekkoFS) Loading
cmake/FindHercules.cmake 0 → 100644 +65 −0 Original line number Diff line number Diff line ################################################################################ # Copyright 2018-2023, Barcelona Supercomputing Center (BSC), Spain # # Copyright 2015-2023, Johannes Gutenberg Universitaet Mainz, Germany # # # # This software was partially supported by the # # EC H2020 funded project NEXTGenIO (Project ID: 671951, www.nextgenio.eu). # # # # This software was partially supported by the # # ADA-FS project under the SPPEXA project funded by the DFG. # # # # This file is part of GekkoFS. # # # # GekkoFS is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # GekkoFS is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with GekkoFS. If not, see <https://www.gnu.org/licenses/>. # # # # SPDX-License-Identifier: GPL-3.0-or-later # ################################################################################ find_path(Hercules_INCLUDE_DIR NAMES user_functions.hpp PREFIX hercules ) find_library(Hercules_LIBRARY NAMES libhercules_user_lib.so ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args( Hercules DEFAULT_MSG Hercules_INCLUDE_DIR Hercules_LIBRARY ) if(Hercules_FOUND) set(Hercules_LIBRARIES ${Hercules_LIBRARY}) set(Hercules_INCLUDE_DIRS ${Hercules_INCLUDE_DIR}) if(NOT TARGET Hercules::Hercules) add_library(Hercules::Hercules UNKNOWN IMPORTED) set_target_properties(Hercules::Hercules PROPERTIES IMPORTED_LOCATION "${Hercules_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${Hercules_INCLUDE_DIR}" ) endif() endif() mark_as_advanced( Hercules_INCLUDE_DIR Hercules_LIBRARY )
src/posix_file/CMakeLists.txt +21 −2 Original line number Diff line number Diff line Loading @@ -26,8 +26,16 @@ add_library(posix_file STATIC) set(GEKKO_INCLUDES "") if (GEKKOFS_PLUGIN) set(GEKKO_INCLUDES posix_file/fs_plugin/gekko_plugin.cpp posix_file/fs_plugin/gekko_plugin.cpp) set(GEKKO_INCLUDES posix_file/fs_plugin/gekko_plugin.hpp posix_file/fs_plugin/gekko_plugin.cpp) endif() if (EXPAND_plugin) set(EXPAND_INCLUDES posix_file/fs_plugin/expand_plugin.hpp posix_file/fs_plugin/expand_plugin.cpp) endif() if (HERCULES_plugin) set(HERCULES_INCLUDES posix_file/fs_plugin/hercules_plugin.chpp posix_file/fs_plugin/hercules_plugin.cpp) endif() target_sources( posix_file PRIVATE posix_file/types.hpp Loading @@ -42,6 +50,8 @@ target_sources( posix_file/fs_plugin/fs_plugin.cpp posix_file/fs_plugin/posix_plugin.cpp ${GEKKO_INCLUDES} ${HERCULES_INCLUDES} ${EXPAND_INCLUDES} ) Loading @@ -52,8 +62,17 @@ set_property(TARGET posix_file PROPERTY POSITION_INDEPENDENT_CODE ON) set(ADHOC "") if (GEKKOFS_PLUGIN) set(ADHOC ${$ADHOC} GekkoFS::GekkoFS) set(ADHOC ${ADHOC} GekkoFS::GekkoFS) endif() if (EXPAND_PLUGIN) set(ADHOC ${ADHOC} Expand::Expand) endif() if (HERCULES_PLUGIN) set(ADHOC ${ADHOC} Hercules::Hercules) endif() target_link_libraries(posix_file INTERFACE fmt::fmt tl::expected PRIVATE ${ADHOC})