mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
Update sysutils/kio-fuse to latest upstream release
kio-fuse does some FUSE magic to pass remote KIO paths (e.g. when browsing SMB or ftp from Dolphin) to non-KIO-aware applications (e.g. opening a text file with vi). This 5.0.0 release has been out for a while and is functionally equivalent to the previous one; now, however, there's real release tarballs and everything. Existing patches have been re-built for this release and then submitted upstream, which is why they now have git-hashes.
This commit is contained in:
parent
86a149c126
commit
2bd43c1c11
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=565031
6 changed files with 63 additions and 36 deletions
|
@ -1,9 +1,9 @@
|
||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
PORTNAME= kio-fuse
|
PORTNAME= kio-fuse
|
||||||
DISTVERSIONPREFIX= v
|
DISTVERSION= 5.0.0
|
||||||
DISTVERSION= 4.95.0
|
|
||||||
CATEGORIES= sysutils kde
|
CATEGORIES= sysutils kde
|
||||||
|
MASTER_SITES= KDE/stable/${PORTNAME}/${DISTVERSION}
|
||||||
|
|
||||||
MAINTAINER= kde@FreeBSD.org
|
MAINTAINER= kde@FreeBSD.org
|
||||||
COMMENT= FUSE Interface for KIO
|
COMMENT= FUSE Interface for KIO
|
||||||
|
@ -11,12 +11,10 @@ COMMENT= FUSE Interface for KIO
|
||||||
LICENSE= GPLv3+
|
LICENSE= GPLv3+
|
||||||
LICENSE_FILE= ${WRKSRC}/LICENSES/GPL-3.0-or-later.txt
|
LICENSE_FILE= ${WRKSRC}/LICENSES/GPL-3.0-or-later.txt
|
||||||
|
|
||||||
USES= cmake compiler:c++11-lang fuse:3 kde:5 pkgconfig qt:5
|
USES= cmake compiler:c++11-lang fuse:3 kde:5 pkgconfig qt:5 tar:xz
|
||||||
USE_KDE= config coreaddons kio service
|
USE_KDE= config coreaddons kio service
|
||||||
USE_QT= concurrent core dbus network \
|
USE_QT= concurrent core dbus network \
|
||||||
buildtools_build qmake_build
|
buildtools_build qmake_build
|
||||||
USE_GITHUB= yes
|
|
||||||
GH_ACCOUNT= kde
|
|
||||||
|
|
||||||
PLIST_FILES= lib/libexec/kio-fuse \
|
PLIST_FILES= lib/libexec/kio-fuse \
|
||||||
share/dbus-1/services/org.kde.KIOFuse.service
|
share/dbus-1/services/org.kde.KIOFuse.service
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
TIMESTAMP = 1590496835
|
TIMESTAMP = 1613124184
|
||||||
SHA256 (kde-kio-fuse-v4.95.0_GH0.tar.gz) = 803b4bff364dec9854d760e003031afd7c6cf816b2a9fad013aab8a4535db4a7
|
SHA256 (kio-fuse-5.0.0.tar.xz) = 308ec02dce2fe9004ada9fdc13f49d243bdab98a24e997f2aae818bb27f08721
|
||||||
SIZE (kde-kio-fuse-v4.95.0_GH0.tar.gz) = 50928
|
SIZE (kio-fuse-5.0.0.tar.xz) = 46672
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
Don't install the systemd exceptions file; we have our own (on-reboot)
|
|
||||||
cleanup of temp mounts which wouldn't be affected.
|
|
||||||
|
|
||||||
--- CMakeLists.txt.orig 2020-05-17 18:36:57 UTC
|
|
||||||
+++ CMakeLists.txt
|
|
||||||
@@ -57,7 +57,9 @@ target_include_directories(kio-fuse PRIVATE ${FUSE3_IN
|
|
||||||
target_compile_definitions(kio-fuse PRIVATE FUSE_USE_VERSION=31 ${FUSE3_CFLAGS_OTHER})
|
|
||||||
target_link_libraries(kio-fuse PRIVATE Qt5::Core KF5::KIOCore ${FUSE3_LIBRARIES} ${FUSE3_LDFLAGS})
|
|
||||||
install(TARGETS kio-fuse DESTINATION ${KDE_INSTALL_FULL_LIBEXECDIR})
|
|
||||||
-install(FILES kio-fuse-tmpfiles.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/tmpfiles.d)
|
|
||||||
+if(LINUX)
|
|
||||||
+ install(FILES kio-fuse-tmpfiles.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/tmpfiles.d)
|
|
||||||
+endif()
|
|
||||||
kdbusaddons_generate_dbus_service_file("kio-fuse -f" org.kde.KIOFuse ${KDE_INSTALL_FULL_LIBEXECDIR})
|
|
||||||
|
|
||||||
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
diff --git kiofusevfs.cpp kiofusevfs.cpp
|
||||||
|
index 875da6f..b9c449f 100644
|
||||||
|
--- kiofusevfs.cpp
|
||||||
|
+++ kiofusevfs.cpp
|
||||||
|
@@ -2401,7 +2401,19 @@ int KIOFuseVFS::kioErrorToFuseError(const int kioError) {
|
||||||
|
case KIO::ERR_CANNOT_RENAME_PARTIAL : return EIO;
|
||||||
|
case KIO::ERR_NEED_PASSWD : return EACCES;
|
||||||
|
case KIO::ERR_CANNOT_SYMLINK : return EIO;
|
||||||
|
- case KIO::ERR_NO_CONTENT : return ENODATA;
|
||||||
|
+ case KIO::ERR_NO_CONTENT :
|
||||||
|
+#ifdef ENODATA
|
||||||
|
+ /* ENODATA is defined by GNU libc, and C++ tr1 seems to have
|
||||||
|
+ * it as well, as does Boost: these consistently define it
|
||||||
|
+ * to the value 9919. There is no guarantee the underlying
|
||||||
|
+ * FUSE implementation understands that if ENODATA doesn't
|
||||||
|
+ * exist in libc, though -- in that case, fall back to
|
||||||
|
+ * the more generic EIO.
|
||||||
|
+ */
|
||||||
|
+ return ENODATA;
|
||||||
|
+#else
|
||||||
|
+ return EIO;
|
||||||
|
+#endif
|
||||||
|
case KIO::ERR_DISK_FULL : return ENOSPC;
|
||||||
|
case KIO::ERR_IDENTICAL_FILES : return EEXIST;
|
||||||
|
case KIO::ERR_SLAVE_DEFINED : return EIO;
|
|
@ -0,0 +1,32 @@
|
||||||
|
diff --git CMakeLists.txt CMakeLists.txt
|
||||||
|
index cceec6c..4e97588 100644
|
||||||
|
--- CMakeLists.txt
|
||||||
|
+++ CMakeLists.txt
|
||||||
|
@@ -59,7 +59,11 @@ target_include_directories(kio-fuse PRIVATE ${FUSE3_INCLUDE_DIRS})
|
||||||
|
target_compile_definitions(kio-fuse PRIVATE FUSE_USE_VERSION=31 ${FUSE3_CFLAGS_OTHER})
|
||||||
|
target_link_libraries(kio-fuse PRIVATE Qt5::Core KF5::KIOCore ${FUSE3_LIBRARIES} ${FUSE3_LDFLAGS})
|
||||||
|
install(TARGETS kio-fuse DESTINATION ${KDE_INSTALL_FULL_LIBEXECDIR})
|
||||||
|
-install(FILES kio-fuse-tmpfiles.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/tmpfiles.d)
|
||||||
|
+if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
|
+ # We could argue that this needs a separate "if(LINUX_WITH_TMPFILES_D)".
|
||||||
|
+ # or a "if(LINUX_WITH_SYSTEMD)".
|
||||||
|
+ install(FILES kio-fuse-tmpfiles.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/tmpfiles.d)
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
# Once KF5 5.73 is required
|
||||||
|
#
|
||||||
|
@@ -80,7 +84,12 @@ SystemdService=kio-fuse.service
|
||||||
|
")
|
||||||
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.KIOFuse.service DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR})
|
||||||
|
|
||||||
|
-configure_file(kio-fuse.service.in ${CMAKE_CURRENT_BINARY_DIR}/kio-fuse.service)
|
||||||
|
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kio-fuse.service DESTINATION ${SYSTEMD_USER_UNIT_INSTALL_DIR})
|
||||||
|
+if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
|
+ # We could argue that this needs a separate "if(LINUX_WITH_SYSTEMD)",
|
||||||
|
+ # but the ECM macro (see above) is expected to do the right thing
|
||||||
|
+ # when KF5 5.73 is required.
|
||||||
|
+ configure_file(kio-fuse.service.in ${CMAKE_CURRENT_BINARY_DIR}/kio-fuse.service)
|
||||||
|
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/kio-fuse.service DESTINATION ${SYSTEMD_USER_UNIT_INSTALL_DIR})
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
|
@ -1,12 +0,0 @@
|
||||||
--- kiofusevfs.cpp.orig 2020-06-05 16:51:15 UTC
|
|
||||||
+++ kiofusevfs.cpp
|
|
||||||
@@ -2320,7 +2320,9 @@ int KIOFuseVFS::kioErrorToFuseError(const int kioError
|
|
||||||
case KIO::ERR_CANNOT_RENAME_PARTIAL : return EIO;
|
|
||||||
case KIO::ERR_NEED_PASSWD : return EACCES;
|
|
||||||
case KIO::ERR_CANNOT_SYMLINK : return EIO;
|
|
||||||
+#ifdef ENODATA
|
|
||||||
case KIO::ERR_NO_CONTENT : return ENODATA;
|
|
||||||
+#endif
|
|
||||||
case KIO::ERR_DISK_FULL : return ENOSPC;
|
|
||||||
case KIO::ERR_IDENTICAL_FILES : return EEXIST;
|
|
||||||
case KIO::ERR_SLAVE_DEFINED : return EIO;
|
|
Loading…
Add table
Reference in a new issue