summaryrefslogtreecommitdiff
path: root/user/kio-extras/D17205-nfs-tirpc.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/kio-extras/D17205-nfs-tirpc.patch')
-rw-r--r--user/kio-extras/D17205-nfs-tirpc.patch143
1 files changed, 0 insertions, 143 deletions
diff --git a/user/kio-extras/D17205-nfs-tirpc.patch b/user/kio-extras/D17205-nfs-tirpc.patch
deleted file mode 100644
index b12c0a2c5..000000000
--- a/user/kio-extras/D17205-nfs-tirpc.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-Subject: Build kio_nfs against standalone libtirpc
-From: asturmlechner
-Date: Wed 28 Nov 07:41:00 UTC 2018
-
-Summary
-
-Since glibc-2.26, cmake skipped over nfs when standalone tirpc
-was installed in tirpc subdir (as done by Debian, Fedora, Arch, Gentoo...)
-
-Use FindTIRPC and make kio_nfs optional that way
-FindTIRPC taken from https://phabricator.kde.org/D12761
-
-Test Plan
-
-Built with libtirpc successfully.
-
-https://phabricator.kde.org/D17205
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -132,6 +132,11 @@
- set_package_properties(KF5KHtml PROPERTIES TYPE OPTIONAL
- PURPOSE "Needed to build the man kioslave"
- )
-+
-+ find_package(TIRPC)
-+ set_package_properties(TIRPC PROPERTIES TYPE OPTIONAL
-+ PURPOSE "Needed to build the NFS kioslave"
-+ )
- else()
- # FIXME: on windows we ignore support until trash gets integrated
- endif()
-@@ -174,9 +179,7 @@
- if(Gperf_FOUND AND KF5KHtml_FOUND)
- add_subdirectory( man )
- endif()
-- check_include_files(rpc/rpc.h HAVE_RPC_RPC_H)
-- add_feature_info("NFS kioslave" HAVE_RPC_RPC_H "The RPC library is needed to build the NFS kioslave")
-- if(HAVE_RPC_RPC_H)
-+ if(TIRPC_FOUND)
- add_subdirectory( nfs )
- endif()
- endif()
-diff --git a/cmake/FindTIRPC.cmake b/cmake/FindTIRPC.cmake
-new file mode 100644
---- /dev/null
-+++ b/cmake/FindTIRPC.cmake
-@@ -0,0 +1,60 @@
-+# - Try to find TI-RPC
-+#
-+# The following variables will be available once found :
-+#
-+# TIRPC_INCLUDE_DIRS - The TI-RPC headers location
-+# TIRPC_LIBRARIES - Link these to use TI-RPC
-+# TIRPC_VERSION - The TIRPC version
-+#
-+#=============================================================================
-+# Copyright (c) 2017 Christophe Giboudeaux <christophe@krop.fr>
-+#
-+#
-+# Redistribution and use in source and binary forms, with or without
-+# modification, are permitted provided that the following conditions
-+# are met:
-+#
-+# 1. Redistributions of source code must retain the copyright
-+# notice, this list of conditions and the following disclaimer.
-+# 2. Redistributions in binary form must reproduce the copyright
-+# notice, this list of conditions and the following disclaimer in the
-+# documentation and/or other materials provided with the distribution.
-+# 3. The name of the author may not be used to endorse or promote products
-+# derived from this software without specific prior written permission.
-+#
-+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+#=============================================================================
-+
-+find_package(PkgConfig QUIET)
-+pkg_check_modules(PC_TIRPC libtirpc)
-+
-+find_path(TIRPC_INCLUDE_DIRS
-+ NAMES netconfig.h
-+ PATH_SUFFIXES tirpc
-+ HINTS ${PC_TIRPC_INCLUDE_DIRS}
-+)
-+
-+find_library(TIRPC_LIBRARIES
-+ NAMES tirpc
-+ HINTS ${PC_TIRPC_LIBRARY_DIRS}
-+)
-+
-+set(TIRPC_VERSION ${PC_TIRPC_VERSION})
-+
-+include(FindPackageHandleStandardArgs)
-+
-+find_package_handle_standard_args(TIRPC
-+ REQUIRED_VARS TIRPC_LIBRARIES TIRPC_INCLUDE_DIRS
-+ VERSION_VAR TIRPC_VERSION
-+)
-+
-+mark_as_advanced(TIRPC_INCLUDE_DIRS TIRPC_LIBRARIES)
-diff --git a/nfs/CMakeLists.txt b/nfs/CMakeLists.txt
---- a/nfs/CMakeLists.txt
-+++ b/nfs/CMakeLists.txt
-@@ -1,10 +1,12 @@
- ## Check for XDR functions
--include(CheckFunctionExists)
-+include(CheckSymbolExists)
-
--CHECK_FUNCTION_EXISTS(xdr_u_int64_t HAVE_XDR_U_INT64_T)
--CHECK_FUNCTION_EXISTS(xdr_uint64_t HAVE_XDR_UINT64_T)
--CHECK_FUNCTION_EXISTS(xdr_u_hyper HAVE_XDR_U_HYPER)
--CHECK_FUNCTION_EXISTS(xdr_u_longlong_t HAVE_XDR_U_LONGLONG_T)
-+set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${TIRPC_LIBRARIES})
-+set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${TIRPC_INCLUDE_DIRS})
-+check_symbol_exists(xdr_u_int64_t "rpc/xdr.h" HAVE_XDR_U_INT64_T)
-+check_symbol_exists(xdr_uint64_t "rpc/xdr.h" HAVE_XDR_UINT64_T)
-+check_symbol_exists(xdr_u_hyper "rpc/xdr.h" HAVE_XDR_U_HYPER)
-+check_symbol_exists(xdr_u_longlong_t "rpc/xdr.h" HAVE_XDR_U_LONGLONG_T)
-
- if (NOT HAVE_XDR_U_INT64_T AND NOT HAVE_XDR_UINT64_T AND NOT HAVE_XDR_U_HYPER AND NOT HAVE_XDR_U_LONGLONG_T)
- message(FATAL_ERROR "Could not find 64-bit XDR datatype functions!")
-@@ -24,9 +26,10 @@
- endif (HAVE_XDR_U_LONGLONG_T)
-
- add_definitions(-DTRANSLATION_DOMAIN=\"kio5_nfs\")
-+include_directories(${TIRPC_INCLUDE_DIRS})
-
- add_library(kio_nfs MODULE kio_nfs.cpp nfsv2.cpp nfsv3.cpp rpc_nfs3_prot_xdr.c rpc_nfs2_prot_xdr.c)
--target_link_libraries(kio_nfs KF5::KIOCore KF5::I18n Qt5::Network)
-+target_link_libraries(kio_nfs KF5::KIOCore KF5::I18n Qt5::Network ${TIRPC_LIBRARIES})
- set_target_properties(kio_nfs PROPERTIES OUTPUT_NAME "nfs")
-
- install(TARGETS kio_nfs DESTINATION ${PLUGIN_INSTALL_DIR}/kf5/kio)
-