about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/compilers/tinygo/0001-GNUmakefile.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/compilers/tinygo/0001-GNUmakefile.patch')
-rw-r--r--nixpkgs/pkgs/development/compilers/tinygo/0001-GNUmakefile.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/compilers/tinygo/0001-GNUmakefile.patch b/nixpkgs/pkgs/development/compilers/tinygo/0001-GNUmakefile.patch
new file mode 100644
index 000000000000..d108efe17115
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/tinygo/0001-GNUmakefile.patch
@@ -0,0 +1,63 @@
+diff --git a/GNUmakefile b/GNUmakefile
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -14,11 +14,6 @@ LLVM_VERSIONS = 14 13 12 11
+ errifempty = $(if $(1),$(1),$(error $(2)))
+ detect = $(shell which $(call errifempty,$(firstword $(foreach p,$(2),$(shell command -v $(p) 2> /dev/null && echo $(p)))),failed to locate $(1) at any of: $(2)))
+ toolSearchPathsVersion = $(1)-$(2)
+-ifeq ($(shell uname -s),Darwin)
+-	# Also explicitly search Brew's copy, which is not in PATH by default.
+-	BREW_PREFIX := $(shell brew --prefix)
+-	toolSearchPathsVersion += $(BREW_PREFIX)/opt/llvm@$(2)/bin/$(1)-$(2) $(BREW_PREFIX)/opt/llvm@$(2)/bin/$(1)
+-endif
+ # First search for a custom built copy, then move on to explicitly version-tagged binaries, then just see if the tool is in path with its normal name.
+ findLLVMTool = $(call detect,$(1),$(abspath llvm-build/bin/$(1)) $(foreach ver,$(LLVM_VERSIONS),$(call toolSearchPathsVersion,$(1),$(ver))) $(1))
+ CLANG ?= $(call findLLVMTool,clang)
+@@ -707,9 +702,8 @@ endif
+ wasmtest:
+ 	$(GO) test ./tests/wasm
+ 
+-build/release: tinygo gen-device wasi-libc $(if $(filter 1,$(USE_SYSTEM_BINARYEN)),,binaryen)
++build/release:
+ 	@mkdir -p build/release/tinygo/bin
+-	@mkdir -p build/release/tinygo/lib/clang/include
+ 	@mkdir -p build/release/tinygo/lib/CMSIS/CMSIS
+ 	@mkdir -p build/release/tinygo/lib/macos-minimal-sdk
+ 	@mkdir -p build/release/tinygo/lib/mingw-w64/mingw-w64-crt/lib-common
+@@ -721,15 +715,8 @@ build/release: tinygo gen-device wasi-libc $(if $(filter 1,$(USE_SYSTEM_BINARYEN
+ 	@mkdir -p build/release/tinygo/lib/picolibc/newlib/libc
+ 	@mkdir -p build/release/tinygo/lib/picolibc/newlib/libm
+ 	@mkdir -p build/release/tinygo/lib/wasi-libc
+-	@mkdir -p build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0
+-	@mkdir -p build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus
+-	@mkdir -p build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4
+ 	@echo copying source files
+ 	@cp -p  build/tinygo$(EXE)           build/release/tinygo/bin
+-ifneq ($(USE_SYSTEM_BINARYEN),1)
+-	@cp -p  build/wasm-opt$(EXE)         build/release/tinygo/bin
+-endif
+-	@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/macos-minimal-sdk/*      build/release/tinygo/lib/macos-minimal-sdk
+@@ -768,16 +755,9 @@ endif
+ 	@cp -rp lib/picolibc/newlib/libm/common      build/release/tinygo/lib/picolibc/newlib/libm
+ 	@cp -rp lib/picolibc-stdio.c         build/release/tinygo/lib
+ 	@cp -rp lib/wasi-libc/sysroot        build/release/tinygo/lib/wasi-libc/sysroot
+-	@cp -rp llvm-project/compiler-rt/lib/builtins build/release/tinygo/lib/compiler-rt-builtins
+-	@cp -rp llvm-project/compiler-rt/LICENSE.TXT  build/release/tinygo/lib/compiler-rt-builtins
++	@cp -rp lib/compiler-rt-builtins     build/release/tinygo/lib/compiler-rt-builtins
+ 	@cp -rp src                          build/release/tinygo/src
+ 	@cp -rp targets                      build/release/tinygo/targets
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0     -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/compiler-rt     compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0plus -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus/compiler-rt compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m4     -o build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4/compiler-rt    compiler-rt
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0     -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0/picolibc     picolibc
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m0plus -o build/release/tinygo/pkg/thumbv6m-unknown-unknown-eabi-cortex-m0plus/picolibc picolibc
+-	./build/release/tinygo/bin/tinygo build-library -target=cortex-m4     -o build/release/tinygo/pkg/thumbv7em-unknown-unknown-eabi-cortex-m4/picolibc    picolibc
+ 
+ release:
+ 	tar -czf build/release.tar.gz -C build/release tinygo
+-- 
+2.37.2
+