Fix make cscope and clean
[cascardo/ipsilon.git] / Makefile
1 RPMBUILD = $(PWD)/dist/rpmbuild
2
3 all: lint pep8
4
5 lint:
6         # Analyze code
7         # don't show recommendations, info, comments, report
8         # W0613 - unused argument
9         # Ignore cherrypy class members as they are dynamically added
10         pylint -d c,r,i,W0613 -r n -f colorized \
11                    --notes= \
12                    --ignored-classes=cherrypy \
13                    ./ipsilon
14
15 pep8:
16         # Check style consistency
17         pep8 ipsilon
18
19 # Requires python-lesscpy
20 ui: less/ipsilon.less less/admin.less
21         # Create CSS
22         lesscpy less/ipsilon.less > ui/css/ipsilon.css
23         lesscpy less/admin.less > ui/css/admin.css
24
25 # Requires NodeJS less and clear-css packages
26 # Should be removed when lesscpy starts to work properly
27 ui-node: less/ipsilon.less less/admin.less
28         # Create and minify CSS
29         lessc --clean-css less/ipsilon.less ui/css/ipsilon.css
30         lessc --clean-css less/admin.less ui/css/admin.css
31
32 clean:
33         rm -fr testdir cscope.out
34         find ./ -name '*.pyc' -exec rm -f {} \;
35
36 cscope:
37         git ls-files | xargs pycscope
38
39 lp-test:
40         pylint -d c,r,i,W0613 -r n -f colorized \
41                    --notes= \
42                    --ignored-classes=cherrypy \
43                    ./tests
44         pep8 tests
45
46 wrappers:
47         #rm -fr wrapdir
48         #mkdir wrapdir
49         #LD_PRELOAD=libsocket_wrapper.so
50         #SOCKET_WRAPPER_DIR=wrapdir
51         #SOCKET_WRAPPER_DEFAULT_IFACE=9
52
53 tests: wrappers
54         PYTHONPATH=./ ./tests/tests.py --test=test1
55         PYTHONPATH=./ ./tests/tests.py --test=attrs
56         PYTHONPATH=./ ./tests/tests.py --test=trans
57
58 test: lp-test tests
59         PYTHONPATH=./ ./ipsilon/tools/saml2metadata.py
60
61 sdist:
62         python setup.py sdist
63
64 rpmroot:
65         rm -rf $(RPMBUILD)
66         mkdir -p $(RPMBUILD)/BUILD
67         mkdir -p $(RPMBUILD)/RPMS
68         mkdir -p $(RPMBUILD)/SOURCES
69         mkdir -p $(RPMBUILD)/SPECS
70         mkdir -p $(RPMBUILD)/SRPMS
71
72 rpmdistdir:
73         mkdir -p dist/rpms
74         mkdir -p dist/srpms
75
76 rpms: rpmroot rpmdistdir sdist
77         cp dist/ipsilon*.tar.gz $(RPMBUILD)/SOURCES/
78         rpmbuild --define "_topdir $(RPMBUILD)" -ba contrib/fedora/ipsilon.spec
79         mv $(RPMBUILD)/RPMS/*/ipsilon-*.rpm dist/rpms/
80         mv $(RPMBUILD)/SRPMS/ipsilon-*.src.rpm dist/srpms/
81         rm -rf $(RPMBUILD)
82
83 rpms: sdist