diff options
-rw-r--r-- | user/orc/APKBUILD | 52 | ||||
-rw-r--r-- | user/orc/orc-0.4.28-ppc64-elfv2.patch | 28 |
2 files changed, 80 insertions, 0 deletions
diff --git a/user/orc/APKBUILD b/user/orc/APKBUILD new file mode 100644 index 000000000..9726ef4f4 --- /dev/null +++ b/user/orc/APKBUILD @@ -0,0 +1,52 @@ +# Contributor: Łukasz Jendrysik <scadu@yandex.com> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=orc +pkgver=0.4.28 +pkgrel=1 +pkgdesc="The Oil Run-time Compiler" +url="https://gstreamer.freedesktop.org/modules/orc.html" +arch="all" +license="BSD-2-Clause AND BSD-3-Clause" +makedepends="linux-headers" +subpackages="$pkgname-dev $pkgname-doc $pkgname-compiler" +source="https://gstreamer.freedesktop.org/src/orc/${pkgname}-${pkgver}.tar.xz + orc-0.4.28-ppc64-elfv2.patch" + +build() { + cd "$builddir" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --localstatedir=/var + make +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +dev() { + default_dev + mkdir -p "$subpkgdir"/usr/bin + mv "$pkgdir"/usr/bin/orc-bugreport "$subpkgdir"/usr/bin/ +} + +compiler() { + pkgdesc="Orc compiler" + mkdir -p "$subpkgdir"/usr/ + mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ +} + +sha512sums="2ae3100e7d0c03eba9a8a10a8924da4d729e1967b63e5dfdf88c4aee907d7ece82c782d74f4cb7e28a366dd74ce5e1ddc6e2b971e5a2f879b0501cc313b93410 orc-0.4.28.tar.xz +c7067aff0295a68048cc0c2dbe9d7ce5b0eff6a19fce553fcccb6a358d35fb2f14f1a201f96e995d920f44995483f2eccc779f9d81817b0661794354555b5532 orc-0.4.28-ppc64-elfv2.patch" diff --git a/user/orc/orc-0.4.28-ppc64-elfv2.patch b/user/orc/orc-0.4.28-ppc64-elfv2.patch new file mode 100644 index 000000000..7f4f8b0d3 --- /dev/null +++ b/user/orc/orc-0.4.28-ppc64-elfv2.patch @@ -0,0 +1,28 @@ +--- orc-0.4.28/orc/orcprogram-altivec.c.old 2014-04-11 03:36:22.000000000 -0500 ++++ orc-0.4.28/orc/orcprogram-altivec.c 2018-01-07 23:32:55.065198004 -0600 +@@ -27,12 +27,14 @@ + ORC_ASM_CODE (compiler, "%s:\n", compiler->program->name); + + if (compiler->is_64bit) { ++#if !defined(_CALL_ELF) || _CALL_ELF == 1 + ORC_ASM_CODE (compiler, " .quad .%s,.TOC.@tocbase,0\n", + compiler->program->name); + ORC_ASM_CODE (compiler, ".%s:\n", compiler->program->name); + powerpc_emit (compiler, 0); powerpc_emit (compiler, 0); + powerpc_emit (compiler, 0); powerpc_emit (compiler, 0); + powerpc_emit (compiler, 0); powerpc_emit (compiler, 0); ++#endif + powerpc_emit_stdu (compiler, POWERPC_R1, POWERPC_R1, -16); + } else { + powerpc_emit_stwu (compiler, POWERPC_R1, POWERPC_R1, -16); +--- orc-0.4.28/orc/orcpowerpc.c.old 2014-04-11 03:36:22.000000000 -0500 ++++ orc-0.4.28/orc/orcpowerpc.c 2018-01-07 23:31:53.285259170 -0600 +@@ -423,7 +423,7 @@ + int size = code->code_size; + + ptr = code->code; +-#ifdef __powerpc64__ ++#if defined(__powerpc64__) && (!defined(_CALL_ELF) || _CALL_ELF == 1) + *(unsigned char **) ptr = (unsigned char *) code->exec + 24; + #endif + for (i=0;i<size;i+=cache_line_size) { |