┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt17
-rw-r--r--src/CMakeLists.txt2
2 files changed, 19 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8a0b97c63..0a655babb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -27,6 +27,8 @@ include(GenerateExportHeader)
include(FeatureSummary)
include(ECMQtDeclareLoggingCategory)
include(ECMDeprecationSettings)
+include(CheckIncludeFiles)
+include(CheckLibraryExists)
ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX DOLPHIN
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/src/dolphin_version.h"
@@ -150,6 +152,21 @@ else()
set(HAVE_TERMINAL TRUE)
endif()
+# Compatibility with platforms without native fts (e.g. musl)
+check_include_files("sys/types.h;sys/stat.h;fts.h" HAVE_FTS_H)
+if(HAVE_FTS_H)
+ check_function_exists(fts_open HAVE_FTS_OPEN)
+ if(NOT HAVE_FTS_OPEN)
+ check_library_exists(fts fts_open "" HAVE_LIB_FTS)
+ endif()
+endif()
+
+if(HAVE_LIB_FTS)
+ set(FTS_LIB fts)
+else()
+ set(FTS_LIB "")
+endif()
+
add_subdirectory(src)
add_subdirectory(doc)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 5a481e39f..fa7de5cc2 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -213,6 +213,8 @@ target_link_libraries(
KF6::KCMUtils
KF6::MoreTools
+
+ ${FTS_LIB}
)
if(HAVE_BALOO)