[arch-commits] Commit in ponyc/repos (3 files)

Felix Yan felixonmars at archlinux.org
Fri May 25 17:26:20 UTC 2018


    Date: Friday, May 25, 2018 @ 17:26:19
  Author: felixonmars
Revision: 329457

archrelease: copy trunk to community-testing-x86_64

Added:
  ponyc/repos/community-testing-x86_64/
  ponyc/repos/community-testing-x86_64/PKGBUILD
    (from rev 329456, ponyc/trunk/PKGBUILD)
  ponyc/repos/community-testing-x86_64/llvm6.patch
    (from rev 329456, ponyc/trunk/llvm6.patch)

-------------+
 PKGBUILD    |   63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 llvm6.patch |   15 +++++++++++++
 2 files changed, 78 insertions(+)

Copied: ponyc/repos/community-testing-x86_64/PKGBUILD (from rev 329456, ponyc/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2018-05-25 17:26:19 UTC (rev 329457)
@@ -0,0 +1,63 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+
+pkgname=ponyc
+pkgver=0.22.1
+pkgrel=1
+pkgdesc='An actor model, capabilities, high performance programming language'
+url='http://ponylang.org/'
+arch=('x86_64')
+license=('BSD')
+depends=('llvm-libs')
+makedepends=('llvm')
+checkdepends=('pcre2')
+options=('!strip')
+optdepends=('pcre2: Needed for the regex package')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/ponylang/ponyc/archive/$pkgver.tar.gz")
+sha512sums=('0dea05f4d3edfc8a622cf4c464cbab524f198f4389c4f82ef1b1f18fd849190aadec83c15f1a68c46f9f0bc7472d7e5c821a1d3c309b6a53f0ca94de12ab1072')
+
+prepare() {
+  cd ponyc-$pkgver
+  sed -i 's/-Werror //' Makefile
+}
+
+build() {
+  cd ponyc-$pkgver
+  make config=release prefix=/usr arch=x86-64 verbose= default_pic=true default_ssl=openssl_1.1.0
+
+  mkdir docs
+  build/release/ponyc packages/stdlib -rexpr -g -o docs
+}
+
+check() {
+  cd ponyc-$pkgver
+  make config=release prefix=/usr arch=x86-64 verbose= default_pic=true default_ssl=openssl_1.1.0 test
+}
+
+package() {
+  cd ponyc-$pkgver
+  # The makefile is very strange and requires almost as much post-correction
+  # as to simply do the installation myself.  Even with patches to the
+  # makefile to stop it attempting to symlink locations it has no business
+  # touching.
+  #make config=release prefix=/usr destdir="$pkgdir"/usr/lib/pony/"$pkgver" install
+
+  install -Dm755 build/release/ponyc "$pkgdir"/usr/lib/pony/"$pkgver"/bin/ponyc
+  install -Dm644 build/release/libponyrt-pic.a "$pkgdir"/usr/lib/libponyrt-pic.a
+  install -Dm644 build/release/libponyc.a "$pkgdir"/usr/lib/libponyc.a
+  install -Dm644 src/libponyrt/pony.h "$pkgdir"/usr/include/pony.h
+
+  # Ponyc is designed to read its standard packages from the same directory.
+  install -dm755 "$pkgdir"/usr/bin
+  ln -sf /usr/lib/pony/"$pkgver"/bin/ponyc "$pkgdir"/usr/bin
+
+  cp -dr --no-preserve=ownership packages "$pkgdir"/usr/lib/pony/"$pkgver"
+
+  # Let's include the examples as documentation is scarce.
+  install -dm755 "$pkgdir"/usr/share/doc/pony
+  cp -dr --no-preserve=ownership examples "$pkgdir"/usr/share/doc/pony
+
+  cp -dr docs/* "$pkgdir"/usr/share/doc/pony
+
+  install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}

Copied: ponyc/repos/community-testing-x86_64/llvm6.patch (from rev 329456, ponyc/trunk/llvm6.patch)
===================================================================
--- community-testing-x86_64/llvm6.patch	                        (rev 0)
+++ community-testing-x86_64/llvm6.patch	2018-05-25 17:26:19 UTC (rev 329457)
@@ -0,0 +1,15 @@
+diff -upr ponyc-0.21.3.orig/src/libponyc/codegen/host.cc ponyc-0.21.3/src/libponyc/codegen/host.cc
+--- ponyc-0.21.3.orig/src/libponyc/codegen/host.cc	2018-01-14 18:46:16.000000000 +0200
++++ ponyc-0.21.3/src/libponyc/codegen/host.cc	2018-03-19 02:30:12.452611178 +0200
+@@ -79,7 +79,11 @@ char* LLVMGetHostCPUFeatures()
+ 
+ void LLVMSetUnsafeAlgebra(LLVMValueRef inst)
+ {
++#if PONY_LLVM >= 600
++  unwrap<Instruction>(inst)->setFast(true);
++#else
+   unwrap<Instruction>(inst)->setHasUnsafeAlgebra(true);
++#endif
+ }
+ 
+ void LLVMSetNoUnsignedWrap(LLVMValueRef inst)



More information about the arch-commits mailing list