mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
115 lines
3.9 KiB
Bash
115 lines
3.9 KiB
Bash
# vim: set ts=2 sw=2 et:
|
|
# Maintainer: Dan McGee <dan@archlinux.org>
|
|
# Maintainer: Dave Reisner <dreisner@archlinux.org>
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# - arch/host/flags for arm, armv6h, armv7h, and aarch64
|
|
# - pacman.conf: architecture=arm/armv6h/armv7h/aarch64, added our aur and alarm repos
|
|
# - makepkg.conf: adjusted C/CXX/LDFLAGS, drop -z,now for armv5
|
|
# - patch to sync filesystem after install/remove
|
|
# - reverts to allow scriplet input on stdin
|
|
|
|
pkgname=pacman
|
|
pkgver=5.1.3
|
|
pkgrel=1
|
|
pkgdesc="A library-based package manager with dependency support"
|
|
arch=('x86_64')
|
|
url="https://www.archlinux.org/pacman/"
|
|
license=('GPL')
|
|
groups=('base' 'base-devel')
|
|
depends=('bash' 'glibc' 'libarchive' 'curl'
|
|
'gpgme' 'pacman-mirrorlist' 'archlinuxarm-keyring')
|
|
makedepends=('asciidoc')
|
|
checkdepends=('python2' 'fakechroot')
|
|
optdepends=('perl-locale-gettext: translation support in makepkg-template'
|
|
'xdelta3: delta support in repo-add')
|
|
backup=(etc/pacman.conf
|
|
etc/makepkg.conf)
|
|
options=('strip' 'debug')
|
|
validpgpkeys=('6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD' # Allan McRae <allan@archlinux.org>
|
|
'B8151B117037781095514CA7BBDFFC92306B1121') # Andrew Gregory (pacman) <andrew@archlinux.org>
|
|
source=(https://sources.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig}
|
|
0001-Sychronize-filesystem.patch
|
|
0002-Revert-close-stdin-before-running-install-scripts.patch
|
|
0003-Revert-alpm_run_chroot-always-connect-parent2child-p.patch
|
|
pacman.conf
|
|
makepkg.conf)
|
|
sha256sums=('10db61a0928d619871340c3f93a677d1541d6c52353c516aec4f8d96e830d4eb'
|
|
'SKIP'
|
|
'ce1be3021e5cd693b602ddfe96aca65117dce59ca11d4127aff58decd634fd04'
|
|
'9dc4d4b30e9c561868e89272e1867d5a009fbe6461b885c569f93069a32bdada'
|
|
'1b7286b86499a02e63362f501209effafcd1676111d91e88253e07737ba44b89'
|
|
'd55cd09eda56a0f19dfba8a042056fdf8d8d441d2c218fddaa30c1546a703532'
|
|
'edc48d8a6c051d50241fa727e948a06ece8890d9d9da80573f8894a3bf455d36')
|
|
|
|
prepare() {
|
|
cd "$pkgname-$pkgver"
|
|
|
|
patch -p1 -i ../0001-Sychronize-filesystem.patch
|
|
patch -p1 -i ../0002-Revert-close-stdin-before-running-install-scripts.patch
|
|
patch -p1 -i ../0003-Revert-alpm_run_chroot-always-connect-parent2child-p.patch
|
|
}
|
|
|
|
build() {
|
|
cd "$pkgname-$pkgver"
|
|
|
|
./configure --prefix=/usr --sysconfdir=/etc \
|
|
--localstatedir=/var --enable-doc \
|
|
--with-scriptlet-shell=/usr/bin/bash \
|
|
--with-ldconfig=/usr/bin/ldconfig
|
|
make V=1
|
|
}
|
|
|
|
check() {
|
|
make -C "$pkgname-$pkgver" check
|
|
}
|
|
|
|
package() {
|
|
cd "$pkgname-$pkgver"
|
|
|
|
make DESTDIR="$pkgdir" install
|
|
|
|
# install Arch specific stuff
|
|
install -dm755 "$pkgdir/etc"
|
|
install -m644 "$srcdir/pacman.conf" "$pkgdir/etc"
|
|
|
|
case $CARCH in
|
|
arm)
|
|
mycarch="arm"
|
|
mychost="armv5tel-unknown-linux-gnueabi"
|
|
myflags="-march=armv5te "
|
|
;;
|
|
armv6h)
|
|
mycarch="armv6h"
|
|
mychost="armv6l-unknown-linux-gnueabihf"
|
|
myflags="-march=armv6 -mfloat-abi=hard -mfpu=vfp "
|
|
;;
|
|
armv7h)
|
|
mycarch="armv7h"
|
|
mychost="armv7l-unknown-linux-gnueabihf"
|
|
myflags="-march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 "
|
|
;;
|
|
aarch64)
|
|
mycarch="aarch64"
|
|
mychost="aarch64-unknown-linux-gnu"
|
|
myflags="-march=armv8-a "
|
|
;;
|
|
esac
|
|
|
|
install -m644 "$srcdir/makepkg.conf" "$pkgdir/etc"
|
|
sed -i "$pkgdir/etc/makepkg.conf" \
|
|
-e "s|@CARCH[@]|$mycarch|g" \
|
|
-e "s|@CHOST[@]|$mychost|g" \
|
|
-e "s|@CARCHFLAGS[@]|$myflags|g"
|
|
sed -i $pkgdir/etc/pacman.conf -e "s|@CARCH[@]|$mycarch|g"
|
|
[[ $CARCH == "arm" ]] && sed -i 's/,-z,now//' "$pkgdir/etc/makepkg.conf"
|
|
|
|
# put bash_completion in the right location
|
|
install -dm755 "$pkgdir/usr/share/bash-completion/completions"
|
|
mv "$pkgdir/etc/bash_completion.d/pacman" "$pkgdir/usr/share/bash-completion/completions"
|
|
rmdir "$pkgdir/etc/bash_completion.d"
|
|
|
|
for f in makepkg pacman-key; do
|
|
ln -s pacman "$pkgdir/usr/share/bash-completion/completions/$f"
|
|
done
|
|
}
|