ping-server/Makefile
2023-04-16 16:57:10 -05:00

32 lines
660 B
Makefile

# Variables
BINARY := bin/main
SOURCES := $(wildcard src/*.go)
# Build for the current platform
build:
go build -o $(BINARY) $(SOURCES)
# Build for Linux
build-linux: GOOS := linux
build-linux: EXTENSION :=
build-linux: build-cross
# Build for Windows
build-windows: GOOS := windows
build-windows: EXTENSION := .exe
build-windows: build-cross
# Cross-compile for a specific platform (used by build-linux and build-windows)
build-cross: export GOOS := $(GOOS)
build-cross: BINARY := $(BINARY)$(EXTENSION)
build-cross: $(BINARY)
# Run the application
run: build
./$(BINARY)
# Clean up generated files
.PHONY: clean
clean:
rm -f $(BINARY) $(BINARY).exe