Warning, /network/kio-extras/nfs/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 message(AUTHOR_WARNING "kio_nfs: BUILD DISABLED. Port to KIO::WorkerBase.")
0002 return()
0003 
0004 remove_definitions(-DQT_NO_CAST_FROM_ASCII)
0005 
0006 ## Check for XDR functions
0007 include(CheckCXXSymbolExists)
0008 
0009 set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${TIRPC_LIBRARIES})
0010 set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${TIRPC_INCLUDE_DIRS})
0011 check_cxx_symbol_exists(xdr_u_int64_t "rpc/xdr.h" HAVE_XDR_U_INT64_T)
0012 check_cxx_symbol_exists(xdr_uint64_t "rpc/xdr.h" HAVE_XDR_UINT64_T)
0013 check_cxx_symbol_exists(xdr_u_hyper "rpc/xdr.h" HAVE_XDR_U_HYPER)
0014 check_cxx_symbol_exists(xdr_u_longlong_t "rpc/xdr.h" HAVE_XDR_U_LONGLONG_T)
0015 
0016 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)
0017     message(FATAL_ERROR "Could not find 64-bit XDR datatype functions!")
0018 endif (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)
0019 
0020 if (HAVE_XDR_U_INT64_T)
0021     add_definitions(-DHAVE_XDR_U_INT64_T)
0022 endif (HAVE_XDR_U_INT64_T)
0023 if (HAVE_XDR_UINT64_T)
0024     add_definitions(-DHAVE_XDR_UINT64_T)
0025 endif (HAVE_XDR_UINT64_T)
0026 if (HAVE_XDR_U_HYPER)
0027     add_definitions(-DHAVE_XDR_U_HYPER)
0028 endif (HAVE_XDR_U_HYPER)
0029 if (HAVE_XDR_U_LONGLONG_T)
0030     add_definitions(-DHAVE_XDR_U_LONGLONG_T)
0031 endif (HAVE_XDR_U_LONGLONG_T)
0032 
0033 # silence warnings for rpcgen generated code having lots of unused variables
0034 set(AVOID_UNUSED_VARIABLE_WARNING_FLAG)
0035 if (CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID MATCHES "Clang")
0036     set(_flag "-Wno-unused-variable")
0037     check_c_compiler_flag(${_flag} _flag_present)
0038     if(_flag_present)
0039         set(AVOID_UNUSED_VARIABLE_WARNING_FLAG ${_flag})
0040     endif()
0041 endif()
0042 
0043 # silence warnings for use of xdr_void as no-op method in calls of clnt_call()
0044 # It's method signature "bool_t xdr_void(void)" does not match the xdrproc_t definition
0045 # which is "bool_t (*)(XDR*, ...)", and the compiler correctly points that out as issue.
0046 # While no-one has come up so far with a nice way to tell the compiler that cast is fine,
0047 # for now just disable the warning completely for the compilation unit.
0048 set(AVOID_CAST_FUNCTION_TYPE_WARNING_FLAG)
0049 if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
0050     set(_flag "-Wno-cast-function-type")
0051     check_cxx_compiler_flag(${_flag} _flag_present)
0052     if(_flag_present)
0053         set(AVOID_CAST_FUNCTION_TYPE_WARNING_FLAG ${_flag})
0054     endif()
0055 endif()
0056 
0057 add_definitions(-DTRANSLATION_DOMAIN=\"kio6_nfs\")
0058 include_directories(${TIRPC_INCLUDE_DIRS})
0059 
0060 add_library(kio_nfs MODULE kio_nfs.cpp nfsv2.cpp nfsv3.cpp rpc_nfs3_prot_xdr.c rpc_nfs2_prot_xdr.c)
0061 target_link_libraries(kio_nfs KF6::KIOCore KF6::ConfigCore KF6::I18n Qt::Network ${TIRPC_LIBRARIES})
0062 set_target_properties(kio_nfs PROPERTIES OUTPUT_NAME "nfs")
0063 
0064 if(AVOID_UNUSED_VARIABLE_WARNING_FLAG)
0065     set_source_files_properties(rpc_nfs2_prot_xdr.c rpc_nfs3_prot_xdr.c PROPERTIES
0066         COMPILE_OPTIONS "${AVOID_UNUSED_VARIABLE_WARNING_FLAG}"
0067     )
0068 endif()
0069 
0070 if(AVOID_CAST_FUNCTION_TYPE_WARNING_FLAG)
0071     set_source_files_properties(nfsv2.cpp nfsv3.cpp PROPERTIES
0072         COMPILE_OPTIONS "${AVOID_CAST_FUNCTION_TYPE_WARNING_FLAG}"
0073     )
0074 endif()
0075 
0076 ecm_qt_declare_logging_category(kio_nfs
0077     HEADER kio_nfs_debug.h
0078     IDENTIFIER LOG_KIO_NFS
0079     CATEGORY_NAME kf.kio.workers.nfs
0080     OLD_CATEGORY_NAMES kde.kio_nfs kf.kio.slaves.nfs
0081     DESCRIPTION "KIO nfs"
0082     EXPORT KIO_EXTRAS
0083 )
0084 
0085 install(TARGETS kio_nfs DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf6/kio)
0086 
0087 ########### install files ###############