V:=$(shell cat VERSION)
TOP_DIR:=$(shell pwd)
BUILD_DIR:=$(TOP_DIR)/build
DEB_DIR:=$(BUILD_DIR)/deb/myx-cmake-$(V)
PACK_DIR:=$(BUILD_DIR)/pack/myx-cmake-$(V)

all: v deb pack

v:
	sed -i "s/\/[0-9][0-9.]\+/\/$V/g" $(TOP_DIR)/README.md
	sed -i "s/[0-9][0-9.]\+tar/$V.tar/g" $(TOP_DIR)/README.md
	sed -i "s/CMake.*REQUIRED/CMake $V REQUIRED/" $(TOP_DIR)/README.md $(TOP_DIR)/myx_setup.cmake
	sed -i "s/VERSION \".*\"/VERSION \"$V\"/" $(TOP_DIR)/MyxCMake/MyxCMakeConfigVersion.cmake
	sed -i "s/VERSION .* LANG/VERSION $V LANG/" $(TOP_DIR)/debian/CMakeLists.txt
	sed -i "s/(.*)/($(V))/" $(TOP_DIR)/debian/changelog

deb:
	rm -rf $(DEB_DIR)
	mkdir -p $(DEB_DIR)
	cp -ap "$(TOP_DIR)/MyxCMake" "$(TOP_DIR)/debian" "$(DEB_DIR)"
	cd $(DEB_DIR); debuild
	mv $(BUILD_DIR)/deb/*deb $(BUILD_DIR)
	mv $(BUILD_DIR)/deb/*dsc $(BUILD_DIR)
	mv $(BUILD_DIR)/deb/*xz $(BUILD_DIR)

pack:
	rm -rf $(PACK_DIR)
	mkdir -p $(PACK_DIR)
	cp -ap $(TOP_DIR)/MyxCMake $(PACK_DIR)/myx
	cp -ap $(TOP_DIR)/myx_setup.cmake $(PACK_DIR)
	cd $(PACK_DIR); tar acf $(BUILD_DIR)/myx-cmake-local-$(V).tar.xz *

upload:
	git tag $(V)
	tea r c --repo cmake/myx -t $(V) --tag $(V) \
		-a $(BUILD_DIR)/myx-cmake_$(V).dsc \
		-a $(BUILD_DIR)/myx-cmake_$(V).tar.xz \
		-a $(BUILD_DIR)/myx-cmake_$(V)_all.deb \
		-a $(BUILD_DIR)/myx-cmake-local-$(V).tar.xz
	git tag -d $(V)
	git push