CI-Test/Makefile

60 lines
2.0 KiB
Makefile

PKGNAME := mdg-test
UPSTREAM_VERSION := 3.9.2
PKG_SUB_RELEASE := 1.0
SOURCE := https://www.python.org/ftp/python/$(UPSTREAM_VERSION)/python-$(UPSTREAM_VERSION)-amd64.exe
CHECKSUM := efb20aa1b648a2baddd949c142d6eb06
## Download Link and Checksums can be found on https://www.python.org/downloads/windows/
#Variables below are set automatically
PKG_FULL_VERSION := $(UPSTREAM_VERSION)-$(PKG_SUB_RELEASE)
DEB_CHANGELOG_VERSION := $(shell dpkg-parsechangelog -S Version | sed -rne 's|((-*[^-]+)+)(-[^-]+)|\1|p')
DEB_ORIG_FILE := $(PKGNAME)_$(PKG_FULL_VERSION).orig.tar.gz
default: download
all: | clean install
download: setversion
[ -d "data" ] || mkdir data
wget -nc -P data $(SOURCE)
echo "$(CHECKSUM) data/python-$(UPSTREAM_VERSION)-amd64.exe" | md5sum -c && \
echo "SUCCESS: Checksums match" || \
{ ec=$$?; echo "ERROR: Checksum mismatch" >&2; rm -rf data >&2; exit $$ec; }
data: download
install: data
install -Dm644 control -t $(DESTDIR)/srv/deploy/install/$(PKGNAME)
install -Dm644 *.ins -t $(DESTDIR)/srv/deploy/install/$(PKGNAME)
install -Dm644 logo.png -t $(DESTDIR)/srv/deploy/install/$(PKGNAME)
install -Dm644 data/* -t $(DESTDIR)/srv/deploy/install/$(PKGNAME)/data
uninstall:
rm -rf $(DESTDIR)/srv/deploy/install/$(PKGNAME)
clean:
rm -rf data
setversion:
@echo "INFO: Writing version $(PKG_FULL_VERSION) to control file"
sed -e "s/^version: [0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$$/version: $(UPSTREAM_VERSION)/" \
-e "s/^packageVersion: [0-9]\{1,3\}\.[0-9]\{1,3\}$$/packageVersion: $(PKG_SUB_RELEASE)/" \
-i control
package-check:
@if [ "$(DEB_CHANGELOG_VERSION)" != "$(PKG_FULL_VERSION)" ]; then \
echo "Mismatch between debian changelog file and Makefile version"; \
echo "Debian changelog version: $(DEB_CHANGELOG_VERSION)"; \
echo "Makefile version: $(PKG_FULL_VERSION)"; \
exit 1; \
fi
package: package-check
tar cavzf ../$(DEB_ORIG_FILE) --exclude="debian" --exclude="**/.*" .
debuild -us -uc --diff-ignore="\.\S+" -I
.PHONY: default all download install uninstall clean setversion package-check package