-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
project(fuse_xattrs C)
set(FUSE_XATTRS_VERSION_MAJOR 0)
-set(FUSE_XATTRS_VERSION_MINOR 2)
+set(FUSE_XATTRS_VERSION_MINOR 5)
set(BINARY_SIDECAR_EXT \".xattr\")
"${PROJECT_BINARY_DIR}"
)
+configure_file (
+ "${PROJECT_SOURCE_DIR}/fuse_xattrs.1.in"
+ "${PROJECT_BINARY_DIR}/fuse_xattrs.1"
+)
+
# Check xattr headers
include (CheckIncludeFile)
check_include_file (sys/xattr.h HAVE_SYS_XATTR_H)
include (CheckCSourceCompiles)
check_c_source_compiles ("
#include <sys/types.h>
- #include <attr/xattr.h>
+ #include <sys/xattr.h>
int main() { return 1; }
- " HAVE_ATTR_XATTR_H)
-if(NOT HAVE_ATTR_XATTR_H)
- message(FATAL_ERROR "attr/xattr.h not found")
+ " HAVE_SYS_XATTR_H)
+if(NOT HAVE_SYS_XATTR_H)
+ message(FATAL_ERROR "sys/xattr.h not found")
endif()
# set required definitions
add_definitions (-D_FILE_OFFSET_BITS=64)
+add_definitions (-D HAVE_UTIMENSAT=1)
+#add_definitions (-D DEBUG=1)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/CMakeModules/")
+set(CMAKE_C_FLAGS "-O3")
+#set(CMAKE_C_FLAGS "-g -Wall")
+
option(ENABLE_CODECOVERAGE "Enable code coverage testing support" )
if(ENABLE_CODECOVERAGE)
include (CodeCoverage)
endif(ENABLE_CODECOVERAGE)
set(SOURCE_FILES
+ stringmem.c
fuse_xattrs.c
passthrough.c
binary_storage.c
add_executable(fuse_xattrs ${SOURCE_FILES})
-target_link_libraries (
- fuse_xattrs
- fuse
-)
+if(APPLE)
+ target_link_libraries (
+ fuse_xattrs
+ osxfuse
+ )
+else()
+ target_link_libraries (
+ fuse_xattrs
+ fuse
+ )
+endif()
+
install (TARGETS fuse_xattrs DESTINATION bin)
+install (
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/fuse_xattrs.1
+ DESTINATION share/man/man1
+ COMPONENT doc
+)
enable_testing()
configure_file(run_tests.sh run_tests.sh COPYONLY)