Skip to content

Commit

Permalink
sci-physics/cernlib: add 2024.06.12.0
Browse files Browse the repository at this point in the history
Signed-off-by: Alexander Puck Neuwirth <[email protected]>
  • Loading branch information
APN-Pucky committed Oct 22, 2024
1 parent 67337d1 commit dd532d9
Show file tree
Hide file tree
Showing 2 changed files with 81 additions and 0 deletions.
2 changes: 2 additions & 0 deletions sci-physics/cernlib/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
DIST cernlib-2023.10.31.0-free.tar.gz 39191038 BLAKE2B 941592a65f0c8d7d0c6c3907c96d8209568579dac455ed28657a5635677d73e6580f48667a641a6ca9dd296bf82a40f6a75c5fc801fcefb7f8e9101b4dcd3202 SHA512 d015f89942bab695444d37847a8138c3a8736ceeb6f4826c659553bf1ae5eab2a77b2871645a125ea189e62520856955070fbb3ed2d208d35f82ee8b8559d089
DIST cernlib-2023.10.31.0.tar.gz 39547453 BLAKE2B f37686e4a43b969a8cb604874b6181adf8529b9fc383ccd2e42fc369f92d4693ca8db682bc58638cb58e9941cf22551cfec26b33075e15fc6a0b3fab3dcf7d82 SHA512 9bc866d08e3bce2f571f9f4e21e34ca6c99467088d4dce4cbc9b6c62d8ee2b9018668fd66795996a5f6abb1082ac9559cf08bc7f5201421dbffcdd0db9459008
DIST cernlib-cernlib-2024.06.12.0-free.tar.gz 37622299 BLAKE2B d4f53b9a64a0745519ef2a63f8ea950a08de8177d1e42d4e735cdd96ea57c4d5da91521cc6b9f865f8ebe886188976ddf2319c4b073aa7705d3e344baee691fb SHA512 d461173771b622516c028d82d853d458fa3c50b07b8094cbad1806bb80f5fa1eb98ad15555c8ddb8b2ac5d04eeceeeec69cffb0a1fc4cb99a5a0b2e48abce386
DIST cernlib-cernlib-2024.06.12.0.tar.gz 37968830 BLAKE2B e6f391f56f72151cda5d07f838bc8d5b31afaa565cdd1128fbf89c2c6c3891d8cdf384eb1d2048572ddf35c08ceaff92c4eac04f182776d8aafb0813d289f994 SHA512 f015bbdc22ad8c1fc6a4eba39fe1f492fa827a81876174d09917bb9037f3bb7749d000425e00fd4436c18900d59a088af2520fc034fc06acf8c6c07b1ce29ca9
79 changes: 79 additions & 0 deletions sci-physics/cernlib/cernlib-2024.06.12.0.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
EAPI=8

CMAKE_MAKEFILE_GENERATOR="emake"
inherit cmake fortran-2 flag-o-matic

DESCRIPTION="CERN program library for High Energy Physics"
HOMEPAGE="https://cernlib.web.cern.ch/cernlib/"
SRC_URI="
free? ( https://cernlib.web.cern.ch/download/$(ver_cut 1)_source/tar/${PN}-${P}-free.tar.gz )
!free? ( https://cernlib.web.cern.ch/download/$(ver_cut 1)_source/tar/${PN}-${P}.tar.gz )
"
S="${WORKDIR}/${PN}-${P}"
LICENSE="
free? ( BSD LGPL-2+ GPL-1+ )
!free? ( all-rights-reserved )
"
SLOT="0"
KEYWORDS="~amd64"
# static-libs as default since otherwise test fail...
IUSE="+free +static-libs"
RESTRICT="mirror"

RDEPEND="
x11-libs/motif:0
x11-libs/libXaw
x11-libs/libXau
virtual/lapack
dev-lang/cfortran
x11-libs/xbae
net-libs/libnsl
virtual/libcrypt:=
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
"

PATCHES=(
"${FILESDIR}"/${PN}-2023.10.31.0-cfortran.patch
"${FILESDIR}"/${PN}-2023.10.31.0-man.patch
)

src_unpack() {
default
if use free; then
mv ${PN}-${P}-free ${PN}-${P} || die
fi
}

src_prepare() {
cmake_src_prepare
# cfortran.patch
# Remove cfortran.h since it is already installed from dev-lang/cfortran
# thereby we avoid collisions if e.g. sci-physics/root[fortran] is installed.
rm cfortran/cfortran.h || die
}

src_configure() {
# docs follow rpm like spliting into packages cernlib, cernlib-devel, etc.
# we move them into a folder that agrees with gentoo doc structure.
sed -i "s#/doc/#/doc/${PF}/#g" CMakeLists.txt || die
# let upstream decide on optimization (-O0) since code is fragile
#filter-flags -O1 -O2 -O3 -Os -Oz -Og -Ofast
# with -O2 some tests fail
append-flags -O0
local mycmakeargs=(
-DBUILD_SHARED_LIBS=$(usex static-libs OFF ON)
)
cmake_src_configure
}

src_install() {
cmake_src_install
# man.patch
# The CMakeLists.txt already compresses the manual before install
# therefore we install it manually and avoid QA problems.
doman contrib/man/man1/*.1
doman contrib/man/man8/*.8
}

0 comments on commit dd532d9

Please sign in to comment.