summaryrefslogtreecommitdiff
path: root/dev-lang
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-07-14 01:38:22 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-07-14 01:38:22 +0100
commitae5005f56ad29d19861ad8a8acb541cf0e99c8d9 (patch)
tree519be2a26050e34055ea7f44d9272c9365e10e5d /dev-lang
parentd01ca4361883c2aec4ffb1c2dcd75980773fdc31 (diff)
gentoo auto-resync : 14:07:2022 - 01:38:22
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/Manifest.gzbin19027 -> 19030 bytes
-rw-r--r--dev-lang/R/Manifest2
-rw-r--r--dev-lang/R/R-4.2.1.ebuild254
-rw-r--r--dev-lang/nim/Manifest7
-rw-r--r--dev-lang/nim/metadata.xml3
-rw-r--r--dev-lang/nim/nim-1.4.8.ebuild92
-rw-r--r--dev-lang/nim/nim-1.6.6-r1.ebuild105
-rw-r--r--dev-lang/nim/nim-1.6.6.ebuild92
8 files changed, 367 insertions, 188 deletions
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index ccc5731bb149..a76bbdf57c22 100644
--- a/dev-lang/Manifest.gz
+++ b/dev-lang/Manifest.gz
Binary files differ
diff --git a/dev-lang/R/Manifest b/dev-lang/R/Manifest
index d7ab60aed40c..37c8754f2889 100644
--- a/dev-lang/R/Manifest
+++ b/dev-lang/R/Manifest
@@ -3,6 +3,8 @@ AUX R-3.4.1-rmath-shared.patch 899 BLAKE2B 0aba9c1c5417531647bed3829d53909e6f398
AUX R-3.6.2-no-LDFLAGS-in-libR-pkg-config.patch 469 BLAKE2B ee716b068316bbac0c07fe44bef739a491af5f4e90ba268cf7db428350763d498ab0b1bc9efa02ac885d0ac64aa5d076deaac094725766e340cbcd9d7e839b22 SHA512 cb7bc73fd0f1aa4159b25bc76318074662afddafdef8acc8caf20afb98da6c065c3bd0895c4a7a7f18a174d21d59c0f054a46aa513db1b5b622a110e7c54e171
AUX R-3.6.2-no-gzip-doc.patch 443 BLAKE2B 1154e9f67f08e1d8b286152bd093789a0b94b3a2422bdb54d1d1d03729bd892811e68121309c41ef4323ed31efcea82f3e265b37445e9870bbd88c5413311345 SHA512 99678dbf809761a2991cd5cbe6ff5ba8d1c3e9388f69d94b30726caae4eee29ae50ee74aa24e3851d41559f804381ec18a2cd818b97b5417bf7ae660c93ad2a6
DIST R-4.2.0.tar.gz 37585694 BLAKE2B 5ba4d3b9397e92b72af729d88ff562655e0dd7c547bd371638aa76d4f1701f4f8a7911d500cf4f10d87b62457f8f8ce7a946d893477ceb7268b06bd59bc10f3d SHA512 99e71dad00b63e44bfcb8dc9539ff1951809112882d9ee7e06a4e99bce2e6ceac24e8348fd598c21e6d5ab0e0629a85170cde208bfa8145af91c398ac4ef7bcd
+DIST R-4.2.1.tar.gz 37601544 BLAKE2B b898262a05c92e125c36a661a89be34b1698177832002f7aa21ccfcf0b30a06481e2154eea9e77a94b1ad8ca35c7bc4aead2be99b862dca7450acee1bec6a99f SHA512 c1baf46d22304c425dde79301183f80f99f2752300137b0b6f902c3e55e2419d5e9185c97de6e3c840a38f6345a6c334aa24161656d4a7f6fa01570390f1122f
DIST R-78d6830e28ea90a046da79a9b4f70c39594bb6d6.bash_completion 13596 BLAKE2B 53338e4a1c4f68beb69247216e553dbcac47f660fbf032bfebf7a660e32d2cff5b11ed35411c52de7e1fd6e00bbf5b5ea19369a325fa0a38bd93d63dc3288cbd SHA512 9ccd19bb1b0c18a2f13035ccd6809447429e197e298fb4d1df808ef345d723b42f75a1b91c349f6dbb46e4a82e59ef33e11300c495d79b63d670d0c0f2b16a06
EBUILD R-4.2.0.ebuild 7338 BLAKE2B 21b5f57bd6e00c4c7eb3f086d7566c4699f549c62e243c5de1044b0ed9349f911ca78c50a133c6e1c1f77c69f8f2c19a7ab9892aa0c1a68308a051096e9a6114 SHA512 dcf2ddb27f6ab783c3f828e6f5a07ea8e71130734f7f500b2ffdd8c72b72dea10df37ffb38756e8af7bb6b20ec66743cf82568d5095d2e684ebff5d1d0e686d3
+EBUILD R-4.2.1.ebuild 7333 BLAKE2B e3e1d97cb16f9fe9e60e89342d05fbfe514b2b2a9be09171d9c605c60405351cfd964f6460b41e4a9e014ed737b40a672caf27db0d37b24303fedbd031528964 SHA512 3dc2cef4e3fdeee61aeb87f1c135873ada92305e1325115f10950a02fc2082b4d95d0b68efb3fe0934491b1c5a681fc611718480cabcc1887ff5271cba4cfb87
MISC metadata.xml 1261 BLAKE2B 468178b60e894bd8dff85ecbf74d10dce61bdb21fc8b61f43d7778dbc345234fc6b5e28c7608534d558c95fa6583b5acd2e55cef7096c4cff88e84776e93e03a SHA512 0d42cb1e3b951e3b1cbf09e6e48d47cf7635c8b16708b5b1edb6c5d1b422cad2f16ce5c6f7c603efb365eb9d5b794d2d2653b408147aa9e921cd57feb3840013
diff --git a/dev-lang/R/R-4.2.1.ebuild b/dev-lang/R/R-4.2.1.ebuild
new file mode 100644
index 000000000000..bdc4ef782ed2
--- /dev/null
+++ b/dev-lang/R/R-4.2.1.ebuild
@@ -0,0 +1,254 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 autotools flag-o-matic fortran-2 toolchain-funcs
+
+# latest git commit for R bash completion: https://github.com/deepayan/rcompletion
+BCPV=78d6830e28ea90a046da79a9b4f70c39594bb6d6
+
+DESCRIPTION="Language and environment for statistical computing and graphics"
+HOMEPAGE="https://www.r-project.org/"
+SRC_URI="
+ mirror://cran/src/base/R-4/${P}.tar.gz
+ https://raw.githubusercontent.com/deepayan/rcompletion/${BCPV}/bash_completion/R -> ${PN}-${BCPV}.bash_completion"
+
+LICENSE="|| ( GPL-2 GPL-3 ) LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="cairo doc icu java jpeg lapack lto minimal nls openmp perl png prefix profile readline test tiff tk X"
+
+REQUIRED_USE="
+ png? ( || ( cairo X ) )
+ jpeg? ( || ( cairo X ) )
+ tiff? ( || ( cairo X ) )"
+RESTRICT="
+ minimal? ( test )
+ !test? ( test )"
+
+# At least one package installation in the test suite requires TeX,
+# and will fail without it (bug #718056).
+DEPEND="
+ app-arch/bzip2
+ app-arch/xz-utils
+ app-text/ghostscript-gpl
+ dev-libs/libpcre2:=
+ >=dev-libs/tre-0.8.0_p20210321[approx]
+ net-libs/libtirpc
+ net-misc/curl
+ virtual/blas
+ sys-libs/zlib[minizip]
+ || (
+ sys-apps/coreutils
+ app-misc/realpath
+ )
+ cairo? (
+ x11-libs/cairo:=[X=]
+ x11-libs/pango:=
+ )
+ icu? ( dev-libs/icu:= )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ lapack? ( virtual/lapack )
+ perl? ( dev-lang/perl )
+ png? ( media-libs/libpng:= )
+ readline? ( sys-libs/readline:= )
+ tiff? ( media-libs/tiff:= )
+ tk? ( dev-lang/tk:= )
+ X? (
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-misc/xdg-utils
+ )"
+RDEPEND="${DEPEND}
+ java? ( >=virtual/jre-1.8:* )"
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ virtual/latex-base
+ dev-texlive/texlive-fontsrecommended
+ )
+ test? ( virtual/latex-base )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.4.1-parallel.patch
+ "${FILESDIR}"/${PN}-3.4.1-rmath-shared.patch
+ "${FILESDIR}"/${PN}-3.6.2-no-LDFLAGS-in-libR-pkg-config.patch
+ "${FILESDIR}"/${PN}-3.6.2-no-gzip-doc.patch
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ FORTRAN_NEED_OPENMP=1
+ fi
+
+ fortran-2_pkg_setup
+
+ # avoid using existing R installation
+ unset R_HOME
+}
+
+src_prepare() {
+ default
+
+ # fix packages.html for doc (gentoo bug #205103)
+ sed -e "s:../../../library:../../../../$(get_libdir)/R/library:g" \
+ -i src/library/tools/R/Rd.R || die
+
+ # fix Rscript path when installed (gentoo bug #221061)
+ sed -e "s:-DR_HOME='\"\$(rhome)\"':-DR_HOME='\"${EPREFIX}/usr/$(get_libdir)/${PN}\"':" \
+ -i src/unix/Makefile.in || die "sed unix Makefile failed"
+
+ # fix HTML links to manual (gentoo bug #273957)
+ sed -e 's:\.\./manual/:manual/:g' \
+ -i $(grep -Flr ../manual/ doc) || die "sed for HTML links failed"
+
+ # Disable this test until it passes again,
+ # https://bugs.r-project.org/show_bug.cgi?id=18338
+ sed -e 's/ reg-packages.R / /' \
+ -i tests/Makefile.common || die
+
+ use lapack &&
+ export LAPACK_LIBS="$($(tc-getPKG_CONFIG) --libs lapack)"
+
+ if use X; then
+ export R_BROWSER="$(type -p xdg-open)"
+ export R_PDFVIEWER="$(type -p xdg-open)"
+ fi
+ use perl &&
+ export PERL5LIB="${S}/share/perl:${PERL5LIB:+:}${PERL5LIB}"
+
+ # don't search /usr/local
+ sed -i -e '/FLAGS=.*\/local\//c\: # removed by ebuild' configure.ac || die
+
+ # Fix for Darwin (macOS)
+ if use prefix; then
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ sed -e 's:-install_name libR.dylib:-install_name ${libdir}/R/lib/libR.dylib:' \
+ -e 's:-install_name libRlapack.dylib:-install_name ${libdir}/R/lib/libRlapack.dylib:' \
+ -e 's:-install_name libRblas.dylib:-install_name ${libdir}/R/lib/libRblas.dylib:' \
+ -e "/SHLIB_EXT/s/\.so/.dylib/" \
+ -i configure.ac || die
+ # sort of "undo" 2.14.1-rmath-shared.patch
+ sed -e "s:-Wl,-soname=libRmath.so:-install_name ${EPREFIX}/usr/$(get_libdir)/libRmath.dylib:" \
+ -i src/nmath/standalone/Makefile.in || die
+ else
+ append-ldflags -Wl,-rpath="${EPREFIX}/usr/$(get_libdir)/R/lib"
+ fi
+ fi
+
+ AT_M4DIR=m4 eautoreconf
+}
+
+src_configure() {
+ filter-ldflags -Wl,-Bdirect -Bdirect
+
+ econf \
+ --enable-byte-compiled-packages \
+ --enable-R-shlib \
+ --disable-R-framework \
+ --disable-R-static-lib \
+ --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
+ rdocdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --with-system-tre \
+ $(use_enable java) \
+ $(use_enable lto lto R) \
+ $(use_enable nls) \
+ $(use_enable openmp) \
+ $(use_enable profile R-profiling) \
+ $(use_enable profile memory-profiling) \
+ $(use_with cairo) \
+ $(use_with icu ICU) \
+ $(use_with jpeg jpeglib) \
+ $(use_with lapack) \
+ $(use_with !minimal recommended-packages) \
+ $(use_with png libpng) \
+ $(use_with readline) \
+ $(use_with tiff libtiff) \
+ $(use_with tk tcltk) \
+ $(use_with tk tk-config "${ESYSROOT}"/usr/$(get_libdir)/tkConfig.sh) \
+ $(use_with tk tcl-config "${ESYSROOT}"/usr/$(get_libdir)/tclConfig.sh) \
+ $(use_with X x)
+}
+
+src_compile() {
+ export VARTEXFONTS="${T}"/fonts
+ emake AR="$(tc-getAR)"
+ emake -C src/nmath/standalone shared AR="$(tc-getAR)"
+ use doc && emake info pdf
+}
+
+src_install() {
+ default
+ emake -j1 -C src/nmath/standalone DESTDIR="${D}" install
+
+ if use doc; then
+ emake DESTDIR="${D}" install-info install-pdf
+ dosym ../manual /usr/share/doc/${PF}/html/manual
+ fi
+
+ newenvd - 99R <<-_EOF_
+ LDPATH="${EPREFIX}/usr/$(get_libdir)/${PN}/lib"
+ R_HOME="${EPREFIX}/usr/$(get_libdir)/${PN}"
+ _EOF_
+
+ newbashcomp "${DISTDIR}"/${PN}-${BCPV}.bash_completion ${PN}
+ # The buildsystem has a different understanding of install_names than
+ # we require. Since it builds modules like shared objects (wrong), many
+ # objects (all modules) get an incorrect install_name. Fixing the build
+ # system here is not really trivial.
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ local mod
+ pushd "${ED}"/usr/$(get_libdir)/R >/dev/null || die
+ for mod in $(find . -name "*.dylib") ; do
+ mod=${mod#./}
+ install_name_tool -id "${EPREFIX}/usr/$(get_libdir)/R/${mod}" "${mod}"
+ done
+ popd >/dev/null || die
+ fi
+
+ # Users are encouraged to access some of the the R documentation
+ # interactively, through functions like "contributors()" that
+ # tries to open the "AUTHORS" file. Other files can be accessed
+ # by name with RShowDoc(), and the documentation for e.g. license()
+ # and RShowDoc() suggests a few of these names. Here we try to
+ # collect as many names as possible that a user might actually
+ # try to view through R, because if we don't decompress them,
+ # then R doesn't know what to do with 'em. Bug #556706.
+ local INTERACTIVE_DOCS=(
+ AUTHORS
+ COPYING
+ FAQ
+ NEWS
+ THANKS
+ )
+
+ # Other data sources that are shipped as "documentation," but which
+ # need to be accessible via their original unmolested filenames.
+ local INTERACTIVE_DATA=(
+ BioC_mirrors.csv
+ CRAN_mirrors.csv
+ KEYWORDS.db
+ NEWS.rds
+ )
+
+ local f NOCOMPRESS_DOCS=( "${INTERACTIVE_DOCS[@]}" "${INTERACTIVE_DATA[@]}" )
+ for f in "${NOCOMPRESS_DOCS[@]}"; do
+ docompress -x /usr/share/doc/${PF}/${f}
+ done
+
+ # Finally, an extra copy of this started showing up at some point...
+ rm "${ED}"/usr/$(get_libdir)/R/COPYING || die
+}
+
+pkg_postinst() {
+ if use java; then
+ einfo "Re-initializing java paths for ${P}"
+ R CMD javareconf
+ fi
+}
diff --git a/dev-lang/nim/Manifest b/dev-lang/nim/Manifest
index e19808656d46..00c1f323f1aa 100644
--- a/dev-lang/nim/Manifest
+++ b/dev-lang/nim/Manifest
@@ -1,10 +1,9 @@
AUX nim-0.20.0-paths.patch 934 BLAKE2B 6a4e44c5656cde6d5127bf6a6b8db92cdf8aada0892c27d536d0c1030ed7da8dc97138a8941030101918021f2a301fa683169c8a656fefc6fb7d0fcdb24029d4 SHA512 bf8dbc3e3861ec3ea2718092b981e495194ead5b547e69d01d5d842d128dc4b96b0ba3e95c78afd8fd822d594199315a01de370851ed8f594c091231b9a10ee9
-DIST nim-1.4.8.tar.xz 4786360 BLAKE2B 961b38275c4f9de87ac522c5b47368ce7f5543811a2dfd7b4f3fd79a104bcd0458caaaaab1705f99eb42c64735ca5f71d5018f8a8275a430d883233b28b1d412 SHA512 e6b245271495880f0eea271c46b4f5ce9168a421716a9a22367b6be3c2a9822937aad1f48eb61c151b040ac961728a89c8a6d143c8300057c0d8c1f2d66f3dd3
DIST nim-1.6.2.tar.xz 5181616 BLAKE2B adedbcaad1b135b6f99459894856190103e2d2b678849e0418f77c02a54fde44224456ea13949f3fe9f5f020a90adde46593497895674bd9ae892b17708df292 SHA512 052b62c987035f7633f965356993cd4eec686f4f4f5c675cf966d82cb30fcf574045887a4402bcc20e487299fb5e8f65a921951c2dc21ac334e695e31d95d992
DIST nim-1.6.4.tar.xz 5130208 BLAKE2B d0f297581677bbb9fb185a8b4198f48bb58efe81a1624f62051bc1e0a93f879a0cec172f11a41784ca715ba3c151dc5307e96c15c54908aa40df406040891d6c SHA512 f4d082f37f0e675e8cdb4340d67f2e58b5e6ac5bb51dab1ded5417097f3b86d71fa585ef12ee1c3cd5b17285589cbe9d5658fcb29c98547f7967a1b6f0cb4646
DIST nim-1.6.6.tar.xz 5149956 BLAKE2B 2fd1b40f1ecc1200255052d9e013c55287d3e01337146d0b1386d0f3fc9c14fda1e8e82ee289e782c77a573c1ae0985ea7f900f61e6b9824a9eb4b5c803c7f71 SHA512 6ea8d3f61adae48184dd0e3ac393296fd3bd5ead818e7dee949f43eccbd0b6229ebfc474353ddd63cc734f82c3247998fbfe88362061983f978ad8d0ab7fa677
-EBUILD nim-1.4.8.ebuild 2078 BLAKE2B 2a9781ebc99b6ae00c67f3034e71b8adff46f1452f628187975219ea73ee6c60f6176dc55fa0520cd83f0969302906fe79f5d87aae17cf539447a8fb1e1bf169 SHA512 3d38c1304c76727461e7e7bcc5b85770c42364da5b3c01fcada9c8528146687cab141e9acbf47b82ef85c68f892882c0266c76fb25d3ee39e84422dafee6be73
+DIST nim-patches-1.6.6.tar.gz 1975 BLAKE2B 75490f4c61f4d920aadb2ad5908cb2773e270f80cee95f937ede8125bad5688b71840ed7f48659db892e4017437a0454b38eab18ae8b13c6b48207d0a7714371 SHA512 4d1590e7d05ad64432b943f8da9edb2b05213400181d1e07a0e40f479afbceb1997d0ea0f05a73d550afe60cf4b657f7e34840907ea16c3b9e96824e9f29e0e5
EBUILD nim-1.6.2.ebuild 2139 BLAKE2B 9ce2020017887e5403aefd67712ffbf0b4f6c42c7f5ad96eddac2fef3afdafbd6f6264dd27eea2b6968b0dd816d714ccb1a8bf7debed5a338cf7a65c24ce4eb7 SHA512 b910a98baac46d490be0764b79f6438a61e2ed6dfa5f998102bf52ae7dead628a1aabb2e488860c61d6f9eef54f27477797e654a588c4ee8ba67cbe3ef8c13eb
EBUILD nim-1.6.4.ebuild 2150 BLAKE2B df6e12e923f86d1ae2fd7f97c3d58884aaffae1f6db49f1fe0bda6d4f566716b398f638277697ad3850f8d00bdda1f36508e0740a7c7b1e6cc728b1671db7382 SHA512 5fa6a5df5374ef85198095e08647a3c1bad33ad999eb18458ae593b65f964c30c805488eab360a793a5a0c8ca9df6dba45d000edbbff16d6e19602339f6d3786
-EBUILD nim-1.6.6.ebuild 2150 BLAKE2B df6e12e923f86d1ae2fd7f97c3d58884aaffae1f6db49f1fe0bda6d4f566716b398f638277697ad3850f8d00bdda1f36508e0740a7c7b1e6cc728b1671db7382 SHA512 5fa6a5df5374ef85198095e08647a3c1bad33ad999eb18458ae593b65f964c30c805488eab360a793a5a0c8ca9df6dba45d000edbbff16d6e19602339f6d3786
-MISC metadata.xml 1894 BLAKE2B 8ba43a558af584b0c455e16f6d710a2482fbd3d8a4ae80817ee0080165227e931f40b2269d6316ca4fc8773cea0e6d941feafcc30d8a2eb5eb0843d8f7e7df71 SHA512 6fbc92e65c8a85c82cba372aba12133acc626c2a33ec35aff4a02246e70f64dd06c51af121f17fb5cbab48df1aafa3e9af9375a1ccbd769590e26078a7dacf88
+EBUILD nim-1.6.6-r1.ebuild 2509 BLAKE2B 4785006c8934be25036f007982f33725180dbe361b79d76a39afa186574b545a3a4619243db29fb2f38698aee496a31a1dbee533bbb028af3d80c609f668c063 SHA512 e5f398d9da2387b6ad5f24d58cb518141d9b23ec750cbb210ef06fdd4a92b1a3153defbbd493e5fcc77c05efdabd626361139645fef833ba4a69d8ef856e770c
+MISC metadata.xml 1975 BLAKE2B 892f172a8f69200207ce9f3f9415ec08adddf30e52d975a706c2de75e643a9a7e1e9911340ff9aaf9d74feb8e159172c90ecb7eb75642319afc8a5ab3d04f030 SHA512 69772a1e0469fdd71e28037eb2ecba46b78355a120fbacfb1c520e0e5c6c5a0b68fc5b7b0695f4ca7e682031f68a4350fe8108e97e64eb6b86b49fdc57b07977
diff --git a/dev-lang/nim/metadata.xml b/dev-lang/nim/metadata.xml
index cca80bdcbe60..d24270e82fb6 100644
--- a/dev-lang/nim/metadata.xml
+++ b/dev-lang/nim/metadata.xml
@@ -36,4 +36,7 @@
<bugs-to>https://github.com/nim-lang/Nim/issues/</bugs-to>
<remote-id type="github">nim-lang/Nim</remote-id>
</upstream>
+ <use>
+ <flag name="experimental">Apply experimental patches</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-lang/nim/nim-1.4.8.ebuild b/dev-lang/nim/nim-1.4.8.ebuild
deleted file mode 100644
index d0ec48b68ee2..000000000000
--- a/dev-lang/nim/nim-1.4.8.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit bash-completion-r1 multiprocessing toolchain-funcs
-
-DESCRIPTION="compiled, garbage-collected systems programming language"
-HOMEPAGE="https://nim-lang.org/"
-SRC_URI="https://nim-lang.org/download/${P}.tar.xz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="+readline test"
-
-RESTRICT=test # need to sort out depends and numerous failures
-
-RDEPEND="
- readline? ( sys-libs/readline:0= )
-"
-DEPEND="
- ${RDEPEND}
- test? ( net-libs/nodejs )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.20.0-paths.patch
-)
-
-# Generated by nim
-QA_FLAGS_IGNORED="
-usr/bin/atlas
-usr/bin/nim
-usr/bin/nim_dbg
-usr/bin/nimble
-usr/bin/nimgrep
-usr/bin/nimpretty
-usr/bin/nimsuggest
-usr/bin/testament
-"
-
-_run() {
- echo "$@"
- "$@" || die "'$*' failed"
-}
-
-nim_use_enable() {
- [[ -z $2 ]] && die "usage: nim_use_enable <USE flag> <compiler flag>"
- use $1 && echo "-d:$2"
-}
-
-src_configure() {
- export XDG_CACHE_HOME=${T}/cache #667182
- tc-export CC LD
-
- # Override default CC=gcc.
- echo "gcc.exe = \"$(tc-getCC)\"" >> config/nim.cfg || die
- echo "gcc.linkerexe = \"$(tc-getCC)\"" >> config/nim.cfg || die
- echo "gcc.cpp.exe = \"$(tc-getCXX)\"" >> config/nim.cfg || die
- echo "gcc.cpp.linkerexe = \"$(tc-getCXX)\"" >> config/nim.cfg || die
-}
-
-src_compile() {
-
- _run ./build.sh
-
- _run ./bin/nim --parallelBuild:$(makeopts_jobs) c koch
- _run ./koch boot --parallelBuild:$(makeopts_jobs) -d:release $(nim_use_enable readline useGnuReadline)
- PATH="./bin:$PATH" _run ./koch tools --parallelBuild:$(makeopts_jobs)
-}
-
-src_test() {
- PATH="./bin:$PATH" _run ./koch test --parallelBuild:$(makeopts_jobs)
-}
-
-src_install() {
- PATH="./bin:$PATH" _run ./koch install "${ED}"
- rm -r "${ED}/usr/share/nim/doc" || die "failed to remove 'doc'"
-
- exeinto /usr/bin
-
- local bin_exe
- for bin_exe in bin/*; do
- # './koch install' installs only 'nim' binary
- # but not the rest
- [[ ${bin_exe} == bin/nim ]] && continue
- doexe "${bin_exe}"
- done
-
- newbashcomp tools/nim.bash-completion ${PN}
-}
diff --git a/dev-lang/nim/nim-1.6.6-r1.ebuild b/dev-lang/nim/nim-1.6.6-r1.ebuild
new file mode 100644
index 000000000000..9d4da4f7a23b
--- /dev/null
+++ b/dev-lang/nim/nim-1.6.6-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 multiprocessing toolchain-funcs xdg-utils
+
+DESCRIPTION="compiled, garbage-collected systems programming language"
+HOMEPAGE="https://nim-lang.org/"
+SRC_URI="
+ https://nim-lang.org/download/${P}.tar.xz
+ experimental? ( https://git.sr.ht/~cyber/${PN}-patches/archive/${PV}.tar.gz -> ${PN}-patches-${PV}.tar.gz )
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug experimental +readline"
+RESTRICT="test" # need to sort out depends and numerous failures
+
+RDEPEND="readline? ( sys-libs/readline:0= )"
+DEPEND="${RDEPEND}"
+# BDEPEND="test? ( net-libs/nodejs )"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.20.0-paths.patch )
+
+_run() {
+ einfo "Running: ${@}"
+ PATH="${S}/bin:${PATH}" "${@}" || die "Failed: \"${*}\""
+}
+
+nim_use_enable() {
+ [[ -z "${2}" ]] && die "usage: nim_use_enable <USE flag> <compiler flag>"
+ use "${1}" && echo "-d:${2}"
+}
+
+# Borrowed from nim-utils.eclass (guru overlay).
+nim_gen_config() {
+ cat > nim.cfg <<- EOF || die "Failed to create Nim config"
+ cc:"gcc"
+ gcc.exe:"$(tc-getCC)"
+ gcc.linkerexe:"$(tc-getCC)"
+ gcc.cpp.exe:"$(tc-getCXX)"
+ gcc.cpp.linkerexe:"$(tc-getCXX)"
+ gcc.options.speed:"${CFLAGS}"
+ gcc.options.size:"${CFLAGS}"
+ gcc.options.debug:"${CFLAGS}"
+ gcc.options.always:"${CPPFLAGS}"
+ gcc.options.linker:"${LDFLAGS}"
+ gcc.cpp.options.speed:"${CXXFLAGS}"
+ gcc.cpp.options.size:"${CXXFLAGS}"
+ gcc.cpp.options.debug:"${CXXFLAGS}"
+ gcc.cpp.options.always:"${CPPFLAGS}"
+ gcc.cpp.options.linker:"${LDFLAGS}"
+
+ $([[ "${NOCOLOR}" == true || "${NOCOLOR}" == yes ]] && echo '--colors:"off"')
+ -d:"$(usex debug debug release)"
+ --parallelBuild:"$(makeopts_jobs)"
+ EOF
+}
+
+src_prepare() {
+ default
+
+ # note: there are consumers in the ::guru overlay
+ use experimental && \
+ eapply "${WORKDIR}"/${PN}-patches-${PV}
+}
+
+src_configure() {
+ xdg_environment_reset # bug 667182
+
+ unset NIMBLE_DIR
+ tc-export CC CXX LD
+
+ nim_gen_config
+}
+
+src_compile() {
+ _run bash ./build.sh
+
+ _run ./bin/nim compile koch
+ _run ./koch boot $(nim_use_enable readline useGnuReadline)
+ _run ./koch tools
+}
+
+src_test() {
+ _run ./koch test
+}
+
+src_install() {
+ _run ./koch install "${ED}"
+
+ # "./koch install" installs only "nim" binary
+ # but not the rest
+ exeinto /usr/bin
+ local exe
+ for exe in bin/* ; do
+ [[ "${exe}" == bin/nim ]] && continue
+ doexe "${exe}"
+ done
+
+ newbashcomp tools/nim.bash-completion nim
+ newbashcomp dist/nimble/nimble.bash-completion nimble
+}
diff --git a/dev-lang/nim/nim-1.6.6.ebuild b/dev-lang/nim/nim-1.6.6.ebuild
deleted file mode 100644
index 11af93abf307..000000000000
--- a/dev-lang/nim/nim-1.6.6.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit bash-completion-r1 multiprocessing toolchain-funcs
-
-DESCRIPTION="compiled, garbage-collected systems programming language"
-HOMEPAGE="https://nim-lang.org/"
-SRC_URI="https://nim-lang.org/download/${P}.tar.xz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="debug +readline"
-RESTRICT="test" # need to sort out depends and numerous failures
-
-RDEPEND="readline? ( sys-libs/readline:0= )"
-DEPEND="${RDEPEND}"
-# BDEPEND="test? ( net-libs/nodejs )"
-
-PATCHES=( "${FILESDIR}"/${PN}-0.20.0-paths.patch )
-
-# Generated by nim
-QA_FLAGS_IGNORED="
-usr/bin/atlas
-usr/bin/nim
-usr/bin/nim_dbg
-usr/bin/nimble
-usr/bin/nimgrep
-usr/bin/nimpretty
-usr/bin/nimsuggest
-usr/bin/testament
-"
-
-_run() {
- echo "Running: ${@}"
- PATH="${S}/bin:${PATH}" "${@}" || die "Failed: \"${*}\""
-}
-
-nim_use_enable() {
- [[ -z "${2}" ]] && die "usage: nim_use_enable <USE flag> <compiler flag>"
- use "${1}" && echo "-d:${2}"
-}
-
-src_configure() {
- export XDG_CACHE_HOME="${T}/cache" # 667182
- unset NIMBLE_DIR
- tc-export CC CXX LD
-
- local build_type
- if use debug ; then
- build_type="debug"
- else
- build_type="release"
- fi
- export NIM_OPTS=( --parallelBuild:$(makeopts_jobs) -d:${build_type} )
-
- # Override defaults
- echo "gcc.exe = \"$(tc-getCC)\"" >> config/nim.cfg || die
- echo "gcc.linkerexe = \"$(tc-getCC)\"" >> config/nim.cfg || die
- echo "gcc.cpp.exe = \"$(tc-getCXX)\"" >> config/nim.cfg || die
- echo "gcc.cpp.linkerexe = \"$(tc-getCXX)\"" >> config/nim.cfg || die
-}
-
-src_compile() {
- _run bash ./build.sh
-
- _run ./bin/nim ${NIM_OPTS[@]} compile koch
- _run ./koch boot ${NIM_OPTS[@]} $(nim_use_enable readline useGnuReadline)
- _run ./koch tools ${NIM_OPTS[@]}
-}
-
-src_test() {
- _run ./koch test
-}
-
-src_install() {
- _run ./koch install "${ED}"
-
- # "./koch install" installs only "nim" binary
- # but not the rest
- exeinto /usr/bin
- local exe
- for exe in bin/* ; do
- [[ "${exe}" == bin/nim ]] && continue
- doexe "${exe}"
- done
-
- newbashcomp tools/nim.bash-completion nim
- newbashcomp dist/nimble/nimble.bash-completion nimble
-}