aa139ca5361f609fada23897f4aa281bfa447372
[ejpi] / Makefile
1 PROJECT_NAME=ejpi
2 SOURCE_PATH=src
3 SOURCE=$(shell find $(SOURCE_PATH) -iname *.py)
4 OBJ=$(SOURCE:.py=.pyc)
5 TAG_FILE=~/.ctags/$(PROJECT_NAME).tags
6 TODO_FILE=./TODO
7
8 DEBUGGER=winpdb
9 UNIT_TEST=nosetests -w $(TEST_PATH)
10 STYLE_TEST=../../Python/tools/pep8.py --ignore=W191
11 LINT_RC=./support/pylint.rc
12 LINT=pylint --rcfile=$(LINT_RC)
13 COVERAGE_TEST=figleaf
14 PROFILER=pyprofiler
15 CTAGS=ctags-exuberant
16 TODO_FINDER=support/todo.py
17
18 .PHONY: all run debug test lint tags todo package clean
19
20 all: test package
21
22 run: $(SOURCE)
23         $(SOURCE_PATH)/ejpi_glade.py
24
25 debug: $(SOURCE)
26         $(DEBUGGER) $(SOURCE_PATH)/ejpi_glade.py
27
28 test: $(SOURCE)
29         $(SOURCE_PATH)/ejpi_glade.py -t
30
31 package:
32         ./builddeb.py
33
34 lint:
35         $(foreach file, $(SOURCE), $(LINT) $(file) ; )
36
37 tags: $(TAG_FILE) 
38
39 todo: $(TODO_FILE)
40
41 clean:
42         rm -Rf $(OBJ)
43
44 $(TAG_FILE): $(SOURCE)
45         mkdir -p $(dir $(TAG_FILE))
46         $(CTAGS) -o $(TAG_FILE) $(SOURCE)
47
48 $(TODO_FILE): $(SOURCE)
49         @- $(TODO_FINDER) $(SOURCE) > $(TODO_FILE)
50
51 #Makefile Debugging
52 #Target to print any variable, can be added to the dependencies of any other target
53 #Userfule flags for make, -d, -p, -n
54 print-%: ; @$(error $* is $($*) ($(value $*)) (from $(origin $*)))