support git clones and (PECL) package archives as sources
[pharext/pharext] / Makefile
index cf19520418200fc554b77b8694d01a6fbd36859e..9697343b7b9c36c639a650257bd802f2cf94c7c3 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -4,17 +4,29 @@
 
 all: bin/pharext
 
-bin/pharext: src/* src/pharext/*
+bin/pharext: src/* src/pharext/* src/pharext/*/*
+       @echo "Linting changed source files ... "
        @for file in $?; do php -l $$file | sed -ne '/^No syntax errors/!p' && exit $${PIPESTATUS[0]}; done
-       phpunit tests
+       @echo "Creating bin/pharext ... "
        php -d phar.readonly=0 build/create-phar.php
        chmod +x $@
 
 test:
-       phpunit tests
+       @echo "Running tests ... "
+       @phpunit tests
        
 clean:
        rm bin/pharext*
 
-.PHONY: all clean test
-.SUFFIXES: .php
\ No newline at end of file
+release:
+       @echo "Previous Version: $$(git tag --list | tail -n1)"; \
+       read -p "Release Version:  v" VERSION; \
+       echo "Preparing release ... "; \
+       sed -e "s/@PHAREXT_VERSION@/$$VERSION/" build/Version.php.in > src/pharext/Version.php && \
+       $(MAKE) -B SIGN=1 && \
+       git ci -am "release v$$VERSION" && \
+       git tag v$$VERSION && \
+       cp build/Version.php.in src/pharext/Version.php && \
+       git ci -am "back to dev"
+
+.PHONY: all clean test release