Files
MiSTer-bootstrap/Makefile
Chris b1633b28a6 Merge pull request #8 from mholzinger/patch-1
Adds executable target statement for arm platform
2018-12-15 09:29:56 +00:00

37 lines
1.1 KiB
Makefile

VERSION=1.0.0-alpha2
GOCMD=go
GOBUILD=$(GOCMD) build
GOCLEAN=$(GOCMD) clean
CC=gcc
CC_WIN=i686-w64-mingw32-gcc
CC_ARM=arm-linux-gnueabihf-gcc
GOWIN=CC=$(CC_WIN) CGO_ENABLED=1 GOOS=windows GOARCH=386
GOARM=CC=$(CC_ARM) CGO_ENABLED=1 GOOS=linux GOARCH=arm
GOARM_SHARED=CC=$(CC_ARM) CGO_ENABLED=1 GOOS=linux GOARCH=arm
BASE=bootstrap
BINARY_NAME=MiSTer-bootstrap-linux-amd64-$(VERSION)
BINARY_NAME_WIN=MiSTer-bootstrap-windows-amd64-$(VERSION).exe
all: clean build build-windows build-arm build-shared build-example
build: clean
$(GOBUILD) -o bin/$(BINARY_NAME) -v src/main.go
build-windows:
$(GOWIN) $(GOBUILD) -o bin/$(BINARY_NAME_WIN) -v src/main.go
build-arm:
$(GOARM) $(GOBUILD) -o bin/$(BINARY_NAME) -v src/main.go
build-shared:
$(GOBUILD) -o bin/$(BASE).so -buildmode=c-archive -v src/main.go
build-shared-arm: clean
$(GOARM_SHARED) $(GOBUILD) -o bin/$(BASE).a -buildmode=c-archive -v src/main.go
build-example: clean build-shared
$(CC) -o bin/$(BASE)_example -I./bin -L./bin example/example.cpp bin/bootstrap.so
clean:
$(GOCLEAN)
rm -f bin/$(BASE)*
rm -f bin/$(BINARY_NAME)*
rm -f bin/$(BINARY_NAME_WIN)*