diff options
Diffstat (limited to 'libre')
-rw-r--r-- | libre/pacman/0001-libmakepkg-Support-file-5.33-s-application-x-pie-exe.patch | 38 | ||||
-rw-r--r-- | libre/pacman/0001-makepkg-treat-pkgrel-more-similarly-to-pkgver.patch | 15 | ||||
-rw-r--r-- | libre/pacman/PKGBUILD | 28 | ||||
-rw-r--r-- | libre/pacman/makepkg.conf.in | 22 |
4 files changed, 21 insertions, 82 deletions
diff --git a/libre/pacman/0001-libmakepkg-Support-file-5.33-s-application-x-pie-exe.patch b/libre/pacman/0001-libmakepkg-Support-file-5.33-s-application-x-pie-exe.patch deleted file mode 100644 index 94ff82864..000000000 --- a/libre/pacman/0001-libmakepkg-Support-file-5.33-s-application-x-pie-exe.patch +++ /dev/null @@ -1,38 +0,0 @@ -From c6ffa8bb3eea231c36dab87e6051c04b16e8c0e6 Mon Sep 17 00:00:00 2001 -Message-Id: <c6ffa8bb3eea231c36dab87e6051c04b16e8c0e6.1524246116.git.jan.steffens@gmail.com> -From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> -Date: Fri, 20 Apr 2018 19:25:55 +0200 -Subject: [PATCH] libmakepkg: Support file 5.33's application/x-pie-executable - -file 5.33 introduces a new MIME type "application/x-pie-executable", -which is used for relocatable binaries. makepkg ignored these binaries -and did not attempt to strip them. - -Handle the new MIME type like the old "application/x-sharedlib". -Stripping the binaries with --strip-unneeded to keep relocation -information should be the correct thing to do. - -file 5.33 also misidentifies actual libraries as PIE executables, so we -didn't strip any shared libraries, either. We now work around this bug. - -Signed-off-by: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> ---- - scripts/libmakepkg/tidy/strip.sh.in | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/scripts/libmakepkg/tidy/strip.sh.in b/scripts/libmakepkg/tidy/strip.sh.in -index e20114c0..36d1b89e 100644 ---- a/scripts/libmakepkg/tidy/strip.sh.in -+++ b/scripts/libmakepkg/tidy/strip.sh.in -@@ -125,6 +125,8 @@ tidy_strip() { - esac;; - *application/x-executable*) # Binaries - strip_flags="$STRIP_BINARIES";; -+ *application/x-pie-executable*) # Relocatable binaries -+ strip_flags="$STRIP_SHARED";; - *) - continue ;; - esac --- -2.17.0 - diff --git a/libre/pacman/0001-makepkg-treat-pkgrel-more-similarly-to-pkgver.patch b/libre/pacman/0001-makepkg-treat-pkgrel-more-similarly-to-pkgver.patch index 7378896ba..4f74d7ec4 100644 --- a/libre/pacman/0001-makepkg-treat-pkgrel-more-similarly-to-pkgver.patch +++ b/libre/pacman/0001-makepkg-treat-pkgrel-more-similarly-to-pkgver.patch @@ -16,19 +16,10 @@ enforcing /[0-9]+(\.([0-9]+)?/ on a version spec seems silly. test/util/vercmptest.sh | 23 ++++++++++++++++++++++- 3 files changed, 26 insertions(+), 5 deletions(-) -diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt +diff --git a/doc/PKGBUILD.5.asciidoc b/doc/PKGBUILD.5.asciidoc index e410481..86df1e8 100644 ---- a/doc/PKGBUILD.5.txt -+++ b/doc/PKGBUILD.5.txt -@@ -48,7 +48,7 @@ similar to `$_basekernver`. - - *pkgver*:: - The version of the software as released from the author (e.g., '2.7.1'). -- The variable is not allowed to contain colons or hyphens. -+ The variable is not allowed to contain colons, hyphens or whitespace. - + - The `pkgver` variable can be automatically updated by providing a `pkgver()` - function in the PKGBUILD that outputs the new package version. +--- a/doc/PKGBUILD.5.asciidoc ++++ b/doc/PKGBUILD.5.asciidoc @@ -62,7 +62,7 @@ below). allows package maintainers to make updates to the package's configure flags, for example. This is typically set to '1' for each new upstream diff --git a/libre/pacman/PKGBUILD b/libre/pacman/PKGBUILD index dc731f1c2..a9710a79a 100644 --- a/libre/pacman/PKGBUILD +++ b/libre/pacman/PKGBUILD @@ -10,8 +10,8 @@ # Contributor: Daniel Milewski <niitotantei@riseup.net> pkgname=pacman -pkgver=5.0.2 -pkgrel=3 +pkgver=5.1.0 +pkgrel=1 pkgrel+=.parabola1 pkgdesc="A library-based package manager with dependency support" arch=('i686' 'x86_64') @@ -25,18 +25,14 @@ depends=('bash' 'glibc' 'libarchive' 'curl' depends+=('parabola-keyring' 'archlinuxarm-keyring' 'archlinux32-keyring') makedepends=('asciidoc') checkdepends=('python2' 'fakechroot') -provides=('pacman-contrib') -provides+=('pacman-parabola') -conflicts=('pacman-contrib') -conflicts+=('pacman-parabola') -replaces=('pacman-contrib') -replaces+=('pacman-parabola') +provides=('pacman-parabola') +conflicts=('pacman-parabola') +replaces=('pacman-parabola') 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-libmakepkg-Support-file-5.33-s-application-x-pie-exe.patch "${arch[@]/#/pacman.conf.}" makepkg.conf.in pacman-keyring.service @@ -45,26 +41,22 @@ source=(https://sources.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig 0002-Revert-close-stdin-before-running-install-scripts.patch 0003-Revert-alpm_run_chroot-always-connect-parent2child-p.patch 0001-makepkg-treat-pkgrel-more-similarly-to-pkgver.patch) -sha256sums=('dfd36086ad68564bcd977f4a1fafe51dd328acd4a95093ac4bf1249be9c41f0e' +sha256sums=('9f5993fc8923530713742f15df284677f297b3eca15ed7a24758c98ac7399bd3' 'SKIP' - '78129351e96d19e14b05bda30480df3e834a96153b7cfe72ca5c91f5cc5cae40' '19853ea9a2138157bbb334eb7f3a9b3098b88e513678b54b7b4f19d2ffd6ecad' '1b2c8f4ec84d0dc496516880a54b5e4deb78798618c9cf5e284a45303f156e58' 'b2cb3ba229edba338c0af7d7f5bb1a6ef6143bcd453c693bfee0c02fa1cfa18a' - '117892e340cc502b8659f21b209886c51a375e52f4af39f173ff7fe12762d40b' + '31565aae027a26bb0e9074aca89a012483dc078e0239dc225c3c15fced526607' '220f1b25a64727041dc6fa3fd486b0a043f735a3f6cecedc4e2f7c47ec6ce66d' '2a857061f032ff5485f5c75ab74e6f6532621e08963ef48640a792cca16cacd6' '6064bbf5b453ec50b25291cf9268c56cac4bca3ad80d47f2d6b62c82254e5461' 'dbadad986353ff90a390614f393a09ea07498fcf00467481bc58fbc07ac2d003' '4187d385e173127df8ed6d358291f0a0b0c2581742d8859ad6b276bb6d703e49' - '416efd44f4d52345871877fd1cb1674dc6e5c063d51f9fe0d723ca51e004595e') + '91bdcb8b29cc75a2e9f0fe821c1599fec2736a5115308ad502d309f04f3320a2') prepare() { cd "$pkgname-$pkgver" - # Fix up makepkg stripping with file 5.33 - patch -Np1 -i ../0001-libmakepkg-Support-file-5.33-s-application-x-pie-exe.patch - # From Arch ARM if [ "${CARCH}" = "armv7h" ]; then patch -p1 -i $srcdir/0001-Sychronize-filesystem.patch @@ -84,7 +76,6 @@ build() { --with-scriptlet-shell=/usr/bin/bash \ --with-ldconfig=/usr/bin/ldconfig make V=1 - make -C contrib # Generate the architecture-specific makepkg.conf files local carch mycarch mychost myflags myldflags @@ -125,7 +116,6 @@ package() { cd "$pkgname-$pkgver" make DESTDIR="$pkgdir" install - make DESTDIR="$pkgdir" -C contrib install # install distro-specific stuff install -dm755 "$pkgdir/etc" @@ -148,8 +138,6 @@ package() { ln -s pacman "$pkgdir/usr/share/bash-completion/completions/$f" done - install -Dm644 contrib/PKGBUILD.vim "$pkgdir/usr/share/vim/vimfiles/syntax/PKGBUILD.vim" - # Parabola's pacman began shipping a weekly job for this back in # 2014. Why is it nescessary for Parabola installs, but it # seemingly isn't for Arch installs? diff --git a/libre/pacman/makepkg.conf.in b/libre/pacman/makepkg.conf.in index 58eafb754..d874c81cd 100644 --- a/libre/pacman/makepkg.conf.in +++ b/libre/pacman/makepkg.conf.in @@ -1,3 +1,4 @@ +#!/hint/bash # # /etc/makepkg.conf # @@ -8,9 +9,10 @@ # #-- The download utilities that makepkg should use to acquire sources # Format: 'protocol::agent' -DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' - 'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' - 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' +DLAGENTS=('file::/usr/bin/curl -gqC - -o %o %u' + 'ftp::/usr/bin/curl -gqfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' + 'http::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u' + 'https::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u' 'rsync::/usr/bin/rsync --no-motd -z %u %o' 'scp::/usr/bin/scp -C %u %o') @@ -34,8 +36,6 @@ CARCH="@CARCH@" CHOST="@CHOST@" #-- Compiler and Linker Flags -# -march (or -mcpu) builds exclusively for an architecture -# -mtune optimizes for an architecture, but builds for whole processor family CPPFLAGS="-D_FORTIFY_SOURCE=2" CFLAGS="@CARCHFLAGS@" CXXFLAGS="@CARCHFLAGS@" @@ -50,7 +50,7 @@ DEBUG_CXXFLAGS="-g -fvar-tracking-assignments" # BUILD ENVIRONMENT ######################################################################### # -# Defaults: BUILDENV=(!distcc color !ccache check !sign) +# Defaults: BUILDENV=(!distcc !color !ccache check !sign) # A negated environment option will do the opposite of the comments below. # #-- distcc: Use the Distributed C/C++/ObjC compiler @@ -73,7 +73,7 @@ BUILDENV=(!distcc color !ccache check !sign) # These are default values for the options=() settings ######################################################################### # -# Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !optipng !upx !debug) +# Default: OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug) # A negated option will do the opposite of the comments below. # #-- strip: Strip symbols from binaries/libraries @@ -83,11 +83,9 @@ BUILDENV=(!distcc color !ccache check !sign) #-- emptydirs: Leave empty directories in packages #-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip #-- purge: Remove files specified by PURGE_TARGETS -#-- upx: Compress binary executable files using UPX -#-- optipng: Optimize PNG images with optipng #-- debug: Add debugging flags as specified in DEBUG_* variables # -OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !optipng !upx debug) +OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge debug) #-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512 INTEGRITY_CHECK=(md5) @@ -103,6 +101,8 @@ MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info}) DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc}) #-- Files to be removed from all packages (if purge is specified) PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod) +#-- Directory to store source code in for debug packages +DBGSRCDIR="/usr/src/debug" ######################################################################### # PACKAGE OUTPUT @@ -143,5 +143,3 @@ COMPRESSZ=(compress -c -f) # PKGEXT='.pkg.tar.xz' SRCEXT='.src.tar.gz' - -# vim: set ft=sh ts=2 sw=2 et: |