diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /net-fs/cvmfs |
reinit the tree, so we can have metadata
Diffstat (limited to 'net-fs/cvmfs')
-rw-r--r-- | net-fs/cvmfs/Manifest | 9 | ||||
-rw-r--r-- | net-fs/cvmfs/cvmfs-2.1.20.0_p05.ebuild | 114 | ||||
-rw-r--r-- | net-fs/cvmfs/cvmfs-2.3.5-r1.ebuild | 160 | ||||
-rw-r--r-- | net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-cares-underlink.patch | 106 | ||||
-rw-r--r-- | net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-geoip-missing-cmake.patch | 151 | ||||
-rw-r--r-- | net-fs/cvmfs/metadata.xml | 28 |
6 files changed, 568 insertions, 0 deletions
diff --git a/net-fs/cvmfs/Manifest b/net-fs/cvmfs/Manifest new file mode 100644 index 000000000000..393834df59f7 --- /dev/null +++ b/net-fs/cvmfs/Manifest @@ -0,0 +1,9 @@ +AUX cvmfs-2.1.20.0_p05-cares-underlink.patch 6951 SHA256 b7997848a5f6b78b8f39ca608d33d7cf426f854c4fedf0d37b0a0ae558d3cb43 SHA512 714d511bbb9feeccb97ad5f6215fe1a9e7c1901494e24e97b0fdf78c86662e802e0d1c1836e02b061fc8641540ca82bedf3af94ab0f321640fa39fbcb80fb386 WHIRLPOOL 4dbab0c057a5439e56a928325f01cd08020bdadfab92ae1d0deb195c4c24feaae4f6b5d900266c64fe73276b65d2259d511f37f5af2d068efa77db849cfcedac +AUX cvmfs-2.1.20.0_p05-geoip-missing-cmake.patch 5143 SHA256 070ed4e5d873637c9e88c5a90f5a048002f71f55f7fbde40242adcb085160f6f SHA512 0aebcabfef27a04f9ba88253ead2c323f2871434d1c397a26e61981970cc838ae7988337676dd75ac0f3eaf02933664960c57e6671a066f7a91e61e5844a49f5 WHIRLPOOL ba199f8cdbf7a40cb975afd4b90ff9dc0ec6f62abd84a06e313bf9ef10a96eb5a31475b6c5f903875d100bcd5c7370cc35778b0ea65d5eb63a1cc1d9bd42822b +DIST cvmfs-2.1.20.0-fix05.tar.gz 36877322 SHA256 83d9358bebdd3987472ed602efb7b0d06b586216030e02bc100a363dc7bbfc20 SHA512 95dc6d5e433630aecd45e15d59f831b4b1ccd8a439f799ae078a61bd6fd8e4dc10ae72d760352913c1d4d9e50cd5bc71ddd82b40b8b9b59d371d62aa7e62abf6 WHIRLPOOL a9ab8500ddd31466df26c12fbcaf0403e748fc1d52c9b5eefa495bc1aaa1f1c67e5f679407d55143fe161f7de7be0d52284cb947a63ff0e0a3f63ade879bb21c +DIST cvmfs-2.3.5.tar.gz 37771779 SHA256 4e35b81f98f8b3c9588081abaedee76bd796da6750ff1fcd6189882a751d397b SHA512 7f2d05776a747c72d0aa8b5270cfb46f7dc31a458deee65a4a21446718ba813e4c449f6424c7419345e6ffb7cefce3d328dea7b414fe5a5980f9b93ccac0157b WHIRLPOOL d3de1deb541ee8c3e439e1fbda151c73d602ec4ceb54b1e94fd50a1c8716b497c23082b60cb887dabbd3602dbc5c6d1bc375544d20201d95d92ea7f0c30d5823 +EBUILD cvmfs-2.1.20.0_p05.ebuild 2610 SHA256 595c27e98f4eea2336e16ce757bfe0e027e0f103a7dd6f5ec288dfe2fd7c54ba SHA512 d2e6a7a98280365ae2016ddedd2d325da89ca51a6afd7ce61e34fcd12bc8c753a3ad4cfdf12b16fb52183ca04b06c250450935e22826900b3a50ac2e4385d6b9 WHIRLPOOL fcf963f1e94f59f28640c7941ff1aaeeef6bc2d8df24880da6915b2b47a01cd921f11176f649608c1392104d540eab6ac723ac402ab11c16c3c3e10c14f8cc45 +EBUILD cvmfs-2.3.5-r1.ebuild 3641 SHA256 700f4dc22f98c4198714506b64e1764735963857fb5e470303e7b8ce21fb0ef9 SHA512 6cd16f0c48e3b1e83ba0a742853bb953ca15d1aa004bd32d2b64fbfb81ffabd4f7ad961fa7fccc2a469b7548346286d67d1f0e485f4b3cb87e82e2643f052f4d WHIRLPOOL 373c15db681502cb1058f7380d8d80d604906eb900340d5f3728975db31f235634559b1bec88d003618419a3a716007826083b433326c5873eba2da59d31e804 +MISC ChangeLog 2909 SHA256 a232f0b663f0a254ccd01964e6fcaeff24df50c2f8996e6f383778f29d0749b7 SHA512 ad224be76f5c98e6792f95178b616a0f229b9d745399803f1610585943c4ffc56543531ebe32b601c21e1d0e2f342b7d3fa511737ac373ab6e6824468854f69a WHIRLPOOL 38be1ce5c28c7266518a39d31490a59fdb9cc0aecd216c46a548ceac97b1a13594bc96a91fc3be30ad84376aa4d08ce4a60fc7a5f3e42c4a0c73706dbe28d187 +MISC ChangeLog-2015 3676 SHA256 5fa54ae523e5005d29b69377e9aad0fb3ad2ab60de3319e09ac4cb0df1aea963 SHA512 38b651b9256be9c6b543e997edfffd7440e7b60c0c0c7a62f43ad2cafceee0f4ee3bd3b7b539f8a0c71e704b96a9d1504821b2c3449310510318608986cce2ed WHIRLPOOL 5a94027b0f5f40ad6f263d1ebc85e35424d97c5a40a865e0cb4203c3c8701fdb5209798ed9147cc2058db4b2df17700dda43f1bc7acc6d046f747f2ae9bff104 +MISC metadata.xml 1320 SHA256 975ba82ea3ede7426b7e46fc2045ccdd37ff40aaa093d48c327f5d1fe3c0e171 SHA512 13a012dcd92e457b7ec53b078c12fdbaef7d8d47c80a6feeffb7566aff93803996e477fb8e4eaad878ef1c84e4d8f37cd87c05cfac116fcbcd342cd4f901b543 WHIRLPOOL cd5571da0fa363dc5498c898cf61484c20b34115cfb2280b43984fca34ddb4037094156fc7f65f42c466dc76e116711b31f8241b9f0cf1cd1d3eecd3b0ede743 diff --git a/net-fs/cvmfs/cvmfs-2.1.20.0_p05.ebuild b/net-fs/cvmfs/cvmfs-2.1.20.0_p05.ebuild new file mode 100644 index 000000000000..6e758132e03a --- /dev/null +++ b/net-fs/cvmfs/cvmfs-2.1.20.0_p05.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit cmake-utils + +MYP=${PN}-${PV/_p/-fix} + +DESCRIPTION="HTTP read-only file system for distributing software" +HOMEPAGE="http://cernvm.cern.ch/portal/filesystem" +SRC_URI="https://github.com/cvmfs/${PN}/archive/${MYP}.tar.gz" + +LICENSE="BSD" +SLOT="0" + +KEYWORDS="~amd64 ~x86" +IUSE="+client debug doc test server" + +CDEPEND=" + dev-cpp/gtest + dev-db/sqlite:3= + dev-libs/openssl:0 + net-libs/pacparser:0= + net-misc/curl:0=[adns] + sys-apps/attr + sys-libs/zlib:0= + client? ( + >=dev-cpp/sparsehash-1.12 + dev-libs/leveldb:0= + sys-fs/fuse:0= ) + server? ( + >=dev-python/geoip-python-1.3.1 + >=dev-cpp/tbb-4.2:0= )" + +RDEPEND="${CDEPEND} + client? ( net-fs/autofs )" +# server? ( www-servers/apache[ssl] )" + +DEPEND="${CDEPEND} + virtual/pkgconfig + doc? ( app-doc/doxygen[dot] )" + +S="${WORKDIR}/${PN}-${MYP}" + +src_prepare() { + epatch \ + "${FILESDIR}"/${P}-geoip-missing-cmake.patch \ + "${FILESDIR}"/${P}-cares-underlink.patch + # gentoo stuff + sed -i -e 's/COPYING//' CMakeLists.txt || die + rm bootstrap.sh || die + sed -i \ + -e "s:cvmfs-\${CernVM-FS_VERSION_STRING}:${PF}:" \ + CMakeLists.txt || die + + # hack for bundled vjson + # vjson not worth unbundling, already upstream obsolete + # upstream replaced by gason with a new api + if use server; then + sed -i \ + -e 's/g++/$(CXX)/g' \ + -e 's/-O2/$(CXXFLAGS)/g' \ + -e 's/ar/$(AR)/' \ + -e 's/ranlib/$(RANLIB)/' \ + externals/vjson/src/Makefile || die + mkdir -p "${WORKDIR}/${P}_build"/externals/build_vjson + cp externals/vjson/src/* "${WORKDIR}/${P}_build"/externals/build_vjson/ || die + fi + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DGEOIP_BUILTIN=OFF + -DGOOGLETEST_BUILTIN=OFF + -DLEVELDB_BUILTIN=OFF + -DLIBCURL_BUILTIN=OFF + -DPACPARSER_BUILTIN=OFF + -DSPARSEHASH_BUILTIN=OFF + -DSQLITE3_BUILTIN=OFF + -DTBB_PRIVATE_LIB=OFF + -DZLIB_BUILTIN=OFF + $(cmake-utils_use debug BUILD_SERVER_DEBUG) + $(cmake-utils_use server BUILD_SERVER) + $(cmake-utils_use client BUILD_CVMFS) + $(cmake-utils_use client BUILD_LIBCVMFS) + $(cmake-utils_use client INSTALL_MOUNT_SCRIPTS) + $(cmake-utils_use test BUILD_UNITTESTS) + ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + if use doc; then + cd doc + doxygen cvmfs.doxy || die + fi +} + +src_install() { + cmake-utils_src_install + use doc && dohtml -r doc/html/* +} + +pkg_config() { + if use client; then + einfo "Setting up CernVM-FS client" + cvmfs_config setup + einfo "Now edit ${EROOT%/}/etc/cvmfs/default.local" + einfo "and restart the autofs service" + fi +} diff --git a/net-fs/cvmfs/cvmfs-2.3.5-r1.ebuild b/net-fs/cvmfs/cvmfs-2.3.5-r1.ebuild new file mode 100644 index 000000000000..05b2f3138849 --- /dev/null +++ b/net-fs/cvmfs/cvmfs-2.3.5-r1.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-utils linux-info bash-completion-r1 + +MYP=${PN}-${PV/_p/-fix} + +DESCRIPTION="HTTP read-only file system for distributing software" +HOMEPAGE="http://cernvm.cern.ch/portal/filesystem" +SRC_URI="https://github.com/cvmfs/${PN}/archive/${MYP}.tar.gz" + +LICENSE="BSD" +SLOT="0" + +KEYWORDS="~amd64 ~x86" +IUSE="aufs bash-completion debug doc preload server test test-programs" + +CDEPEND=" + dev-cpp/gtest + >=dev-cpp/sparsehash-1.12 + dev-db/sqlite:3= + dev-libs/leveldb:0= + dev-libs/openssl:0 + net-libs/pacparser:0= + net-misc/curl:0[adns] + sys-apps/attr + sys-fs/fuse:0= + sys-libs/libcap:0= + sys-libs/zlib:0= + preload? ( >=dev-cpp/tbb-4.4:0=[debug?] ) + server? ( + >=dev-cpp/tbb-4.4:0=[debug?] + dev-python/geoip-python + ) +" + +RDEPEND="${CDEPEND} + app-admin/sudo + net-fs/autofs + server? ( + aufs? ( || ( + sys-fs/aufs3 + sys-fs/aufs4 + sys-kernel/aufs-sources ) ) + www-servers/apache + ) +" + +DEPEND="${CDEPEND} + virtual/pkgconfig + doc? ( app-doc/doxygen[dot] ) + test? ( + dev-python/geoip-python + >=dev-cpp/tbb-4.4:0= + || ( sys-devel/gdb dev-util/lldb ) + ) +" + +REQUIRED_USE="test-programs? ( server )" + +S="${WORKDIR}/${PN}-${MYP}" + +pkg_setup() { + if use server; then + if use aufs; then + CONFIG_CHECK="~AUFS_FS" + ERROR_AUFS_FS="CONFIG_AUFS_FS: is required to be set with the aufs flag" + else + CONFIG_CHECK="~OVERLAY_FS" + ERROR_AUFS_FS="CONFIG_OVERLAY_FS: is required to be set" + fi + linux-info_pkg_setup + fi +} + +src_prepare() { + cmake-utils_src_prepare + # gentoo stuff + sed -i -e 's/COPYING//' CMakeLists.txt || die + rm bootstrap.sh || die + sed -e "s:cvmfs-\${CernVM-FS_VERSION_STRING}:${PF}:" \ + -i CMakeLists.txt || die + + # hack for bundled packages + # not worth unbundling upstreams are flaky/dead + local pkg + for pkg in vjson sha2 sha3; do + # respect toolchain variables + sed -e 's/g++/$(CXX)/g' \ + -e 's/gcc/$(CC)/g' \ + -e 's/CFLAGS/MYCFLAGS/g' \ + -e 's/-O2/$(CFLAGS)/g' \ + -e 's/-O2/$(CXXFLAGS)/g' \ + -e 's/ar/$(AR)/' \ + -e 's/ranlib/$(RANLIB)/' \ + -i externals/${pkg}/src/Makefile || die + mkdir -p "${WORKDIR}/${P}_build"/externals/build_${pkg} + cp -r externals/${pkg}/src/* \ + "${WORKDIR}/${P}_build"/externals/build_${pkg}/ || die + done +} + +src_configure() { + local mycmakeargs=( + -DGEOIP_BUILTIN=OFF + -DGOOGLETEST_BUILTIN=OFF + -DLEVELDB_BUILTIN=OFF + -DLIBCURL_BUILTIN=OFF + -DPACPARSER_BUILTIN=OFF + -DSPARSEHASH_BUILTIN=OFF + -DSQLITE3_BUILTIN=OFF + -DTBB_PRIVATE_LIB=OFF + -DZLIB_BUILTIN=OFF + -DBUILD_CVMFS=ON + -DBUILD_LIBCVMFS=ON + -DINSTALL_MOUNT_SCRIPTS=ON + -DINSTALL_PUBLIC_KEYS=ON + -DINSTALL_BASH_COMPLETION=OFF + -DBUILD_DOCUMENTATION="$(usex doc)" + -DBUILD_PRELOADER="$(usex preload)" + -DBUILD_SERVER="$(usex server)" + ) + if use test || use test-programs; then + mycmakeargs+=( -DBUILD_UNITTESTS=ON ) + fi + use test-programs && mycmakeargs+=( -DINSTALL_UNITTESTS=ON ) + if use debug; then + mycmakeargs+=( + $(cmake-utils_use server BUILD_SERVER_DEBUG) + $(cmake-utils_use test BUILD_UNITTESTS_DEBUG) + ) + fi + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + use doc && cmake-utils_src_compile doc +} + +src_install() { + cmake-utils_src_install + use bash-completion && \ + newbashcomp cvmfs/bash_completion/cvmfs.bash_completion cvmfs + dodoc doc/*.md + if use doc; then + insinto /usr/share/doc/${PF} + doins -r "${BUILD_DIR}"/html + docompress -x /usr/share/doc/${PF}/html + fi +} + +pkg_config() { + einfo "Setting up CernVM-FS client" + cvmfs_config setup + einfo "Now edit ${EROOT%/}/etc/cvmfs/default.local" + einfo "and restart the autofs service" +} diff --git a/net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-cares-underlink.patch b/net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-cares-underlink.patch new file mode 100644 index 000000000000..198d137e7d15 --- /dev/null +++ b/net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-cares-underlink.patch @@ -0,0 +1,106 @@ +diff -Nur cvmfs-cvmfs-2.1.20.0-fix05.orig/cmake/Modules/FindCARES.cmake cvmfs-cvmfs-2.1.20.0-fix05/cmake/Modules/FindCARES.cmake +--- cvmfs-cvmfs-2.1.20.0-fix05.orig/cmake/Modules/FindCARES.cmake 1970-01-01 00:00:00.000000000 +0000 ++++ cvmfs-cvmfs-2.1.20.0-fix05/cmake/Modules/FindCARES.cmake 2015-07-31 18:35:05.859879354 +0000 +@@ -0,0 +1,35 @@ ++# ++# $Id$ ++# ++# - Find cares ++# Find the native CARES includes and library ++# ++# CARES_INCLUDE_DIRS - where to find cares.h, etc. ++# CARES_LIBRARIES - List of libraries when using cares. ++# CARES_FOUND - True if cares found. ++ ++ ++IF (CARES_INCLUDE_DIRS) ++ # Already in cache, be silent ++ SET(CARES_FIND_QUIETLY TRUE) ++ENDIF (CARES_INCLUDE_DIRS) ++ ++FIND_PATH(CARES_INCLUDE_DIR ares.h) ++ ++SET(CARES_NAMES cares) ++FIND_LIBRARY(CARES_LIBRARY NAMES ${CARES_NAMES} ) ++ ++# handle the QUIETLY and REQUIRED arguments and set CARES_FOUND to TRUE if ++# all listed variables are TRUE ++INCLUDE(FindPackageHandleStandardArgs) ++FIND_PACKAGE_HANDLE_STANDARD_ARGS(CARES DEFAULT_MSG CARES_LIBRARY CARES_INCLUDE_DIR) ++ ++IF(CARES_FOUND) ++ SET( CARES_LIBRARIES ${CARES_LIBRARY} ) ++ SET( CARES_INCLUDE_DIRS ${CARES_INCLUDE_DIR} ) ++ELSE(CARES_FOUND) ++ SET( CARES_LIBRARIES ) ++ SET( CARES_INCLUDE_DIRS ) ++ENDIF(CARES_FOUND) ++ ++MARK_AS_ADVANCED( CARES_LIBRARIES CARES_INCLUDE_DIRS ) +diff -Nur cvmfs-cvmfs-2.1.20.0-fix05.orig/CMakeLists.txt cvmfs-cvmfs-2.1.20.0-fix05/CMakeLists.txt +--- cvmfs-cvmfs-2.1.20.0-fix05.orig/CMakeLists.txt 2015-02-23 13:51:47.000000000 +0000 ++++ cvmfs-cvmfs-2.1.20.0-fix05/CMakeLists.txt 2015-07-31 18:32:34.259882076 +0000 +@@ -252,9 +252,12 @@ + include (${CARES_BUILTIN_LOCATION}/CVMFS-CMakeLists.txt) + include (${LIBCURL_BUILTIN_LOCATION}/CVMFS-CMakeLists.txt) + set (CURL_LIBRARIES "") ++ set (CARES_LIBRARIES "") + else (LIBCURL_BUILTIN) + find_package (CURL REQUIRED) ++ find_package (CARES REQUIRED) + set (INCLUDE_DIRECTORIES ${INCLUDE_DIRECTORIES} ${CURL_INCLUDE_DIRS}) ++ set (INCLUDE_DIRECTORIES ${INCLUDE_DIRECTORIES} ${CARES_INCLUDE_DIRS}) + if (CURL_INCLUDE_DIRS) + find_program(CURL_CONFIG_EXEC NAMES curl-config) + if (CURL_CONFIG_EXEC) +diff -Nur cvmfs-cvmfs-2.1.20.0-fix05.orig/cvmfs/CMakeLists.txt cvmfs-cvmfs-2.1.20.0-fix05/cvmfs/CMakeLists.txt +--- cvmfs-cvmfs-2.1.20.0-fix05.orig/cvmfs/CMakeLists.txt 2015-02-23 13:51:47.000000000 +0000 ++++ cvmfs-cvmfs-2.1.20.0-fix05/cvmfs/CMakeLists.txt 2015-07-31 18:34:36.789879876 +0000 +@@ -271,7 +271,7 @@ + set_target_properties (cvmfs_fuse_debug PROPERTIES VERSION ${CernVM-FS_VERSION_STRING}) + + # link the stuff (*_LIBRARIES are dynamic link libraries *_archive are static link libraries ... one of them will be empty for each dependency) +- set (CVMFS_FUSE_LINK_LIBRARIES ${SQLITE3_LIBRARY} ${CURL_LIBRARIES} ${PACPARSER_LIBRARIES} ${ZLIB_LIBRARIES} ${LEVELDB_LIBRARIES} ${OPENSSL_LIBRARIES} ${FUSE_LIBRARIES} ${LIBFUSE_ARCHIVE} ${SQLITE3_ARCHIVE} ${LIBCURL_ARCHIVE} ${PACPARSER_ARCHIVE} ${LEVELDB_ARCHIVE} ${CARES_ARCHIVE} ${ZLIB_ARCHIVE} ${RT_LIBRARY} ${UUID_LIBRARIES} pthread dl) ++ set (CVMFS_FUSE_LINK_LIBRARIES ${SQLITE3_LIBRARY} ${CARES_LIBRARIES} ${CURL_LIBRARIES} ${PACPARSER_LIBRARIES} ${ZLIB_LIBRARIES} ${LEVELDB_LIBRARIES} ${OPENSSL_LIBRARIES} ${FUSE_LIBRARIES} ${LIBFUSE_ARCHIVE} ${SQLITE3_ARCHIVE} ${LIBCURL_ARCHIVE} ${PACPARSER_ARCHIVE} ${LEVELDB_ARCHIVE} ${CARES_ARCHIVE} ${ZLIB_ARCHIVE} ${RT_LIBRARY} ${UUID_LIBRARIES} pthread dl) + + target_link_libraries (cvmfs2 ${CVMFS_LOADER_LIBS} ${OPENSSL_LIBRARIES} ${LIBFUSE} ${RT_LIBRARY} ${UUID_LIBRARIES} pthread dl) + target_link_libraries (cvmfs_fuse_debug ${CVMFS2_DEBUG_LIBS} ${CVMFS_FUSE_LINK_LIBRARIES}) +@@ -331,7 +331,7 @@ + add_dependencies (libcvmfs cvmfs_only) + + add_executable( test_libcvmfs ${TEST_LIBCVMFS_SOURCES} ) +- target_link_libraries( test_libcvmfs ${CMAKE_CURRENT_BINARY_DIR}/libcvmfs.a ${SQLITE3_LIBRARY} ${CURL_LIBRARIES} ${PACPARSER_LIBRARIES} ${ZLIB_LIBRARIES} ${OPENSSL_LIBRARIES} ${RT_LIBRARY} ${UUID_LIBRARIES} pthread dl ) ++ target_link_libraries( test_libcvmfs ${CMAKE_CURRENT_BINARY_DIR}/libcvmfs.a ${SQLITE3_LIBRARY} ${CARES_LIBRARIES} ${CURL_LIBRARIES} ${PACPARSER_LIBRARIES} ${ZLIB_LIBRARIES} ${OPENSSL_LIBRARIES} ${RT_LIBRARY} ${UUID_LIBRARIES} pthread dl ) + add_dependencies (test_libcvmfs libcvmfs) + + endif (BUILD_LIBCVMFS) +@@ -371,7 +371,7 @@ + set_target_properties (cvmfs_swissknife PROPERTIES COMPILE_FLAGS "${CVMFS_SWISSKNIFE_CFLAGS}" LINK_FLAGS "${CVMFS_SWISSKNIFE_LD_FLAGS}") + + # link the stuff (*_LIBRARIES are dynamic link libraries) +- target_link_libraries (cvmfs_swissknife ${CVMFS_SWISSKNIFE_LIBS} ${SQLITE3_LIBRARY} ${CURL_LIBRARIES} ${ZLIB_LIBRARIES} ${TBB_LIBRARIES} ${OPENSSL_LIBRARIES} ${LIBCURL_ARCHIVE} ${CARES_ARCHIVE} ${SQLITE3_ARCHIVE} ${ZLIB_ARCHIVE} ${RT_LIBRARY} ${VJSON_ARCHIVE} pthread dl) ++ target_link_libraries (cvmfs_swissknife ${CVMFS_SWISSKNIFE_LIBS} ${SQLITE3_LIBRARY} ${CARES_LIBRARIES} ${CURL_LIBRARIES} ${ZLIB_LIBRARIES} ${TBB_LIBRARIES} ${OPENSSL_LIBRARIES} ${LIBCURL_ARCHIVE} ${CARES_ARCHIVE} ${SQLITE3_ARCHIVE} ${ZLIB_ARCHIVE} ${RT_LIBRARY} ${VJSON_ARCHIVE} pthread dl) + + if (BUILD_SERVER_DEBUG) + add_executable (cvmfs_swissknife_debug ${CVMFS_SWISSKNIFE_DEBUG_SOURCES}) +@@ -399,7 +399,7 @@ + message (WARNING "Debug libraries of TBB were not found. Using the release versions instead.") + set (TBB_DEBUG_LIBRARIES ${TBB_LIBRARIES}) + endif (NOT TBB_DEBUG_LIBRARIES) +- target_link_libraries (cvmfs_swissknife_debug ${CVMFS_SWISSKNIFE_LIBS} ${SQLITE3_LIBRARY} ${CURL_LIBRARIES} ${ZLIB_LIBRARIES} ${OPENSSL_LIBRARIES} ${LIBCURL_ARCHIVE} ${CARES_ARCHIVE} ${SQLITE3_ARCHIVE} ${ZLIB_ARCHIVE} ${TBB_DEBUG_LIBRARIES} ${RT_LIBRARY} ${VJSON_ARCHIVE} pthread dl) ++ target_link_libraries (cvmfs_swissknife_debug ${CVMFS_SWISSKNIFE_LIBS} ${SQLITE3_LIBRARY} ${CARES_LIBRARIES} ${CURL_LIBRARIES} ${ZLIB_LIBRARIES} ${OPENSSL_LIBRARIES} ${LIBCURL_ARCHIVE} ${CARES_ARCHIVE} ${SQLITE3_ARCHIVE} ${ZLIB_ARCHIVE} ${TBB_DEBUG_LIBRARIES} ${RT_LIBRARY} ${VJSON_ARCHIVE} pthread dl) + endif (BUILD_SERVER_DEBUG) + endif (BUILD_SERVER) + +diff -Nur cvmfs-cvmfs-2.1.20.0-fix05.orig/cvmfs/CMakeLists.txt cvmfs-cvmfs-2.1.20.0-fix05/cvmfs/CMakeLists.txt +--- cvmfs-cvmfs-2.1.20.0-fix05.orig/test/unittests/CMakeLists.txt.orig 2015-07-31 19:03:06.829849170 +0000 ++++ cvmfs-cvmfs-2.1.20.0-fix05/test/unittests/CMakeLists.txt 2015-07-31 19:03:36.459848638 +0000 +@@ -212,7 +212,7 @@ + endif (BUILD_UNITTESTS_DEBUG) + + # link the stuff (*_LIBRARIES are dynamic link libraries) +-set (UNITTEST_LINK_LIBRARIES ${GTEST_LIBRARIES} ${GOOGLETEST_ARCHIVE} ${OPENSSL_LIBRARIES} ++set (UNITTEST_LINK_LIBRARIES ${GTEST_LIBRARIES} ${GOOGLETEST_ARCHIVE} ${OPENSSL_LIBRARIES} ${CARES_LIBRARIES} + ${CURL_LIBRARIES} ${LIBCURL_ARCHIVE} ${CARES_ARCHIVE} + ${SQLITE3_LIBRARY} ${SQLITE3_ARCHIVE} ${TBB_LIBRARIES} + ${ZLIB_LIBRARIES} ${ZLIB_ARCHIVE} ${RT_LIBRARY} ${UUID_LIBRARIES} diff --git a/net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-geoip-missing-cmake.patch b/net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-geoip-missing-cmake.patch new file mode 100644 index 000000000000..e47f61ee894a --- /dev/null +++ b/net-fs/cvmfs/files/cvmfs-2.1.20.0_p05-geoip-missing-cmake.patch @@ -0,0 +1,151 @@ +--- /dev/null ++++ cmake/Modules/FindLibGeoIP.cmake +@@ -0,0 +1,68 @@ ++# - Try to find GeoIP headers and libraries ++# ++# Usage of this module as follows: ++# ++# find_package(LibGeoIP) ++# ++# Variables used by this module, they can change the default behaviour and need ++# to be set before calling find_package: ++# ++# LibGeoIP_ROOT_DIR Set this variable to the root installation of ++# libGeoIP if the module has problems finding the ++# proper installation path. ++# ++# Variables defined by this module: ++# ++# LIBGEOIP_FOUND System has GeoIP libraries and headers ++# LibGeoIP_LIBRARY The GeoIP library ++# LibGeoIP_INCLUDE_DIR The location of GeoIP headers ++# HAVE_GEOIP_COUNTRY_EDITION_V6 Whether the API support IPv6 country edition ++# HAVE_GEOIP_CITY_EDITION_REV0_V6 Whether the API supports IPv6 city edition ++ ++find_path(LibGeoIP_ROOT_DIR ++ NAMES include/GeoIPCity.h ++) ++ ++if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") ++ # the static version of the library is preferred on OS X for the ++ # purposes of making packages (libGeoIP doesn't ship w/ OS X) ++ set(libgeoip_names libGeoIp.a GeoIP) ++else () ++ set(libgeoip_names GeoIP) ++endif () ++ ++find_library(LibGeoIP_LIBRARY ++ NAMES ${libgeoip_names} ++ HINTS ${LibGeoIP_ROOT_DIR}/lib ++) ++ ++find_path(LibGeoIP_INCLUDE_DIR ++ NAMES GeoIPCity.h ++ HINTS ${LibGeoIP_ROOT_DIR}/include ++) ++ ++include(FindPackageHandleStandardArgs) ++find_package_handle_standard_args(LibGeoIP DEFAULT_MSG ++ LibGeoIP_LIBRARY ++ LibGeoIP_INCLUDE_DIR ++) ++ ++if (LIBGEOIP_FOUND) ++ include(CheckCXXSourceCompiles) ++ set(CMAKE_REQUIRED_INCLUDES ${LibGeoIP_INCLUDE_DIR}) ++ check_cxx_source_compiles(" ++ #include <GeoIPCity.h> ++ int main() { GEOIP_COUNTRY_EDITION_V6; return 0; } ++ " HAVE_GEOIP_COUNTRY_EDITION_V6) ++ check_cxx_source_compiles(" ++ #include <GeoIPCity.h> ++ int main() { GEOIP_CITY_EDITION_REV0_V6; return 0; } ++ " HAVE_GEOIP_CITY_EDITION_REV0_V6) ++ set(CMAKE_REQUIRED_INCLUDES) ++endif () ++ ++mark_as_advanced( ++ LibGeoIP_ROOT_DIR ++ LibGeoIP_LIBRARY ++ LibGeoIP_INCLUDE_DIR ++) +\ No newline at end of file +diff --git a/cmake/Modules/FindPythonModule.cmake b/cmake/Modules/FindPythonModule.cmake +new file mode 100644 +index 0000000..1a29315 +--- /dev/null ++++ cmake/Modules/FindPythonModule.cmake +@@ -0,0 +1,24 @@ ++# Find if a Python module is installed ++# Found at http://www.cmake.org/pipermail/cmake/2011-January/041666.html ++# To use do: find_python_module(PyQt4 REQUIRED) ++function(find_python_module module) ++ string(TOUPPER ${module} module_upper) ++ if(NOT PYTHON_${module_upper}) ++ include (FindPythonInterp) ++ if(ARGC GREATER 1 AND ARGV1 STREQUAL "REQUIRED") ++ set(PY_${module}_FIND_REQUIRED TRUE) ++ endif() ++ # A module's location is usually a directory, but for binary modules ++ # it's a .so file. ++ execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" ++ "import re, ${module}; print(re.compile('/__init__.py.*').sub('',${module}.__file__))" ++ RESULT_VARIABLE _${module}_status ++ OUTPUT_VARIABLE _${module}_location ++ ERROR_QUIET ++ OUTPUT_STRIP_TRAILING_WHITESPACE) ++ if(${_${module}_status} EQUAL 0) ++ set(PYTHON_${module_upper} ${_${module}_location} CACHE STRING "Location of Python module ${module}") ++ endif(${_${module}_status} EQUAL 0) ++ endif(NOT PYTHON_${module_upper}) ++ find_package_handle_standard_args(PY_${module} DEFAULT_MSG PYTHON_${module_upper}) ++endfunction(find_python_module) +\ No newline at end of file +diff --git a/cvmfs/CMakeLists.txt b/cvmfs/CMakeLists.txt +index cb09b94..44be85e 100644 +--- cvmfs/CMakeLists.txt ++++ cvmfs/CMakeLists.txt +@@ -347,9 +347,9 @@ if (BUILD_SERVER) + # create targets with corresponding sources and static link libraries + add_executable (cvmfs_swissknife ${CVMFS_SWISSKNIFE_SOURCES}) + add_executable (cvmfs_suid_helper ${CVMFS_SUID_HELPER_SOURCES}) +- add_custom_target (geoip ALL) + + if (GEOIP_BUILTIN) ++ add_custom_target (geoip ALL) + add_dependencies (python-geoip libgeoip) + add_dependencies (geoip python-geoip) + endif (GEOIP_BUILTIN) +--- CMakeLists.txt.orig 2015-08-04 15:33:53.383868890 +0000 ++++ CMakeLists.txt 2015-08-04 15:58:03.133842858 +0000 +@@ -145,6 +145,12 @@ + endif (EXISTS "${CMAKE_SOURCE_DIR}/bootstrap.sh") + + # ++# include some common functionality ++# ++include (FindPythonModule) ++ ++ ++# + # set some default flags + # + # flags in CMAKE_C**_FLAGS are always passed to the compiler +@@ -309,13 +315,15 @@ + set (INCLUDE_DIRECTORIES ${INCLUDE_DIRECTORIES} ${GTEST_INCLUDE_DIRS}) + endif (GOOGLETEST_BUILTIN) + ++if (BUILD_SERVER OR BUILD_UNITTESTS) + if (GEOIP_BUILTIN) + include (${LIBGEOIP_BUILTIN_LOCATION}/CVMFS-CMakeLists.txt) + include (${PYTHON_GEOIP_BUILTIN_LOCATION}/CVMFS-CMakeLists.txt) + else (GEOIP_BUILTIN) +- find_package (GeoIP REQUIRED) +- find_package (python-GeoIP REQUIRED) ++ find_package (LibGeoIP REQUIRED) ++ find_python_module (GeoIP REQUIRED) + endif (GEOIP_BUILTIN) ++endif (BUILD_SERVER OR BUILD_UNITTESTS) + + # required libraries for client and libcvmfs + if (BUILD_CVMFS OR BUILD_LIBCVMFS) diff --git a/net-fs/cvmfs/metadata.xml b/net-fs/cvmfs/metadata.xml new file mode 100644 index 000000000000..1c13de9185c6 --- /dev/null +++ b/net-fs/cvmfs/metadata.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>bicatali@gentoo.org</email> + </maintainer> + <longdescription lang="en"> + The CernVM File System is a client-server file system developed to + deliver software stacks onto virtual machines in a fast, scalable, + and reliable way. CernVM-FS is implemented as a FUSE module. It + makes a specially prepared directory tree stored on a web server + look like a local read-only file system on the virtual + machine. CernVM-FS uses outgoing HTTP connections only, thereby it + avoids most of the firewall issues of other network file systems. It + transfers data file by file on demand, verifying the content by + SHA-1 keys. + </longdescription> + <use> + <flag name='aufs'>Use AUFS instead of OverlayFS for the server</flag> + <flag name="client">Install the cvmfs client programs and init script</flag> + <flag name="preload">Install the cvmfs cache preloader for distributed file systems</flag> + <flag name="server">Install the cvmfsd program and init script</flag> + <flag name='test-programs'>Install unit test programs</flag> + </use> + <upstream> + <remote-id type="github">cvmfs/cvmfs</remote-id> + </upstream> +</pkgmetadata> |