diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 55 |
1 files changed, 34 insertions, 21 deletions
@@ -1,33 +1,34 @@ +# Maintainer: xiretza <xiretza+aur@gmail.com> # Maintainer: Rod Kay <charlie5 on #ada at freenode.net> # Contributor: Pierre-Marie de Rodat <pmderodat on #ada at freenode.net> # Contributor: Earnestly <zibeon AT googlemail.com> -pkgname=gprbuild +pkgbase=gprbuild +pkgname=(libgpr gprbuild) _upstream_ver=2020-20200429-19BD2 pkgver=2020 -pkgrel=4 +pkgrel=5 pkgdesc="Builder for multi-language systems" arch=('i686' 'x86_64') url="https://github.com/AdaCore/gprbuild/" license=('GPL3') -depends=('libgpr') -makedepends=('gprbuild-bootstrap') -provides=("gprbuild-bootstrap") -conflicts=("gprbuild-bootstrap") +makedepends=('gprbuild-bootstrap' 'xmlada') _checksum=408ec35c3bb86bd227db3da55d3e1e0c572a56e3 -source=("${pkgname}-${_upstream_ver}-src.tar.gz::https://community.download.adacore.com/v1/${_checksum}?filename=${pkgname}-${_upstream_ver}-src.tar.gz" +source=("${pkgbase}-${_upstream_ver}-src.tar.gz::https://community.download.adacore.com/v1/${_checksum}?filename=${pkgbase}-${_upstream_ver}-src.tar.gz" 'relocatable-build.patch' - 'expose-cargs-and-largs-makefile.patch') -sha1sums=('408ec35c3bb86bd227db3da55d3e1e0c572a56e3' + 'always-use-host-gprinstall.patch') +sha1sums=("$_checksum" '91b20bde99cf02410cdb2b74aa1adb014458a9b3' - 'ddaf20842ed9879c3f1cb24b3eb7615d5cfe61a5') + '66792ebc73aff76a368bd902adc6a6f181d1d878') prepare() { - cd "$srcdir/$pkgname-$_upstream_ver-src" + cd "$srcdir/$pkgbase-$_upstream_ver-src" patch -Np1 -i "$srcdir/relocatable-build.patch" - patch -Np1 -i "$srcdir/expose-cargs-and-largs-makefile.patch" + # By default, it tries to use the freshly-built gprinstall to install gprbuild, but that requires libgpr, + # which can't be installed yet. Simply fall back to gprinstall from gprbuild-bootstrap + patch -Np1 -i "$srcdir/always-use-host-gprinstall.patch" # GPRbuild hard-codes references to /usr/libexec, but ArchLinux packages # must use /usr/lib instead. @@ -38,20 +39,32 @@ prepare() { } build() { - cd "$srcdir/$pkgname-$_upstream_ver-src" + cd "$srcdir/$pkgbase-$_upstream_ver-src" - # Make using a single job (-j1) to avoid the same file being compiled at the same time. export OS=UNIX - make -j1 prefix=/usr BUILD=production setup - make -j1 GPRBUILD_OPTIONS=-R BUILD=production + GPRBUILD_OPTIONS="-R -cargs $CFLAGS -largs $LDFLAGS -gargs" + make BUILD=production setup + + make GPRBUILD_OPTIONS="$GPRBUILD_OPTIONS" libgpr.build + make GPRBUILD_OPTIONS="$GPRBUILD_OPTIONS" build +} + +package_libgpr() { + pkgdesc="Ada library to handle GPRbuild project files" + depends=('xmlada') + + cd "$srcdir/$pkgbase-$_upstream_ver-src" + + make prefix="$pkgdir/usr" libgpr.install } -package() { - cd "$srcdir/$pkgname-$_upstream_ver-src" +package_gprbuild() { + provides=('gprbuild-bootstrap') + conflicts=('gprbuild-bootstrap') + depends=('libgpr' 'xmlada') + cd "$srcdir/$pkgbase-$_upstream_ver-src" - # Make one install at a time to avoid GPRinstall reading/writing to - # the same installed project files at the same time. - make prefix="$pkgdir/usr" install -j1 BUILD=production + make prefix="$pkgdir/usr" install # We don't need to distribute the installation script rm -f -- "$pkgdir/usr/doinstall" |