diff options
Diffstat (limited to 'community/dmd/APKBUILD')
-rw-r--r-- | community/dmd/APKBUILD | 63 |
1 files changed, 39 insertions, 24 deletions
diff --git a/community/dmd/APKBUILD b/community/dmd/APKBUILD index 0ee9a4ef2e8..824ae0c0d0f 100644 --- a/community/dmd/APKBUILD +++ b/community/dmd/APKBUILD @@ -1,62 +1,77 @@ # Contributor: Mathias LANG <pro.mathias.lang@gmail.com> # Maintainer: Mathias LANG <pro.mathias.lang@gmail.com> pkgname=dmd -pkgver=2.100.0 -pkgrel=0 +pkgver=2.104.2 +pkgrel=1 pkgdesc="D Programming Language reference compiler" url="https://github.com/dlang/dmd" # TODO: Enable on x86 once LDC-1.20.1 is out (and enabled on x86) arch="x86_64" license="BSL-1.0" depends="llvm-libunwind-dev tzdata" -makedepends="chrpath dtools ldc" +makedepends="chrpath ldc" +subpackages="$pkgname-doc" source="dmd-$pkgver.tar.gz::https://github.com/dlang/dmd/archive/v$pkgver.tar.gz - druntime-$pkgver.tar.gz::https://github.com/dlang/druntime/archive/v$pkgver.tar.gz phobos-$pkgver.tar.gz::https://github.com/dlang/phobos/archive/v$pkgver.tar.gz dmd-install-config.conf + lfs64.patch 10-dmd-musl.patch " builddir="$srcdir" +options="!check" # todo prepare() { # The Makefiles make some assumption about the directory structure ln -s "$srcdir/dmd-$pkgver/" "$srcdir/dmd" - ln -s "$srcdir/druntime-$pkgver/" "$srcdir/druntime" ln -s "$srcdir/phobos-$pkgver/" "$srcdir/phobos" default_prepare } build() { - ./dmd/src/build.d dmd HOST_DMD="ldmd2" - make -C "druntime/" -f posix.mak ENABLE_RELEASE=1 INSTALL_DIR="$srcdir/install" install - make -C "phobos/" -f posix.mak ENABLE_RELEASE=1 INSTALL_DIR="$srcdir/install" install - ./dmd/src/build.d unittest HOST_DMD="dmd/generated/linux/release/64/dmd" + export HOST_DMD="ldmd2" - # Strip redundant rpath to avoid warnings in the builder - chrpath -d "dmd/generated/linux/release/64/dmd" -} + local generated="$builddir"/dmd/generated + + cd "$builddir"/dmd + mkdir generated + ldmd2 -ofgenerated/build -g compiler/src/build.d -release -O + generated/build BUILD=release HOST_DMD="$HOST_DMD" CXX="c++" ENABLE_RELEASE=1 DFLAGS="$DFLAGS" dmd -v $MAKEFLAGS + + cd "$builddir"/dmd/druntime + make -f posix.mak DMD="$generated"/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 PIC=1 + + cd "$builddir"/phobos + make -f posix.mak DMD="$generated"/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 PIC=1 -check() { - dmd/generated/linux/release/64/dmd-unittest + cd "$builddir"/dmd/compiler + make -C docs DMD="$HOST_DMD" + + # Strip redundant rpath to avoid warnings in the builder + chrpath -d "$builddir"/dmd/generated/linux/release/64/dmd } package() { - mkdir -p "$pkgdir/usr/bin/" "$pkgdir/usr/lib/" "$pkgdir/etc/" "$pkgdir/usr/include/dmd/" + mkdir -p "$pkgdir"/usr/lib/ "$pkgdir"/usr/include/dmd/phobos/ + + install -Dm755 dmd/generated/linux/release/64/dmd -t "$pkgdir"/usr/bin/ + install -Dm644 dmd-install-config.conf "$pkgdir"/etc/dmd.conf + + install -Dm644 dmd/generated/docs/man/man1/dmd.1 -t "$pkgdir"/usr/share/man/man1/ + install -Dm644 dmd/generated/docs/man/man5/* -t "$pkgdir"/usr/share/man/man5/ - mv dmd/generated/linux/release/64/dmd "$pkgdir"/usr/bin/dmd - cp dmd-install-config.conf "$pkgdir"/etc/dmd.conf - mv install/linux/lib64/* "$pkgdir"/usr/lib/ + install -Dm755 phobos/generated/linux/release/64/*.so* -t "$pkgdir"/usr/lib/ + install -Dm755 phobos/generated/linux/release/64/*.a -t "$pkgdir"/usr/lib/ - mv install/src/druntime/import/ "$pkgdir"/usr/include/dmd/druntime - mv install/src/phobos/ "$pkgdir"/usr/include/dmd/phobos/ + cp -r phobos/etc phobos/std phobos/*.d "$pkgdir"/usr/include/dmd/phobos/ + cp -r dmd/druntime/import "$pkgdir"/usr/include/dmd/druntime } sha512sums=" -e9315c8a1d31fb876b18e7e1941a04ee1cda8065f87ac9ac9335f43d7d42c43116037c5124222559753699cbe3952a706862287746cb176ac988d8a873fc4faa dmd-2.100.0.tar.gz -68b0088dafb0e7001241b86ad884a71a302e2fc925662db394b7d428d57606897dffb5e0041a03592e4b6850311176f5d286ab98d1f157572c65e0311cccf1ab druntime-2.100.0.tar.gz -7a719dbd90ab3eb4de46c8259b8017e07360a41eb6a8c95eceedf811037c08a3358278cc9cc3e0245e7d0df50922129ccff2de88d99576d7ae808215afc8653d phobos-2.100.0.tar.gz +1da67bdce9cf27e99e39803fb78e48c86f74b1b881d8a903e37e615331cc988a01ab2026a03350858f98335f518ba2ee0eaa337488cf8c380ef66635f367fa09 dmd-2.104.2.tar.gz +e04691f917267e3d9aa91b2a4a242bd969e572cb598e256a78d4f34e946097d4b97a87d7d2f30a480491d1a2c6eed40c6a138b95d3a4250d9e8267b5811ba789 phobos-2.104.2.tar.gz 123ec0f256a73030a5e5b4b87a7f2e0752320777b7fcd175a221807ec2917f5d6d88776c3448eab077eb7a2211dd4a3d64e3a556053b0f183eb058da437bc5da dmd-install-config.conf -a26ae89516d4125db00205df7039c62642dc65d0505f692f910fd5ee8701a91a262e9448dfcd72ca1d84b9eead0dd12dc0ebc6b61bf6162034ad7d64f72601a3 10-dmd-musl.patch +c8e7de8bc9c43f4ae488cfc35355db2e6cff4278749016631acb2a8c1a2594f8d7ffb9c9a8a6cc2b64e006e9e51d865db3f3a78d05bbdb487f75e415f309d2b8 lfs64.patch +928874c8a6acc593f2ac54b785ff551bc16b53ec647c4c7e19b5f19d609f02b200e550d1ee3d024bf969ef417b705c3448ce590adbe9a113a03e9372718a0f55 10-dmd-musl.patch " |