mirror of
https://github.com/jtgans/g13gui.git
synced 2025-06-19 07:53:52 -04:00
97 lines
2.2 KiB
Makefile
97 lines
2.2 KiB
Makefile
VERSION := `grep "VERSION" g13gui/common.py |awk '{ print $$3 }' |tr -d "'"`
|
|
GITBRANCH ?= master
|
|
PIPENV := pipenv
|
|
PYTHON := `which python3`
|
|
PIP := ${PYTHON} -m pip
|
|
|
|
DISTRO := $(shell \
|
|
lsb_release -i \
|
|
|awk -F: '{ print $$2 }' \
|
|
|sed -e 's/[ \t]*//g' \
|
|
|tr '[A-Z]' '[a-z]' \
|
|
|sed -e 's/linux//g')
|
|
|
|
ifeq (${DISTRO},ubuntu)
|
|
DISTRO := debian
|
|
endif
|
|
|
|
ifeq (${DISTRO},manjaro)
|
|
DISTRO := archlinux
|
|
else ifeq (${DISTRO},arch)
|
|
DISTRO := archlinux
|
|
endif
|
|
|
|
$(warning Building on ${DISTRO})
|
|
|
|
all: ${DISTRO}
|
|
|
|
clean: ${DISTRO}-clean
|
|
rm -rf build/
|
|
rm -rf env/
|
|
|
|
install: ${DISTRO}-install
|
|
|
|
archlinux:
|
|
mkdir -p build
|
|
makepkg --nodeps
|
|
mv g13gui*.pkg.tar.zst build
|
|
|
|
archlinux-clean:
|
|
rm -f g13gui-git-*-any.pkg.tar.zst
|
|
rm -rf g13gui-git/
|
|
rm -rf pkg/
|
|
rm -rf src/
|
|
|
|
archlinux-install:
|
|
makepkg -i
|
|
|
|
fedora:
|
|
rpmdev-setuptree
|
|
cp g13gui.spec ~/rpmbuild/SPECS
|
|
tar -zcf ~/rpmbuild/SOURCES/g13gui-${VERSION}.tar.gz .
|
|
rpmbuild -bb ~/rpmbuild/SPECS/g13gui.spec
|
|
mkdir -p build
|
|
mv ~/rpmbuild/RPMS/*/g13gui*.rpm build/
|
|
|
|
fedora-clean:
|
|
rm -rf ~/rpmbuild
|
|
|
|
fedora-install:
|
|
|
|
debian:
|
|
mkdir -p build
|
|
gbp buildpackage --git-verbose --git-ignore-branch --git-debian-branch=$(GITBRANCH) -us -ui -uc
|
|
mv ../g13gui_$(VERSION)* build
|
|
|
|
debian-install:
|
|
sudo dpkg -i g13gui_$(VERSION).deb
|
|
|
|
debian-clean:
|
|
debclean
|
|
|
|
debian-build-source: debian-clean
|
|
mkdir -p build
|
|
gbp buildpackage -S --git-verbose --git-ignore-branch --git-debian-branch=$(GITBRANCH) -us -uc
|
|
mv ../g13gui_$(VERSION)* build
|
|
|
|
debian-release: debian-build-source
|
|
|
|
env:
|
|
python3 -m venv env
|
|
tools/in-env python3 -m pip install -r requirements.txt
|
|
|
|
test: env
|
|
PYTHONPATH=. tools/in-env python3 -m g13gui.tests
|
|
|
|
dist: clean
|
|
mkdir -p build
|
|
tar --exclude=build --exclude=.drone.yml --exclude-vcs -zcf build/g13gui_$(VERSION).tar.gz .
|
|
docker run -ti -v ${PWD}:/srcs -w /srcs fedora:latest tools/dockerbuild.sh fedora
|
|
docker run -ti -v ${PWD}:/srcs -w /srcs debian:latest tools/dockerbuild.sh debian
|
|
docker run -ti -v ${PWD}:/srcs -w /srcs archlinux:latest tools/dockerbuild.sh archlinux
|
|
|
|
.PHONY: all clean install test
|
|
.PHONY: archlinux archlinux-clean archlinux-install
|
|
.PHONY: debian debian-build debian-clean debian-build-source debian-release
|
|
|