# Template file for 'dmd2.081' pkgname=dmd2.081 version=2.081.1 revision=4 create_wrksrc=yes hostmakedepends="which" makedepends="dmd-bootstrap" depends="gcc" short_desc="Digital Mars D compiler, 2.081" maintainer="Orphaned " license="BSL-1.0" homepage="http://www.digitalmars.com/d/2.0/" distfiles=" https://github.com/dlang/dmd/archive/v${version}.tar.gz>dmd-${version}.tar.gz https://github.com/dlang/druntime/archive/v${version}.tar.gz>druntime-${version}.tar.gz https://github.com/dlang/phobos/archive/v${version}.tar.gz>phobos-${version}.tar.gz http://downloads.dlang.org/releases/2.x/${version}/dmd.${version}.linux.tar.xz" checksum="14f3aafe1c93c86646aaeb3ed7361a5fc5a24374cf25c8848c81942bfd9fae1a 8313af32dce71f767fb0072cae699cbfe7196cf01b0ce1c5dd416a71d94f5fee d945c6fd1be14dff5fcbf45c1e11302e12bebac56d55e4e97e48e150f2899e04 a93f15fba1786322310492118785de759d8badf8b5a1583256fcb8486e4f74f8" conf_files="/etc/dmd.conf" provides="d-compiler-${version}_${revision}" conflicts="dmd-bootstrap" nopie=yes LDFLAGS="-lpthread" case "$XBPS_TARGET_MACHINE" in x86_64*) _archbits=64;; i686) _archbits=32;; *) broken="unsupported arch upstream";; esac post_extract() { rm -rf dmd druntime phobos mv dmd-${version} dmd mv druntime-${version} druntime mv phobos-${version} phobos } pre_configure() { case "$XBPS_TARGET_MACHINE" in *-musl) patch -p0 < ${FILESDIR}/musl.patch if [ "$XBPS_TARGET_MACHINE" = "i686-musl" ]; then patch -p0 < ${FILESDIR}/i686-musl.patch fi esac } do_build() { local dmd cd dmd make ${makejobs} -f posix.mak MODEL=${_archbits} TARGET_CPU=X86 BUILD=release PIC=1 dmd=${wrksrc}/dmd/generated/linux/release/$_archbits/dmd make ${makejobs} -C docs cd ../druntime make ${makejobs} -f posix.mak MODEL=${_archbits} DMD=$dmd BUILD=release PIC=1 cd ../phobos make ${makejobs} -f posix.mak MODEL=${_archbits} DMD=$dmd BUILD=release PIC=1 } do_install() { cd dmd vbin generated/linux/release/$_archbits/dmd vinstall ${FILESDIR}/dmd.conf 644 etc # note: dmd, druntime and phobos all share the same license vlicense LICENSE.txt vman generated/docs/man/man1/dmd.1 vman generated/docs/man/man5/dmd.conf.5 vmkdir usr/include/d cp -r ${wrksrc}/phobos/{*.d,etc,std} ${PKGDESTDIR}/usr/include/d vinstall ${wrksrc}/phobos/generated/linux/release/$_archbits/libphobos2.a 644 usr/lib libphobos2.a vmkdir usr/include/d/druntime cp -r ${wrksrc}/druntime/import ${PKGDESTDIR}/usr/include/d/druntime vinstall ${wrksrc}/druntime/generated/linux/release/$_archbits/libdruntime.a 644 usr/lib libdruntime.a } dmd2.081-doc_package() { short_desc="Documentation for D programming language (dummy package)" build_style="meta" } libphobos2.081_package() { short_desc+=" - standard library (dummy package)" build_style="meta" }