diff options
Diffstat (limited to 'user/kio-extras/D17205-nfs-tirpc.patch')
-rw-r--r-- | user/kio-extras/D17205-nfs-tirpc.patch | 143 |
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) - |