summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorNuew2016-03-21 16:29:44 -0400
committerNuew2016-03-21 16:29:44 -0400
commita53562e59c707e690fadd0576f2f9926732285e4 (patch)
tree4525126a97d22128257944c43fb53f2764497efe
downloadaur-a53562e59c707e690fadd0576f2f9926732285e4.tar.gz
Initial Commit
-rw-r--r--.SRCINFO22
-rw-r--r--PKGBUILD65
-rwxr-xr-xinstall.sh11
3 files changed, 98 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..8126741b73bc
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+pkgbase = lrs-git
+ pkgdesc = An experimental standard library for rust
+ pkgver = r334.8262295
+ pkgrel = 1
+ url = https://github.com/lrs-lang
+ install = install.sh
+ arch = x86_64
+ license = Apache
+ license = MIT
+ license = MPL
+ makedepends = git
+ makedepends = clang
+ options = !strip
+ source = lib::git+https://github.com/lrs-lang/lib.git
+ source = driver::git+https://github.com/lrs-lang/driver.git#commit=6d10777
+ source = http://static.rust-lang.org/dist/2015-12-20/rust-nightly-x86_64-unknown-linux-gnu.tar.gz
+ sha512sums = SKIP
+ sha512sums = SKIP
+ sha512sums = 2f23f303045f539d998f15cd21c88833dfb5aa2739a6f95e9cfc300ffb363e1adab265f88c5d9ea30cbccc8f9a44e2578b7df464a0df07f856c6b8b2bf11adbd
+
+pkgname = lrs-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..e04d9ec7a763
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,65 @@
+# Maintainer: Nuew <archlinux at nuew dot net>
+pkgname=lrs-git
+pkgver=r334.8262295
+pkgrel=1
+pkgdesc="An experimental standard library for rust"
+arch=('x86_64')
+url="https://github.com/lrs-lang"
+license=('Apache' 'MIT' 'MPL')
+makedepends=('git' 'clang')
+options=(!strip)
+install='install.sh'
+source=(
+ 'lib::git+https://github.com/lrs-lang/lib.git'
+ 'driver::git+https://github.com/lrs-lang/driver.git#commit=6d10777'
+ http://static.rust-lang.org/dist/2015-12-20/rust-nightly-x86_64-unknown-linux-gnu.tar.gz
+)
+sha512sums=('SKIP'
+ 'SKIP'
+ '2f23f303045f539d998f15cd21c88833dfb5aa2739a6f95e9cfc300ffb363e1adab265f88c5d9ea30cbccc8f9a44e2578b7df464a0df07f856c6b8b2bf11adbd')
+
+pkgver() {
+ cd "$srcdir/lib"
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+prepare() {
+ ln -fs "${srcdir}/rust-nightly-x86_64-unknown-linux-gnu/rust-std-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu"\
+ "${srcdir}/rust-nightly-x86_64-unknown-linux-gnu/rustc/lib/rustlib/x86_64-unknown-linux-gnu"
+
+ mkdir -p $srcdir/lib/obj/aarch64-lkern-kernel
+ sed -i "s|rustc|${srcdir}/rust-nightly-x86_64-unknown-linux-gnu/rustc/bin/rustc|" \
+ $srcdir/driver/Makefile $srcdir/lib/make_plugin.sh $srcdir/lib/targets.sh
+ sed -i "s|lrsc|${srcdir}/driver/lrsc|" \
+ $srcdir/lib/Makefile $srcdir/lib/make_libtest.sh
+}
+
+build() {
+ export LD_LIBRARY_PATH="${srcdir}/rust-nightly-x86_64-unknown-linux-gnu/rustc/lib"\
+ LRS_OBJ_PATH="${srcdir}/lib/obj"
+
+ cd "$srcdir/driver"
+ make lrsc
+
+ cd "$srcdir/lib"
+ ./make_plugin.sh
+ ./make_asm.sh
+ ./make_lrs.sh
+ ./make_libtest.sh
+
+ unset LD_LIBRARY_PATH LRS_OBJ_PATH
+}
+
+package() {
+ mkdir -p $pkgdir/usr/bin $pkgdir/usr/lib/lrs $pkgdir/usr/share/licenses/lrs
+ cp "$srcdir/driver/lrsc" "$pkgdir/usr/bin/lrsc"
+ cp ${srcdir}/rust-nightly-x86_64-unknown-linux-gnu/rustc/lib/*.so "$pkgdir/usr/lib"
+ cp ${srcdir}/rust-nightly-x86_64-unknown-linux-gnu/LICENSE-* \
+ "$srcdir/rust-nightly-x86_64-unknown-linux-gnu/COPYRIGHT" \
+ "$srcdir/lib/LICENSE" $pkgdir/usr/share/licenses/lrs
+ for d in ${srcdir}/lib/obj; do
+ if [[ -d "$d" ]] && [[ $(basename $d) -ne "obj" ]]; then
+ cp -r $d/*.a $d/*.rlib $d/*.so "$pkgdir/usr/lib/lrs/$(basename $d)"
+ fi
+ done
+}
diff --git a/install.sh b/install.sh
new file mode 100755
index 000000000000..61a7381714f5
--- /dev/null
+++ b/install.sh
@@ -0,0 +1,11 @@
+post_upgrade() {
+ printf "+-----------------------------------------------------------------+\n"
+ printf "| In your .bashrc, .zshrc, or similar startup file, please append |\n"
+ printf "| export LRS_OBJ_PATH-\"/usr/lib/lrs\" |\n"
+ printf "| to allow \`lrsc\` to function properly. |\n"
+ printf "+-----------------------------------------------------------------+\n"
+}
+
+post_install() {
+ post_upgrade
+}