summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2012-05-18 09:05:55 -0400
committerStephen Gallagher <sgallagh@redhat.com>2012-05-31 15:46:27 -0400
commitf1ce53a3b5656361557f80f61dfd42a371230c65 (patch)
tree9efa36f86a8c875aea7f122bd67926d7819ce22e
parent1467daed400d6c186bd0c99c057c42e764309ff3 (diff)
downloadsssd-f1ce53a3b5656361557f80f61dfd42a371230c65.tar.gz
sssd-f1ce53a3b5656361557f80f61dfd42a371230c65.tar.xz
sssd-f1ce53a3b5656361557f80f61dfd42a371230c65.zip
SSSDConfig: Make default config and schema file locations configurable
https://fedorahosted.org/sssd/ticket/1008
-rw-r--r--Makefile.am32
-rw-r--r--configure.ac4
-rw-r--r--po/POTFILES.in2
-rw-r--r--src/config/SSSDConfig/__init__.py.in (renamed from src/config/SSSDConfig/__init__.py)12
-rw-r--r--src/config/setup.py.in (renamed from src/config/setup.py)2
5 files changed, 38 insertions, 14 deletions
diff --git a/Makefile.am b/Makefile.am
index 2b168ed16..a6c2f9098 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1438,17 +1438,31 @@ docs:
@exit 1
endif !HAVE_DOXYGEN
-all-local: ldb_mod_test_dir
if BUILD_PYTHON_BINDINGS
- cd $(srcdir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config
+$(abs_builddir)/src/config/SSSDConfig/ipachangeconf.py:
+ -cp $(srcdir)/src/config/SSSDConfig/ipachangeconf.py $(builddir)/src/config/SSSDConfig/
+
+$(abs_builddir)/src/config/SSSDConfig/sssd_upgrade_config.py:
+ -cp $(srcdir)/src/config/SSSDConfig/sssd_upgrade_config.py $(builddir)/src/config/SSSDConfig/
+
+SSSDCONFIG_MODULES = \
+ $(abs_builddir)/src/config/SSSDConfig/ipachangeconf.py \
+ $(abs_builddir)/src/config/SSSDConfig/sssd_upgrade_config.py
+else
+SSSSCONFIG_MODULES =
+endif
+
+all-local: ldb_mod_test_dir $(SSSDCONFIG_MODULES)
+if BUILD_PYTHON_BINDINGS
+ cd $(builddir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config
endif
install-exec-hook: installsssddirs
if BUILD_PYTHON_BINDINGS
if [ "$(DESTDIR)" = "" ]; then \
- cd $(srcdir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config install $(DISTSETUPOPTS) --prefix=$(PYTHON_PREFIX) --record=$(abs_builddir)/src/config/.files; \
+ cd $(builddir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config install $(DISTSETUPOPTS) --prefix=$(PYTHON_PREFIX) --record=$(abs_builddir)/src/config/.files; \
else \
- cd $(srcdir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config install $(DISTSETUPOPTS) --prefix=$(PYTHON_PREFIX) --root=$(DESTDIR) --record=$(abs_builddir)/src/config/.files; \
+ cd $(builddir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config install $(DISTSETUPOPTS) --prefix=$(PYTHON_PREFIX) --root=$(DESTDIR) --record=$(abs_builddir)/src/config/.files; \
fi
endif
for doc in $(SSSD_DOCS); do \
@@ -1481,7 +1495,15 @@ uninstall-hook:
clean-local:
if BUILD_PYTHON_BINDINGS
- cd $(srcdir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config clean --all
+ if [ ! $(srcdir)/src/config/SSSDConfig/ipachangeconf.py -ef $(builddir)/src/config/SSSDConfig/ipachangeconf.py ]; then \
+ rm -f $(builddir)/src/config/SSSDConfig/ipachangeconf.py ; \
+ fi
+
+ if [ ! $(srcdir)/src/config/SSSDConfig/ipachangeconf.py -ef $(builddir)/src/config/SSSDConfig/ipachangeconf.py ]; then \
+ rm -f $(builddir)/src/config/SSSDConfig/sssd_upgrade_config.py ; \
+ fi
+
+ cd $(builddir)/src/config; $(PYTHON) setup.py build --build-base $(abs_builddir)/src/config clean --all
endif
for doc in $(SSSD_DOCS); do \
rm -Rf $$doc; \
diff --git a/configure.ac b/configure.ac
index 1ca53b523..d4647d8a0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -250,5 +250,7 @@ AC_CONFIG_FILES([Makefile contrib/sssd.spec src/examples/rwtab src/doxy.config
src/providers/ipa/ipa_hbac.pc src/providers/ipa/ipa_hbac.doxy
src/lib/idmap/sss_idmap.pc src/lib/idmap/sss_idmap.doxy
src/sss_client/sudo/libsss_sudo.pc
- src/sss_client/sudo/sss_sudo.doxy])
+ src/sss_client/sudo/sss_sudo.doxy
+ src/config/setup.py
+ src/config/SSSDConfig/__init__.py])
AC_OUTPUT
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 24da6c25a..ee532def2 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,6 +1,6 @@
# List of source files which contain translatable strings.
src/confdb/confdb_setup.c
-src/config/SSSDConfig/__init__.py
+src/config/SSSDConfig/__init__.py.in
src/monitor/monitor.c
src/providers/krb5/krb5_child.c
src/providers/ldap/ldap_child.c
diff --git a/src/config/SSSDConfig/__init__.py b/src/config/SSSDConfig/__init__.py.in
index 11da7cf2b..e594713b7 100644
--- a/src/config/SSSDConfig/__init__.py
+++ b/src/config/SSSDConfig/__init__.py.in
@@ -338,9 +338,9 @@ class SSSDConfigSchema(SSSDChangeConf):
SSSDChangeConf.__init__(self)
#TODO: get these from a global setting
if not schemafile:
- schemafile = '/usr/share/sssd/sssd.api.conf'
+ schemafile = '@datadir@/sssd/sssd.api.conf'
if not schemaplugindir:
- schemaplugindir = '/usr/share/sssd/sssd.api.d'
+ schemaplugindir = '@datadir@/sssd/sssd.api.d'
try:
#Read the primary config file
@@ -1242,10 +1242,10 @@ class SSSDConfig(SSSDChangeConf):
schemafile:
The path to the api schema config file. Usually
- /usr/share/sssd/sssd.api.conf
+ @datadir@/sssd/sssd.api.conf
schemaplugindir:
The path the directory containing the provider schema config files.
- Usually /usr/share/sssd/sssd.api.d
+ Usually @datadir@/sssd/sssd.api.d
=== Returns ===
The newly-created SSSDConfig object.
@@ -1271,7 +1271,7 @@ class SSSDConfig(SSSDChangeConf):
configfile:
The path to the SSSD config file. If not specified, use the system
- default, usually /etc/sssd/sssd.conf
+ default, usually @sysconfdir@/sssd.conf
=== Returns ===
No return value
@@ -1290,7 +1290,7 @@ class SSSDConfig(SSSDChangeConf):
if not configfile:
#TODO: get this from a global setting
- configfile = '/etc/sssd/sssd.conf'
+ configfile = '@sysconfdir@/sssd.conf'
# open will raise an IOError if it fails
fd = open(configfile, 'r')
diff --git a/src/config/setup.py b/src/config/setup.py.in
index d3617e13d..4d5f0e893 100644
--- a/src/config/setup.py
+++ b/src/config/setup.py.in
@@ -25,7 +25,7 @@ from distutils.core import setup
setup(
name='SSSDConfig',
- version='1',
+ version='@VERSION@',
license='GPLv3+',
url='http://fedorahosted.org/sssd',
packages=['SSSDConfig'],