summaryrefslogtreecommitdiffstats
path: root/service-type-database
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2006-08-06 11:54:31 +0000
committerLennart Poettering <lennart@poettering.net>2006-08-06 11:54:31 +0000
commitb7d566fc3ec60c0fbbca22af273bc67fdc1372fa (patch)
tree7e39f656c03db8daaee14bcd63e3722f2354ea45 /service-type-database
parentd66af491a574de4d5421c995bec5357fc1c04128 (diff)
Allow storing the service type database as Solaris DBM file, alternatively to gdbm. The latter is still recommended. (Patch from Padraig O'Briain)
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@1245 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'service-type-database')
-rw-r--r--service-type-database/Makefile.am19
-rwxr-xr-xservice-type-database/build-db.in4
2 files changed, 20 insertions, 3 deletions
diff --git a/service-type-database/Makefile.am b/service-type-database/Makefile.am
index 3250e94..1692a0b 100644
--- a/service-type-database/Makefile.am
+++ b/service-type-database/Makefile.am
@@ -28,7 +28,8 @@ noinst_SCRIPTS=build-db
pkgdata_DATA+=service-types.db
build-db: build-db.in
- sed -e 's,@PYTHON\@,$(PYTHON),g' $< > $@
+ sed -e 's,@PYTHON\@,$(PYTHON),g' \
+ -e 's,@DBM\@,gdbm,g' $< > $@
chmod +x $@
service-types.db: service-types build-db
@@ -37,4 +38,20 @@ service-types.db: service-types build-db
CLEANFILES = service-types.db build-db
endif
+if HAVE_DBM
+
+noinst_SCRIPTS=build-db
+pkgdata_DATA+=service-types.db.*
+
+build-db: build-db.in
+ sed -e 's,@PYTHON\@,$(PYTHON),g' \
+ -e 's,@DBM\@,dbm,g' $< > $@
+ chmod +x $@
+
+service-types.db: service-types build-db
+ $(PYTHON) build-db $(srcdir)/$< $@
+
+CLEANFILES = service-types.db* build-db
+
+endif
endif
diff --git a/service-type-database/build-db.in b/service-type-database/build-db.in
index 21d057d..44f6068 100755
--- a/service-type-database/build-db.in
+++ b/service-type-database/build-db.in
@@ -19,7 +19,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.
-import gdbm, sys
+import @DBM@, sys
if len(sys.argv) > 1:
infn = sys.argv[1]
@@ -31,7 +31,7 @@ if len(sys.argv) > 2:
else:
outfn = infn + ".db"
-db = gdbm.open(outfn, "n")
+db = @DBM@.open(outfn, "n")
for ln in file(infn, "r"):
ln = ln.strip(" \r\n\t")