scrcpy/Makefile

43 lines
932 B
Makefile

.PHONY: default release clean build-app build-server dist dist-zip sums test
BUILD_DIR := build
DIST := dist
TARGET_DIR := scrcpy
VERSION := $(shell git describe --tags --always)
TARGET := $(TARGET_DIR)-$(VERSION).zip
default:
@echo 'You must specify a target. Try: make release'
release: clean dist-zip sums
clean:
rm -rf "$(BUILD_DIR)" "$(DIST)"
+$(MAKE) -C server clean
build-app:
[ -d "$(BUILD_DIR)" ] || ( mkdir "$(BUILD_DIR)" && meson app "$(BUILD_DIR)" --buildtype release )
ninja -C "$(BUILD_DIR)"
build-server:
+$(MAKE) -C server clean
+$(MAKE) -C server jar
dist: build-app build-server
mkdir -p "$(DIST)/$(TARGET_DIR)"
cp server/scrcpy-server.jar "$(DIST)/$(TARGET_DIR)/"
cp build/scrcpy "$(DIST)/$(TARGET_DIR)/"
dist-zip: dist
cd "$(DIST)"; \
zip -r "$(TARGET)" "$(TARGET_DIR)"
sums:
cd "$(DIST)"; \
sha256sum *.zip > SHA256SUM.txt
test:
+$(MAKE) -C server test
ninja -C "$(BUILD_DIR)" test