* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-01-03 19:56 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-01-03 19:56 UTC (permalink / raw
To: gentoo-commits
commit: 1f973ddfe636364bfebd455a53434673af101030
Author: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Wed Jan 3 07:09:03 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Wed Jan 3 19:38:14 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=1f973ddf
dev-util/dub: add 1.35.1
Signed-off-by: Horodniceanu Andrei <a.horodniceanu <AT> proton.me>
dev-util/dub/Manifest | 1 +
dev-util/dub/dub-1.35.1.ebuild | 46 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 47 insertions(+)
diff --git a/dev-util/dub/Manifest b/dev-util/dub/Manifest
index 2a5aed3..9a9d96c 100644
--- a/dev-util/dub/Manifest
+++ b/dev-util/dub/Manifest
@@ -1 +1,2 @@
DIST dub-1.33.0.tar.gz 1488522 BLAKE2B f3171c4c85dca2bdae133c1f9f8f4ef79726a882ace9242ee825716c2f38ade16171eb1f0395856117d2b7ed592dd19e8e223ddff78ba900716832b346162f7e SHA512 027c77ac6179cb0cf26618a04604c15bbe4ae668901b54a0029b63ce4585cd1017c463cd9b6bc58f2eabafab85fb58935feb2866714e69d281d1d5cbe0a3f806
+DIST dub-1.35.1.tar.gz 1494965 BLAKE2B 400e210584660f7ac67732006ca6d88156adbbf2bf221aa244e317bf7c2772a6a01d9e141252fbf0cfde4c07302ee533593f3a2f418f9e120edc7359a83180cf SHA512 a371a7ec7003a4a4fb642a3567fce0685c99f4940a02de94d026bdc6fe4e84512b16e4bb57673da4d3b8e25177cc3df329da41862086cecc7b98aec1ebf9e4e7
diff --git a/dev-util/dub/dub-1.35.1.ebuild b/dev-util/dub/dub-1.35.1.ebuild
new file mode 100644
index 0000000..ac524f5
--- /dev/null
+++ b/dev-util/dub/dub-1.35.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Package and build management system for D"
+HOMEPAGE="https://code.dlang.org/"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+GITHUB_URI="https://codeload.github.com/dlang"
+SRC_URI="${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz"
+
+# Upstream recommends the latest version available
+DLANG_VERSION_RANGE="2.100-2.106"
+DLANG_PACKAGE_TYPE="single"
+
+inherit dlang
+
+d_src_compile() {
+ local imports=source versions="DubApplication DubUseCurl"
+ dlang_compile_bin bin/dub $(<build-files.txt)
+
+ ## Currently broken with gdc
+ # Generate man pages
+ #bin/dub scripts/man/gen_man.d || die "Could not generate man pages."
+}
+
+d_src_test() {
+ echo "Test phase disabled due to multiple problems."
+ #DUB="${S}/bin/dub" test/run-unittest.sh || die "Test phase failed"
+}
+
+d_src_install() {
+ dobin bin/dub
+ dodoc README.md
+
+ ## Currently broken with gdc
+ # All the files in the directory below, with the exception of gen_man.d and README, are man pages.
+ # To keep the ebuild simple, we will just glob on the files that end in .1 since there are currently
+ # no man pages in a different section.
+ #doman scripts/man/*.1
+}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-01-14 20:45 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-01-14 20:45 UTC (permalink / raw
To: gentoo-commits
commit: 744d388a0c92404d80bb0f125394a2c6cc624f2f
Author: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Fri Jan 12 18:29:53 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sun Jan 14 20:43:48 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=744d388a
dev-util/dub: add and enable tests for 1.35.1-r1
Signed-off-by: Horodniceanu Andrei <a.horodniceanu <AT> proton.me>
dev-util/dub/Manifest | 3 +
dev-util/dub/dub-1.35.1-r1.ebuild | 148 ++++++++++++++++++++++++++++++++++++++
2 files changed, 151 insertions(+)
diff --git a/dev-util/dub/Manifest b/dev-util/dub/Manifest
index 9a9d96c..b6c5eda 100644
--- a/dev-util/dub/Manifest
+++ b/dev-util/dub/Manifest
@@ -1,2 +1,5 @@
DIST dub-1.33.0.tar.gz 1488522 BLAKE2B f3171c4c85dca2bdae133c1f9f8f4ef79726a882ace9242ee825716c2f38ade16171eb1f0395856117d2b7ed592dd19e8e223ddff78ba900716832b346162f7e SHA512 027c77ac6179cb0cf26618a04604c15bbe4ae668901b54a0029b63ce4585cd1017c463cd9b6bc58f2eabafab85fb58935feb2866714e69d281d1d5cbe0a3f806
DIST dub-1.35.1.tar.gz 1494965 BLAKE2B 400e210584660f7ac67732006ca6d88156adbbf2bf221aa244e317bf7c2772a6a01d9e141252fbf0cfde4c07302ee533593f3a2f418f9e120edc7359a83180cf SHA512 a371a7ec7003a4a4fb642a3567fce0685c99f4940a02de94d026bdc6fe4e84512b16e4bb57673da4d3b8e25177cc3df329da41862086cecc7b98aec1ebf9e4e7
+DIST gitcompatibledubpackage-1.0.1.zip 1354 BLAKE2B 60c3ff78c9cc0ca16f36bfdb4d91f6ec7e8d1bc7fb2fae9488e3f24b33fc3b578157f3c2fd9f892743b1fba7ec473267d9027febd3c27ac2af52733e146c341d SHA512 0adb8a97cce0aaac1dbaea978aacf801071457c06413e618b0feb1adaf4169c7a1acbfac2d9c192fada4f2f8bd44e1ea3b9fce8c7cb3fb8bf364eba75f559122
+DIST gitcompatibledubpackage-1.0.4.zip 2041 BLAKE2B 595080956881fd86753b17cdbb12108ab03161806ca51c748017f29251dd47a95a0aebde4442db1783602cfa67a9593014ebb6ca591dcfec2b08eef3d737e2cc SHA512 12057117be99bb4d2351af74cfd36c050734383bfc44b185cf5f9737d982e9fd6840f6968a3246b625d4ec90e9d30f5e394f8fa1febb85464429d771bc8062d0
+DIST urld-2.1.1.zip 15062 BLAKE2B fe123fbef20167e07c81d0f7700a59c48dca28311329f9717283f3e7c88cc2430a1ffc26632c8c1512145b9d6fa6e432cee1677e99be3bd555247f02f7f42b67 SHA512 c4c8d349a8bbac9f234166ed9452ab221f8928e822c6ab95716b05948dbb21ae4309face4158909559698f23aa750c9faef5b2294feef7e601ccbc9a41c3b6bb
diff --git a/dev-util/dub/dub-1.35.1-r1.ebuild b/dev-util/dub/dub-1.35.1-r1.ebuild
new file mode 100644
index 0000000..45e6d75
--- /dev/null
+++ b/dev-util/dub/dub-1.35.1-r1.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Package and build management system for D"
+HOMEPAGE="https://code.dlang.org/"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+DUB_TEST_DEPS=(
+ gitcompatibledubpackage@1.0.1
+ gitcompatibledubpackage@1.0.4
+ urld@2.1.1
+)
+generate_dub_dependencies() {
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+ echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
+ done
+}
+
+GITHUB_URI="https://codeload.github.com/dlang"
+SRC_URI="
+${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
+test? (
+ $(generate_dub_dependencies)
+)
+"
+
+# Upstream recommends the latest version available
+DLANG_VERSION_RANGE="2.100-2.106"
+DLANG_PACKAGE_TYPE="single"
+
+inherit dlang
+
+src_unpack() {
+ unpack "${PN}-${PV}.tar.gz"
+
+ if use test; then
+ # Copy the archives locally. Some tests do need to perform an
+ # actual fetch operation so make all of them available as
+ # archives and let dub figure out the rest.
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+
+ cp "${DISTDIR}/${depName}-${depVersion}.zip" "${T}" || die
+ done
+
+ # Generate a dub.settings.json file that points to the directory with all the deps
+ cat <<EOF > "${T}/dub.settings.json"
+{
+ "registryUrls": [
+ "file://${T}"
+ ],
+ "skipRegistry": "all"
+}
+EOF
+ fi
+}
+
+d_src_compile() {
+ local imports=source versions="DubApplication DubUseCurl"
+ dlang_compile_bin bin/dub $(<build-files.txt)
+
+ ## Currently broken with gdc
+ # Generate man pages
+ #bin/dub scripts/man/gen_man.d || die "Could not generate man pages."
+}
+
+d_src_test() {
+ # Ideally don't export $DUB to not mess up the scripts (if any) in src_install.
+ local DUB="${S}/bin/dub"
+ # Note, disabling tests is possible yet very hard. You have to create a bash variable containing a
+ # regex (to be used in =~) that matches all the tests that you want *to* run. It's probably easier to
+ # delete the subdirectory under ${S}/test.
+
+ # Tries to connect to github.com and fails due to the network sandbox
+ rm -rf "${S}/test/git-dependency" || die
+ # Doesn't work on non amd64/x86
+ if [[ ${ARCH} != amd64 ]] && [[ ${ARCH} != x86 ]]; then
+ rm -rf test/issue1447-build-settings-vars
+ fi
+
+ if [[ ${DLANG_VENDOR} == GNU ]]; then
+ # Doesn't work with gdc. It doesn't like gdc being in the form ${CHOST}-gdc.
+ # In the source the test is skipped for dmd and gdc.
+ rm -rf test/depen-build-settings || die
+
+ # Some tests fail because gdc enables dip1000 by default which
+ # adds a bunch of deprecations. Since deprecations are warnings
+ # for gdc and dub adds -Werror by default we have to turn it
+ # off. Since we can't turn it off yet we have to delete the
+ # test. See: https://github.com/dlang/dub/pull/2796
+ rm -rf test/dub-as-a-library-cwd || die
+ fi
+
+ local dropImportCTest
+ # We have an importC test and not all compilers pass it properly.
+ # gdc-13 doesn't support #include's in its importC implementation yet.
+ [[ ${DLANG_VENDOR} == GNU ]] && [[ ${DC_VERSION} -ge 13 ]] && dropImportCTest=1
+ # Nor does <=ldc2-1.32.
+ [[ ${DLANG_VENDOR} == LDC ]] && $(ver_test ${DC_VERSION} -le 1.32) && dropImportCTest=1
+ # dmd can do #include's but there are some other errors about __float128 in <=dmd-2.102 for non amd64.
+ [[ ${DLANG_VENDOR} == DigitalMars ]] && $(ver_test ${DC_VERSION} -le 2.102) \
+ && [[ ${ARCH} != amd64 ]] && dropImportCTest=1
+ if [[ -n ${dropImportCTest} ]]; then
+ rm -rf "${S}/test/use-c-sources" || die
+ fi
+
+ # Put the configuration file relative to the dub binary:
+ # <dub-bin-dir>/../etc/dub/settings.json as per
+ # https://dub.pm/dub-reference/settings so that it's picked up
+ # automatically.
+ mkdir -p "${S}/bin/../etc/dub" || die
+ cp "${T}/dub.settings.json" "${S}/bin/../etc/dub/settings.json" \
+ || die "Could not copy dub configuration file"
+
+ # See https://bugs.gentoo.org/921581 we have to remove -op (preserve source path for output files)
+ # from the flags lest the sandbox trips us up.
+ local filteredDflags="${DCFLAGS//--op/}"
+ filteredDflags="${filteredDflags//-op/}"
+
+ # There's no easy way to make dub verbose here, the path has to be an actual binary for a few tests.
+ DUB="${DUB}" DFLAGS="${filteredDflags}" FRONTEND="${DLANG_VERSION}" test/run-unittest.sh \
+ || die "Tests failed"
+}
+
+d_src_install() {
+ dobin bin/dub
+ dodoc README.md
+
+ ## Currently broken with gdc
+ # All the files in the directory below, with the exception of gen_man.d and README, are man pages.
+ # To keep the ebuild simple, we will just glob on the files that end in .1 since there are currently
+ # no man pages in a different section.
+ #doman scripts/man/*.1
+}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-01-14 20:45 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-01-14 20:45 UTC (permalink / raw
To: gentoo-commits
commit: f206665b015272cc35ebd291c565235b0b18edfc
Author: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Fri Jan 12 19:04:33 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sun Jan 14 20:43:56 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=f206665b
dev-util/dub: keyword 1.35.1-r1 for ~arm64
Signed-off-by: Horodniceanu Andrei <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dev-util/dub/dub-1.35.1-r1.ebuild b/dev-util/dub/dub-1.35.1-r1.ebuild
index 45e6d75..29038e0 100644
--- a/dev-util/dub/dub-1.35.1-r1.ebuild
+++ b/dev-util/dub/dub-1.35.1-r1.ebuild
@@ -8,7 +8,7 @@ HOMEPAGE="https://code.dlang.org/"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="debug test"
RESTRICT="!test? ( test )"
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-02-18 22:49 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-02-18 22:49 UTC (permalink / raw
To: gentoo-commits
commit: f91d2618d5269413f818280a9ddeb188e352e12d
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Sun Feb 4 15:54:46 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sun Feb 4 15:54:46 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=f91d2618
dev-util/dub: drop 1.33.0
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/Manifest | 1 -
dev-util/dub/dub-1.33.0.ebuild | 47 ------------------------------------------
2 files changed, 48 deletions(-)
diff --git a/dev-util/dub/Manifest b/dev-util/dub/Manifest
index b6c5eda..ce30927 100644
--- a/dev-util/dub/Manifest
+++ b/dev-util/dub/Manifest
@@ -1,4 +1,3 @@
-DIST dub-1.33.0.tar.gz 1488522 BLAKE2B f3171c4c85dca2bdae133c1f9f8f4ef79726a882ace9242ee825716c2f38ade16171eb1f0395856117d2b7ed592dd19e8e223ddff78ba900716832b346162f7e SHA512 027c77ac6179cb0cf26618a04604c15bbe4ae668901b54a0029b63ce4585cd1017c463cd9b6bc58f2eabafab85fb58935feb2866714e69d281d1d5cbe0a3f806
DIST dub-1.35.1.tar.gz 1494965 BLAKE2B 400e210584660f7ac67732006ca6d88156adbbf2bf221aa244e317bf7c2772a6a01d9e141252fbf0cfde4c07302ee533593f3a2f418f9e120edc7359a83180cf SHA512 a371a7ec7003a4a4fb642a3567fce0685c99f4940a02de94d026bdc6fe4e84512b16e4bb57673da4d3b8e25177cc3df329da41862086cecc7b98aec1ebf9e4e7
DIST gitcompatibledubpackage-1.0.1.zip 1354 BLAKE2B 60c3ff78c9cc0ca16f36bfdb4d91f6ec7e8d1bc7fb2fae9488e3f24b33fc3b578157f3c2fd9f892743b1fba7ec473267d9027febd3c27ac2af52733e146c341d SHA512 0adb8a97cce0aaac1dbaea978aacf801071457c06413e618b0feb1adaf4169c7a1acbfac2d9c192fada4f2f8bd44e1ea3b9fce8c7cb3fb8bf364eba75f559122
DIST gitcompatibledubpackage-1.0.4.zip 2041 BLAKE2B 595080956881fd86753b17cdbb12108ab03161806ca51c748017f29251dd47a95a0aebde4442db1783602cfa67a9593014ebb6ca591dcfec2b08eef3d737e2cc SHA512 12057117be99bb4d2351af74cfd36c050734383bfc44b185cf5f9737d982e9fd6840f6968a3246b625d4ec90e9d30f5e394f8fa1febb85464429d771bc8062d0
diff --git a/dev-util/dub/dub-1.33.0.ebuild b/dev-util/dub/dub-1.33.0.ebuild
deleted file mode 100644
index 5e07ea4..0000000
--- a/dev-util/dub/dub-1.33.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Package and build management system for D"
-HOMEPAGE="https://code.dlang.org/"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-IUSE="debug"
-
-GITHUB_URI="https://codeload.github.com/dlang"
-SRC_URI="${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz"
-PATCHES="${FILESDIR}/${P}-gdc-dmd-pathfix.patch"
-
-# Upstream recommends the latest version available
-DLANG_VERSION_RANGE="2.092-"
-DLANG_PACKAGE_TYPE="single"
-
-inherit dlang
-
-d_src_compile() {
- local imports=source versions="DubApplication DubUseCurl"
- dlang_compile_bin bin/dub $(<build-files.txt)
-
- ## Currently broken with gdc
- # Generate man pages
- #bin/dub scripts/man/gen_man.d || die "Could not generate man pages."
-}
-
-d_src_test() {
- echo "Test phase disabled due to multiple problems."
- #DUB="${S}/bin/dub" test/run-unittest.sh || die "Test phase failed"
-}
-
-d_src_install() {
- dobin bin/dub
- dodoc README.md
-
- ## Currently broken with gdc
- # All the files in the directory below, with the exception of gen_man.d and README, are man pages.
- # To keep the ebuild simple, we will just glob on the files that end in .1 since there are currently
- # no man pages in a different section.
- #doman scripts/man/*.1
-}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-02-18 22:49 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-02-18 22:49 UTC (permalink / raw
To: gentoo-commits
commit: 8ee5fd5d1e5484ac1ab91b00bc1629768fb8e52d
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Sun Feb 4 14:50:43 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sun Feb 4 14:50:43 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=8ee5fd5d
dev-util/dub: stabilize 1.35.1 for amd64, x86
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.35.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dev-util/dub/dub-1.35.1.ebuild b/dev-util/dub/dub-1.35.1.ebuild
index ac524f5..3c503a8 100644
--- a/dev-util/dub/dub-1.35.1.ebuild
+++ b/dev-util/dub/dub-1.35.1.ebuild
@@ -8,7 +8,7 @@ HOMEPAGE="https://code.dlang.org/"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="debug"
GITHUB_URI="https://codeload.github.com/dlang"
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-02-20 18:59 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-02-20 18:59 UTC (permalink / raw
To: gentoo-commits
commit: 19c8d6a4792b57424fb923b69dd55c0974663588
Author: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Tue Feb 20 18:56:33 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Tue Feb 20 18:56:33 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=19c8d6a4
dev-util/dub: drop 1.35.1-r1
Signed-off-by: Horodniceanu Andrei <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.35.1-r1.ebuild | 148 --------------------------------------
1 file changed, 148 deletions(-)
diff --git a/dev-util/dub/dub-1.35.1-r1.ebuild b/dev-util/dub/dub-1.35.1-r1.ebuild
deleted file mode 100644
index 29038e0..0000000
--- a/dev-util/dub/dub-1.35.1-r1.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Package and build management system for D"
-HOMEPAGE="https://code.dlang.org/"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="debug test"
-RESTRICT="!test? ( test )"
-
-DUB_TEST_DEPS=(
- gitcompatibledubpackage@1.0.1
- gitcompatibledubpackage@1.0.4
- urld@2.1.1
-)
-generate_dub_dependencies() {
- local dep
- for dep in "${DUB_TEST_DEPS[@]}"; do
- local depName depVersion
- depName="${dep%@*}"
- depVersion="${dep#*@}"
- echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
- done
-}
-
-GITHUB_URI="https://codeload.github.com/dlang"
-SRC_URI="
-${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
-test? (
- $(generate_dub_dependencies)
-)
-"
-
-# Upstream recommends the latest version available
-DLANG_VERSION_RANGE="2.100-2.106"
-DLANG_PACKAGE_TYPE="single"
-
-inherit dlang
-
-src_unpack() {
- unpack "${PN}-${PV}.tar.gz"
-
- if use test; then
- # Copy the archives locally. Some tests do need to perform an
- # actual fetch operation so make all of them available as
- # archives and let dub figure out the rest.
- local dep
- for dep in "${DUB_TEST_DEPS[@]}"; do
- local depName depVersion
- depName="${dep%@*}"
- depVersion="${dep#*@}"
-
- cp "${DISTDIR}/${depName}-${depVersion}.zip" "${T}" || die
- done
-
- # Generate a dub.settings.json file that points to the directory with all the deps
- cat <<EOF > "${T}/dub.settings.json"
-{
- "registryUrls": [
- "file://${T}"
- ],
- "skipRegistry": "all"
-}
-EOF
- fi
-}
-
-d_src_compile() {
- local imports=source versions="DubApplication DubUseCurl"
- dlang_compile_bin bin/dub $(<build-files.txt)
-
- ## Currently broken with gdc
- # Generate man pages
- #bin/dub scripts/man/gen_man.d || die "Could not generate man pages."
-}
-
-d_src_test() {
- # Ideally don't export $DUB to not mess up the scripts (if any) in src_install.
- local DUB="${S}/bin/dub"
- # Note, disabling tests is possible yet very hard. You have to create a bash variable containing a
- # regex (to be used in =~) that matches all the tests that you want *to* run. It's probably easier to
- # delete the subdirectory under ${S}/test.
-
- # Tries to connect to github.com and fails due to the network sandbox
- rm -rf "${S}/test/git-dependency" || die
- # Doesn't work on non amd64/x86
- if [[ ${ARCH} != amd64 ]] && [[ ${ARCH} != x86 ]]; then
- rm -rf test/issue1447-build-settings-vars
- fi
-
- if [[ ${DLANG_VENDOR} == GNU ]]; then
- # Doesn't work with gdc. It doesn't like gdc being in the form ${CHOST}-gdc.
- # In the source the test is skipped for dmd and gdc.
- rm -rf test/depen-build-settings || die
-
- # Some tests fail because gdc enables dip1000 by default which
- # adds a bunch of deprecations. Since deprecations are warnings
- # for gdc and dub adds -Werror by default we have to turn it
- # off. Since we can't turn it off yet we have to delete the
- # test. See: https://github.com/dlang/dub/pull/2796
- rm -rf test/dub-as-a-library-cwd || die
- fi
-
- local dropImportCTest
- # We have an importC test and not all compilers pass it properly.
- # gdc-13 doesn't support #include's in its importC implementation yet.
- [[ ${DLANG_VENDOR} == GNU ]] && [[ ${DC_VERSION} -ge 13 ]] && dropImportCTest=1
- # Nor does <=ldc2-1.32.
- [[ ${DLANG_VENDOR} == LDC ]] && $(ver_test ${DC_VERSION} -le 1.32) && dropImportCTest=1
- # dmd can do #include's but there are some other errors about __float128 in <=dmd-2.102 for non amd64.
- [[ ${DLANG_VENDOR} == DigitalMars ]] && $(ver_test ${DC_VERSION} -le 2.102) \
- && [[ ${ARCH} != amd64 ]] && dropImportCTest=1
- if [[ -n ${dropImportCTest} ]]; then
- rm -rf "${S}/test/use-c-sources" || die
- fi
-
- # Put the configuration file relative to the dub binary:
- # <dub-bin-dir>/../etc/dub/settings.json as per
- # https://dub.pm/dub-reference/settings so that it's picked up
- # automatically.
- mkdir -p "${S}/bin/../etc/dub" || die
- cp "${T}/dub.settings.json" "${S}/bin/../etc/dub/settings.json" \
- || die "Could not copy dub configuration file"
-
- # See https://bugs.gentoo.org/921581 we have to remove -op (preserve source path for output files)
- # from the flags lest the sandbox trips us up.
- local filteredDflags="${DCFLAGS//--op/}"
- filteredDflags="${filteredDflags//-op/}"
-
- # There's no easy way to make dub verbose here, the path has to be an actual binary for a few tests.
- DUB="${DUB}" DFLAGS="${filteredDflags}" FRONTEND="${DLANG_VERSION}" test/run-unittest.sh \
- || die "Tests failed"
-}
-
-d_src_install() {
- dobin bin/dub
- dodoc README.md
-
- ## Currently broken with gdc
- # All the files in the directory below, with the exception of gen_man.d and README, are man pages.
- # To keep the ebuild simple, we will just glob on the files that end in .1 since there are currently
- # no man pages in a different section.
- #doman scripts/man/*.1
-}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-04-13 23:04 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-04-13 23:04 UTC (permalink / raw
To: gentoo-commits
commit: cf9db5873fd9d11b0e66faab7ef61a3b2a95c2f9
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Sat Mar 9 14:39:38 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sat Apr 13 22:47:31 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=cf9db587
dev-util/dub: port to dlang-single.eclass
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.36.0-r1.ebuild | 162 ++++++++++++++++++++++++++++++++++++++
1 file changed, 162 insertions(+)
diff --git a/dev-util/dub/dub-1.36.0-r1.ebuild b/dev-util/dub/dub-1.36.0-r1.ebuild
new file mode 100644
index 0000000..608e02a
--- /dev/null
+++ b/dev-util/dub/dub-1.36.0-r1.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Package and build management system for D"
+HOMEPAGE="https://code.dlang.org/"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+DLANG_COMPAT=( dmd-2_{106..107} gdc-13 ldc2-1_{35..36} )
+
+inherit dlang-single shell-completion
+
+REQUIRED_USE=${DLANG_REQUIRED_USE}
+DEPEND=${DLANG_DEPS}
+BDEPEND=${DLANG_DEPS}
+RDEPEND=${DLANG_DEPS}
+
+DUB_TEST_DEPS=(
+ gitcompatibledubpackage@1.0.1
+ gitcompatibledubpackage@1.0.4
+ urld@2.1.1
+)
+generate_dub_test_dependencies() {
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+ echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
+ done
+}
+
+GITHUB_URI="https://codeload.github.com/dlang"
+SRC_URI="
+ ${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
+ test? (
+ $(generate_dub_test_dependencies)
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-wno-error-not-applying.patch"
+)
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+
+ if use test; then
+ # Copy the archives locally. Some tests do need to perform an
+ # actual fetch operation so make all of them available as
+ # archives and let dub figure out the rest.
+ local store="${T}/dub-test-deps"
+ mkdir -p "${store}" || die
+
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+
+ cp "${DISTDIR}/${depName}-${depVersion}.zip" "${store}" || die
+ done
+
+ # Generate a settings.json file that points to the directory with all the deps.
+ cat <<EOF > "${T}/settings.json"
+{
+ "registryUrls": [
+ "file://${store}"
+ ],
+ "skipRegistry": "all"
+}
+EOF
+ fi
+}
+
+src_compile() {
+ local imports=source versions="DubApplication DubUseCurl"
+ dlang_compile_bin bin/dub $(<build-files.txt)
+
+ # Generate man pages. Rebuids dub so put it behind a USE flag.
+ if use doc; then
+ einfo "Generating man pages"
+ # You're supposed to be able to do ./bin/dub scrips/man/gen_man.d
+ # but it gives linking errors with gdc.
+
+ # $imports is set up above.
+ versions=DubUseCurl
+ dlang_compile_bin scripts/man/gen_man{,.d} \
+ $(sed '/^source\/app.d$/d' build-files.txt)
+ ./scripts/man/gen_man || die "Could not generate man pages"
+ fi
+}
+
+src_test() {
+ # Setup the environment for the tests.
+ local -x DUB="${S}/bin/dub"
+ local -x DUB_HOME="${T}/dub-home" # where to put artifacts
+
+ # Note, disabling tests is possible yet very hard. You have to
+ # create a bash variable containing a regex (to be used in =~) that
+ # matches all the tests that you want *to* run. It's probably easier
+ # to delete the subdirectory under ${S}/test.
+
+ # Tries to connect to github.com and fails due to the network sandbox
+ rm -rf "${S}/test/git-dependency" || die
+ # Doesn't work on non amd64/x86
+ if [[ ${ARCH} == arm64 ]]; then
+ rm -rf test/issue1447-build-settings-vars || die
+ fi
+
+ local dropImportCTest
+ # We have an importC test and not all compilers pass it properly.
+ # gdc doesn't support #include's in its importC implementation yet.
+ # Only check == 13 since 12 is skipped by the script.
+ [[ ${EDC} == gdc* ]] && [[ $(dlang_get_be_version) == 13 ]] && dropImportCTest=1
+ # Nor does <=ldc2-1.32.
+ [[ ${EDC} == ldc* ]] && $(ver_test $(dlang_get_be_version) -le 1.32) && dropImportCTest=1
+ # dmd can do #include's but there are some other errors about
+ # __float128 in <=dmd-2.102 on x86.
+ [[ ${EDC} == dmd* ]] && $(ver_test $(dlang_get_be_version) -le 2.102) \
+ && [[ ${ARCH} == x86 ]] && dropImportCTest=1
+ if [[ ${dropImportCTest} ]]; then
+ rm -rf "${S}/test/use-c-sources" || die
+ fi
+
+ # Put the configuration file relative to the dub binary:
+ # <dub-bin-dir>/../etc/dub/settings.json as per
+ # https://dub.pm/dub-reference/settings so that it's picked up
+ # automatically.
+ mkdir -p "${S}/bin/../etc/dub" || die
+ cp "${T}/settings.json" "${S}/bin/../etc/dub/" \
+ || die "Could not copy dub configuration file"
+
+ # See https://bugs.gentoo.org/921581 we have to remove -op (preserve
+ # source path for output files) from the flags lest the sandbox
+ # trips us up. This shouldn't be a problem anymore with dlang-single.
+ dlang-filter-dflags "*" "--op" "-op"
+
+ # Append -Wno-error or equivalent
+ DCFLAGS+=" $(dlang_get_wno_error_flag)"
+
+ DFLAGS="${DCFLAGS}" FRONTEND="$(dlang_get_fe_version)" test/run-unittest.sh \
+ || die "Tests failed"
+}
+
+src_install() {
+ dobin bin/dub
+ dodoc README.md
+
+ # Make sure there are no man files in any other section.
+ use doc && doman scripts/man/*.1
+
+ newbashcomp scripts/bash-completion/${PN}.bash ${PN}
+ dozshcomp scripts/zsh-completion/_${PN}
+ dofishcomp scripts/fish-completion/${PN}.fish
+}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-04-23 17:05 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-04-23 17:05 UTC (permalink / raw
To: gentoo-commits
commit: 8055f299e5227d3c71180d2ed5100d4367d35b06
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Tue Apr 23 04:16:59 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Tue Apr 23 16:41:19 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=8055f299
dev-util/dub: add 1.37.0
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/Manifest | 1 +
dev-util/dub/dub-1.37.0.ebuild | 182 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 183 insertions(+)
diff --git a/dev-util/dub/Manifest b/dev-util/dub/Manifest
index 2bf5f79..0e73d93 100644
--- a/dev-util/dub/Manifest
+++ b/dev-util/dub/Manifest
@@ -1,5 +1,6 @@
DIST dub-1.35.1.tar.gz 1494965 BLAKE2B 400e210584660f7ac67732006ca6d88156adbbf2bf221aa244e317bf7c2772a6a01d9e141252fbf0cfde4c07302ee533593f3a2f418f9e120edc7359a83180cf SHA512 a371a7ec7003a4a4fb642a3567fce0685c99f4940a02de94d026bdc6fe4e84512b16e4bb57673da4d3b8e25177cc3df329da41862086cecc7b98aec1ebf9e4e7
DIST dub-1.36.0.tar.gz 1502081 BLAKE2B 2ae9503d5c8725de801d65a06fab07e9e3b8fbb007159b1e90fda18d2ca1f0361b055cf2de4e4290828a7fb401168b15c1a85eca872a58d7ce0d5eb5f979ff4e SHA512 7a0e5c5432bbe6d67be8f98e8bc7ef0350e9eb358b13f795b9c18ef9a781dc3092074d88b7a846cf69e1ba648641c6acd8b766ec4bf119ce9b380d886f87b4c3
+DIST dub-1.37.0.tar.gz 1515440 BLAKE2B 13bb5b5541af6ae11e45cf130e9bfb706e7fb59797e497a33e419500262fd70ef1ac657b2b230224010d78b36361f7974d38b22fd36fa70f580c3b7f7a578457 SHA512 dc4331b77681d05bc5c6f36f5179d2a1220f3e1cbfc64ba27104fb2b716bd7e2b70c5b3b4d0e8b786caf36632c2fd774bbd51b235389ff38cfde87138fc9de18
DIST gitcompatibledubpackage-1.0.1.zip 1354 BLAKE2B 60c3ff78c9cc0ca16f36bfdb4d91f6ec7e8d1bc7fb2fae9488e3f24b33fc3b578157f3c2fd9f892743b1fba7ec473267d9027febd3c27ac2af52733e146c341d SHA512 0adb8a97cce0aaac1dbaea978aacf801071457c06413e618b0feb1adaf4169c7a1acbfac2d9c192fada4f2f8bd44e1ea3b9fce8c7cb3fb8bf364eba75f559122
DIST gitcompatibledubpackage-1.0.4.zip 2041 BLAKE2B 595080956881fd86753b17cdbb12108ab03161806ca51c748017f29251dd47a95a0aebde4442db1783602cfa67a9593014ebb6ca591dcfec2b08eef3d737e2cc SHA512 12057117be99bb4d2351af74cfd36c050734383bfc44b185cf5f9737d982e9fd6840f6968a3246b625d4ec90e9d30f5e394f8fa1febb85464429d771bc8062d0
DIST urld-2.1.1.zip 15062 BLAKE2B fe123fbef20167e07c81d0f7700a59c48dca28311329f9717283f3e7c88cc2430a1ffc26632c8c1512145b9d6fa6e432cee1677e99be3bd555247f02f7f42b67 SHA512 c4c8d349a8bbac9f234166ed9452ab221f8928e822c6ab95716b05948dbb21ae4309face4158909559698f23aa750c9faef5b2294feef7e601ccbc9a41c3b6bb
diff --git a/dev-util/dub/dub-1.37.0.ebuild b/dev-util/dub/dub-1.37.0.ebuild
new file mode 100644
index 0000000..3db7f28
--- /dev/null
+++ b/dev-util/dub/dub-1.37.0.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Package and build management system for D"
+HOMEPAGE="https://code.dlang.org/"
+
+DUB_TEST_DEPS=(
+ gitcompatibledubpackage@1.0.1
+ gitcompatibledubpackage@1.0.4
+ urld@2.1.1
+)
+generate_dub_test_dependencies() {
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+ echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
+ done
+}
+
+GITHUB_URI="https://codeload.github.com/dlang"
+SRC_URI="
+ ${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
+ test? (
+ $(generate_dub_test_dependencies)
+ )
+"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+DLANG_COMPAT=( dmd-2_{106..108} gdc-13 ldc2-1_{35..37} )
+
+inherit dlang-single shell-completion
+
+REQUIRED_USE=${DLANG_REQUIRED_USE}
+DEPEND=${DLANG_DEPS}
+BDEPEND=${DLANG_DEPS}
+RDEPEND=${DLANG_DEPS}
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+
+ if use test; then
+ # Copy the archives locally. Some tests do need to perform an
+ # actual fetch operation so make all of them available as
+ # archives and let dub figure out the rest.
+ local store="${T}/dub-test-deps"
+ mkdir -p "${store}" || die
+
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+
+ cp "${DISTDIR}/${depName}-${depVersion}.zip" "${store}" || die
+ done
+
+ # Generate a settings.json file that points to the directory with all the deps.
+ # Note that "skipRegistry" doesn't seem to be respected.
+ cat <<EOF > "${T}/settings.json"
+{
+ "registryUrls": [
+ "file://${store}"
+ ],
+ "skipRegistry": "standard"
+}
+EOF
+ fi
+}
+
+src_compile() {
+ # gdc generates unaligned memory accesses with optimizations and avx
+ # enabled. It has been fixed upstream. See:
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114171
+ # Fixed in >=sys-devel/gcc-13.2.1_p20240330. Adding -mno-sse2 makes
+ # tests fail so defer to removing the common way users get avx
+ # instructions enabled (-march=native) and warn them.
+ if [[ ${ARCH} == amd64 && ${EDC} == gdc* && ${DCFLAGS} == *-march=native* ]]; then
+ ewarn "<sys-devel/gcc-13.2.1_p20240330 is known to generate invalid code"
+ ewarn "on amd64 with certain flags. For this reason -march=native will be"
+ ewarn "removed from your flags. Feel free to use -march=<cpu> to bypass this"
+ ewarn "precaution."
+ ewarn ""
+ ewarn "See also: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114171"
+ dlang-filter-dflags "gdc*" "-march=native"
+ fi
+
+ local imports=source versions="DubApplication DubUseCurl"
+ dlang_compile_bin bin/dub $(<build-files.txt)
+
+ # Generate man pages. Rebuids dub so put it behind a USE flag.
+ if use doc; then
+ einfo "Generating man pages"
+ # You're supposed to be able to do ./bin/dub scrips/man/gen_man.d
+ # but it gives linking errors with gdc.
+
+ # $imports is set up above.
+ versions=DubUseCurl
+ dlang_compile_bin scripts/man/gen_man{,.d} \
+ $(sed '/^source\/app.d$/d' build-files.txt)
+ ./scripts/man/gen_man || die "Could not generate man pages"
+ fi
+}
+
+src_test() {
+ # Setup the environment for the tests.
+ local -x DUB="${S}/bin/dub"
+ local -x DUB_HOME="${T}/dub-home" # where to put artifacts
+
+ # Note, disabling tests is possible yet very hard. You have to
+ # create a bash variable containing a regex (to be used in =~) that
+ # matches all the tests that you want *to* run. It's probably easier
+ # to delete the subdirectory under ${S}/test.
+
+ # Tries to connect to github.com and fails due to the network sandbox
+ rm -rf "${S}/test/git-dependency" || die
+ # Doesn't work on non amd64/x86
+ if [[ ${ARCH} == arm64 ]]; then
+ rm -rf test/issue1447-build-settings-vars || die
+ fi
+
+ local dropImportCTest
+ # We have an importC test and not all compilers pass it properly.
+ # gdc doesn't support #include's in its importC implementation yet.
+ # Only check == 13 since 12 is skipped by the script.
+ [[ ${EDC} == gdc* ]] && [[ $(dlang_get_be_version) == 13 ]] && dropImportCTest=1
+ # Nor does <=ldc2-1.32.
+ [[ ${EDC} == ldc* ]] && $(ver_test $(dlang_get_be_version) -le 1.32) && dropImportCTest=1
+ # dmd can do #include's but there are some other errors about
+ # __float128 in <=dmd-2.102 on x86.
+ [[ ${EDC} == dmd* ]] && $(ver_test $(dlang_get_be_version) -le 2.102) \
+ && [[ ${ARCH} == x86 ]] && dropImportCTest=1
+ if [[ ${dropImportCTest} ]]; then
+ rm -rf "${S}/test/use-c-sources" || die
+ fi
+
+ # Put the configuration file relative to the dub binary:
+ # <dub-bin-dir>/../etc/dub/settings.json as per
+ # https://dub.pm/dub-reference/settings so that it's picked up
+ # automatically.
+ mkdir -p "${S}/bin/../etc/dub" || die
+ cp "${T}/settings.json" "${S}/bin/../etc/dub/" \
+ || die "Could not copy dub configuration file"
+
+ # See https://bugs.gentoo.org/921581 we have to remove -op (preserve
+ # source path for output files) from the flags lest the sandbox
+ # trips us up. This shouldn't be a problem anymore with dlang-single.
+ dlang-filter-dflags "*" "--op" "-op"
+
+ # Append -Wno-error or equivalent
+ DCFLAGS+=" $(dlang_get_wno_error_flag)"
+
+ # Run the unittests in the source files.
+ # "skipRegistry" from settings.json isn't respected. Nothing breaks
+ # but the info messages are clearer (they don't include references to URLs).
+ DFLAGS="${DCFLAGS}" "${DUB}" --skip-registry=all test -v -c application
+
+ # Run the integration tests.
+ DFLAGS="${DCFLAGS}" FRONTEND="$(dlang_get_fe_version)" test/run-unittest.sh \
+ || die "Tests failed"
+}
+
+src_install() {
+ dobin bin/dub
+ dodoc README.md
+
+ # Make sure there are no man files in any other section.
+ use doc && doman scripts/man/*.1
+
+ newbashcomp scripts/bash-completion/${PN}.bash ${PN}
+ dozshcomp scripts/zsh-completion/_${PN}
+ dofishcomp scripts/fish-completion/${PN}.fish
+}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-05-30 17:28 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-05-30 17:28 UTC (permalink / raw
To: gentoo-commits
commit: da9dbeff54b558ca85143193b039236865507bd7
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Thu May 30 17:12:31 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Thu May 30 17:12:31 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=da9dbeff
dev-util/dub: drop 1.36.0-r1
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/Manifest | 1 -
dev-util/dub/dub-1.36.0-r1.ebuild | 162 --------------------------------------
2 files changed, 163 deletions(-)
diff --git a/dev-util/dub/Manifest b/dev-util/dub/Manifest
index 0e73d93..598c49a 100644
--- a/dev-util/dub/Manifest
+++ b/dev-util/dub/Manifest
@@ -1,5 +1,4 @@
DIST dub-1.35.1.tar.gz 1494965 BLAKE2B 400e210584660f7ac67732006ca6d88156adbbf2bf221aa244e317bf7c2772a6a01d9e141252fbf0cfde4c07302ee533593f3a2f418f9e120edc7359a83180cf SHA512 a371a7ec7003a4a4fb642a3567fce0685c99f4940a02de94d026bdc6fe4e84512b16e4bb57673da4d3b8e25177cc3df329da41862086cecc7b98aec1ebf9e4e7
-DIST dub-1.36.0.tar.gz 1502081 BLAKE2B 2ae9503d5c8725de801d65a06fab07e9e3b8fbb007159b1e90fda18d2ca1f0361b055cf2de4e4290828a7fb401168b15c1a85eca872a58d7ce0d5eb5f979ff4e SHA512 7a0e5c5432bbe6d67be8f98e8bc7ef0350e9eb358b13f795b9c18ef9a781dc3092074d88b7a846cf69e1ba648641c6acd8b766ec4bf119ce9b380d886f87b4c3
DIST dub-1.37.0.tar.gz 1515440 BLAKE2B 13bb5b5541af6ae11e45cf130e9bfb706e7fb59797e497a33e419500262fd70ef1ac657b2b230224010d78b36361f7974d38b22fd36fa70f580c3b7f7a578457 SHA512 dc4331b77681d05bc5c6f36f5179d2a1220f3e1cbfc64ba27104fb2b716bd7e2b70c5b3b4d0e8b786caf36632c2fd774bbd51b235389ff38cfde87138fc9de18
DIST gitcompatibledubpackage-1.0.1.zip 1354 BLAKE2B 60c3ff78c9cc0ca16f36bfdb4d91f6ec7e8d1bc7fb2fae9488e3f24b33fc3b578157f3c2fd9f892743b1fba7ec473267d9027febd3c27ac2af52733e146c341d SHA512 0adb8a97cce0aaac1dbaea978aacf801071457c06413e618b0feb1adaf4169c7a1acbfac2d9c192fada4f2f8bd44e1ea3b9fce8c7cb3fb8bf364eba75f559122
DIST gitcompatibledubpackage-1.0.4.zip 2041 BLAKE2B 595080956881fd86753b17cdbb12108ab03161806ca51c748017f29251dd47a95a0aebde4442db1783602cfa67a9593014ebb6ca591dcfec2b08eef3d737e2cc SHA512 12057117be99bb4d2351af74cfd36c050734383bfc44b185cf5f9737d982e9fd6840f6968a3246b625d4ec90e9d30f5e394f8fa1febb85464429d771bc8062d0
diff --git a/dev-util/dub/dub-1.36.0-r1.ebuild b/dev-util/dub/dub-1.36.0-r1.ebuild
deleted file mode 100644
index 608e02a..0000000
--- a/dev-util/dub/dub-1.36.0-r1.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DESCRIPTION="Package and build management system for D"
-HOMEPAGE="https://code.dlang.org/"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-DLANG_COMPAT=( dmd-2_{106..107} gdc-13 ldc2-1_{35..36} )
-
-inherit dlang-single shell-completion
-
-REQUIRED_USE=${DLANG_REQUIRED_USE}
-DEPEND=${DLANG_DEPS}
-BDEPEND=${DLANG_DEPS}
-RDEPEND=${DLANG_DEPS}
-
-DUB_TEST_DEPS=(
- gitcompatibledubpackage@1.0.1
- gitcompatibledubpackage@1.0.4
- urld@2.1.1
-)
-generate_dub_test_dependencies() {
- local dep
- for dep in "${DUB_TEST_DEPS[@]}"; do
- local depName depVersion
- depName="${dep%@*}"
- depVersion="${dep#*@}"
- echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
- done
-}
-
-GITHUB_URI="https://codeload.github.com/dlang"
-SRC_URI="
- ${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
- test? (
- $(generate_dub_test_dependencies)
- )
-"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-wno-error-not-applying.patch"
-)
-
-src_unpack() {
- unpack "${P}.tar.gz"
-
- if use test; then
- # Copy the archives locally. Some tests do need to perform an
- # actual fetch operation so make all of them available as
- # archives and let dub figure out the rest.
- local store="${T}/dub-test-deps"
- mkdir -p "${store}" || die
-
- local dep
- for dep in "${DUB_TEST_DEPS[@]}"; do
- local depName depVersion
- depName="${dep%@*}"
- depVersion="${dep#*@}"
-
- cp "${DISTDIR}/${depName}-${depVersion}.zip" "${store}" || die
- done
-
- # Generate a settings.json file that points to the directory with all the deps.
- cat <<EOF > "${T}/settings.json"
-{
- "registryUrls": [
- "file://${store}"
- ],
- "skipRegistry": "all"
-}
-EOF
- fi
-}
-
-src_compile() {
- local imports=source versions="DubApplication DubUseCurl"
- dlang_compile_bin bin/dub $(<build-files.txt)
-
- # Generate man pages. Rebuids dub so put it behind a USE flag.
- if use doc; then
- einfo "Generating man pages"
- # You're supposed to be able to do ./bin/dub scrips/man/gen_man.d
- # but it gives linking errors with gdc.
-
- # $imports is set up above.
- versions=DubUseCurl
- dlang_compile_bin scripts/man/gen_man{,.d} \
- $(sed '/^source\/app.d$/d' build-files.txt)
- ./scripts/man/gen_man || die "Could not generate man pages"
- fi
-}
-
-src_test() {
- # Setup the environment for the tests.
- local -x DUB="${S}/bin/dub"
- local -x DUB_HOME="${T}/dub-home" # where to put artifacts
-
- # Note, disabling tests is possible yet very hard. You have to
- # create a bash variable containing a regex (to be used in =~) that
- # matches all the tests that you want *to* run. It's probably easier
- # to delete the subdirectory under ${S}/test.
-
- # Tries to connect to github.com and fails due to the network sandbox
- rm -rf "${S}/test/git-dependency" || die
- # Doesn't work on non amd64/x86
- if [[ ${ARCH} == arm64 ]]; then
- rm -rf test/issue1447-build-settings-vars || die
- fi
-
- local dropImportCTest
- # We have an importC test and not all compilers pass it properly.
- # gdc doesn't support #include's in its importC implementation yet.
- # Only check == 13 since 12 is skipped by the script.
- [[ ${EDC} == gdc* ]] && [[ $(dlang_get_be_version) == 13 ]] && dropImportCTest=1
- # Nor does <=ldc2-1.32.
- [[ ${EDC} == ldc* ]] && $(ver_test $(dlang_get_be_version) -le 1.32) && dropImportCTest=1
- # dmd can do #include's but there are some other errors about
- # __float128 in <=dmd-2.102 on x86.
- [[ ${EDC} == dmd* ]] && $(ver_test $(dlang_get_be_version) -le 2.102) \
- && [[ ${ARCH} == x86 ]] && dropImportCTest=1
- if [[ ${dropImportCTest} ]]; then
- rm -rf "${S}/test/use-c-sources" || die
- fi
-
- # Put the configuration file relative to the dub binary:
- # <dub-bin-dir>/../etc/dub/settings.json as per
- # https://dub.pm/dub-reference/settings so that it's picked up
- # automatically.
- mkdir -p "${S}/bin/../etc/dub" || die
- cp "${T}/settings.json" "${S}/bin/../etc/dub/" \
- || die "Could not copy dub configuration file"
-
- # See https://bugs.gentoo.org/921581 we have to remove -op (preserve
- # source path for output files) from the flags lest the sandbox
- # trips us up. This shouldn't be a problem anymore with dlang-single.
- dlang-filter-dflags "*" "--op" "-op"
-
- # Append -Wno-error or equivalent
- DCFLAGS+=" $(dlang_get_wno_error_flag)"
-
- DFLAGS="${DCFLAGS}" FRONTEND="$(dlang_get_fe_version)" test/run-unittest.sh \
- || die "Tests failed"
-}
-
-src_install() {
- dobin bin/dub
- dodoc README.md
-
- # Make sure there are no man files in any other section.
- use doc && doman scripts/man/*.1
-
- newbashcomp scripts/bash-completion/${PN}.bash ${PN}
- dozshcomp scripts/zsh-completion/_${PN}
- dofishcomp scripts/fish-completion/${PN}.fish
-}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-05-30 17:28 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-05-30 17:28 UTC (permalink / raw
To: gentoo-commits
commit: 7d061e482d0af10bcba399b21080e320a8bad1a0
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Thu May 30 17:12:08 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Thu May 30 17:12:08 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=7d061e48
dev-util/dub: drop 1.36.0
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.36.0.ebuild | 174 -----------------------------------------
1 file changed, 174 deletions(-)
diff --git a/dev-util/dub/dub-1.36.0.ebuild b/dev-util/dub/dub-1.36.0.ebuild
deleted file mode 100644
index 7bae587..0000000
--- a/dev-util/dub/dub-1.36.0.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DESCRIPTION="Package and build management system for D"
-HOMEPAGE="https://code.dlang.org/"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="debug doc test"
-RESTRICT="!test? ( test )"
-
-DUB_TEST_DEPS=(
- gitcompatibledubpackage@1.0.1
- gitcompatibledubpackage@1.0.4
- urld@2.1.1
-)
-generate_dub_dependencies() {
- local dep
- for dep in "${DUB_TEST_DEPS[@]}"; do
- local depName depVersion
- depName="${dep%@*}"
- depVersion="${dep#*@}"
- echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
- done
-}
-
-GITHUB_URI="https://codeload.github.com/dlang"
-SRC_URI="
-${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
-test? (
- $(generate_dub_dependencies)
-)
-"
-
-PATCHES=(
- "${FILESDIR}/${PF}-fix-wno-error-not-applying.patch"
-)
-
-# Upstream recommends the latest version available
-DLANG_VERSION_RANGE="2.100-2.107"
-DLANG_PACKAGE_TYPE="single"
-
-inherit dlang shell-completion
-
-src_unpack() {
- unpack "${P}.tar.gz"
-
- if use test; then
- # Copy the archives locally. Some tests do need to perform an
- # actual fetch operation so make all of them available as
- # archives and let dub figure out the rest.
- local store="${T}/dub-test-deps"
- mkdir -p "${store}" || die
-
- local dep
- for dep in "${DUB_TEST_DEPS[@]}"; do
- local depName depVersion
- depName="${dep%@*}"
- depVersion="${dep#*@}"
-
- cp "${DISTDIR}/${depName}-${depVersion}.zip" "${store}" || die
- done
-
- # Generate a settings.json file that points to the directory with all the deps.
- cat <<EOF > "${T}/settings.json"
-{
- "registryUrls": [
- "file://${store}"
- ],
- "skipRegistry": "all"
-}
-EOF
- fi
-}
-
-d_src_compile() {
- local imports=source versions="DubApplication DubUseCurl"
- dlang_compile_bin bin/dub $(<build-files.txt)
-
- # Generate man pages. Rebuids dub so put it behind a USE flag.
- if use doc; then
- einfo "Generating man pages"
- # You're supposed to be able to do ./bin/dub scrips/man/gen_man.d
- # but it gives linking errors with gdc.
-
- # $imports is set up above.
- versions=DubUseCurl
- dlang_compile_bin scripts/man/gen_man{,.d} \
- $(sed '/^source\/app.d$/d' build-files.txt)
- ./scripts/man/gen_man || die "Could not generate man pages"
- fi
-}
-
-d_src_test() {
- # Setup the environment for the tests.
- local -x DUB="${S}/bin/dub"
- local -x DUB_HOME="${T}/dub-home" # where to put artifacts
-
- # Note, disabling tests is possible yet very hard. You have to
- # create a bash variable containing a regex (to be used in =~) that
- # matches all the tests that you want *to* run. It's probably easier
- # to delete the subdirectory under ${S}/test.
-
- # Tries to connect to github.com and fails due to the network sandbox
- rm -rf "${S}/test/git-dependency" || die
- # Doesn't work on non amd64/x86
- if [[ ${ARCH} == arm64 ]]; then
- rm -rf test/issue1447-build-settings-vars || die
- fi
-
- if [[ ${DLANG_VENDOR} == GNU ]]; then
- # Should be skipped on dmd and gdc but $DC being in the form
- # ${CHOST}-gdc makes the unittest script not skip it.
- rm -rf test/depen-build-settings || die
- fi
-
- local dropImportCTest
- # We have an importC test and not all compilers pass it properly.
- # gdc doesn't support #include's in its importC implementation yet.
- # Only check == 13 since 12 is skipped by the script.
- [[ ${DLANG_VENDOR} == GNU ]] && [[ ${DC_VERSION} == 13 ]] && dropImportCTest=1
- # Nor does <=ldc2-1.32.
- [[ ${DLANG_VENDOR} == LDC ]] && $(ver_test ${DC_VERSION} -le 1.32) && dropImportCTest=1
- # dmd can do #include's but there are some other errors about
- # __float128 in <=dmd-2.102 on x86.
- [[ ${DLANG_VENDOR} == DigitalMars ]] && $(ver_test ${DC_VERSION} -le 2.102) \
- && [[ ${ARCH} == x86 ]] && dropImportCTest=1
- if [[ ${dropImportCTest} ]]; then
- rm -rf "${S}/test/use-c-sources" || die
- fi
-
- # Put the configuration file relative to the dub binary:
- # <dub-bin-dir>/../etc/dub/settings.json as per
- # https://dub.pm/dub-reference/settings so that it's picked up
- # automatically.
- mkdir -p "${S}/bin/../etc/dub" || die
- cp "${T}/settings.json" "${S}/bin/../etc/dub/" \
- || die "Could not copy dub configuration file"
-
- # See https://bugs.gentoo.org/921581 we have to remove -op (preserve
- # source path for output files) from the flags lest the sandbox
- # trips us up.
- local newDflags="${DCFLAGS//--op/}"
- newDflags="${newDflags//-op/}"
-
- # Append -Wno-error or equivalent
- newDflags+=" $(get_wno_error_flag)"
-
- DFLAGS="${newDflags}" FRONTEND="${DLANG_VERSION}" test/run-unittest.sh \
- || die "Tests failed"
-}
-
-d_src_install() {
- dobin bin/dub
- dodoc README.md
-
- # Make sure there are no man files in any other section.
- use doc && doman scripts/man/*.1
-
- newbashcomp scripts/bash-completion/${PN}.bash ${PN}
- dozshcomp scripts/zsh-completion/_${PN}
- dofishcomp scripts/fish-completion/${PN}.fish
-}
-
-get_wno_error_flag() {
- case "${DLANG_VENDOR}" in
- DigitalMars) echo "-wi" ;;
- GNU) echo "-Wno-error" ;;
- LDC) echo "--wi" ;;
- esac
-}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-06-02 5:29 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-06-02 5:29 UTC (permalink / raw
To: gentoo-commits
commit: 6d6cde8ee7233c7a9e56c9385772b6e13a695573
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Sat Jun 1 18:50:27 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sat Jun 1 18:50:27 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=6d6cde8e
dev-util/dub: enable ldc2-1_38
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.37.0.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dev-util/dub/dub-1.37.0.ebuild b/dev-util/dub/dub-1.37.0.ebuild
index 3db7f28..d1dc510 100644
--- a/dev-util/dub/dub-1.37.0.ebuild
+++ b/dev-util/dub/dub-1.37.0.ebuild
@@ -36,7 +36,7 @@ KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="doc test"
RESTRICT="!test? ( test )"
-DLANG_COMPAT=( dmd-2_{106..108} gdc-13 ldc2-1_{35..37} )
+DLANG_COMPAT=( dmd-2_{106..108} gdc-13 ldc2-1_{35..38} )
inherit dlang-single shell-completion
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-06-02 5:29 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-06-02 5:29 UTC (permalink / raw
To: gentoo-commits
commit: ae6638ae8f109ca1c6e89450bdc538a7fa299be2
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Sat Jun 1 18:51:14 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Sat Jun 1 19:21:21 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=ae6638ae
dev-util/dub: enable gdc-14
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.37.0.ebuild | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dev-util/dub/dub-1.37.0.ebuild b/dev-util/dub/dub-1.37.0.ebuild
index d1dc510..c998570 100644
--- a/dev-util/dub/dub-1.37.0.ebuild
+++ b/dev-util/dub/dub-1.37.0.ebuild
@@ -36,7 +36,7 @@ KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="doc test"
RESTRICT="!test? ( test )"
-DLANG_COMPAT=( dmd-2_{106..108} gdc-13 ldc2-1_{35..38} )
+DLANG_COMPAT=( dmd-2_{106..108} gdc-1{3,4} ldc2-1_{35..38} )
inherit dlang-single shell-completion
@@ -84,7 +84,7 @@ src_compile() {
# Fixed in >=sys-devel/gcc-13.2.1_p20240330. Adding -mno-sse2 makes
# tests fail so defer to removing the common way users get avx
# instructions enabled (-march=native) and warn them.
- if [[ ${ARCH} == amd64 && ${EDC} == gdc* && ${DCFLAGS} == *-march=native* ]]; then
+ if [[ ${ARCH} == amd64 && ${EDC} == gdc-13 && ${DCFLAGS} == *-march=native* ]]; then
ewarn "<sys-devel/gcc-13.2.1_p20240330 is known to generate invalid code"
ewarn "on amd64 with certain flags. For this reason -march=native will be"
ewarn "removed from your flags. Feel free to use -march=<cpu> to bypass this"
@@ -132,7 +132,7 @@ src_test() {
# We have an importC test and not all compilers pass it properly.
# gdc doesn't support #include's in its importC implementation yet.
# Only check == 13 since 12 is skipped by the script.
- [[ ${EDC} == gdc* ]] && [[ $(dlang_get_be_version) == 13 ]] && dropImportCTest=1
+ [[ ${EDC} == gdc-13 ]] && dropImportCTest=1
# Nor does <=ldc2-1.32.
[[ ${EDC} == ldc* ]] && $(ver_test $(dlang_get_be_version) -le 1.32) && dropImportCTest=1
# dmd can do #include's but there are some other errors about
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-07-12 18:59 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-07-12 18:59 UTC (permalink / raw
To: gentoo-commits
commit: 82c19a58ecf3ad1b94e68eb37262c876f8132f47
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Fri Jul 12 18:33:44 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Fri Jul 12 18:34:00 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=82c19a58
dev-util/dub: add 1.38.1
arm64 has been dropped as a KEYWORD as I don't have access to any
hardware on which to test it.
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/Manifest | 1 +
dev-util/dub/dub-1.38.1.ebuild | 169 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 170 insertions(+)
diff --git a/dev-util/dub/Manifest b/dev-util/dub/Manifest
index 598c49a..2af5f28 100644
--- a/dev-util/dub/Manifest
+++ b/dev-util/dub/Manifest
@@ -1,5 +1,6 @@
DIST dub-1.35.1.tar.gz 1494965 BLAKE2B 400e210584660f7ac67732006ca6d88156adbbf2bf221aa244e317bf7c2772a6a01d9e141252fbf0cfde4c07302ee533593f3a2f418f9e120edc7359a83180cf SHA512 a371a7ec7003a4a4fb642a3567fce0685c99f4940a02de94d026bdc6fe4e84512b16e4bb57673da4d3b8e25177cc3df329da41862086cecc7b98aec1ebf9e4e7
DIST dub-1.37.0.tar.gz 1515440 BLAKE2B 13bb5b5541af6ae11e45cf130e9bfb706e7fb59797e497a33e419500262fd70ef1ac657b2b230224010d78b36361f7974d38b22fd36fa70f580c3b7f7a578457 SHA512 dc4331b77681d05bc5c6f36f5179d2a1220f3e1cbfc64ba27104fb2b716bd7e2b70c5b3b4d0e8b786caf36632c2fd774bbd51b235389ff38cfde87138fc9de18
+DIST dub-1.38.1.tar.gz 1517185 BLAKE2B 8d25b1f43059bc95cf921bd2aa8842abc82ef0d18321d2c9b46698a0d4a24a3fd4d740b20af7ba11cf6659f527b553378578040c9c0bac5d4629b4e024b3764a SHA512 d08afc9c5266fa5df78cefd3439f4477a80a6441446e202ee5d07bfac35db7521b836eca7f0944dfa98b53da948759ee1c91f6b6903c6e04b6d155c7ed805e80
DIST gitcompatibledubpackage-1.0.1.zip 1354 BLAKE2B 60c3ff78c9cc0ca16f36bfdb4d91f6ec7e8d1bc7fb2fae9488e3f24b33fc3b578157f3c2fd9f892743b1fba7ec473267d9027febd3c27ac2af52733e146c341d SHA512 0adb8a97cce0aaac1dbaea978aacf801071457c06413e618b0feb1adaf4169c7a1acbfac2d9c192fada4f2f8bd44e1ea3b9fce8c7cb3fb8bf364eba75f559122
DIST gitcompatibledubpackage-1.0.4.zip 2041 BLAKE2B 595080956881fd86753b17cdbb12108ab03161806ca51c748017f29251dd47a95a0aebde4442db1783602cfa67a9593014ebb6ca591dcfec2b08eef3d737e2cc SHA512 12057117be99bb4d2351af74cfd36c050734383bfc44b185cf5f9737d982e9fd6840f6968a3246b625d4ec90e9d30f5e394f8fa1febb85464429d771bc8062d0
DIST urld-2.1.1.zip 15062 BLAKE2B fe123fbef20167e07c81d0f7700a59c48dca28311329f9717283f3e7c88cc2430a1ffc26632c8c1512145b9d6fa6e432cee1677e99be3bd555247f02f7f42b67 SHA512 c4c8d349a8bbac9f234166ed9452ab221f8928e822c6ab95716b05948dbb21ae4309face4158909559698f23aa750c9faef5b2294feef7e601ccbc9a41c3b6bb
diff --git a/dev-util/dub/dub-1.38.1.ebuild b/dev-util/dub/dub-1.38.1.ebuild
new file mode 100644
index 0000000..0f3b69a
--- /dev/null
+++ b/dev-util/dub/dub-1.38.1.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Package and build management system for D"
+HOMEPAGE="https://code.dlang.org/"
+
+DUB_TEST_DEPS=(
+ gitcompatibledubpackage@1.0.1
+ gitcompatibledubpackage@1.0.4
+ urld@2.1.1
+)
+generate_dub_test_dependencies() {
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+ echo "https://code.dlang.org/packages/${depName}/${depVersion}.zip -> ${depName}-${depVersion}.zip"
+ done
+}
+
+GITHUB_URI="https://codeload.github.com/dlang"
+SRC_URI="
+ ${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${PN}-${PV}.tar.gz
+ test? (
+ $(generate_dub_test_dependencies)
+ )
+"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+DLANG_COMPAT=( dmd-2_{106..109} gdc-1{3,4} ldc2-1_{35..39} )
+
+inherit dlang-single shell-completion
+
+REQUIRED_USE=${DLANG_REQUIRED_USE}
+DEPEND=${DLANG_DEPS}
+BDEPEND=${DLANG_DEPS}
+RDEPEND=${DLANG_DEPS}
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+
+ if use test; then
+ # Copy the archives locally. Some tests do need to perform an
+ # actual fetch operation so make all of them available as
+ # archives and let dub figure out the rest.
+ local store="${T}/dub-test-deps"
+ mkdir -p "${store}" || die
+
+ local dep
+ for dep in "${DUB_TEST_DEPS[@]}"; do
+ local depName depVersion
+ depName="${dep%@*}"
+ depVersion="${dep#*@}"
+
+ cp "${DISTDIR}/${depName}-${depVersion}.zip" "${store}" || die
+ done
+
+ # Generate a settings.json file that points to the directory with all the deps.
+ cat <<EOF > "${T}/settings.json"
+{
+ "registryUrls": [
+ "file://${store}"
+ ],
+ "skipRegistry": "standard"
+}
+EOF
+ fi
+}
+
+src_compile() {
+ # gdc generates unaligned memory accesses with optimizations and avx
+ # enabled. It has been fixed upstream. See:
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114171
+ # Fixed in >=sys-devel/gcc-13.2.1_p20240330. Adding -mno-sse2 makes
+ # tests fail so defer to removing the common way users get avx
+ # instructions enabled (-march=native) and warn them.
+ if [[ ${ARCH} == amd64 && ${EDC} == gdc-13 && ${DCFLAGS} == *-march=native* ]]; then
+ ewarn "<sys-devel/gcc-13.2.1_p20240330 is known to generate invalid code"
+ ewarn "on amd64 with certain flags. For this reason -march=native will be"
+ ewarn "removed from your flags. Feel free to use -march=<cpu> to bypass this"
+ ewarn "precaution."
+ ewarn ""
+ ewarn "See also: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114171"
+ dlang-filter-dflags "gdc*" "-march=native"
+ fi
+
+ local imports=source versions="DubApplication DubUseCurl"
+ dlang_compile_bin bin/dub $(<build-files.txt)
+
+ # Generate man pages. Rebuids dub so put it behind a USE flag.
+ if use doc; then
+ einfo "Generating man pages"
+ # You're supposed to be able to do ./bin/dub scrips/man/gen_man.d
+ # but it gives linking errors with gdc.
+
+ # $imports is set up above.
+ versions=DubUseCurl
+ dlang_compile_bin scripts/man/gen_man{,.d} \
+ $(sed '/^source\/app.d$/d' build-files.txt)
+ ./scripts/man/gen_man || die "Could not generate man pages"
+ fi
+}
+
+src_test() {
+ # Setup the environment for the tests.
+ local -x DUB="${S}/bin/dub"
+ local -x DUB_HOME="${T}/dub-home" # where to put artifacts
+
+ # Note, disabling tests is possible yet very hard. You have to
+ # create a bash variable containing a regex (to be used in =~) that
+ # matches all the tests that you want *to* run. It's probably easier
+ # to delete the subdirectory under ${S}/test.
+
+ # Tries to connect to github.com and fails due to the network sandbox
+ rm -rf "${S}/test/git-dependency" || die
+ # Doesn't work on non amd64/x86
+ if [[ ${ARCH} == arm64 ]]; then
+ rm -rf test/issue1447-build-settings-vars || die
+ fi
+
+ # gdc-13 doesn't support #include's in its importC implementation.
+ if [[ ${EDC} == gdc-13 ]]; then
+ rm -rf "${S}/test/use-c-sources" || die
+ fi
+
+ # Put the configuration file relative to the dub binary:
+ # <dub-bin-dir>/../etc/dub/settings.json as per
+ # https://dub.pm/dub-reference/settings so that it's picked up
+ # automatically.
+ mkdir -p "${S}/bin/../etc/dub" || die
+ cp "${T}/settings.json" "${S}/bin/../etc/dub/" \
+ || die "Could not copy dub configuration file"
+
+ # See https://bugs.gentoo.org/921581 we have to remove -op (preserve
+ # source path for output files) from the flags lest the sandbox
+ # trips us up. This shouldn't be a problem anymore with dlang-single.
+ dlang-filter-dflags "*" "--op" "-op"
+
+ # Append -Wno-error or equivalent
+ DCFLAGS+=" $(dlang_get_wno_error_flag)"
+
+ # Run the unittests in the source files.
+ DFLAGS="${DCFLAGS}" "${DUB}" test -v -c application
+
+ # Run the integration tests.
+ DFLAGS="${DCFLAGS}" FRONTEND="$(dlang_get_fe_version)" test/run-unittest.sh \
+ || die "Tests failed"
+}
+
+src_install() {
+ dobin bin/dub
+ dodoc README.md
+
+ # Make sure there are no man files in any other section.
+ use doc && doman scripts/man/*.1
+
+ newbashcomp scripts/bash-completion/${PN}.bash ${PN}
+ dozshcomp scripts/zsh-completion/_${PN}
+ dofishcomp scripts/fish-completion/${PN}.fish
+}
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/
@ 2024-08-30 7:58 Horodniceanu Andrei
0 siblings, 0 replies; 14+ messages in thread
From: Horodniceanu Andrei @ 2024-08-30 7:58 UTC (permalink / raw
To: gentoo-commits
commit: f163d9786e5f5e3b47065ec0cfda2b5a88d41ad0
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Wed Aug 14 16:50:59 2024 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Fri Aug 30 07:32:54 2024 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=f163d978
dev-util/dub: use dub.eclass
Additionally add missing dependency virtual/pkgconfig to RDEPEND.
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-util/dub/dub-1.38.1-r1.ebuild | 126 ++++++++++++++++++++++++++++++++++++++
1 file changed, 126 insertions(+)
diff --git a/dev-util/dub/dub-1.38.1-r1.ebuild b/dev-util/dub/dub-1.38.1-r1.ebuild
new file mode 100644
index 0000000..43506d2
--- /dev/null
+++ b/dev-util/dub/dub-1.38.1-r1.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DLANG_COMPAT=( dmd-2_{106..109} gdc-1{3,4} ldc2-1_{35..39} )
+DUB_DEPENDENCIES=(
+ gitcompatibledubpackage@1.0.1
+ gitcompatibledubpackage@1.0.4
+ urld@2.1.1
+)
+inherit dlang-single dub shell-completion
+
+DESCRIPTION="Package and build management system for D"
+HOMEPAGE="https://code.dlang.org/"
+
+GITHUB_URI="https://codeload.github.com/dlang"
+SRC_URI="
+ ${GITHUB_URI}/${PN}/tar.gz/v${PV} -> ${P}.tar.gz
+ test? ( ${DUB_DEPENDENCIES_URIS} )
+"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND+=" virtual/pkgconfig"
+
+src_unpack() {
+ dub_gen_settings
+ unpack "${P}.tar.gz"
+ use test && dub_copy_dependencies_locally "${DUB_DEPENDENCIES[@]}"
+}
+
+src_configure() {
+ # gdc generates unaligned memory accesses with optimizations and avx
+ # enabled. It has been fixed upstream. See:
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114171
+ # Fixed in >=sys-devel/gcc-13.2.1_p20240330. Adding -mno-sse2 makes
+ # tests fail so defer to removing the common way users get avx
+ # instructions enabled (-march=native) and warn them.
+ if [[ ${ARCH} == amd64 && ${EDC} == gdc-13 && ${DCFLAGS} == *-march=native* ]]; then
+ ewarn "<sys-devel/gcc-13.2.1_p20240330 is known to generate invalid code"
+ ewarn "on amd64 with certain flags. For this reason -march=native will be"
+ ewarn "removed from your flags. Feel free to use -march=<cpu> to bypass this"
+ ewarn "precaution."
+ ewarn ""
+ ewarn "See also: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114171"
+ dlang-filter-dflags "gdc*" "-march=native"
+ fi
+}
+
+src_compile() {
+ local imports=source versions="DubApplication DubUseCurl"
+ dlang_compile_bin bin/dub $(<build-files.txt)
+
+ # Generate man pages. Rebuilds dub so put it behind a USE flag.
+ if use doc; then
+ einfo "Generating man pages"
+ # You're supposed to be able to do ./bin/dub scrips/man/gen_man.d
+ # but it gives linking errors with gdc.
+
+ # $imports is set up above.
+ versions=DubUseCurl
+ dlang_compile_bin scripts/man/gen_man{,.d} \
+ $(sed '/^source\/app.d$/d' build-files.txt)
+ ./scripts/man/gen_man || die "Could not generate man pages"
+ fi
+}
+
+src_test() {
+ # Setup the environment for the tests.
+ local -x DUB="${S}/bin/dub"
+
+ # Note, disabling tests is possible yet very hard. You have to
+ # create a bash variable containing a regex (to be used in =~) that
+ # matches all the tests that you want *to* run. It's probably easier
+ # to delete the subdirectory under ${S}/test.
+
+ # Tries to connect to github.com and fails due to the network sandbox
+ rm -rf "${S}/test/git-dependency" || die
+ # Doesn't work on non amd64/x86
+ if [[ ${ARCH} != @(amd64|x86) ]]; then
+ rm -rf test/issue1447-build-settings-vars || die
+ fi
+
+ # gdc-13 doesn't support #include's in its importC implementation.
+ if [[ ${EDC} == gdc-13 ]]; then
+ rm -rf "${S}/test/use-c-sources" || die
+ fi
+
+ # See https://bugs.gentoo.org/921581 we have to remove -op (preserve
+ # source path for output files) from the flags lest the sandbox
+ # trips us up. This shouldn't be a problem anymore with dlang-single.
+ dlang-filter-dflags "*" "--op" "-op"
+
+ # Use -Wno-error or equivalent
+ local -x DFLAGS="${DCFLAGS} ${DLANG_LDFLAGS} $(dlang_get_wno_error_flag)"
+
+ # Run the unittests in the source files.
+ "${DUB}" test --verbose -c application || die
+
+ # Some tests overwrite DUB_HOME messing up the configuration file
+ # so put it in one of the other available locations
+ mkdir -p "${S}/bin/../etc/dub" || die
+ cp "${DUB_HOME}/settings.json" "${S}/bin/../etc/dub/settings.json" || die
+
+ # Run the integration tests.
+ FRONTEND="$(dlang_get_fe_version)" test/run-unittest.sh \
+ || die "Tests failed"
+}
+
+src_install() {
+ dobin bin/dub
+ dodoc README.md
+
+ # Make sure there are no man files in any other section.
+ use doc && doman scripts/man/*.1
+
+ newbashcomp scripts/bash-completion/${PN}.bash ${PN}
+ dozshcomp scripts/zsh-completion/_${PN}
+ dofishcomp scripts/fish-completion/${PN}.fish
+}
^ permalink raw reply related [flat|nested] 14+ messages in thread
end of thread, other threads:[~2024-08-30 7:58 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-30 17:28 [gentoo-commits] repo/user/dlang:master commit in: dev-util/dub/ Horodniceanu Andrei
-- strict thread matches above, loose matches on Subject: below --
2024-08-30 7:58 Horodniceanu Andrei
2024-07-12 18:59 Horodniceanu Andrei
2024-06-02 5:29 Horodniceanu Andrei
2024-06-02 5:29 Horodniceanu Andrei
2024-05-30 17:28 Horodniceanu Andrei
2024-04-23 17:05 Horodniceanu Andrei
2024-04-13 23:04 Horodniceanu Andrei
2024-02-20 18:59 Horodniceanu Andrei
2024-02-18 22:49 Horodniceanu Andrei
2024-02-18 22:49 Horodniceanu Andrei
2024-01-14 20:45 Horodniceanu Andrei
2024-01-14 20:45 Horodniceanu Andrei
2024-01-03 19:56 Horodniceanu Andrei
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox