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

Anatol Pomozov anatolik at archlinux.org
Wed Apr 15 18:29:59 UTC 2020


    Date: Wednesday, April 15, 2020 @ 18:29:58
  Author: anatolik
Revision: 614979

archrelease: copy trunk to community-staging-x86_64

Added:
  tinygo/repos/community-staging-x86_64/
  tinygo/repos/community-staging-x86_64/PKGBUILD
    (from rev 614978, tinygo/trunk/PKGBUILD)
  tinygo/repos/community-staging-x86_64/disable_static_llvm.patch
    (from rev 614978, tinygo/trunk/disable_static_llvm.patch)

---------------------------+
 PKGBUILD                  |   65 ++++++++++++++++++++++++++++++++++++++++++++
 disable_static_llvm.patch |   40 +++++++++++++++++++++++++++
 2 files changed, 105 insertions(+)

Copied: tinygo/repos/community-staging-x86_64/PKGBUILD (from rev 614978, tinygo/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2020-04-15 18:29:58 UTC (rev 614979)
@@ -0,0 +1,65 @@
+# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
+
+pkgname=tinygo
+pkgver=0.13.0
+pkgrel=1
+pkgdesc='Go compiler for small places. Microcontrollers, WebAssembly, and command-line tools. Based on LLVM.'
+arch=(x86_64)
+url='https://github.com/tinygo-org/tinygo'
+license=(BSD)
+options=(!strip)
+depends=(llvm-libs clang)
+makedepends=(go llvm git)
+# use git as we need to fetch submodules
+source=(git+https://github.com/tinygo-org/tinygo#tag=v$pkgver
+        git+https://github.com/NordicSemiconductor/nrfx
+        git+https://github.com/ARM-software/CMSIS
+        git+https://github.com/avr-rust/avr-mcu
+        git+https://github.com/tinygo-org/cmsis-svd
+        git+https://github.com/llvm-mirror/compiler-rt
+        git+https://github.com/CraneStation/wasi-libc
+        disable_static_llvm.patch)
+sha256sums=('SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            '02c67add4b961490c887c14ba6a6210ed6b180cf81d713e78bd4fe3eb1a35f7a')
+
+prepare() {
+  cd tinygo
+
+  git submodule init
+  git config -f .gitmodules 'submodule.lib/nrfx.url' "$srcdir/nrfx"
+  git config -f .gitmodules 'submodule.lib/CMSIS.url' "$srcdir/CMSIS"
+  git config -f .gitmodules 'submodule.lib/avr.url' "$srcdir/avr-mcu"
+  git config -f .gitmodules 'submodule.lib/cmsis-svd.url' "$srcdir/cmsis-svd"
+  git config -f .gitmodules 'submodule.lib/compiler-rt.url' "$srcdir/compiler-rt"
+  git config -f .gitmodules 'submodule.lib/wasi-libc.url' "$srcdir/wasi-libc"
+  git submodule sync
+  git submodule update
+
+  patch -p1 < ../disable_static_llvm.patch
+}
+
+build() {
+  cd tinygo
+  make
+}
+
+check() {
+  cd tinygo
+  # it reqreires a lot of dependencies. todo enable the tests
+  # make test tinygo-test smoketest
+}
+
+package() {
+  cd tinygo
+  make release
+
+  install -d "$pkgdir"/usr/bin "$pkgdir"/usr/lib/tinygo
+  mv build/release/tinygo/* "$pkgdir"/usr/lib/tinygo
+  ln -s /usr/lib/tinygo/bin/tinygo "$pkgdir"/usr/bin/tinygo
+}

Copied: tinygo/repos/community-staging-x86_64/disable_static_llvm.patch (from rev 614978, tinygo/trunk/disable_static_llvm.patch)
===================================================================
--- community-staging-x86_64/disable_static_llvm.patch	                        (rev 0)
+++ community-staging-x86_64/disable_static_llvm.patch	2020-04-15 18:29:58 UTC (rev 614979)
@@ -0,0 +1,40 @@
+diff --git a/Makefile b/Makefile
+index bacd9b5..62f1d1d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -12,7 +12,7 @@ LLD_SRC ?= $(LLVM_PROJECTDIR)/lld
+ ifneq (, $(shell command -v llvm-build/bin/clang 2> /dev/null))
+     CLANG ?= $(abspath llvm-build/bin/clang)
+ else
+-    CLANG ?= clang-10
++    CLANG ?= clang
+ endif
+ ifneq (, $(shell command -v llvm-build/bin/llvm-ar 2> /dev/null))
+     LLVM_AR ?= $(abspath llvm-build/bin/llvm-ar)
+@@ -170,11 +170,10 @@ lib/wasi-libc/sysroot/lib/wasm32-wasi/libc.a:
+ 
+ # Build the Go compiler.
+ tinygo:
+-	@if [ ! -f "$(LLVM_BUILDDIR)/bin/llvm-config" ]; then echo "Fetch and build LLVM first by running:"; echo "  make llvm-source"; echo "  make $(LLVM_BUILDDIR)"; exit 1; fi
+-	CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) build -o build/tinygo$(EXE) -tags byollvm .
++	CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) build -o build/tinygo$(EXE) .
+ 
+ test: wasi-libc
+-	CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) test -v -tags byollvm ./cgo ./compileopts ./interp ./transform .
++	CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) test -v ./cgo ./compileopts ./interp ./transform .
+ 
+ tinygo-test:
+ 	cd tests/tinygotest && tinygo test
+@@ -323,7 +322,6 @@ release: tinygo gen-device wasi-libc
+ 	@mkdir -p build/release/tinygo/pkg/armv7em-none-eabi
+ 	@echo copying source files
+ 	@cp -p  build/tinygo$(EXE)           build/release/tinygo/bin
+-	@cp -p $(abspath $(CLANG_SRC))/lib/Headers/*.h build/release/tinygo/lib/clang/include
+ 	@cp -rp lib/CMSIS/CMSIS/Include      build/release/tinygo/lib/CMSIS/CMSIS
+ 	@cp -rp lib/CMSIS/README.md          build/release/tinygo/lib/CMSIS
+ 	@cp -rp lib/compiler-rt/lib/builtins build/release/tinygo/lib/compiler-rt/lib
+@@ -345,4 +343,3 @@ release: tinygo gen-device wasi-libc
+ 	./build/tinygo build-library -target=armv6m-none-eabi  -o build/release/tinygo/pkg/armv6m-none-eabi/picolibc.a picolibc
+ 	./build/tinygo build-library -target=armv7m-none-eabi  -o build/release/tinygo/pkg/armv7m-none-eabi/picolibc.a picolibc
+ 	./build/tinygo build-library -target=armv7em-none-eabi -o build/release/tinygo/pkg/armv7em-none-eabi/picolibc.a picolibc
+-	tar -czf build/release.tar.gz -C build/release tinygo


More information about the arch-commits mailing list