From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id DB1F4158087 for ; Sat, 15 Jan 2022 15:06:10 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 182B22BC01C; Sat, 15 Jan 2022 15:06:10 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 6D5E52BC01C for ; Sat, 15 Jan 2022 15:06:09 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 44134342D95 for ; Sat, 15 Jan 2022 15:06:08 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 7C41A291 for ; Sat, 15 Jan 2022 15:06:06 +0000 (UTC) From: "Michael Orlitzky" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michael Orlitzky" Message-ID: <1642258970.2132cf3a37d152e6436d75db44a3fa9e87d4cfec.mjo@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sci-mathematics/giac/ X-VCS-Repository: repo/gentoo X-VCS-Files: sci-mathematics/giac/Manifest sci-mathematics/giac/giac-1.7.0.45.ebuild X-VCS-Directories: sci-mathematics/giac/ X-VCS-Committer: mjo X-VCS-Committer-Name: Michael Orlitzky X-VCS-Revision: 2132cf3a37d152e6436d75db44a3fa9e87d4cfec X-VCS-Branch: master Date: Sat, 15 Jan 2022 15:06:06 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 346f2679-4bed-467a-a02d-0eee23b758c6 X-Archives-Hash: 39fc9a43893d8dc9e8bc25442d9a80ed commit: 2132cf3a37d152e6436d75db44a3fa9e87d4cfec Author: Michael Orlitzky gentoo org> AuthorDate: Sat Jan 15 14:20:48 2022 +0000 Commit: Michael Orlitzky gentoo org> CommitDate: Sat Jan 15 15:02:50 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2132cf3a sci-mathematics/giac: new upstream version 1.7.0.45. Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Michael Orlitzky gentoo.org> sci-mathematics/giac/Manifest | 1 + sci-mathematics/giac/giac-1.7.0.45.ebuild | 165 ++++++++++++++++++++++++++++++ 2 files changed, 166 insertions(+) diff --git a/sci-mathematics/giac/Manifest b/sci-mathematics/giac/Manifest index a6d7f7d74e69..61c49c8e9650 100644 --- a/sci-mathematics/giac/Manifest +++ b/sci-mathematics/giac/Manifest @@ -1 +1,2 @@ DIST giac_1.7.0-13.tar.gz 86447065 BLAKE2B 4d91e83608f7ec376d133c2784ffce99447a9dd78b5c8582b81a0aae0b8ac59eec4db3ee4a8bcb39202c777c300178a181f2dc2ac74ab445ddba2f3efa0ecb1b SHA512 99fff7ce5117fd8c106601ead03679805d529fe12d5372cdd4ae54824aa6fdcbdaaa1a62ea1153391a1a65af8970e38fca7d95ca9983755ff06053f1d8b6d65a +DIST giac_1.7.0-45.tar.gz 96780194 BLAKE2B c43b0f89ad664b419db5d98541f23d3259a32b462d71f3a4fe06ea2ac3de0dd71d903308cd8e241758d809d0755a2f070bae03434a75abc94f17b1d8cbda03a2 SHA512 47fa019fee526d584f5dbc67adb4326e2680649ad942a2140d033ecd66957ba7a21441f02a3ba55d009bbd6756da239fcee99cab2a361993aae4df6e9f79a1a7 diff --git a/sci-mathematics/giac/giac-1.7.0.45.ebuild b/sci-mathematics/giac/giac-1.7.0.45.ebuild new file mode 100644 index 000000000000..70e638c38502 --- /dev/null +++ b/sci-mathematics/giac/giac-1.7.0.45.ebuild @@ -0,0 +1,165 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic xdg-utils + +FETCH_P="${PN}_"$(ver_rs 3 '-') +MY_PV=$(ver_cut 1-3) +DESCRIPTION="A free C++ Computer Algebra System library and its interfaces" +HOMEPAGE="https://www-fourier.ujf-grenoble.fr/~parisse/giac.html" +SRC_URI="https://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source/${FETCH_P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" +KEYWORDS="~amd64 ~x86" +LANGS="el en es pt" +IUSE="ao doc +ecm examples gc +glpk gui static-libs test" +for X in ${LANGS} ; do + IUSE="${IUSE} l10n_${X}" +done + +# nauty and cliquer are automagical dependencies +RDEPEND="dev-libs/gmp:=[cxx(+)] + sys-libs/readline:= + gui? ( x11-libs/fltk + media-libs/libpng:= ) + ao? ( media-libs/libao ) + dev-libs/mpfr:= + sci-libs/mpfi + sci-libs/gsl:= + sci-mathematics/pari:=[threads] + dev-libs/ntl:= + virtual/lapack + virtual/blas + net-misc/curl + sci-mathematics/cliquer + sci-mathematics/nauty + ecm? ( sci-mathematics/gmp-ecm ) + glpk? ( sci-mathematics/glpk ) + gc? ( dev-libs/boehm-gc )" + +DEPEND="${RDEPEND}" + +BDEPEND="dev-tex/hevea + virtual/pkgconfig + virtual/yacc" + +PATCHES=( + "${FILESDIR}/${PN}-1.7.0.1-gsl_lapack.patch" + "${FILESDIR}/${PN}-1.6.0-pari-2.11.patch" +) + +REQUIRED_USE="test? ( gui )" + +# The mirror restriction is due to the French documentation for which +# "Other kind of redistributions require the consent of the copyright +# holder." +RESTRICT="!test? ( test ) mirror" + +S="${WORKDIR}/${PN}-${MY_PV}" + +src_prepare() { + default + eautoreconf +} + +src_configure() { + append-cxxflags -std=c++14 # bug 788283 + + if use gui; then + append-cppflags -I$(fltk-config --includedir) + append-lfs-flags + + # Get the big-L flags from fltk's LDFLAGS. + append-ldflags $(fltk-config --ldflags | sed -e 's/\(-L\S*\)\s.*/\1/') + fi + + # Using libsamplerate is currently broken + # + # The giac build system supports --docdir, but the path /usr/share/giac/doc + # is hard-coded throughout the source code, so passing anything else to + # ./configure --docdir just causes problems. Later, we'll put things right. + # + # micropython is for specific use in an upstream project + econf \ + --enable-gmpxx \ + --disable-samplerate \ + --disable-micropy \ + --docdir="${EPREFIX}"/usr/share/giac/doc \ + $(use_enable static-libs static) \ + $(use_enable gui) \ + $(use_enable gui png) \ + $(use_enable ao) \ + $(use_enable ecm) \ + $(use_enable glpk) \ + $(use_enable gc) + +} + +src_install() { + docompress -x "/usr/share/doc/${PF}/"{aide_cas,doc,examples} + emake install DESTDIR="${D}" + + # Move all of /usr/share/giac (which contains only documentation) to + # its /usr/share/doc/${PF} counterpart. + dodir /usr/share/doc + mv "${ED}"/usr/share/giac "${ED}/usr/share/doc/${PF}" || die + + # and create a symlink from the original location to the new one + dosym "./doc/${PF}" /usr/share/giac + + # This is duplicated in ${ED}/usr/share/doc/${PF}/examples + rm -r "${ED}/usr/share/doc/${PF}/doc/Exemples" || die + + # These aren't supposed to be installed at all. + find "${ED}/usr/share/doc/${PF}" -type f -name 'Makefile*' -delete || die + + # The French docs are not freely licensed according to the README. + rm -r "${ED}/usr/share/doc/${PF}/doc/fr" || die + + dodoc AUTHORS ChangeLog INSTALL NEWS README TROUBLES + if ! use gui; then + rm -rf \ + "${ED}"/usr/bin/x* \ + "${ED}"/usr/share/application-registry \ + "${ED}"/usr/share/applications \ + "${ED}"/usr/share/icons \ + || die "failed to clean up fltk files" + fi + + if ! use doc; then + rm -r "${ED}/usr/share/doc/${PF}/doc" || die "failed to remove doc directory" + else + for lang in ${LANGS}; do + if use l10n_$lang; then + dosym ../aide_cas "/usr/share/doc/${PF}/doc/${lang}/aide_cas" + else + rm -r "${ED}/usr/share/giac/doc/${lang}" \ + || die "failed to remove ${lang} documentation" + fi + done + fi + + if ! use examples; then + rm -r "${ED}/usr/share/doc/${PF}/examples" \ + || die "failed to remove examples" + fi + + find "${ED}" -type f -name '*.la' -delete || die +} + +pkg_postinst() { + if use gui; then + xdg_desktop_database_update + xdg_icon_cache_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_desktop_database_update + xdg_icon_cache_update + fi +}