diff --git a/appveyor.yml b/appveyor.yml index 2b045ae3..64d99a2e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -35,7 +35,7 @@ install: build_script: - cmd: mkdir build - cmd: cd build - - cmd: cmake .. -G "%generator%" -DBUILD_TESTING=on -DBOOST_ROOT=C:\Libraries\boost_1_65_1 -DDOKAN_PATH="C:\Program Files\Dokan\DokanLibrary-1.1.0" + - cmd: cmake .. -G "%generator%" -DBUILD_TESTING=on -DBOOST_ROOT="C:/Libraries/boost_1_65_1" -DDOKAN_PATH="C:/Program Files/Dokan/DokanLibrary-1.1.0" # TODO Make build parallel - cmd: cmake --build . --config %CONFIGURATION% - cmd: .\test\gitversion\%CONFIGURATION%\gitversion-test.exe diff --git a/cpack/CMakeLists.txt b/cpack/CMakeLists.txt index 0dc4f86c..e2700ab9 100644 --- a/cpack/CMakeLists.txt +++ b/cpack/CMakeLists.txt @@ -18,60 +18,55 @@ function(append_build_number VERSION_NUMBER OUTPUT) set(${OUTPUT} "${STRIPPED_VERSION_NUMBER}" PARENT_SCOPE) endfunction() -# We only allow generating distribution packages if: -# - it is a release build (to ensure all generated debian packages are fine to be distributed) -string(TOUPPER "${CMAKE_BUILD_TYPE}" BUILDTYPE) -if(BUILDTYPE MATCHES RELEASE OR BUILDTYPE MATCHES RELWITHDEBINFO) - if("${CMAKE_VERSION}" VERSION_LESS "3.3") - # Earlier cmake versions generate .deb packages for which the package manager says they're bad quality - # and asks the user whether they really want to install it. Cmake 3.3 fixes this. - message(WARNING "Distribution package generation is only supported for CMake version >= 3.3. You're using ${CMAKE_VERSION}. You will be able to build and install CryFS, but you won't be able to generate .deb packages.") - else("${CMAKE_VERSION}" VERSION_LESS "3.3") - # Fix debfiles permissions. Unfortunately, git doesn't store file permissions. - # When installing the .deb package and these files have the wrong permissions, the package manager complains. - execute_process(COMMAND /bin/bash -c "chmod 0755 ${CMAKE_CURRENT_SOURCE_DIR}/debfiles/*") +if("${CMAKE_VERSION}" VERSION_LESS "3.3") + # Earlier cmake versions generate .deb packages for which the package manager says they're bad quality + # and asks the user whether they really want to install it. Cmake 3.3 fixes this. + message(WARNING "Distribution package generation is only supported for CMake version >= 3.3. You're using ${CMAKE_VERSION}. You will be able to build and install CryFS, but you won't be able to generate .deb packages.") +else() + # Fix debfiles permissions. Unfortunately, git doesn't store file permissions. + # When installing the .deb package and these files have the wrong permissions, the package manager complains. + execute_process(COMMAND /bin/bash -c "chmod 0755 ${CMAKE_CURRENT_SOURCE_DIR}/debfiles/*") - set(CPACK_PACKAGE_NAME "cryfs") - set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Encrypt your files and store them in the cloud.") - set(CPACK_PACKAGE_DESCRIPTION "CryFS encrypts your files, so you can safely store them anywhere. It works well together with cloud services like Dropbox, iCloud, OneDrive and others.") - set(CPACK_PACKAGE_CONTACT "Sebastian Messmer ") - set(CPACK_PACKAGE_VENDOR "Sebastian Messmer") - set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/../LICENSE.txt") + set(CPACK_PACKAGE_NAME "cryfs") + set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Encrypt your files and store them in the cloud.") + set(CPACK_PACKAGE_DESCRIPTION "CryFS encrypts your files, so you can safely store them anywhere. It works well together with cloud services like Dropbox, iCloud, OneDrive and others.") + set(CPACK_PACKAGE_CONTACT "Sebastian Messmer ") + set(CPACK_PACKAGE_VENDOR "Sebastian Messmer") + set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/../LICENSE.txt") - get_git_version(GITVERSION_VERSION_STRING) + get_git_version(GITVERSION_VERSION_STRING) - if(WIN32 AND NOT UNIX) - set(CPACK_GENERATOR WIX) + if(WIN32 AND NOT UNIX) + set(CPACK_GENERATOR WIX) - string(REGEX REPLACE "^([0-9\\.]+)([-+][0-9\\.a-zA-Z+-]+)?$" "\\1" STRIPPED_VERSION_NUMBER "${GITVERSION_VERSION_STRING}") - append_build_number(${STRIPPED_VERSION_NUMBER} WIX_VERSION_NUMBER) - message(STATUS "WIX package version is ${WIX_VERSION_NUMBER}") - set(CPACK_PACKAGE_VERSION "${WIX_VERSION_NUMBER}") + string(REGEX REPLACE "^([0-9\\.]+)([-+][0-9\\.a-zA-Z+-]+)?$" "\\1" STRIPPED_VERSION_NUMBER "${GITVERSION_VERSION_STRING}") + append_build_number(${STRIPPED_VERSION_NUMBER} WIX_VERSION_NUMBER) + message(STATUS "WIX package version is ${WIX_VERSION_NUMBER}") + set(CPACK_PACKAGE_VERSION "${WIX_VERSION_NUMBER}") - set(CPACK_WIX_UPGRADE_GUID "8b872ce1-557d-48e6-ac57-9f5e574feabf") - set(CPACK_WIX_PRODUCT_GUID "26116061-4f99-4c44-a178-2153fa396308") - #set(CPACK_WIX_PRODUCT_ICON "...") - set(CPACK_WIX_PROPERTY_ARPURLINFOABOUT "https://www.cryfs.org") - set(CPACK_PACKAGE_INSTALL_DIRECTORY "CryFS/${GITVERSION_VERSION_STRING}") - set(CPACK_WIX_PATCH_FILE "${CMAKE_CURRENT_SOURCE_DIR}/wix/change_path_env.xml") - else() - set(CPACK_GENERATOR TGZ DEB RPM) - set(CPACK_PACKAGE_VERSION "${GITVERSION_VERSION_STRING}") - set(CPACK_STRIP_FILES OFF) - set(CPACK_SOURCE_STRIP_FILES OFF) - endif() - set(CPACK_PACKAGE_EXECUTABLES "cryfs" "CryFS") - set(CPACK_DEBIAN_PACKAGE_SECTION "utils") - set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) - # Needs gnupg2, lsb-release for postinst script - set(CPACK_DEBIAN_PACKAGE_DEPENDS "fuse, gnupg2, lsb-release") - - set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://www.cryfs.org") - set(CPACK_RPM_PACKAGE_LICENSE "LGPLv3") - set(CPACK_RPM_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION}) - set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "/usr/bin;/usr/share/man;/usr/share/man/man1") - set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_CURRENT_SOURCE_DIR}/debfiles/postinst;${CMAKE_CURRENT_SOURCE_DIR}/debfiles/postrm") - - include(CPack) + set(CPACK_WIX_UPGRADE_GUID "8b872ce1-557d-48e6-ac57-9f5e574feabf") + set(CPACK_WIX_PRODUCT_GUID "26116061-4f99-4c44-a178-2153fa396308") + #set(CPACK_WIX_PRODUCT_ICON "...") + set(CPACK_WIX_PROPERTY_ARPURLINFOABOUT "https://www.cryfs.org") + set(CPACK_PACKAGE_INSTALL_DIRECTORY "CryFS/${GITVERSION_VERSION_STRING}") + set(CPACK_WIX_PATCH_FILE "${CMAKE_CURRENT_SOURCE_DIR}/wix/change_path_env.xml") + else() + set(CPACK_GENERATOR TGZ DEB RPM) + set(CPACK_PACKAGE_VERSION "${GITVERSION_VERSION_STRING}") + set(CPACK_STRIP_FILES OFF) + set(CPACK_SOURCE_STRIP_FILES OFF) endif() + set(CPACK_PACKAGE_EXECUTABLES "cryfs" "CryFS") + set(CPACK_DEBIAN_PACKAGE_SECTION "utils") + set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) + # Needs gnupg2, lsb-release for postinst script + set(CPACK_DEBIAN_PACKAGE_DEPENDS "fuse, gnupg2, lsb-release") + + set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://www.cryfs.org") + set(CPACK_RPM_PACKAGE_LICENSE "LGPLv3") + set(CPACK_RPM_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION}) + set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "/usr/bin;/usr/share/man;/usr/share/man/man1") + set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_CURRENT_SOURCE_DIR}/debfiles/postinst;${CMAKE_CURRENT_SOURCE_DIR}/debfiles/postrm") + + include(CPack) endif() diff --git a/src/fspp/fuse/CMakeLists.txt b/src/fspp/fuse/CMakeLists.txt index f493ec60..b991bd72 100644 --- a/src/fspp/fuse/CMakeLists.txt +++ b/src/fspp/fuse/CMakeLists.txt @@ -21,18 +21,18 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") if ("${TARGET_ARCH}" STREQUAL "x86_64") set(DOKAN_LIB_PATH "${DOKAN_PATH}") elseif("${TARGET_ARCH}" STREQUAL "i386") - set(DOKAN_LIB_PATH "${DOKAN_PATH}\\x86") + set(DOKAN_LIB_PATH "${DOKAN_PATH}/x86") else() message(FATAL_ERROR "Unsupported architecture: ${TARGET_ARCH}") endif() - target_include_directories(${PROJECT_NAME} PUBLIC "${DOKAN_PATH}\\include") - target_link_libraries(${PROJECT_NAME} PUBLIC "${DOKAN_LIB_PATH}\\lib\\dokan1.lib") - #target_link_libraries(${PROJECT_NAME} PUBLIC "${DOKAN_LIB_PATH}\\lib\\dokannp1.lib") - target_link_libraries(${PROJECT_NAME} PUBLIC "${DOKAN_LIB_PATH}\\lib\\dokanfuse1.lib") + target_include_directories(${PROJECT_NAME} PUBLIC "${DOKAN_PATH}/include") + target_link_libraries(${PROJECT_NAME} PUBLIC "${DOKAN_LIB_PATH}/lib/dokan1.lib") + #target_link_libraries(${PROJECT_NAME} PUBLIC "${DOKAN_LIB_PATH}/lib/dokannp1.lib") + target_link_libraries(${PROJECT_NAME} PUBLIC "${DOKAN_LIB_PATH}/lib/dokanfuse1.lib") - install(FILES ${DOKAN_LIB_PATH}\\dokan1.dll ${DOKAN_LIB_PATH}\\dokanfuse1.dll - DESTINATION ${CMAKE_INSTALL_BINDIR} + install(FILES "${DOKAN_LIB_PATH}/dokan1.dll" "${DOKAN_LIB_PATH}/dokanfuse1.dll" + DESTINATION "${CMAKE_INSTALL_BINDIR}" ) elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")