PROJECT_NAME = toxcore PROJECT_FULL_NAME = c-$(PROJECT_NAME) PROJECT_VERSION = $(shell git describe | sed -e 's/^v//' -e 's/-/_/g') PROJECT_COMMIT_ID = $(shell git rev-parse HEAD) PROJECT_COMMIT_ID_SHORT = $(shell git rev-parse --short HEAD) PROJECT_GIT_ROOT = $(shell git rev-parse --show-toplevel) all: @echo available targets: spec srpm clean spec: toxcore.spec toxcore.spec: sed -r \ -e 's#@PROJECT_NAME@#$(PROJECT_NAME)#g' \ -e 's#@PROJECT_VERSION@#$(PROJECT_VERSION)#' \ -e 's#^(%define commit )0$$#\1$(PROJECT_COMMIT_ID)#' \ toxcore.spec.in > toxcore.spec $(PROJECT_FULL_NAME)-$(PROJECT_COMMIT_ID_SHORT).tar.gz: ( \ cd $(PROJECT_GIT_ROOT); \ git archive --prefix '$(PROJECT_FULL_NAME)-$(PROJECT_COMMIT_ID_SHORT)/' -o other/rpm/$(PROJECT_FULL_NAME)-$(PROJECT_COMMIT_ID_SHORT).tar.gz $(PROJECT_COMMIT_ID) \ ) srpm: toxcore.spec $(PROJECT_FULL_NAME)-$(PROJECT_COMMIT_ID_SHORT).tar.gz rpmbuild --define "_sourcedir ." --define "_srcrpmdir ." -bs toxcore.spec clean: rm -f toxcore.spec *.tar.gz *.rpm .PHONY = clean srpm spec