[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdeutils
From: Raphael Kubo da Costa <kubito () gmail ! com>
Date: 2010-12-25 17:33:20
Message-ID: 20101225173320.486143E1F1 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1209188 by rkcosta:
Close our oldest open wishlist item: RPM support.
After about 7,5 years, Ark finally has RPM support, thanks to
libarchive. Note libarchive >= 2.8.0 is required.
Thanks a lot to George Metaxas <gmetal31 AT gmail com> for the patch!
BUG: 60942
FIXED-IN: 4.7.0
M +13 -1 ark/plugins/libarchive/CMakeLists.txt
D ark/plugins/libarchive/kerfuffle_libarchive_readonly.desktop
A ark/plugins/libarchive/kerfuffle_libarchive_readonly.desktop.cmake \
ark/plugins/libarchive/kerfuffle_libarchive_readonly.desktop#1209180 M +11 -0 \
cmake/modules/FindLibArchive.cmake
--- trunk/KDE/kdeutils/ark/plugins/libarchive/CMakeLists.txt #1209187:1209188
@@ -4,8 +4,20 @@
${CMAKE_CURRENT_BINARY_DIR}/../..
)
+
########### next target ###############
+set(LIBARCHIVE_RPM_SUPPORT_MIN_VERSION "2.8.0")
+if(LIBARCHIVE_VERSION VERSION_LESS ${LIBARCHIVE_RPM_SUPPORT_MIN_VERSION})
+ set(LIBARCHIVE_RPM_SUPPORT "")
+else(LIBARCHIVE_VERSION VERSION_LESS ${LIBARCHIVE_RPM_SUPPORT_MIN_VERSION})
+ set(LIBARCHIVE_RPM_SUPPORT "application/x-rpm;")
+endif(LIBARCHIVE_VERSION VERSION_LESS ${LIBARCHIVE_RPM_SUPPORT_MIN_VERSION})
+configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/kerfuffle_libarchive_readonly.desktop.cmake
+ ${CMAKE_CURRENT_BINARY_DIR}/kerfuffle_libarchive_readonly.desktop
+)
+
set(kerfuffle_libarchive_SRCS libarchivehandler.cpp)
kde4_add_plugin(kerfuffle_libarchive ${kerfuffle_libarchive_SRCS})
@@ -18,4 +30,4 @@
########### install files ###############
install( FILES kerfuffle_libarchive.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
-install( FILES kerfuffle_libarchive_readonly.desktop DESTINATION \
${SERVICES_INSTALL_DIR} ) +install( FILES \
${CMAKE_CURRENT_BINARY_DIR}/kerfuffle_libarchive_readonly.desktop DESTINATION \
${SERVICES_INSTALL_DIR} )
--- trunk/KDE/kdeutils/cmake/modules/FindLibArchive.cmake #1209187:1209188
@@ -1,6 +1,7 @@
# - Try to find libarchive
# Once done this will define
#
+# LIBARCHIVE_VERSION - the libarchive version
# LIBARCHIVE_FOUND - system has libarchive
# LIBARCHIVE_INCLUDE_DIR - the libarchive include directory
# LIBARCHIVE_LIBRARY - Link this to use libarchive
@@ -38,5 +39,15 @@
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LibArchive DEFAULT_MSG LIBARCHIVE_INCLUDE_DIR \
LIBARCHIVE_LIBRARY HAVE_LIBARCHIVE_GZIP_SUPPORT)
+ if (LIBARCHIVE_INCLUDE_DIR)
+ file(READ ${LIBARCHIVE_INCLUDE_DIR}/archive.h LIBARCHIVE_VERSION_CONTENT)
+ string(REGEX MATCH "ARCHIVE_VERSION_STRING \"libarchive .*\"\n" \
LIBARCHIVE_VERSION_MATCH "${LIBARCHIVE_VERSION_CONTENT}") + \
if(LIBARCHIVE_VERSION_MATCH) + string(REGEX REPLACE "ARCHIVE_VERSION_STRING \
\"libarchive (.*)\"\n" "\\1" LIBARCHIVE_VERSION ${LIBARCHIVE_VERSION_MATCH}) + \
else (LIBARCHIVE_VERSION_MATCH) + message(FATAL_ERROR "Cannot determine \
LibArchive Version.") + endif (LIBARCHIVE_VERSION_MATCH)
+ endif (LIBARCHIVE_INCLUDE_DIR)
+
mark_as_advanced(LIBARCHIVE_INCLUDE_DIR LIBARCHIVE_LIBRARY \
HAVE_LIBARCHIVE_GZIP_SUPPORT HAVE_LIBARCHIVE_LZMA_SUPPORT) endif (LIBARCHIVE_LIBRARY \
AND LIBARCHIVE_INCLUDE_DIR)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic