From 7201d68c2089f4e83126bcfc72e0658ce920a084 Mon Sep 17 00:00:00 2001 From: Bruno Cichon Date: Tue, 2 Oct 2018 00:52:16 +0200 Subject: Add some base-devel packages for ppc64le --- libre-testing/bison/PKGBUILD | 34 ++++++ libre-testing/flex/PKGBUILD | 38 ++++++ libre-testing/flex/flex-2.6.0-comment-style.patch | 22 ++++ libre-testing/groff/PKGBUILD | 54 ++++++++ libre-testing/groff/site.tmac | 16 +++ libre-testing/m4/PKGBUILD | 33 +++++ libre-testing/m4/m4-1.4.16-readlink-einval.patch | 12 ++ libre-testing/m4/m4-1.4.17-perl-make-check.patch | 12 ++ libre-testing/make/PKGBUILD | 40 ++++++ libre-testing/make/guile-2.2.patch | 15 +++ libre-testing/patch/CVE-2018-1000156.patch | 142 ++++++++++++++++++++++ libre-testing/patch/PKGBUILD | 61 ++++++++++ libre-testing/pkgconf/PKGBUILD | 80 ++++++++++++ libre-testing/pkgconf/platform-pkg-config.in | 11 ++ libre-testing/sudo/PKGBUILD | 71 +++++++++++ libre-testing/sudo/sudo.install | 9 ++ libre-testing/sudo/sudo.pam | 4 + 17 files changed, 654 insertions(+) create mode 100644 libre-testing/bison/PKGBUILD create mode 100644 libre-testing/flex/PKGBUILD create mode 100644 libre-testing/flex/flex-2.6.0-comment-style.patch create mode 100644 libre-testing/groff/PKGBUILD create mode 100644 libre-testing/groff/site.tmac create mode 100644 libre-testing/m4/PKGBUILD create mode 100644 libre-testing/m4/m4-1.4.16-readlink-einval.patch create mode 100644 libre-testing/m4/m4-1.4.17-perl-make-check.patch create mode 100644 libre-testing/make/PKGBUILD create mode 100644 libre-testing/make/guile-2.2.patch create mode 100644 libre-testing/patch/CVE-2018-1000156.patch create mode 100644 libre-testing/patch/PKGBUILD create mode 100644 libre-testing/pkgconf/PKGBUILD create mode 100644 libre-testing/pkgconf/platform-pkg-config.in create mode 100644 libre-testing/sudo/PKGBUILD create mode 100644 libre-testing/sudo/sudo.install create mode 100644 libre-testing/sudo/sudo.pam (limited to 'libre-testing') diff --git a/libre-testing/bison/PKGBUILD b/libre-testing/bison/PKGBUILD new file mode 100644 index 000000000..b6b0ff06a --- /dev/null +++ b/libre-testing/bison/PKGBUILD @@ -0,0 +1,34 @@ +# Maintainer: Lukas Fleischer +# Contributor: Allan McRae +# Contributor: Eric Belanger + +pkgname=bison +pkgver=3.0.5 +pkgrel=1 +pkgdesc="The GNU general-purpose parser generator" +arch=('x86_64' 'ppc64le') +license=('GPL3') +url="http://www.gnu.org/software/bison/bison.html" +depends=('glibc' 'm4' 'sh') +groups=('base-devel') +source=("ftp://ftp.gnu.org/gnu/bison/${pkgname}-${pkgver}.tar.xz"{,.sig}) +md5sums=('3e54f20988ecd1b62044e25481e5f06b' + 'SKIP') +validpgpkeys=('7DF84374B1EE1F9764BBE25D0DDCAA3278D5264E') # Akim Demaille + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr --datadir=/usr/share + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + make check +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/libre-testing/flex/PKGBUILD b/libre-testing/flex/PKGBUILD new file mode 100644 index 000000000..df37cb065 --- /dev/null +++ b/libre-testing/flex/PKGBUILD @@ -0,0 +1,38 @@ +# Maintainer: Lukas Fleischer +# Contributor: Allan McRae +# Contributor: judd + +pkgname=flex +pkgver=2.6.4 +pkgrel=1 +pkgdesc="A tool for generating text-scanning programs" +arch=('x86_64' 'ppc64le') +url="https://github.com/westes/flex" +license=('custom') +groups=('base-devel') +depends=('glibc' 'm4' 'sh') +makedepends=('help2man') +source=("https://github.com/westes/flex/releases/download/v$pkgver/flex-$pkgver.tar.gz") +md5sums=('2882e3179748cc9f9c23ec593d6adc8d') + +build() { + cd "$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +check() { + cd "$pkgname-$pkgver" + + # cxx_restart fails - https://github.com/westes/flex/issues/98 + make -k check || true +} + +package() { + cd "$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + ln -s flex "${pkgdir}/usr/bin/lex" + + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/license.txt" +} diff --git a/libre-testing/flex/flex-2.6.0-comment-style.patch b/libre-testing/flex/flex-2.6.0-comment-style.patch new file mode 100644 index 000000000..74176168a --- /dev/null +++ b/libre-testing/flex/flex-2.6.0-comment-style.patch @@ -0,0 +1,22 @@ +From 07d89829cce4527c7614a34642d4b2c2ef5d6005 Mon Sep 17 00:00:00 2001 +From: Will Estes +Date: Fri, 11 Dec 2015 09:45:14 -0500 +Subject: [PATCH] Commented in C style in skeleton; fixed sf#195 + +--- + src/flex.skl | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/flex.skl b/src/flex.skl +index b63c8c8..40287b6 100644 +--- a/src/flex.skl ++++ b/src/flex.skl +@@ -2350,7 +2350,7 @@ void yyFlexLexer::yyensure_buffer_stack(void) + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. + */ +- num_to_alloc = 1; // After all that talk, this was set to 1 anyways... ++ num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ + YY_G(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + M4_YY_CALL_LAST_ARG); diff --git a/libre-testing/groff/PKGBUILD b/libre-testing/groff/PKGBUILD new file mode 100644 index 000000000..70d5baa5a --- /dev/null +++ b/libre-testing/groff/PKGBUILD @@ -0,0 +1,54 @@ +# Maintainer: + +pkgname=groff +pkgver=1.22.3 +pkgrel=7 +pkgdesc='GNU troff text-formatting system' +arch=('x86_64' 'ppc64le') +url='https://www.gnu.org/software/groff/groff.html' +license=('GPL') +groups=('base-devel') +depends=('perl' 'gcc-libs') +makedepends=('netpbm' 'psutils' 'libxaw') +optdepends=('netpbm: for use together with man -H command interaction in browsers' + 'psutils: for use together with man -H command interaction in browsers' + 'libxaw: for gxditview') +options=('!docs' '!emptydirs' '!makeflags') +validpgpkeys=('58E0C111E39F5408C5D3EC76C1A60EACE707FDA5') # Werner Lemberg +source=("https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig} + 'site.tmac') +sha256sums=('3a48a9d6c97750bfbd535feeb5be0111db6406ddb7bb79fc680809cda6d828a5' + 'SKIP' + 'af59ecde597ce9f8189368a7739279a5f8a391139fe048ef6b4e493ed46e5f5f') + +build() { + cd $srcdir/$pkgname-$pkgver + + ./configure \ + --prefix=/usr \ + --with-x \ + --with-appresdir=/usr/share/X11/app-defaults + make +} + +check() { + cd $srcdir/$pkgname-$pkgver + make check +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install + + # add compatibility symlinks + ln -s eqn $pkgdir/usr/bin/geqn + ln -s tbl $pkgdir/usr/bin/gtbl + ln -s soelim $pkgdir/usr/bin/zsoelim + + # FS33760 - TERMCAP variables not followed + # TODO: everyone is doing this - find out why upstream does not... + cat $srcdir/site.tmac >> \ + $pkgdir/usr/share/groff/site-tmac/man.local + cat $srcdir/site.tmac >> \ + $pkgdir/usr/share/groff/site-tmac/mdoc.local +} diff --git a/libre-testing/groff/site.tmac b/libre-testing/groff/site.tmac new file mode 100644 index 000000000..8ef1040ca --- /dev/null +++ b/libre-testing/groff/site.tmac @@ -0,0 +1,16 @@ +. +.if n \{\ +. \" Character translations for non-keyboard +. \" characters - to make them searchable +. if '\*[.T]'utf8' \{\ +. char \- \N'45' +. char - \N'45' +. char ' \N'39' +. char \' \N'39' +. \} +. +. \" Shut off SGR by default (groff colors) +. \" Require GROFF_SGR envvar defined to turn it on +. if '\V[GROFF_SGR]'' \ +. output x X tty: sgr 0 +.\} diff --git a/libre-testing/m4/PKGBUILD b/libre-testing/m4/PKGBUILD new file mode 100644 index 000000000..deb3f64a5 --- /dev/null +++ b/libre-testing/m4/PKGBUILD @@ -0,0 +1,33 @@ +# Maintainer: Allan McRae +# Contributor: Andreas Radke + +pkgname=m4 +pkgver=1.4.18 +pkgrel=1 +pkgdesc="The GNU macro processor" +arch=('x86_64' 'ppc64le') +url="http://www.gnu.org/software/m4" +license=('GPL3') +groups=('base-devel') +depends=('glibc' 'bash') +source=(ftp://ftp.gnu.org/gnu/m4/$pkgname-$pkgver.tar.xz{,.sig}) +md5sums=('730bb15d96fffe47e148d1e09235af82' + 'SKIP') +validpgpkeys=('71C2CC22B1C4602927D2F3AAA7A16B4A2527436A') # Eric Blake + + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +check() { + cd $pkgname-$pkgver + make check +} + +package() { + cd $pkgname-$pkgver + make prefix=${pkgdir}/usr install +} diff --git a/libre-testing/m4/m4-1.4.16-readlink-einval.patch b/libre-testing/m4/m4-1.4.16-readlink-einval.patch new file mode 100644 index 000000000..6a987510d --- /dev/null +++ b/libre-testing/m4/m4-1.4.16-readlink-einval.patch @@ -0,0 +1,12 @@ +diff -up m4-1.4.16/tests/test-readlink.h.orig m4-1.4.16/tests/test-readlink.h +--- m4-1.4.16/tests/test-readlink.h.orig 2011-09-19 12:44:58.745546826 +0200 ++++ m4-1.4.16/tests/test-readlink.h 2011-09-19 12:46:00.079548410 +0200 +@@ -38,7 +38,7 @@ test_readlink (ssize_t (*func) (char con + ASSERT (errno == ENOENT); + errno = 0; + ASSERT (func ("", buf, sizeof buf) == -1); +- ASSERT (errno == ENOENT); ++ ASSERT (errno == ENOENT || errno == EINVAL); + errno = 0; + ASSERT (func (".", buf, sizeof buf) == -1); + ASSERT (errno == EINVAL); diff --git a/libre-testing/m4/m4-1.4.17-perl-make-check.patch b/libre-testing/m4/m4-1.4.17-perl-make-check.patch new file mode 100644 index 000000000..ae4af4021 --- /dev/null +++ b/libre-testing/m4/m4-1.4.17-perl-make-check.patch @@ -0,0 +1,12 @@ +diff -up m4-1.4.17/build-aux/update-copyright.orig m4-1.4.17/build-aux/update-copyright +--- m4-1.4.17/build-aux/update-copyright.orig 2015-07-13 11:25:19.502749690 +0200 ++++ m4-1.4.17/build-aux/update-copyright 2015-07-13 11:26:20.445044297 +0200 +@@ -124,7 +124,7 @@ use strict; + use warnings; + + my $copyright_re = 'Copyright'; +-my $circle_c_re = '(?:\([cC]\)|@copyright{}|©)'; ++my $circle_c_re = '(?:\([cC]\)|@copyright\{}|\\\\\(co|©)'; + my $holder = $ENV{UPDATE_COPYRIGHT_HOLDER}; + $holder ||= 'Free Software Foundation, Inc.'; + my $prefix_max = 5; diff --git a/libre-testing/make/PKGBUILD b/libre-testing/make/PKGBUILD new file mode 100644 index 000000000..232ee4560 --- /dev/null +++ b/libre-testing/make/PKGBUILD @@ -0,0 +1,40 @@ +# Maintainer: Allan McRae +# Contributor: judd + +pkgname=make +pkgver=4.2.1 +pkgrel=2 +pkgdesc="GNU make utility to maintain groups of programs" +arch=('x86_64' 'ppc64le') +url="http://www.gnu.org/software/make" +license=('GPL3') +groups=('base-devel') +depends=('glibc' 'guile') +source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig} + guile-2.2.patch) +md5sums=('15b012617e7c44c0ed482721629577ac' + 'SKIP' + '89bbbe3f806f208608e117665feb562b') +validpgpkeys=('3D2554F0A15338AB9AF1BB9D96B047156338B6D4') # Paul Smith + +prepare() { + cd ${pkgname}-${pkgver} + patch -p1 -i ${srcdir}/guile-2.2.patch + autoreconf -fi +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +check() { + cd ${pkgname}-${pkgver} + make -k check +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install +} diff --git a/libre-testing/make/guile-2.2.patch b/libre-testing/make/guile-2.2.patch new file mode 100644 index 000000000..8e4cbc0ff --- /dev/null +++ b/libre-testing/make/guile-2.2.patch @@ -0,0 +1,15 @@ +diff --git a/configure.ac b/configure.ac +index 64ec870..eb1139f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -168,8 +168,8 @@ AC_ARG_WITH([guile], [AS_HELP_STRING([--with-guile], + # comes with it's own PC file so we have to specify them as individual + # packages. Ugh. + AS_IF([test "x$with_guile" != xno], +-[ PKG_CHECK_MODULES([GUILE], [guile-2.0], [have_guile=yes], +- [PKG_CHECK_MODULES([GUILE], [guile-1.8], [have_guile=yes], ++[ PKG_CHECK_MODULES([GUILE], [guile-2.2], [have_guile=yes], ++ [PKG_CHECK_MODULES([GUILE], [guile-2.0], [have_guile=yes], + [have_guile=no])]) + ]) + diff --git a/libre-testing/patch/CVE-2018-1000156.patch b/libre-testing/patch/CVE-2018-1000156.patch new file mode 100644 index 000000000..146ce15b8 --- /dev/null +++ b/libre-testing/patch/CVE-2018-1000156.patch @@ -0,0 +1,142 @@ +diff -aur patch-2.7.6.old/src/pch.c patch-2.7.6/src/pch.c +--- patch-2.7.6.old/src/pch.c 2018-09-25 21:35:15.468805478 +0200 ++++ patch-2.7.6/src/pch.c 2018-09-25 21:39:33.691394951 +0200 +@@ -33,6 +33,7 @@ + # include + #endif + #include ++#include + + #define INITHUNKMAX 125 /* initial dynamic allocation size */ + +@@ -2388,22 +2389,28 @@ + static char const editor_program[] = EDITOR_PROGRAM; + + file_offset beginning_of_this_line; +- FILE *pipefp = 0; + size_t chars_read; ++ FILE *tmpfp = 0; ++ char const *tmpname; ++ int tmpfd; ++ pid_t pid; ++ ++ if (! dry_run && ! skip_rest_of_patch) ++ { ++ /* Write ed script to a temporary file. This causes ed to abort on ++ invalid commands such as when line numbers or ranges exceed the ++ number of available lines. When ed reads from a pipe, it rejects ++ invalid commands and treats the next line as a new command, which ++ can lead to arbitrary command execution. */ ++ ++ tmpfd = make_tempfile (&tmpname, 'e', NULL, O_RDWR | O_BINARY, 0); ++ if (tmpfd == -1) ++ pfatal ("Can't create temporary file %s", quotearg (tmpname)); ++ tmpfp = fdopen (tmpfd, "w+b"); ++ if (! tmpfp) ++ pfatal ("Can't open stream for file %s", quotearg (tmpname)); ++ } + +- if (! dry_run && ! skip_rest_of_patch) { +- int exclusive = *outname_needs_removal ? 0 : O_EXCL; +- assert (! inerrno); +- *outname_needs_removal = true; +- copy_file (inname, outname, 0, exclusive, instat.st_mode, true); +- sprintf (buf, "%s %s%s", editor_program, +- verbosity == VERBOSE ? "" : "- ", +- outname); +- fflush (stdout); +- pipefp = popen(buf, binary_transput ? "wb" : "w"); +- if (!pipefp) +- pfatal ("Can't open pipe to %s", quotearg (buf)); +- } + for (;;) { + char ed_command_letter; + beginning_of_this_line = file_tell (pfp); +@@ -2414,14 +2421,14 @@ + } + ed_command_letter = get_ed_command_letter (buf); + if (ed_command_letter) { +- if (pipefp) +- if (! fwrite (buf, sizeof *buf, chars_read, pipefp)) ++ if (tmpfp) ++ if (! fwrite (buf, sizeof *buf, chars_read, tmpfp)) + write_fatal (); + if (ed_command_letter != 'd' && ed_command_letter != 's') { + p_pass_comments_through = true; + while ((chars_read = get_line ()) != 0) { +- if (pipefp) +- if (! fwrite (buf, sizeof *buf, chars_read, pipefp)) ++ if (tmpfp) ++ if (! fwrite (buf, sizeof *buf, chars_read, tmpfp)) + write_fatal (); + if (chars_read == 2 && strEQ (buf, ".\n")) + break; +@@ -2434,13 +2441,49 @@ + break; + } + } +- if (!pipefp) ++ if (!tmpfp) + return; +- if (fwrite ("w\nq\n", sizeof (char), (size_t) 4, pipefp) == 0 +- || fflush (pipefp) != 0) ++ if (fwrite ("w\nq\n", sizeof (char), (size_t) 4, tmpfp) == 0 ++ || fflush (tmpfp) != 0) + write_fatal (); +- if (pclose (pipefp) != 0) +- fatal ("%s FAILED", editor_program); ++ ++ if (lseek (tmpfd, 0, SEEK_SET) == -1) ++ pfatal ("Can't rewind to the beginning of file %s", quotearg (tmpname)); ++ ++ if (! dry_run && ! skip_rest_of_patch) { ++ int exclusive = *outname_needs_removal ? 0 : O_EXCL; ++ *outname_needs_removal = true; ++ if (inerrno != ENOENT) ++ { ++ *outname_needs_removal = true; ++ copy_file (inname, outname, 0, exclusive, instat.st_mode, true); ++ } ++ sprintf (buf, "%s %s%s", editor_program, ++ verbosity == VERBOSE ? "" : "- ", ++ outname); ++ fflush (stdout); ++ ++ pid = fork(); ++ if (pid == -1) ++ pfatal ("Can't fork"); ++ else if (pid == 0) ++ { ++ dup2 (tmpfd, 0); ++ execl ("/bin/sh", "sh", "-c", buf, (char *) 0); ++ _exit (2); ++ } ++ else ++ { ++ int wstatus; ++ if (waitpid (pid, &wstatus, 0) == -1 ++ || ! WIFEXITED (wstatus) ++ || WEXITSTATUS (wstatus) != 0) ++ fatal ("%s FAILED", editor_program); ++ } ++ } ++ ++ fclose (tmpfp); ++ safe_unlink (tmpname); + + if (ofp) + { +Only in patch-2.7.6/src: pch.c.orig +Only in patch-2.7.6/src: pch.c.rej +Only in patch-2.7.6/tests: ed-style +diff -aur patch-2.7.6.old/tests/Makefile.am patch-2.7.6/tests/Makefile.am +--- patch-2.7.6.old/tests/Makefile.am 2018-09-25 21:35:15.468805478 +0200 ++++ patch-2.7.6/tests/Makefile.am 2018-09-25 21:35:35.028947275 +0200 +@@ -32,6 +32,7 @@ + crlf-handling \ + dash-o-append \ + deep-directories \ ++ ed-style \ + empty-files \ + false-match \ + fifo \ diff --git a/libre-testing/patch/PKGBUILD b/libre-testing/patch/PKGBUILD new file mode 100644 index 000000000..54177ce9b --- /dev/null +++ b/libre-testing/patch/PKGBUILD @@ -0,0 +1,61 @@ +# Maintainer: SĂ©bastien Luttringer +# Contributor: Allan McRae +# Contributor: judd + +pkgname=patch +pkgver=2.7.6 +pkgrel=3 +pkgdesc='A utility to apply patch files to original sources' +arch=('x86_64' 'ppc64le') +url='https://www.gnu.org/software/patch/' +license=('GPL') +groups=('base-devel') +depends=('glibc' 'attr') +makedepends=('ed') +optdepends=('ed: for patch -e functionality') +validpgpkeys=('259B3792B3D6D319212CC4DCD5BF9FEB0313653A') # Andreas Gruenbacher +source=("https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz"{,.sig} + "https://github.com/mirror/patch/commit/f290f48a621867084884bfff87f8093c15195e6a.patch" # CVE-2018-6951 + "CVE-2018-1000156.patch" # CVE-2018-1000156 + "https://github.com/mirror/patch/commit/9c986353e420ead6e706262bf204d6e03322c300.patch" # CVE-2018-6952 + "http://git.savannah.gnu.org/cgit/patch.git/patch/?id=19599883ffb6a450d2884f081f8ecf68edbed7ee" # Fix memory leaks introduced in CVE-2018-1000165 + "http://git.savannah.gnu.org/cgit/patch.git/patch/?id=369dcccdfa6336e5a873d6d63705cfbe04c55727" + ) +md5sums=('78ad9937e4caadcba1526ef1853730d5' + 'SKIP' + '7e34fc859ccc07b235a8b01b043ff456' + 'fb16655d092f251316715e792636b48d' + 'aa8ac1e3dccbd523143b01e9f60b06e8' + 'bba3e65611813a4467cdd73219a5059d' + '5eb2c88e30fa8775deaf0b29287bf6bd') + +prepare() { + cd $pkgname-$pkgver + # apply patch from the source array (should be a pacman feature) + local filename + for filename in "${source[@]}"; do + if [[ "$filename" =~ \.patch$ ]]; then + echo "Applying patch ${filename##*/}" + patch -p1 -N -i "$srcdir/${filename##*/}" + fi + done + : +} + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr + make +} + +check() { + cd $pkgname-$pkgver + make check +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/libre-testing/pkgconf/PKGBUILD b/libre-testing/pkgconf/PKGBUILD new file mode 100644 index 000000000..612c90764 --- /dev/null +++ b/libre-testing/pkgconf/PKGBUILD @@ -0,0 +1,80 @@ +# Maintainer: Jan Alexander Steffens (heftig) +# Contributor: Johannes Löthberg +# Contributor: Piotr Gorski +# Contributor: Lucy +# Contributor: Bartlomiej Piotrowski + +pkgname=pkgconf +pkgver=1.5.3 +pkgrel=1 +pkgdesc="Package compiler and linker metadata toolkit" +url="https://git.dereferenced.org/pkgconf/pkgconf" +license=(custom:ISC) +arch=('x86_64' 'ppc64le') +depends=(glibc sh) +makedepends=(git) +provides=(pkg-config pkgconfig) +conflicts=(pkg-config) +replaces=(pkg-config) +groups=(base-devel) +_commit=101b99b5b59d58fe6c6dc46ae22edb049cc0bd3a # tags/pkgconf-1.5.3 +source=("git+$url#commit=$_commit" platform-pkg-config.in) +sha256sums=('SKIP' + '7c61338fbd83f9783d805c2f2f97b426977895a2f4b79e0ae5bc8e9d7996edaa') + +_pcdirs=/usr/lib/pkgconfig:/usr/share/pkgconfig +_libdir=/usr/lib +_includedir=/usr/include + +pkgver() { + cd $pkgname + git describe --tags | sed 's/^pkgconf-//;s/-/+/g' +} + +prepare() { + mkdir build + cd $pkgname + ./autogen.sh +} + +build() { + cd build + ../$pkgname/configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --with-pkg-config-dir="$_pcdirs" \ + --with-system-libdir="$_libdir" \ + --with-system-includedir="$_includedir" \ + --disable-static + make +} + +package() { + DESTDIR="$pkgdir" make -C build install + + # From https://src.fedoraproject.org/rpms/pkgconf/ + sed -e "s|@TARGET_PLATFORM@|$CHOST|g" \ + -e "s|@PKGCONF_LIBDIRS@|$_pcdirs|g" \ + -e "s|@PKGCONF_SYSLIBDIR@|$_libdir|g" \ + -e "s|@PKGCONF_SYSINCDIR@|$_includedir|g" \ + platform-pkg-config.in | + install -D /dev/stdin "$pkgdir/usr/bin/$CHOST-pkg-config" + ln -s $CHOST-pkg-config "$pkgdir/usr/bin/pkg-config" + + # Multilib + if [[ $CARCH = x86_64 ]]; then + _host32=${CHOST/x86_64/i686} + sed -e "s|@TARGET_PLATFORM@|$_host32|g" \ + -e "s|@PKGCONF_LIBDIRS@|${_pcdirs/lib/lib32}|g" \ + -e "s|@PKGCONF_SYSLIBDIR@|${_libdir/lib/lib32}|g" \ + -e "s|@PKGCONF_SYSINCDIR@|$_includedir|g" \ + platform-pkg-config.in | + install -D /dev/stdin "$pkgdir/usr/bin/$_host32-pkg-config" + ln -s $_host32-pkg-config "$pkgdir/usr/bin/pkg-config-32" + fi + + ln -s pkgconf.1 "$pkgdir/usr/share/man/man1/pkg-config.1" + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 $pkgname/COPYING +} + +# vim:set sw=2 et: diff --git a/libre-testing/pkgconf/platform-pkg-config.in b/libre-testing/pkgconf/platform-pkg-config.in new file mode 100644 index 000000000..4a6f2b575 --- /dev/null +++ b/libre-testing/pkgconf/platform-pkg-config.in @@ -0,0 +1,11 @@ +#!/bin/sh + +# Simple wrapper to tell pkgconf to behave as a platform-specific version of pkg-config +# Platform: @TARGET_PLATFORM@ + +: ${PKG_CONFIG_LIBDIR=@PKGCONF_LIBDIRS@} +: ${PKG_CONFIG_SYSTEM_LIBRARY_PATH=@PKGCONF_SYSLIBDIR@} +: ${PKG_CONFIG_SYSTEM_INCLUDE_PATH=@PKGCONF_SYSINCDIR@} +export PKG_CONFIG_LIBDIR PKG_CONFIG_SYSTEM_LIBRARY_PATH PKG_CONFIG_SYSTEM_INCLUDE_PATH + +exec pkgconf "$@" diff --git a/libre-testing/sudo/PKGBUILD b/libre-testing/sudo/PKGBUILD new file mode 100644 index 000000000..cf6ba479f --- /dev/null +++ b/libre-testing/sudo/PKGBUILD @@ -0,0 +1,71 @@ +# Maintainer: Evangelos Foutras +# Contributor: Allan McRae +# Contributor: Tom Newsom + +pkgname=sudo +_sudover=1.8.25p1 +pkgver=${_sudover/p/.p} +pkgrel=1 +pkgdesc="Give certain users the ability to run some commands as root" +arch=('x86_64' 'ppc64le') +url="https://www.sudo.ws/sudo/" +license=('custom') +groups=('base-devel') +depends=('glibc' 'libgcrypt' 'pam' 'libldap') +backup=('etc/sudoers' 'etc/pam.d/sudo') +install=$pkgname.install +source=(https://www.sudo.ws/sudo/dist/$pkgname-$_sudover.tar.gz{,.sig} + sudo.pam) +sha256sums=('9dc99c7a7d37a0ab938410995c133e15d6afb970c2c66f9264fe36d20c89195b' + 'SKIP' + 'd1738818070684a5d2c9b26224906aad69a4fea77aabd960fc2675aee2df1fa2') +validpgpkeys=('59D1E9CCBA2B376704FDD35BA9F4C021CEA470FB') + +prepare() { + cd "$srcdir/$pkgname-$_sudover" +} + +build() { + cd "$srcdir/$pkgname-$_sudover" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --libexecdir=/usr/lib \ + --with-rundir=/run/sudo \ + --with-vardir=/var/db/sudo \ + --with-logfac=auth \ + --enable-gcrypt \ + --enable-tmpfiles.d \ + --with-pam \ + --with-sssd \ + --with-ldap \ + --with-ldap-conf-file=/etc/openldap/ldap.conf \ + --with-env-editor \ + --with-passprompt="[sudo] password for %p: " \ + --with-all-insults + make +} + +check() { + cd "$srcdir/$pkgname-$_sudover" + make check +} + +package() { + cd "$srcdir/$pkgname-$_sudover" + make DESTDIR="$pkgdir" install + + # Remove sudoers.dist; not needed since pacman manages updates to sudoers + rm "$pkgdir/etc/sudoers.dist" + + # Remove /run/sudo directory; we create it using systemd-tmpfiles + rmdir "$pkgdir/run/sudo" + rmdir "$pkgdir/run" + + install -Dm644 "$srcdir/sudo.pam" "$pkgdir/etc/pam.d/sudo" + + install -Dm644 doc/LICENSE "$pkgdir/usr/share/licenses/sudo/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/libre-testing/sudo/sudo.install b/libre-testing/sudo/sudo.install new file mode 100644 index 000000000..abf58e37b --- /dev/null +++ b/libre-testing/sudo/sudo.install @@ -0,0 +1,9 @@ +pre_upgrade() { + # Permissions of /var/db/sudo were changed from 0700 to 0711 in sudo 1.8.10 + # http://www.sudo.ws/repos/sudo/rev/5c38d77a2d0c + if (($(vercmp $2 1.8.10-1) < 0)); then + chmod 0711 var/db/sudo + fi +} + +# vim:set ts=2 sw=2 et: diff --git a/libre-testing/sudo/sudo.pam b/libre-testing/sudo/sudo.pam new file mode 100644 index 000000000..ab053c543 --- /dev/null +++ b/libre-testing/sudo/sudo.pam @@ -0,0 +1,4 @@ +#%PAM-1.0 +auth include system-auth +account include system-auth +session include system-auth -- cgit v1.2.2