Files
AynaLivePlayer/Makefile
2024-11-12 16:59:36 -08:00

58 lines
1.7 KiB
Makefile

EXECUTABLE=AynaLivePlayer
WINDOWS=$(EXECUTABLE).exe
LINUX=$(EXECUTABLE)_linux
DARWIN=$(EXECUTABLE)_darwin
ifeq ($(OS),Windows_NT)
RM = del /Q /F
RRM = rmdir /Q /S
MKDIR = mkdir
COPY = XCOPY /Y
MOVE = move
else
RM = rm -f
RRM = rm -rf
MKDIR = mkdir
COPY = cp -r
MOVE = mv
endif
bundle:
fyne bundle --name resImageIcon --package resource ./assets/icon.png > ./resource/bundle.go
fyne bundle --append --name resFontMSYaHei --package resource ./assets/msyh0.ttf >> ./resource/bundle.go
fyne bundle --append --name resFontMSYaHeiBold --package resource ./assets/msyhbd0.ttf >> ./resource/bundle.go
# fyne bundle --append --name resFontMSYaHei --package resource ./assets/msyh.ttc >> ./resource/bundle.go
# fyne bundle --append --name resFontMSYaHeiBold --package resource ./assets/msyhbd.ttc >> ./resource/bundle.go
prebuild: bundle
$(RRM) ./release
$(MKDIR) ./release
$(MKDIR) ./release/assets
$(COPY) LICENSE.md ./release/LICENSE.md
$(COPY) ./assets/translation.json ./release/assets/translation.json
$(COPY) ./assets/config ./release/config
$(COPY) ./music ./release/music
go mod tidy
$(LINUX): prebuild
env GOOS=linux GOARCH=amd64 go build -o ./release/$(LINUX) app/main.go
$(MOVE) ./release/$(LINUX) ./release/$(EXECUTABLE)
$(WINDOWS): prebuild
env GOOS=windows GOARCH=amd64 go build -o ./release/$(WINDOWS) -ldflags -H=windowsgui app/main.go
$(DARWIN): prebuild
env GOOS=darwin GOARCH=amd64 go build -o ./release/$(DARWIN) app/main.go
$(MOVE) ./release/$(LINUX) ./release/$(EXECUTABLE)
windows: $(WINDOWS) ## Build for Windows
$(COPY) ./assets/windows/mpv-2.dll ./release/mpv-2.dll
linux: $(LINUX) ## Build for Linux
darwin: $(DARWIN) ## Build for Darwin (macOS)
clean:
$(RRM) ./release