xref: /aosp_15_r20/external/libcap/contrib/bug216610/Makefile (revision 2810ac1b38eead2603277920c78344c84ddf3aff)
1topdir=$(shell pwd)/../..
2include ../../Make.Rules
3
4GOTARGET=$(shell eval $$(go env) ; echo $${GOHOSTOS}_$${GOARCH})
5
6all: go/fib
7
8go/fib: go/main.go go/fibber/fib.go go/fibber/linkage.go go/fibber/fibs_$(GOTARGET).s go/fibber/fib_$(GOTARGET).syso
9	cd go && CGO_ENABLED=0 go build
10
11# Build the host native version.
12go/fibber/fib_$(GOTARGET).syso go/fibber/linkage.go: c/fib.c ./c/gcc.sh ./package_fns.sh
13	GCC=gcc ./c/gcc.sh -O3 c/fib.c -c -o go/fibber/fib_$(GOTARGET).syso
14	./package_fns.sh fibber go/fibber/fib_$(GOTARGET).syso > go/fibber/linkage.go
15
16Dockerfile: Makefile ./mkdocker.sh
17	./mkdocker.sh > $@
18
19# Use this build target (make arms) to extend support to include arm
20# and arm64 GOARCH values.
21arms: Dockerfile Makefile ./c/gcc.sh ./c/build.sh ./c/fib.c
22	docker run --rm -v $$PWD/c:/shared:z -h debian -u $$(id -u) -it expt shared/build.sh
23	mv c/*.syso go/fibber/
24	touch arms
25
26clean:
27	rm -f *~ arms
28	rm -f c/*.o c/*~
29	rm -f go/fib go/*~
30	rm -f go/fibber/*.syso go/fibber/*~ go/fibber/linkage.go
31