2000-09-10 14:53:52 +00:00
|
|
|
# This Makefile is only used by developers.
|
2008-04-19 07:46:42 +00:00
|
|
|
PYVER=2.5
|
2007-12-14 22:34:05 +00:00
|
|
|
PYTHON=python$(PYVER)
|
|
|
|
|
VERSION=$(shell $(PYTHON) setup.py --version)
|
2008-06-06 07:59:23 +00:00
|
|
|
MACHINE=$(shell uname -m)
|
2003-10-16 13:39:00 +00:00
|
|
|
HOST=www.debian.org
|
2006-05-18 16:16:28 +00:00
|
|
|
LCOPTS=-Ftext -Fhtml -Fgml -Fsql -Fcsv -Fxml -Fgxml -Fdot -v -r1 -C
|
2007-12-14 22:34:05 +00:00
|
|
|
PYTHONSVN=/home/calvin/src/python-svn
|
2009-02-18 19:27:04 +00:00
|
|
|
PY_FILES_DIRS=linkcheck tests *.py linkchecker gui cgi-bin config doc
|
2009-02-01 10:24:23 +00:00
|
|
|
# build dir for debian package
|
|
|
|
|
BUILDDIR=/home/calvin/packages/official
|
|
|
|
|
DEB_ORIG_TARGET=$(BUILDDIR)/linkchecker_$(VERSION).orig.tar.gz
|
2006-05-18 16:46:58 +00:00
|
|
|
|
|
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: all
|
2000-03-19 14:24:33 +00:00
|
|
|
all:
|
2009-01-23 08:34:24 +00:00
|
|
|
@echo "Read the file doc/source/install.txt to see how to build and install this package."
|
2000-02-26 10:24:46 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: clean
|
2000-02-26 10:24:46 +00:00
|
|
|
clean:
|
2004-04-04 17:07:40 +00:00
|
|
|
# ignore errors of this command
|
|
|
|
|
-$(PYTHON) setup.py clean --all
|
2008-04-23 23:03:38 +00:00
|
|
|
rm -f *-stamp*
|
2000-11-09 12:02:38 +00:00
|
|
|
$(MAKE) -C po clean
|
2008-03-19 10:22:04 +00:00
|
|
|
$(MAKE) -C linkcheck/HtmlParser clean
|
2009-01-10 14:11:17 +00:00
|
|
|
rm -f linkcheck/network/_network.so
|
2005-03-15 00:02:37 +00:00
|
|
|
find . -name '*.py[co]' -exec rm -f {} \;
|
2000-02-26 10:24:46 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: distclean
|
2000-11-09 12:02:38 +00:00
|
|
|
distclean: clean cleandeb
|
2009-01-23 08:34:24 +00:00
|
|
|
$(MAKE) -C doc clean
|
2008-06-08 09:27:04 +00:00
|
|
|
rm -rf build linkchecker.egg-info
|
2009-01-24 17:28:43 +00:00
|
|
|
rm -f _LinkChecker_configdata.py MANIFEST Packages.gz
|
2004-04-04 17:07:40 +00:00
|
|
|
# clean aborted dist builds and -out files
|
2006-05-18 16:46:58 +00:00
|
|
|
rm -f linkchecker-out* linkchecker.prof
|
2009-02-01 10:24:23 +00:00
|
|
|
rm -rf LinkChecker-$(VERSION)
|
2006-07-26 08:09:59 +00:00
|
|
|
rm -rf coverage dist-stamp python-build-stamp*
|
2000-07-14 14:26:41 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: cleandeb
|
2000-11-09 12:02:38 +00:00
|
|
|
cleandeb:
|
2006-05-18 16:46:58 +00:00
|
|
|
rm -rf debian/linkchecker debian/tmp
|
2000-11-09 12:02:38 +00:00
|
|
|
rm -f debian/*.debhelper debian/{files,substvars}
|
|
|
|
|
rm -f configure-stamp build-stamp
|
2000-11-02 17:32:14 +00:00
|
|
|
|
2005-03-29 16:33:10 +00:00
|
|
|
MANIFEST: MANIFEST.in setup.py
|
|
|
|
|
$(PYTHON) setup.py sdist --manifest-only
|
|
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: locale
|
2004-09-01 09:39:39 +00:00
|
|
|
locale:
|
|
|
|
|
$(MAKE) -C po
|
2001-03-04 19:42:35 +00:00
|
|
|
|
2004-11-23 23:36:11 +00:00
|
|
|
# to build in the current directory
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: localbuild
|
2005-03-29 16:34:08 +00:00
|
|
|
localbuild: MANIFEST
|
2004-08-12 00:03:55 +00:00
|
|
|
$(MAKE) -C linkcheck/HtmlParser
|
2002-11-24 19:53:37 +00:00
|
|
|
$(PYTHON) setup.py build
|
2008-06-06 07:59:23 +00:00
|
|
|
cp -f build/lib.linux-$(MACHINE)-$(PYVER)/linkcheck/HtmlParser/htmlsax.so linkcheck/HtmlParser
|
2008-06-07 13:08:36 +00:00
|
|
|
cp -f build/lib.linux-$(MACHINE)-$(PYVER)/linkcheck/network/_network.so linkcheck/network
|
2002-11-24 19:53:37 +00:00
|
|
|
|
2006-05-18 16:46:58 +00:00
|
|
|
.PHONY: deb_orig
|
|
|
|
|
deb_orig:
|
|
|
|
|
if [ ! -e $(DEB_ORIG_TARGET) ]; then \
|
|
|
|
|
$(MAKE) dist-stamp && \
|
2009-02-01 10:24:23 +00:00
|
|
|
cp dist/LinkChecker-$(VERSION).tar.gz $(DEB_ORIG_TARGET); \
|
2006-05-18 16:46:58 +00:00
|
|
|
fi
|
2002-02-08 18:49:46 +00:00
|
|
|
|
2006-02-04 09:36:13 +00:00
|
|
|
.PHONY: upload
|
|
|
|
|
upload:
|
2009-02-01 10:23:59 +00:00
|
|
|
rsync -avP -e ssh dist/* calvin@frs.sourceforge.net:uploads/
|
2006-02-04 09:36:13 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: release
|
2006-08-16 20:07:18 +00:00
|
|
|
release: distclean releasecheck dist-stamp sign_distfiles homepage upload
|
2004-09-03 19:19:10 +00:00
|
|
|
@echo "Uploading new LinkChecker Homepage..."
|
|
|
|
|
$(MAKE) -C ~/public_html/linkchecker.sf.net upload
|
2005-01-12 13:29:19 +00:00
|
|
|
@echo "Register at Python Package Index..."
|
|
|
|
|
$(PYTHON) setup.py register
|
2004-09-03 19:19:10 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: homepage
|
2004-09-03 19:25:06 +00:00
|
|
|
homepage:
|
2009-01-23 08:34:24 +00:00
|
|
|
$(MAKE) -C doc homepage
|
2004-09-03 19:25:06 +00:00
|
|
|
|
2007-03-21 19:35:05 +00:00
|
|
|
.PHONY: chmod
|
|
|
|
|
chmod:
|
|
|
|
|
-chmod -R a+rX,u+w,go-w -- *
|
|
|
|
|
find . -type d -exec chmod 755 {} \;
|
|
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: dist
|
2007-03-21 19:35:05 +00:00
|
|
|
dist: locale MANIFEST chmod
|
2008-07-28 16:56:41 +00:00
|
|
|
$(PYTHON) setup.py sdist --formats=gztar
|
2009-01-24 17:29:05 +00:00
|
|
|
# no rpm buildable with bdist_rpm, presumable due to this bug:
|
|
|
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=236535
|
|
|
|
|
# too uninvolved to fix it
|
2004-09-01 09:39:39 +00:00
|
|
|
|
2007-11-14 22:25:10 +00:00
|
|
|
dist-stamp: changelog
|
2006-05-18 16:46:58 +00:00
|
|
|
$(MAKE) dist
|
|
|
|
|
touch $@
|
|
|
|
|
|
2007-12-14 16:41:19 +00:00
|
|
|
# The check programs used here are mostly local scripts on my private system.
|
|
|
|
|
# So for other developers there is no need to execute this target.
|
2007-11-14 17:56:56 +00:00
|
|
|
.PHONY: check
|
|
|
|
|
check:
|
2008-04-14 22:34:03 +00:00
|
|
|
[ ! -d .svn ] || check-nosvneolstyle -v
|
2008-01-02 14:31:19 +00:00
|
|
|
check-copyright
|
2008-01-16 13:18:00 +00:00
|
|
|
check-pofiles -v
|
2008-04-14 22:34:03 +00:00
|
|
|
py-tabdaddy -v
|
2008-04-25 16:01:13 +00:00
|
|
|
$(MAKE) pyflakes
|
2006-04-08 10:27:08 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: releasecheck
|
2007-11-14 17:56:56 +00:00
|
|
|
releasecheck: check
|
2008-04-25 15:45:58 +00:00
|
|
|
@if egrep -i "xx\.|xxxx|\.xx" ChangeLog.txt > /dev/null; then \
|
|
|
|
|
echo "Could not release: edit ChangeLog.txt release date"; false; \
|
2004-09-01 09:39:39 +00:00
|
|
|
fi
|
2009-01-24 21:37:55 +00:00
|
|
|
# $(MAKE) -C doc test
|
2004-09-01 09:39:39 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: sign_distfiles
|
2005-07-05 16:19:33 +00:00
|
|
|
sign_distfiles:
|
2004-09-03 19:19:10 +00:00
|
|
|
for f in dist/*; do \
|
|
|
|
|
if [ ! -f $${f}.asc ]; then \
|
|
|
|
|
gpg --detach-sign --armor $$f; \
|
|
|
|
|
fi; \
|
|
|
|
|
done
|
2003-03-16 19:03:32 +00:00
|
|
|
|
2006-02-13 22:11:54 +00:00
|
|
|
.PHONY: test
|
|
|
|
|
test: localbuild
|
2009-01-28 23:12:03 +00:00
|
|
|
nosetests -m "^test_.*" tests/
|
2004-08-19 21:39:18 +00:00
|
|
|
|
2005-10-10 21:51:47 +00:00
|
|
|
.PHONY: pyflakes
|
|
|
|
|
pyflakes:
|
2008-05-09 06:13:54 +00:00
|
|
|
pyflakes $(PY_FILES_DIRS) 2>&1 | \
|
2005-10-10 21:51:47 +00:00
|
|
|
grep -v "redefinition of unused 'linkcheck'" | \
|
|
|
|
|
grep -v "undefined name '_'" | \
|
2008-04-25 15:59:27 +00:00
|
|
|
grep -v "undefined name '_n'" | cat
|
2005-10-10 21:51:47 +00:00
|
|
|
|
2005-10-10 21:48:17 +00:00
|
|
|
.PHONY: reindent
|
2004-08-12 00:03:55 +00:00
|
|
|
reindent:
|
|
|
|
|
$(PYTHON) config/reindent.py -r -v linkcheck
|
2006-01-06 15:01:40 +00:00
|
|
|
|
2006-01-11 22:04:30 +00:00
|
|
|
# Compare custom Python files with the original ones from subversion.
|
|
|
|
|
.PHONY: diff
|
|
|
|
|
diff:
|
|
|
|
|
@for f in gzip robotparser httplib; do \
|
|
|
|
|
echo "Comparing $${f}.py"; \
|
|
|
|
|
diff -u linkcheck/$${f}2.py $(PYTHONSVN)/Lib/$${f}.py | less; \
|
|
|
|
|
done
|
|
|
|
|
|
2007-11-14 22:23:46 +00:00
|
|
|
.PHONY: changelog
|
|
|
|
|
changelog:
|
2008-04-25 15:45:58 +00:00
|
|
|
sftrack_changelog linkchecker calvin@users.sourceforge.net ChangeLog.txt
|
2009-02-19 13:35:09 +00:00
|
|
|
|
|
|
|
|
.PHONY: gui
|
|
|
|
|
gui:
|
|
|
|
|
$(MAKE) -C linkcheck/gui
|