summaryrefslogtreecommitdiff
path: root/net-fs/cvmfs/cvmfs-2.12.3.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'net-fs/cvmfs/cvmfs-2.12.3.ebuild')
-rw-r--r--net-fs/cvmfs/cvmfs-2.12.3.ebuild104
1 files changed, 104 insertions, 0 deletions
diff --git a/net-fs/cvmfs/cvmfs-2.12.3.ebuild b/net-fs/cvmfs/cvmfs-2.12.3.ebuild
new file mode 100644
index 000000000000..6859d25ce946
--- /dev/null
+++ b/net-fs/cvmfs/cvmfs-2.12.3.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake linux-info bash-completion-r1
+
+DESCRIPTION="HTTP read-only file system for distributing software"
+HOMEPAGE="https://cernvm.cern.ch/fs/"
+SRC_URI="https://ecsft.cern.ch/dist/cvmfs/${P}/source.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+
+KEYWORDS="~amd64 ~x86"
+IUSE="server"
+
+CDEPEND="
+ acct-group/cvmfs
+ acct-user/cvmfs
+ app-arch/libarchive
+ dev-cpp/gtest
+ dev-cpp/sparsehash
+ dev-db/sqlite:3=
+ dev-libs/leveldb:0=
+ dev-libs/openssl:0=
+ dev-libs/protobuf:0=
+ net-dns/c-ares:0=
+ net-libs/pacparser:0=
+ net-misc/curl:0[adns]
+ sys-apps/attr
+ sys-fs/fuse:0=
+ sys-fs/fuse:3=
+ sys-libs/libcap:0=
+ sys-libs/zlib:0=
+"
+
+RDEPEND="${CDEPEND}
+ app-admin/sudo
+ net-fs/autofs
+"
+
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.10.1-gentoo.patch
+)
+
+pkg_setup() {
+ if use server; then
+ CONFIG_CHECK="~OVERLAY_FS"
+ ERROR_AUFS_FS="CONFIG_OVERLAY_FS: is required to be set"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ cmake_src_prepare
+ # gentoo stuff
+ rm bootstrap.sh || die
+ sed -i -e "s:/usr/bin/systemctl:/bin/systemctl:g" \
+ -e "/^INSTALL_BASE/s:=.*\$:=${EPREFIX}/usr:" \
+ -e "s:/bin/pidof:/usr/bin/pidof:g" cvmfs/cvmfs_config || die
+ sed -i -e 's/COPYING//' -e "s:cvmfs-\${CernVM-FS_VERSION_STRING}:${PF}:" \
+ CMakeLists.txt || die
+ eapply_user
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILTIN_EXTERNALS=OFF
+ -DBUILD_CVMFS=ON
+ -DBUILD_LIBCVMFS=OFF # static library used only for development
+ -DBUILD_DOCUMENTATION=OFF
+ -DBUILD_GEOAPI=OFF # only used for stratum 1 servers
+ -DBUILD_LIBCVMFS_CACHE=OFF # for exotic cache configs
+ -DBUILD_PRELOADER=OFF # special purpose utility for HPCs
+ -DBUILD_RECEIVER=OFF # for distributed publishers only
+ -DBUILD_SERVER=$(usex server)
+ -DINSTALL_BASH_COMPLETION=OFF
+ -DINSTALL_MOUNT_SCRIPTS=ON
+ -DINSTALL_PUBLIC_KEYS=ON
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ newbashcomp cvmfs/bash_completion/cvmfs.bash_completion cvmfs_config
+ bashcomp_alias cvmfs_config cvmfs_server
+ dodoc doc/*.md
+ keepdir /var/lib/cvmfs
+ use server && keepdir /var/lib/cvmfs-server
+}
+
+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"
+}