From b8fdb983d1933e9e721dbf9079be6529455d8147 Mon Sep 17 00:00:00 2001 From: Andrew Savchenko Date: Thu, 15 Jul 2021 10:59:05 +0300 Subject: sys-cluster/orangefs: update ebuild - EAPI 7 update - deps update Closes: https://bugs.gentoo.org/797016 Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: Andrew Savchenko --- sys-cluster/orangefs/metadata.xml | 2 - .../orangefs/orangefs-2.9_beta20130530-r1.ebuild | 261 --------------------- .../orangefs/orangefs-2.9_beta20130530-r2.ebuild | 259 ++++++++++++++++++++ 3 files changed, 259 insertions(+), 263 deletions(-) delete mode 100644 sys-cluster/orangefs/orangefs-2.9_beta20130530-r1.ebuild create mode 100644 sys-cluster/orangefs/orangefs-2.9_beta20130530-r2.ebuild (limited to 'sys-cluster') diff --git a/sys-cluster/orangefs/metadata.xml b/sys-cluster/orangefs/metadata.xml index 74ef84c..73ecae1 100644 --- a/sys-cluster/orangefs/metadata.xml +++ b/sys-cluster/orangefs/metadata.xml @@ -19,9 +19,7 @@ Enable client filesystem support using sys-fs/fuse. Use experimental threads support for kernel helper code Use mtrace for memory debugging (must set MALLOC_TRACE to output file) - Add support for Myrinet Express over Ethernet Resets file position pointer in kernel interface upon error. See ChangeLog for 2.8.6 for more details - Enable connections only from trusted hosts/ports Enable certificate-based security Enable key-based security Enable kernel sendfile support (recommended for serving of large files only) diff --git a/sys-cluster/orangefs/orangefs-2.9_beta20130530-r1.ebuild b/sys-cluster/orangefs/orangefs-2.9_beta20130530-r1.ebuild deleted file mode 100644 index 749cb53..0000000 --- a/sys-cluster/orangefs/orangefs-2.9_beta20130530-r1.ebuild +++ /dev/null @@ -1,261 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit autotools linux-info linux-mod readme.gentoo-r1 - -PV_MAJ="2.9beta" -MY_P="${PN}-${PV_MAJ}.20130530" - -DESCRIPTION="OrangeFS is a branch of PVFS2 cluster filesystem" -HOMEPAGE="http://www.orangefs.org/" -SRC_URI="http://orangefs.org/downloads/${PV_MAJ}/source/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -LICENSE="LGPL-2.1" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="aio apidocs capcache certcache debug doc examples fuse gtk infiniband -kmod-threads ldap memtrace +mmap modules open-mx reset-file-pos security-key -security-cert sendfile +server ssl static static-libs +tcp +threads -trusted-connections +usrint usrint-cache +usrint-cwd usrint-kmount valgrind" - -CDEPEND=" - dev-lang/perl - >=sys-libs/db-4.8.30:= - virtual/perl-Math-BigInt - fuse? ( sys-fs/fuse:= ) - gtk? ( x11-libs/gtk+:2 ) - infiniband? ( sys-fabric/ofed ) - ldap? ( net-nds/openldap ) - open-mx? ( sys-cluster/open-mx[static-libs?] ) - ssl? ( dev-libs/openssl[static-libs?] ) - valgrind? ( dev-util/valgrind ) -" -RDEPEND="${CDEPEND} - modules? ( virtual/modutils ) -" -DEPEND="${CDEPEND} - >=sys-devel/autoconf-2.59 - sys-devel/bison - sys-devel/flex - virtual/pkgconfig - apidocs? ( app-doc/doxygen ) - doc? ( dev-tex/latex2html ) - modules? ( virtual/linux-sources ) -" - -# aio and sendfile are only meaningful for kernel module; -# apidocs needs docs to be build first; -# kernel threads obviously needs kernel module and threads -# memtrace and valgrind witout debug info will be a pain; -# if both Myrinet and TCP interfaces are enabled in BMI, 5 sec delays will -# occur, though, at lest one of them must be enabled; -# static flag affects only server, so it must depend on it; -REQUIRED_USE=" - aio? ( modules ) - apidocs? ( doc ) - capcache? ( || ( security-cert security-key ) ) - certcache? ( security-cert ) - kmod-threads? ( modules threads ) - memtrace? ( debug ) - reset-file-pos? ( modules ) - security-cert? ( ldap ssl ) - security-key? ( ssl ) - sendfile? ( modules ) - static? ( server static-libs ) - tcp? ( !infiniband !open-mx ) - usrint-cache? ( usrint ) - usrint-cwd? ( usrint ) - usrint-kmount? ( usrint ) - valgrind? ( debug ) - || ( infiniband open-mx tcp ) - ?? ( security-cert security-key ) -" - -BUILD_TARGETS="just_kmod" -MODULE_NAMES="pvfs2(fs::src/kernel/linux-2.6)" - -pkg_setup() { - use modules && linux-mod_pkg_setup - if use modules && kernel_is -ge 3 4; then - eerror "Sorry, linux kernels >= 3.4 are not support yet." - eerror "(Well they are, but you'll have a dead lock.)" - eerror "You may disable modules use flag and use fuse client to mount filesystem." - eerror "PVFS2 server and ROMIO I/O API are still available too." - return 1 - fi - - if use security-key || use security-cert && ! use capcache; then - ewarn "Upstream recommends to enable capabilities cache (--enable-capcache) when" - ewarn "security-key or security-cert is used." - fi - if use security-cert && ! use certcache; then - ewarn "Upstream recommends to enable certificate cache (--enable-certcache) when" - ewarn "security-cert is used." - fi -} - -src_prepare() { - # Upstream doesn't seem to want to apply this which makes - # sense as it probably only matters to us. Simple patch - # to split the installation of the module (which we use - # the eclass for) and the installation of the kernapps. - epatch "${FILESDIR}"/${PN}-2.8.5-split-kernapps.patch - - # Fix libm underliking issue for kernapps - epatch "${FILESDIR}"/${P}-kernapps-lm.patch - - # Change defalt server logfile location to more appropriate value - # used by init script. - sed -i "s%/tmp/pvfs2-server.log%${EPREFIX}var/log/pvfs2/server.log%g" \ - src/apps/admin/pvfs2-genconfig || die "sed on pvfs2-genconfig failed" - - AT_M4DIR=./maint/config eautoreconf -} - -src_configure() { - local myconf="" - - use threads && use aio || myconf+=" --disable-aio-threaded-callbacks" - - # fast mode disables optimizations - use debug && myconf+=" --disable-fast --with-berkdb-debug" \ - || myconf+=" --enable-fast --without-berkdb-debug" - - use modules && myconf+=" --with-kernel=${KV_DIR}" - - # ARCH is used to define linux header path, should be not set. - unset ARCH - # FIXME: VIS build is broken at this moment. - # Please add SDL dependency on reenable. - # Note: jdk, jni, hadoop are disabled because hadoop is out of portage - # and jdk/jni is useless otherwise - econf \ - --disable-jni \ - --disable-hadoop \ - --disable-nptl-workaround \ - --disable-redhat24 \ - --disable-visual \ - --enable-epoll \ - --enable-shared \ - --enable-verbose-build \ - --sysconfdir="${EPREFIX}"/etc/pvfs2 \ - $(use_enable aio kernel-aio) \ - $(use_enable capcache) \ - $(use_enable certcache) \ - $(use_enable debug perf-counters) \ - $(use_enable debug segv-backtrace) \ - $(use_enable fuse) \ - $(use_enable gtk karma) \ - $(use_enable mmap mmap-racache) \ - $(use_enable kmod-threads threaded-kmod-helper) \ - $(use_enable reset-file-pos) \ - $(use_enable security-cert) \ - $(use_enable security-key) \ - $(use_enable sendfile kernel-sendfile) \ - $(use_enable server) \ - $(use_enable static static-server) \ - $(use_enable static-libs static) \ - $(use_enable trusted-connections) \ - $(use_enable usrint) \ - $(use_enable usrint-cache ucache) \ - $(use_enable usrint-cwd) \ - $(use_enable usrint-kmount) \ - $(use_with infiniband openib "${EPREFIX}"/usr/) \ - $(use_with memtrace mtrace) \ - $(use_with ldap) \ - $(use_with open-mx mx "${EPREFIX}"/usr/) \ - $(use_with ssl) \ - $(use_with tcp bmi-tcp) \ - $(use_with valgrind) \ - ${myconf} -} - -src_compile() { - emake all - if use modules; then - linux-mod_src_compile - emake kernapps - fi - - use doc && emake docs - if use apidocs; then - cd "${S}"/doc - doxygen doxygen/pvfs2-doxygen.conf || die "doxygen failed" - fi -} - -src_install() { - emake DESTDIR="${D}" install - if use modules; then - linux-mod_src_install - emake DESTDIR="${D}" kernapps_install - - newinitd "${FILESDIR}"/pvfs2-client-init.d pvfs2-client - newconfd "${FILESDIR}"/pvfs2-client-conf.d pvfs2-client - fi - - if use server; then - newinitd "${FILESDIR}"/pvfs2-server-init.d pvfs2-server - newconfd "${FILESDIR}"/pvfs2-server-conf.d pvfs2-server - fi - - keepdir "${EPREFIX}var/log/pvfs2" - - dodoc AUTHORS CREDITS ChangeLog INSTALL README SecuritySetup - readme.gentoo_create_doc - - if use doc; then - dodoc doc/{coding/,}*.{pdf,txt} doc/random/*.pdf \ - doc/{coding/valgrind,add-client-syscall,add-server-req,REFERENCES.bib} - - if use apidocs; then - dohtml -A map -A md5 doc/doxygen/html/* - fi - - docinto design - dodoc doc/design/*.{pdf,txt} - fi - if use examples; then - docinto examples - dodoc -r examples/{certs,heartbeat,keys} - fi -} - -pkg_postinst() { - use modules && linux-mod_pkg_postinst - - readme.gentoo_print_elog - if ! use modules; then - ewarn - ewarn "Without modules support you wouldn't be able to use pvfs2-client and mount" - ewarn "partitions using kernel VFS. Though, you are still able to use libpvfs2," - ewarn "ROMIO interface, and FUSE client (if fuse use flag is enabled)." - fi - if use modules && kernel_is -ge 3 1; then - ewarn - ewarn "ACL support for 3.1 and 3.2 kernels is known to have bugs." - fi - if use sendfile; then - ewarn - ewarn "With sendfile enabled performance will be degraded for small access patterns." - fi -} - -pkg_config() { - local s - local f="$(source "${ROOT}"etc/conf.d/pvfs2-server; echo ${PVFS2_FS_CONF})" - [[ -z "${f}" ]] && f="${ROOT}etc/pvfs2/fs.conf" - if [[ -f "${f}" ]]; then - ewarn "Previous install detected." - ewarn "We're about to wipe out ${f} and replace it with" - ewarn "the file generated by running pvfs2-genconfig. If this is what" - ewarn "you want to do, hit any key to continue. Otherwise hit ctrl+C" - ewarn "to abort." - read s - fi - einfo "Creating unified configuration file" - [ ! -d "${ROOT}$(dirname "${f}")" ] && mkdir -p "${ROOT}$(dirname "${f}")" - "${ROOT}"usr/bin/pvfs2-genconfig "${f}" -} diff --git a/sys-cluster/orangefs/orangefs-2.9_beta20130530-r2.ebuild b/sys-cluster/orangefs/orangefs-2.9_beta20130530-r2.ebuild new file mode 100644 index 0000000..d7df7e7 --- /dev/null +++ b/sys-cluster/orangefs/orangefs-2.9_beta20130530-r2.ebuild @@ -0,0 +1,259 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools linux-info linux-mod readme.gentoo-r1 + +PV_MAJ="2.9beta" +MY_P="${PN}-${PV_MAJ}.20130530" + +DESCRIPTION="OrangeFS is a branch of PVFS2 cluster filesystem" +HOMEPAGE="http://www.orangefs.org/" +SRC_URI="http://orangefs.org/downloads/${PV_MAJ}/source/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="aio apidocs capcache certcache debug doc examples fuse gtk infiniband +kmod-threads ldap memtrace +mmap modules reset-file-pos security-key +security-cert sendfile +server ssl static static-libs +tcp +threads +trusted-connections +usrint usrint-cache +usrint-cwd usrint-kmount valgrind" + +DEPEND=" + dev-lang/perl + >=sys-libs/db-4.8.30:= + virtual/perl-Math-BigInt + fuse? ( sys-fs/fuse:= ) + gtk? ( x11-libs/gtk+:2 ) + infiniband? ( sys-fabric/ofed ) + ldap? ( net-nds/openldap ) + ssl? ( dev-libs/openssl[static-libs?] ) + valgrind? ( dev-util/valgrind ) +" +RDEPEND="${DEPEND} + modules? ( sys-apps/kmod ) +" +BDEPEND=" + >=sys-devel/autoconf-2.59 + sys-devel/bison + sys-devel/flex + virtual/pkgconfig + apidocs? ( app-doc/doxygen ) + doc? ( dev-tex/latex2html ) + modules? ( virtual/linux-sources ) +" + +# aio and sendfile are only meaningful for kernel module; +# apidocs needs docs to be build first; +# kernel threads obviously needs kernel module and threads +# memtrace and valgrind witout debug info will be a pain; +# if both Myrinet and TCP interfaces are enabled in BMI, 5 sec delays will +# occur, though, at lest one of them must be enabled; +# static flag affects only server, so it must depend on it; +REQUIRED_USE=" + aio? ( modules ) + apidocs? ( doc ) + capcache? ( || ( security-cert security-key ) ) + certcache? ( security-cert ) + kmod-threads? ( modules threads ) + memtrace? ( debug ) + reset-file-pos? ( modules ) + security-cert? ( ldap ssl ) + security-key? ( ssl ) + sendfile? ( modules ) + static? ( server static-libs ) + tcp? ( !infiniband ) + usrint-cache? ( usrint ) + usrint-cwd? ( usrint ) + usrint-kmount? ( usrint ) + valgrind? ( debug ) + || ( infiniband tcp ) + ?? ( security-cert security-key ) +" + +BUILD_TARGETS="just_kmod" +MODULE_NAMES="pvfs2(fs::src/kernel/linux-2.6)" + +pkg_setup() { + use modules && linux-mod_pkg_setup + if use modules && kernel_is -ge 3 4; then + eerror "Sorry, linux kernels >= 3.4 are not support yet." + eerror "(Well they are, but you'll have a dead lock.)" + eerror "You may disable modules use flag and use fuse client to mount filesystem." + eerror "PVFS2 server and ROMIO I/O API are still available too." + return 1 + fi + + if use security-key || use security-cert && ! use capcache; then + ewarn "Upstream recommends to enable capabilities cache (--enable-capcache) when" + ewarn "security-key or security-cert is used." + fi + if use security-cert && ! use certcache; then + ewarn "Upstream recommends to enable certificate cache (--enable-certcache) when" + ewarn "security-cert is used." + fi +} + +src_prepare() { + # Upstream doesn't seem to want to apply this which makes + # sense as it probably only matters to us. Simple patch + # to split the installation of the module (which we use + # the eclass for) and the installation of the kernapps. + epatch "${FILESDIR}"/${PN}-2.8.5-split-kernapps.patch + + # Fix libm underliking issue for kernapps + epatch "${FILESDIR}"/${P}-kernapps-lm.patch + + # Change defalt server logfile location to more appropriate value + # used by init script. + sed -i "s%/tmp/pvfs2-server.log%${EPREFIX}var/log/pvfs2/server.log%g" \ + src/apps/admin/pvfs2-genconfig || die "sed on pvfs2-genconfig failed" + + AT_M4DIR=./maint/config eautoreconf +} + +src_configure() { + local myconf="" + + use threads && use aio || myconf+=" --disable-aio-threaded-callbacks" + + # fast mode disables optimizations + use debug && myconf+=" --disable-fast --with-berkdb-debug" \ + || myconf+=" --enable-fast --without-berkdb-debug" + + use modules && myconf+=" --with-kernel=${KV_DIR}" + + # ARCH is used to define linux header path, should be not set. + unset ARCH + # FIXME: VIS build is broken at this moment. + # Please add SDL dependency on reenable. + # Note: jdk, jni, hadoop are disabled because hadoop is out of portage + # and jdk/jni is useless otherwise + econf \ + --disable-jni \ + --disable-hadoop \ + --disable-nptl-workaround \ + --disable-redhat24 \ + --disable-visual \ + --enable-epoll \ + --enable-shared \ + --enable-verbose-build \ + --sysconfdir="${EPREFIX}"/etc/pvfs2 \ + $(use_enable aio kernel-aio) \ + $(use_enable capcache) \ + $(use_enable certcache) \ + $(use_enable debug perf-counters) \ + $(use_enable debug segv-backtrace) \ + $(use_enable fuse) \ + $(use_enable gtk karma) \ + $(use_enable mmap mmap-racache) \ + $(use_enable kmod-threads threaded-kmod-helper) \ + $(use_enable reset-file-pos) \ + $(use_enable security-cert) \ + $(use_enable security-key) \ + $(use_enable sendfile kernel-sendfile) \ + $(use_enable server) \ + $(use_enable static static-server) \ + $(use_enable static-libs static) \ + $(use_enable trusted-connections) \ + $(use_enable usrint) \ + $(use_enable usrint-cache ucache) \ + $(use_enable usrint-cwd) \ + $(use_enable usrint-kmount) \ + $(use_with infiniband openib "${EPREFIX}"/usr/) \ + $(use_with memtrace mtrace) \ + $(use_with ldap) \ + $(use_with ssl) \ + $(use_with tcp bmi-tcp) \ + $(use_with valgrind) \ + ${myconf} +} + +src_compile() { + emake all + if use modules; then + linux-mod_src_compile + emake kernapps + fi + + use doc && emake docs + if use apidocs; then + cd "${S}"/doc + doxygen doxygen/pvfs2-doxygen.conf || die "doxygen failed" + fi +} + +src_install() { + emake DESTDIR="${D}" install + if use modules; then + linux-mod_src_install + emake DESTDIR="${D}" kernapps_install + + newinitd "${FILESDIR}"/pvfs2-client-init.d pvfs2-client + newconfd "${FILESDIR}"/pvfs2-client-conf.d pvfs2-client + fi + + if use server; then + newinitd "${FILESDIR}"/pvfs2-server-init.d pvfs2-server + newconfd "${FILESDIR}"/pvfs2-server-conf.d pvfs2-server + fi + + keepdir "${EPREFIX}var/log/pvfs2" + + dodoc AUTHORS CREDITS ChangeLog INSTALL README SecuritySetup + readme.gentoo_create_doc + + if use doc; then + dodoc doc/{coding/,}*.{pdf,txt} doc/random/*.pdf \ + doc/{coding/valgrind,add-client-syscall,add-server-req,REFERENCES.bib} + + if use apidocs; then + dohtml -A map -A md5 doc/doxygen/html/* + fi + + docinto design + dodoc doc/design/*.{pdf,txt} + fi + if use examples; then + docinto examples + dodoc -r examples/{certs,heartbeat,keys} + fi +} + +pkg_postinst() { + use modules && linux-mod_pkg_postinst + + readme.gentoo_print_elog + if ! use modules; then + ewarn + ewarn "Without modules support you wouldn't be able to use pvfs2-client and mount" + ewarn "partitions using kernel VFS. Though, you are still able to use libpvfs2," + ewarn "ROMIO interface, and FUSE client (if fuse use flag is enabled)." + fi + if use modules && kernel_is -ge 3 1; then + ewarn + ewarn "ACL support for 3.1 and 3.2 kernels is known to have bugs." + fi + if use sendfile; then + ewarn + ewarn "With sendfile enabled performance will be degraded for small access patterns." + fi +} + +pkg_config() { + local s + local f="$(source "${ROOT}"etc/conf.d/pvfs2-server; echo ${PVFS2_FS_CONF})" + [[ -z "${f}" ]] && f="${ROOT}etc/pvfs2/fs.conf" + if [[ -f "${f}" ]]; then + ewarn "Previous install detected." + ewarn "We're about to wipe out ${f} and replace it with" + ewarn "the file generated by running pvfs2-genconfig. If this is what" + ewarn "you want to do, hit any key to continue. Otherwise hit ctrl+C" + ewarn "to abort." + read s + fi + einfo "Creating unified configuration file" + [ ! -d "${ROOT}$(dirname "${f}")" ] && mkdir -p "${ROOT}$(dirname "${f}")" + "${ROOT}"usr/bin/pvfs2-genconfig "${f}" +} -- cgit v1.2.3-65-gdbad