#!/usr/bin/make -f

package=attic

INSTALL = install
INSTALL_FILE    = $(INSTALL) -p    -o root -g root  -m  644
INSTALL_PROGRAM = $(INSTALL) -p    -o root -g root  -m  755
INSTALL_SCRIPT  = $(INSTALL) -p    -o root -g root  -m  755
INSTALL_DIR     = $(INSTALL) -p -d -o root -g root  -m  755

STRIP = strip

clean:
	$(checkdir)
	rm -f debian/substvars debian/files build-arch
	rm -rf debian/attic debian/tmp attic/__pycache__ build __pycache__

build: build-arch build-indep
build-indep:
build-arch:
	$(checkdir)
	python3 setup.py build
	#python3 -m attic.testsuite.run
	touch $@

binary: binary-indep binary-arch
binary-indep: checkroot
binary-arch: checkroot install
	$(INSTALL_DIR) debian/$(package)/DEBIAN \
		debian/$(package)/usr/share/doc/$(package)
	$(INSTALL_FILE) debian/copyright debian/$(package)/usr/share/doc/$(package)
	$(INSTALL_FILE) debian/changelog debian/$(package)/usr/share/doc/$(package)/changelog.Debian
	gzip -9f debian/$(package)/usr/share/doc/$(package)/changelog.Debian
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	$(STRIP) --remove-section=.comment --remove-section=.note debian/$(package)/usr/lib/python3/dist-packages/$(package)/*.so
endif
	cd debian/$(package) && find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > DEBIAN/md5sums
	dpkg-shlibdeps debian/$(package)/usr/lib/python3/dist-packages/$(package)/*.so
	dpkg-gencontrol -Pdebian/$(package)
	dpkg --build debian/$(package) ..

install: build
	$(checkdir)
	python3 setup.py install --root="$(CURDIR)/debian/attic" --no-compile --install-layout=deb

define checkdir
	test -f setup.py && test -f debian/rules
endef

checkroot:
	$(checkdir)
	test 0 = `id -u`

.PHONY: binary binary-arch binary-indep build build-indep checkroot clean install
