[arch-commits] Commit in tinygo/repos (3 files)
Anatol Pomozov
anatolik at gemini.archlinux.org
Fri Aug 12 17:03:46 UTC 2022
Date: Friday, August 12, 2022 @ 17:03:46
Author: anatolik
Revision: 1265488
archrelease: copy trunk to community-testing-x86_64
Added:
tinygo/repos/community-testing-x86_64/
tinygo/repos/community-testing-x86_64/PKGBUILD
(from rev 1265487, tinygo/trunk/PKGBUILD)
tinygo/repos/community-testing-x86_64/disable_static_llvm.patch
(from rev 1265487, tinygo/trunk/disable_static_llvm.patch)
---------------------------+
PKGBUILD | 85 ++++++++++++++++++++++++++++++++++++++++++++
disable_static_llvm.patch | 32 ++++++++++++++++
2 files changed, 117 insertions(+)
Copied: tinygo/repos/community-testing-x86_64/PKGBUILD (from rev 1265487, tinygo/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD (rev 0)
+++ community-testing-x86_64/PKGBUILD 2022-08-12 17:03:46 UTC (rev 1265488)
@@ -0,0 +1,85 @@
+# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
+
+pkgname=tinygo
+pkgver=0.25.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 !lto)
+# TODO: re-add these deps when switching back to system LLVM
+#depends=(llvm-libs clang lld)
+# TODO: add llvm + remove cmake/ninja/python from build deps
+makedepends=(go git cmake ninja python)
+# 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
+ git+https://github.com/ARM-software/CMSIS.git
+ git+https://github.com/avr-rust/avr-mcu.git
+ git+https://github.com/tinygo-org/cmsis-svd
+ git+https://github.com/CraneStation/wasi-libc
+ git+https://github.com/keith-packard/picolibc.git
+ git+https://github.com/tinygo-org/stm32-svd
+ git://git.musl-libc.org/musl
+ git+https://github.com/WebAssembly/binaryen.git
+ git+https://github.com/mingw-w64/mingw-w64.git
+ git+https://github.com/aykevl/macos-minimal-sdk.git
+ git+https://github.com/tinygo-org/llvm-project#branch=xtensa_release_14.0.0-patched
+ disable_static_llvm.patch)
+sha256sums=('SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'd50593810cff1857e24adf537a624d79f128573d177f4f6da404da1539eaa967')
+
+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/wasi-libc.url' "$srcdir/wasi-libc"
+ git config -f .gitmodules 'submodule.lib/picolibc.url' "$srcdir/picolibc"
+ git config -f .gitmodules 'submodule.lib/stm32-svd.url' "$srcdir/stm32-svd"
+ git config -f .gitmodules 'submodule.lib/musl.url' "$srcdir/musl"
+ git config -f .gitmodules 'submodule.lib/binaryen.url' "$srcdir/binaryen"
+ git config -f .gitmodules 'submodule.lib/mingw-w64.url' "$srcdir/mingw-w64"
+ git config -f .gitmodules 'submodule.lib/macos-minimal-sdk.url' "$srcdir/macos-minimal-sdk"
+
+ git submodule sync
+ git submodule update
+
+ ln -sf ../llvm-project
+}
+
+build() {
+ cd tinygo
+ make llvm-build
+ make build/release
+}
+
+check() {
+ cd tinygo
+ # it reqreires a lot of dependencies. todo enable the tests
+ # make test tinygo-test smoketest
+}
+
+package() {
+ cd tinygo
+
+ 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-testing-x86_64/disable_static_llvm.patch (from rev 1265487, tinygo/trunk/disable_static_llvm.patch)
===================================================================
--- community-testing-x86_64/disable_static_llvm.patch (rev 0)
+++ community-testing-x86_64/disable_static_llvm.patch 2022-08-12 17:03:46 UTC (rev 1265488)
@@ -0,0 +1,32 @@
+commit 897aa65fb711444ccaa1abcfac4d7640f796aa04
+Author: Anatol Pomozov <anatol.pomozov at gmail.com>
+Date: Fri Oct 16 09:05:27 2020 -0700
+
+ Arch linux build changes
+
+diff --git a/Makefile b/Makefile
+index aebf635..a2d0891 100644
+--- a/Makefile
++++ b/Makefile
+@@ -173,11 +173,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 -buildmode exe -o build/tinygo$(EXE) -tags byollvm -ldflags="-X main.gitSha1=`git rev-parse --short HEAD`" .
++ CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) build -buildmode exe -o build/tinygo$(EXE) -tags llvm11 -ldflags="-X main.gitSha1=`git rev-parse --short HEAD`" .
+
+ test: wasi-libc
+- CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) test -v -buildmode exe -tags byollvm ./cgo ./compileopts ./compiler ./interp ./transform .
++ CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_CXXFLAGS="$(CGO_CXXFLAGS)" CGO_LDFLAGS="$(CGO_LDFLAGS)" $(GO) test -v -buildmode exe ./cgo ./compileopts ./compiler ./interp ./transform .
+
+ # Test known-working standard library packages.
+ # TODO: do this in one command, parallelize, and only show failing tests (no
+@@ -408,7 +407,6 @@ build/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
More information about the arch-commits
mailing list