diff options
author | Andreas Grapentin <andreas@grapentin.org> | 2018-05-24 16:37:35 +0200 |
---|---|---|
committer | Andreas Grapentin <andreas@grapentin.org> | 2018-05-24 16:37:35 +0200 |
commit | ed6981d0763ffc641f29638e7fd2fa6e31b59811 (patch) | |
tree | ac498f8e31940ed211aa8aa55f8526af0328e7c5 | |
parent | e41204f26570263fb1ff2c83b2170cd1ad6d110b (diff) |
fixing riscv64 patches
-rw-r--r-- | src/stage2/patches/riscv64/glibc.patch | 76 | ||||
-rw-r--r-- | src/stage2/patches/riscv64/libgpg-error.patch | 56 | ||||
-rw-r--r-- | src/stage2/patches/riscv64/pacman.patch | 70 |
3 files changed, 141 insertions, 61 deletions
diff --git a/src/stage2/patches/riscv64/glibc.patch b/src/stage2/patches/riscv64/glibc.patch new file mode 100644 index 0000000..b821914 --- /dev/null +++ b/src/stage2/patches/riscv64/glibc.patch @@ -0,0 +1,76 @@ +diff -rupN a/PKGBUILD b/PKGBUILD +--- a/PKGBUILD 2018-05-24 16:08:27.444065918 +0200 ++++ b/PKGBUILD 2018-05-24 16:20:58.484092209 +0200 +@@ -6,7 +6,8 @@ + # NOTE: valgrind requires rebuilt with each major glibc version + + pkgbase=glibc +-pkgname=(glibc lib32-glibc) ++pkgname=(glibc) ++[ "x@MULTILIB@" != "xenable" ] || pkgname+=(lib32-glibc) + pkgver=2.27 + pkgrel=3 + arch=(x86_64) +@@ -48,15 +49,15 @@ prepare() { + build() { + local _configure_flags=( + --prefix=/usr +- --with-headers=/usr/include ++ --host=@CHOST@ --build=@BUILDHOST@ ++ --with-headers=@SYSROOT@/usr/include + --with-bugurl=https://bugs.archlinux.org/ + --enable-add-ons + --enable-bind-now + --enable-lock-elision +- --enable-multi-arch ++ --@MULTILIB@-multi-arch + --enable-stack-protector=strong + --enable-stackguard-randomization +- --enable-static-pie + --disable-profile + --disable-werror + ) +@@ -87,6 +88,8 @@ build() { + echo "CXX += -D_FORTIFY_SOURCE=2" >> configparms + make + ++ [ "x@MULTILIB@" == "xenable" ] || return 0 ++ + cd "$srcdir/lib32-glibc-build" + export CC="gcc -m32 -mstackrealign" + export CXX="g++ -m32 -mstackrealign" +@@ -164,8 +167,8 @@ package_glibc() { + "$srcdir/glibc/localedata/SUPPORTED" >> "$pkgdir/etc/locale.gen" + + if check_option 'debug' n; then +- find "$pkgdir"/usr/bin -type f -executable -exec strip $STRIP_BINARIES {} + 2> /dev/null || true +- find "$pkgdir"/usr/lib -name '*.a' -type f -exec strip $STRIP_STATIC {} + 2> /dev/null || true ++ find "$pkgdir"/usr/bin -type f -executable -exec @CHOST@-strip $STRIP_BINARIES {} + 2> /dev/null || true ++ find "$pkgdir"/usr/lib -name '*.a' -type f -exec @CHOST@-strip $STRIP_STATIC {} + 2> /dev/null || true + + # Do not strip these for gdb and valgrind functionality, but strip the rest + find "$pkgdir"/usr/lib \ +@@ -173,7 +176,7 @@ package_glibc() { + -not -name 'libc-*.so' \ + -not -name 'libpthread-*.so' \ + -not -name 'libthread_db-*.so' \ +- -name '*-*.so' -type f -exec strip $STRIP_SHARED {} + 2> /dev/null || true ++ -name '*-*.so' -type f -exec @CHOST@-strip $STRIP_SHARED {} + 2> /dev/null || true + fi + } + +@@ -200,12 +203,12 @@ package_lib32-glibc() { + ln -s ../lib/locale "$pkgdir/usr/lib32/locale" + + if check_option 'debug' n; then +- find "$pkgdir"/usr/lib32 -name '*.a' -type f -exec strip $STRIP_STATIC {} + 2> /dev/null || true ++ find "$pkgdir"/usr/lib32 -name '*.a' -type f -exec @CHOST@-strip $STRIP_STATIC {} + 2> /dev/null || true + find "$pkgdir"/usr/lib32 \ + -not -name 'ld-*.so' \ + -not -name 'libc-*.so' \ + -not -name 'libpthread-*.so' \ + -not -name 'libthread_db-*.so' \ +- -name '*-*.so' -type f -exec strip $STRIP_SHARED {} + 2> /dev/null || true ++ -name '*-*.so' -type f -exec @CHOST@-strip $STRIP_SHARED {} + 2> /dev/null || true + fi + } diff --git a/src/stage2/patches/riscv64/libgpg-error.patch b/src/stage2/patches/riscv64/libgpg-error.patch index 39267ba..eecbaf6 100644 --- a/src/stage2/patches/riscv64/libgpg-error.patch +++ b/src/stage2/patches/riscv64/libgpg-error.patch @@ -1,30 +1,6 @@ ---- a/PKGBUILD 2018-02-22 08:03:14.564663999 +0100 -+++ b/PKGBUILD 2018-02-22 08:26:37.783659199 +0100 -@@ -10,16 +10,19 @@ arch=(x86_64) - url="https://www.gnupg.org" - license=('LGPL') - depends=('glibc' 'sh') --source=(ftp://ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2{,.sig}) -+source=(ftp://ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2{,.sig} -+ lock-obj-pub.riscv64-unknown-linux-gnu.h) - #ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2) - # https://www.gnupg.org/download/integrity_check.html - sha1sums=('2b9baae264f3e82ebe00dcd10bae3f2d64232c10' -- 'SKIP') -+ 'SKIP' -+ 'e7a718fdcca098d2ae5331313aef59b2d3031929') - validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6' # Werner Koch - '031EC2536E580D8EA286A9F22071B08A33BD3F06') # NIIBE Yutaka (GnuPG Release Key) <gniibe@fsij.org> - build() { - cd ${pkgname}-${pkgver} -- ./configure --prefix=/usr -+ cp ${srcdir}/lock-obj-pub.riscv64-unknown-linux-gnu.h src/syscfg/ -+ ./configure --host=@CHOST@ --build=@BUILDHOST@ --prefix=/usr - make - } - ---- /dev/null 2018-02-17 13:03:10.829324204 +0100 -+++ b/lock-obj-pub.riscv64-unknown-linux-gnu.h 2018-02-22 08:24:44.383181745 +0100 +diff -rupN a/lock-obj-pub.riscv64-unknown-linux-gnu.h b/lock-obj-pub.riscv64-unknown-linux-gnu.h +--- a/lock-obj-pub.riscv64-unknown-linux-gnu.h 1970-01-01 01:00:00.000000000 +0100 ++++ b/lock-obj-pub.riscv64-unknown-linux-gnu.h 2018-05-24 10:39:14.373064356 +0200 @@ -0,0 +1,25 @@ +## lock-obj-pub.riscv64-unknown-linux-gnu.h +## File created by gen-posix-lock-obj - DO NOT EDIT @@ -51,3 +27,29 @@ +## buffer-read-only: t +## End: +## +diff -rupN a/PKGBUILD b/PKGBUILD +--- a/PKGBUILD 2018-05-24 10:24:15.023032874 +0200 ++++ b/PKGBUILD 2018-05-24 10:39:14.366397690 +0200 +@@ -10,16 +10,19 @@ arch=(x86_64) + url="https://www.gnupg.org" + license=('LGPL') + depends=('glibc' 'sh') +-source=(ftp://ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2{,.sig}) ++source=(ftp://ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2{,.sig} ++ lock-obj-pub.riscv64-unknown-linux-gnu.h) + #ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2) + # https://www.gnupg.org/download/integrity_check.html + sha1sums=('2bafad316d4e3e12bae4822b14ed9020090e6acf' +- 'SKIP') ++ 'SKIP' ++ 'e7a718fdcca098d2ae5331313aef59b2d3031929') + validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6' # Werner Koch + '031EC2536E580D8EA286A9F22071B08A33BD3F06') # NIIBE Yutaka (GnuPG Release Key) <gniibe@fsij.org> + build() { + cd ${pkgname}-${pkgver} +- ./configure --prefix=/usr ++ cp ${srcdir}/lock-obj-pub.riscv64-unknown-linux-gnu.h src/syscfg/ ++ ./configure --host=@CHOST@ --build=@BUILDHOST@ --prefix=/usr + make + } + diff --git a/src/stage2/patches/riscv64/pacman.patch b/src/stage2/patches/riscv64/pacman.patch index 6548937..b3ceeed 100644 --- a/src/stage2/patches/riscv64/pacman.patch +++ b/src/stage2/patches/riscv64/pacman.patch @@ -1,37 +1,6 @@ ---- a/PKGBUILD 2018-02-22 14:14:29.100909778 +0100 -+++ b/PKGBUILD 2018-02-22 14:16:13.593060069 +0100 -@@ -45,6 +45,7 @@ sha256sums=('dfd36086ad68564bcd977f4a1fa - '19853ea9a2138157bbb334eb7f3a9b3098b88e513678b54b7b4f19d2ffd6ecad' - '1b2c8f4ec84d0dc496516880a54b5e4deb78798618c9cf5e284a45303f156e58' - 'b2cb3ba229edba338c0af7d7f5bb1a6ef6143bcd453c693bfee0c02fa1cfa18a' -+ '19853ea9a2138157bbb334eb7f3a9b3098b88e513678b54b7b4f19d2ffd6ecad' - '0d174c7c47921cfbb35dacb9d099095e78f6f67bfaa86836a3e588552f14ed03' - '1df848c5038a3f81ae4dc79a4072d340109b02f56292a5c4a20c59f735edd2b3' - '1cc4af1cf8e2133d4520827cc7d3ffad731892595f8e699909002d2e40ad8df9' -@@ -71,7 +72,8 @@ build() { - cd "$pkgname-$pkgver" - - ./configure --prefix=/usr --sysconfdir=/etc \ -- --localstatedir=/var --enable-doc \ -+ --host=@CHOST@ --build=@BUILDHOST@ \ -+ --localstatedir=/var --disable-doc \ - --with-scriptlet-shell=/usr/bin/bash \ - --with-ldconfig=/usr/bin/ldconfig - make V=1 -@@ -96,6 +98,11 @@ build() { - mychost="armv7l-unknown-linux-gnueabihf" - myflags="-march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -O2 -pipe -fstack-protector-strong -fno-plt" - ;; -+ @CARCH@) -+ mycarch="@CARCH@" -+ mychost="@CHOST@" -+ myflags="-march=@GCC_MARCH@ -mabi=@GCC_MABI@ -O2 -pipe -fstack-protector-strong -fno-plt" -+ ;; - esac - myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" - ---- /dev/null 2018-02-17 13:03:10.829324204 +0100 -+++ b/pacman.conf.riscv64 2018-02-22 14:15:15.338358317 +0100 +diff -rupN a/pacman.conf.riscv64 b/pacman.conf.riscv64 +--- a/pacman.conf.riscv64 1970-01-01 01:00:00.000000000 +0100 ++++ b/pacman.conf.riscv64 2018-05-19 07:43:10.426953548 +0200 @@ -0,0 +1,120 @@ +# +# /etc/pacman.conf @@ -153,3 +122,36 @@ +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs +diff -rupN a/PKGBUILD b/PKGBUILD +--- a/PKGBUILD 2018-05-19 07:39:33.266951381 +0200 ++++ b/PKGBUILD 2018-05-19 07:43:10.416953547 +0200 +@@ -51,6 +51,7 @@ sha256sums=('dfd36086ad68564bcd977f4a1fa + '78129351e96d19e14b05bda30480df3e834a96153b7cfe72ca5c91f5cc5cae40' + '19853ea9a2138157bbb334eb7f3a9b3098b88e513678b54b7b4f19d2ffd6ecad' + '1b2c8f4ec84d0dc496516880a54b5e4deb78798618c9cf5e284a45303f156e58' ++ '19853ea9a2138157bbb334eb7f3a9b3098b88e513678b54b7b4f19d2ffd6ecad' + 'b2cb3ba229edba338c0af7d7f5bb1a6ef6143bcd453c693bfee0c02fa1cfa18a' + '117892e340cc502b8659f21b209886c51a375e52f4af39f173ff7fe12762d40b' + '220f1b25a64727041dc6fa3fd486b0a043f735a3f6cecedc4e2f7c47ec6ce66d' +@@ -80,7 +81,8 @@ build() { + cd "$pkgname-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc \ +- --localstatedir=/var --enable-doc \ ++ --host=@CHOST@ --build=@BUILDHOST@ \ ++ --localstatedir=/var --disable-doc \ + --with-scriptlet-shell=/usr/bin/bash \ + --with-ldconfig=/usr/bin/ldconfig + make V=1 +@@ -105,6 +107,11 @@ build() { + mychost="armv7l-unknown-linux-gnueabihf" + myflags="-march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -O2 -pipe -fstack-protector-strong -fno-plt" + ;; ++ @CARCH@) ++ mycarch="@CARCH@" ++ mychost="@CHOST@" ++ myflags="@PLATFORM_FLAGS@ -O2 -pipe -fstack-protector-strong -fno-plt" ++ ;; + esac + myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" + |