aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@gmail.com>2009-10-28 21:06:54 +0000
committerCatalin Marinas <catalin.marinas@gmail.com>2009-10-28 21:06:54 +0000
commit0eff9b85622b9e80502911431aaab9e8dc4c1bb8 (patch)
tree6918df2c96a12d3f4e8237ef2bfedd1b78382dce
parent09700575b6884f6ed304b19c9b56c1bcb13ec31f (diff)
downloadstgit-0eff9b85622b9e80502911431aaab9e8dc4c1bb8.tar.gz
Fix setup.py to generate the needed files
StGit was relying on Makefile to generate some files but this breaks using setup.py directly for targets like rpm. Signed-off-by: Catalin Marinas <catalin.marinas@gmail.com>
-rw-r--r--Makefile21
-rw-r--r--setup.cfg2
-rwxr-xr-xsetup.py17
3 files changed, 21 insertions, 19 deletions
diff --git a/Makefile b/Makefile
index 0fa5c6a..53c5694 100644
--- a/Makefile
+++ b/Makefile
@@ -4,20 +4,10 @@ PYTHON ?= python
TEST_PATCHES ?= ..
-all: build
+all:
$(PYTHON) setup.py build
-build: stgit/commands/cmdlist.py stgit-completion.bash
-
-ALL_PY = $(shell find stgit -name '*.py')
-
-stgit/commands/cmdlist.py: $(ALL_PY)
- $(PYTHON) stg-build --py-cmd-list > $@
-
-stgit-completion.bash: $(ALL_PY)
- $(PYTHON) stg-build --bash-completion > $@
-
-install: build
+install:
$(PYTHON) setup.py install --prefix=$(prefix) --root=$(DESTDIR) --force
doc:
@@ -29,10 +19,11 @@ install-doc:
install-html:
$(MAKE) -C Documentation install-html
-test: build
+test:
+ $(PYTHON) setup.py build
cd t && $(MAKE) all
-test_patches: build
+test_patches:
for patch in $$(stg series --noprefix $(TEST_PATCHES)); do \
stg goto $$patch && $(MAKE) test || break; \
done
@@ -53,5 +44,5 @@ tags:
TAGS:
ctags -e -R stgit/*
-.PHONY: all build install doc install-doc install-html test test_patches \
+.PHONY: all install doc install-doc install-html test test_patches \
clean tags TAGS
diff --git a/setup.cfg b/setup.cfg
index 4359033..1eb8e9b 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,2 +1,2 @@
[install]
-prefix: ~
+prefix: /usr
diff --git a/setup.py b/setup.py
index 3f5ccb2..12ed1db 100755
--- a/setup.py
+++ b/setup.py
@@ -4,6 +4,7 @@ import sys, glob, os
from distutils.core import setup
from stgit import version
+from stgit import commands, completion
def __version_to_list(version):
"""Convert a version string to a list of numbers or strings
@@ -63,14 +64,24 @@ def __run_setup():
])
# Check the minimum versions required
-if sys.argv[1] in ['install', 'build']:
- __check_python_version()
- __check_git_version()
+__check_python_version()
+__check_git_version()
# ensure readable template files
old_mask = os.umask(0022)
version.write_builtin_version()
+
+# generate the python command list
+f = file('stgit/commands/cmdlist.py', 'w')
+commands.py_commands(commands.get_commands(allow_cached = False), f)
+f.close()
+
+# generate the bash completion script
+f = file('stgit-completion.bash', 'w')
+completion.write_completion(f)
+f.close()
+
__run_setup()
# restore the old mask