From 92ba88942d4c38fc7e0eaf92307eab58b2a3f267 Mon Sep 17 00:00:00 2001 From: Jinkun Jang Date: Wed, 13 Mar 2013 01:46:53 +0900 Subject: [PATCH] Tizen 2.1 base --- ABOUT-NLS | 226 + AUTHORS | 1 + COPYING | 481 + ChangeLog | 6947 ++++++++ INSTALL | 182 + Makefile.am | 33 + Makefile.in | 724 + NEWS | 572 + README | 19 + TODO | 110 + acconfig.h | 10 + aclocal.m4 | 8231 +++++++++ autogen.sh | 165 + backends/Makefile.am | 71 + backends/Makefile.in | 749 + backends/README.evoldap | 195 + backends/evoldap-backend.c | 1030 ++ backends/evoldap.conf | 87 + backends/evoldap.schema | 83 + backends/gconf-merge-tree.c | 119 + backends/markup-backend.c | 957 + backends/markup-tree.c | 4633 +++++ backends/markup-tree.h | 83 + backends/xml-backend.c | 896 + backends/xml-cache.c | 560 + backends/xml-cache.h | 45 + backends/xml-dir.c | 1406 ++ backends/xml-dir.h | 91 + backends/xml-entry.c | 1304 ++ backends/xml-entry.h | 67 + backends/xml-test.c | 44 + config.guess | 1471 ++ config.h.in | 113 + config.sub | 1599 ++ configure | 26145 ++++++++++++++++++++++++++++ configure.in | 288 + dbus-tests/Makefile.am | 17 + dbus-tests/Makefile.in | 540 + dbus-tests/README | 3 + dbus-tests/test-leaks.c | 178 + dbus-tests/test-schema-bug.c | 85 + dbus-tests/test-stale-value-bug.c | 334 + debian/changelog | 105 + debian/compat | 1 + debian/control | 46 + debian/copyright | 26 + debian/dirs | 2 + debian/docs | 3 + debian/gconf-dbus-utils.install.in | 2 + debian/gconf-dbus-utils.postinst.in | 6 + debian/libgconf-dbus-dev.install.in | 9 + debian/libgconf-dbus.install.in | 5 + debian/libgconf-dbus.postinst.in | 11 + debian/patches/00list | 2 + debian/patches/01_removePopt.dpatch | 233 + debian/patches/02_poweroff.dpatch | 87 + debian/rules | 122 + depcomp | 479 + doc/FAQ.txt | 142 + doc/Makefile.am | 12 + doc/Makefile.in | 609 + doc/gconf-1.0.dtd | 45 + doc/gconf/Makefile.am | 50 + doc/gconf/Makefile.in | 596 + doc/gconf/gconf-docs.sgml | 24 + doc/gconf/gconf-overrides.txt | 0 doc/gconf/gconf-sections.txt | 357 + doc/gconf/gconf.types | 3 + doc/gconf/html/ch01.html | 74 + doc/gconf/html/gconf-GConfClient.html | 2473 +++ doc/gconf/html/gconf-gconf-backend.html | 619 + doc/gconf/html/gconf-gconf-changeset.html | 1018 ++ doc/gconf/html/gconf-gconf-engine.html | 363 + doc/gconf/html/gconf-gconf-error.html | 384 + doc/gconf/html/gconf-gconf-internals.html | 1031 ++ doc/gconf/html/gconf-gconf-listeners.html | 440 + doc/gconf/html/gconf-gconf-locale.html | 255 + doc/gconf/html/gconf-gconf-schema.html | 713 + doc/gconf/html/gconf-gconf-sources.html | 760 + doc/gconf/html/gconf-gconf-value.html | 1793 ++ doc/gconf/html/gconf-gconf.html | 2322 +++ doc/gconf/html/gconf.devhelp | 341 + doc/gconf/html/gconf.devhelp2 | 341 + doc/gconf/html/home.png | Bin 0 -> 654 bytes doc/gconf/html/index.html | 68 + doc/gconf/html/index.sgml | 338 + doc/gconf/html/left.png | Bin 0 -> 459 bytes doc/gconf/html/right.png | Bin 0 -> 472 bytes doc/gconf/html/style.css | 148 + doc/gconf/html/up.png | Bin 0 -> 406 bytes doc/gconf/tmpl/gconf-backend.sgml | 421 + doc/gconf/tmpl/gconf-changeset.sgml | 339 + doc/gconf/tmpl/gconf-client.sgml | 959 + doc/gconf/tmpl/gconf-engine.sgml | 137 + doc/gconf/tmpl/gconf-error.sgml | 148 + doc/gconf/tmpl/gconf-internals.sgml | 316 + doc/gconf/tmpl/gconf-listeners.sgml | 136 + doc/gconf/tmpl/gconf-locale.sgml | 92 + doc/gconf/tmpl/gconf-orbit.sgml | 73 + doc/gconf/tmpl/gconf-schema.sgml | 261 + doc/gconf/tmpl/gconf-sources.sgml | 219 + doc/gconf/tmpl/gconf-unused.sgml | 263 + doc/gconf/tmpl/gconf-value.sgml | 670 + doc/gconf/tmpl/gconf.sgml | 828 + doc/gconf/xml/gconf-backend.xml | 600 + doc/gconf/xml/gconf-changeset.xml | 680 + doc/gconf/xml/gconf-client.xml | 1721 ++ doc/gconf/xml/gconf-engine.xml | 246 + doc/gconf/xml/gconf-error.xml | 319 + doc/gconf/xml/gconf-internals.xml | 638 + doc/gconf/xml/gconf-listeners.xml | 294 + doc/gconf/xml/gconf-locale.xml | 173 + doc/gconf/xml/gconf-schema.xml | 456 + doc/gconf/xml/gconf-sources.xml | 499 + doc/gconf/xml/gconf-value.xml | 1174 ++ doc/gconf/xml/gconf.xml | 1549 ++ doc/gconftool-2.1 | 151 + examples/Makefile.am | 34 + examples/Makefile.in | 561 + examples/basic-gconf-app.c | 484 + examples/simple-controller.c | 82 + examples/simple-view.c | 98 + gconf-2.0.pc.in | 13 + gconf-2.m4.in | 39 + gconf-dbus.manifest | 5 + gconf-zip.in | 35 + gconf/Makefile.am | 167 + gconf/Makefile.in | 903 + gconf/default.path.in | 32 + gconf/dllmain.c | 167 + gconf/gconf-backend.c | 493 + gconf/gconf-backend.h | 184 + gconf/gconf-changeset.c | 719 + gconf/gconf-changeset.h | 142 + gconf/gconf-client.c | 2584 +++ gconf/gconf-client.h | 391 + gconf/gconf-database-dbus.c | 978 ++ gconf/gconf-database-dbus.h | 37 + gconf/gconf-database.c | 1985 +++ gconf/gconf-database.h | 166 + gconf/gconf-dbus-utils.c | 1130 ++ gconf/gconf-dbus-utils.h | 99 + gconf/gconf-dbus.c | 2454 +++ gconf/gconf-engine.h | 63 + gconf/gconf-enum-types.c | 110 + gconf/gconf-enum-types.h | 37 + gconf/gconf-error.c | 144 + gconf/gconf-error.h | 62 + gconf/gconf-internals.c | 3185 ++++ gconf/gconf-internals.h | 307 + gconf/gconf-listeners.c | 920 + gconf/gconf-listeners.h | 91 + gconf/gconf-locale.c | 402 + gconf/gconf-locale.h | 69 + gconf/gconf-sanity-check.c | 408 + gconf/gconf-schema.c | 350 + gconf/gconf-schema.h | 78 + gconf/gconf-sources.c | 1823 ++ gconf/gconf-sources.h | 153 + gconf/gconf-value.c | 1685 ++ gconf/gconf-value.h | 201 + gconf/gconf.c | 3634 ++++ gconf/gconf.h | 307 + gconf/gconf.service.in | 3 + gconf/gconfd-dbus.c | 396 + gconf/gconfd-dbus.h | 42 + gconf/gconfd.c | 2646 +++ gconf/gconfd.conf | 11 + gconf/gconfd.h | 66 + gconf/gconfmarshal.list | 2 + gconf/gconftool.c | 4054 +++++ gconf/regenerate-enum-footer.sh | 26 + gconf/regenerate-enum-header.sh | 25 + gtk-doc.make | 174 + install-sh | 294 + intltool-extract.in | 861 + intltool-merge.in | 1450 ++ intltool-update.in | 1164 ++ ltmain.sh | 6863 ++++++++ missing | 336 + mkinstalldirs | 111 + packaging/01_removePopt.dpatch | 233 + packaging/02_poweroff.dpatch | 87 + packaging/gconf-dbus.spec | 111 + po/ChangeLog | 3439 ++++ po/LINGUAS | 73 + po/Makefile.in.in | 218 + po/POTFILES.in | 29 + po/POTFILES.skip | 5 + po/am.po | 2381 +++ po/ar.po | 2493 +++ po/az.po | 2586 +++ po/be.po | 2990 ++++ po/bg.po | 2632 +++ po/bn.po | 2725 +++ po/bn_IN.po | 2675 +++ po/bs.po | 2566 +++ po/ca.po | 2688 +++ po/cs.po | 2544 +++ po/cy.po | 2605 +++ po/da.po | 2566 +++ po/de.po | 2748 +++ po/el.po | 2933 ++++ po/en_CA.po | 2531 +++ po/en_GB.po | 2376 +++ po/es.po | 2645 +++ po/et.po | 2457 +++ po/eu.po | 2649 +++ po/fa.po | 2521 +++ po/fi.po | 2610 +++ po/fr.po | 2696 +++ po/ga.po | 2379 +++ po/gl.po | 2578 +++ po/gu.po | 2500 +++ po/he.po | 2548 +++ po/hi.po | 2496 +++ po/hr.po | 2571 +++ po/hu.po | 2610 +++ po/id.po | 2604 +++ po/is.po | 2410 +++ po/it.po | 2686 +++ po/ja.po | 2589 +++ po/ka.po | 2824 +++ po/ko.po | 2566 +++ po/ku.po | 2380 +++ po/lt.po | 2601 +++ po/lv.po | 2584 +++ po/mg.po | 2374 +++ po/mk.po | 2577 +++ po/ml.po | 2512 +++ po/mn.po | 2561 +++ po/ms.po | 2433 +++ po/nb.po | 2572 +++ po/ne.po | 2491 +++ po/nl.po | 2396 +++ po/nn.po | 2586 +++ po/or.po | 2395 +++ po/pa.po | 2502 +++ po/pl.po | 2631 +++ po/pt.po | 2609 +++ po/pt_BR.po | 2378 +++ po/ro.po | 2610 +++ po/ru.po | 2639 +++ po/rw.po | 2550 +++ po/sk.po | 2561 +++ po/sl.po | 2377 +++ po/sq.po | 2607 +++ po/sr.po | 2596 +++ po/sr@Latn.po | 2596 +++ po/sv.po | 2401 +++ po/ta.po | 2524 +++ po/th.po | 2475 +++ po/tr.po | 2592 +++ po/uk.po | 2594 +++ po/vi.po | 2597 +++ po/xh.po | 2657 +++ po/yi.po | 2377 +++ po/zh_CN.po | 2454 +++ po/zh_HK.po | 2496 +++ po/zh_TW.po | 2496 +++ tests/Makefile.am | 60 + tests/Makefile.in | 647 + tests/testaddress.c | 191 + tests/testbackend.c | 1330 ++ tests/testchangeset.c | 319 + tests/testdirlist.c | 256 + tests/testencode.c | 182 + tests/testgconf.c | 991 ++ tests/testlisteners.c | 563 + tests/testpersistence.c | 935 + tests/testschemas.c | 820 + tests/testunique.c | 47 + 272 files changed, 329544 insertions(+) create mode 100644 ABOUT-NLS create mode 100644 AUTHORS create mode 100644 COPYING create mode 100644 ChangeLog create mode 100644 INSTALL create mode 100644 Makefile.am create mode 100644 Makefile.in create mode 100644 NEWS create mode 100644 README create mode 100644 TODO create mode 100644 acconfig.h create mode 100644 aclocal.m4 create mode 100755 autogen.sh create mode 100644 backends/Makefile.am create mode 100644 backends/Makefile.in create mode 100644 backends/README.evoldap create mode 100644 backends/evoldap-backend.c create mode 100644 backends/evoldap.conf create mode 100644 backends/evoldap.schema create mode 100644 backends/gconf-merge-tree.c create mode 100644 backends/markup-backend.c create mode 100644 backends/markup-tree.c create mode 100644 backends/markup-tree.h create mode 100644 backends/xml-backend.c create mode 100644 backends/xml-cache.c create mode 100644 backends/xml-cache.h create mode 100644 backends/xml-dir.c create mode 100644 backends/xml-dir.h create mode 100644 backends/xml-entry.c create mode 100644 backends/xml-entry.h create mode 100644 backends/xml-test.c create mode 100755 config.guess create mode 100644 config.h.in create mode 100755 config.sub create mode 100755 configure create mode 100644 configure.in create mode 100644 dbus-tests/Makefile.am create mode 100644 dbus-tests/Makefile.in create mode 100644 dbus-tests/README create mode 100644 dbus-tests/test-leaks.c create mode 100644 dbus-tests/test-schema-bug.c create mode 100644 dbus-tests/test-stale-value-bug.c create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/dirs create mode 100644 debian/docs create mode 100644 debian/gconf-dbus-utils.install.in create mode 100755 debian/gconf-dbus-utils.postinst.in create mode 100644 debian/libgconf-dbus-dev.install.in create mode 100644 debian/libgconf-dbus.install.in create mode 100755 debian/libgconf-dbus.postinst.in create mode 100755 debian/patches/00list create mode 100755 debian/patches/01_removePopt.dpatch create mode 100755 debian/patches/02_poweroff.dpatch create mode 100755 debian/rules create mode 100755 depcomp create mode 100644 doc/FAQ.txt create mode 100644 doc/Makefile.am create mode 100644 doc/Makefile.in create mode 100644 doc/gconf-1.0.dtd create mode 100644 doc/gconf/Makefile.am create mode 100644 doc/gconf/Makefile.in create mode 100644 doc/gconf/gconf-docs.sgml create mode 100644 doc/gconf/gconf-overrides.txt create mode 100644 doc/gconf/gconf-sections.txt create mode 100644 doc/gconf/gconf.types create mode 100644 doc/gconf/html/ch01.html create mode 100644 doc/gconf/html/gconf-GConfClient.html create mode 100644 doc/gconf/html/gconf-gconf-backend.html create mode 100644 doc/gconf/html/gconf-gconf-changeset.html create mode 100644 doc/gconf/html/gconf-gconf-engine.html create mode 100644 doc/gconf/html/gconf-gconf-error.html create mode 100644 doc/gconf/html/gconf-gconf-internals.html create mode 100644 doc/gconf/html/gconf-gconf-listeners.html create mode 100644 doc/gconf/html/gconf-gconf-locale.html create mode 100644 doc/gconf/html/gconf-gconf-schema.html create mode 100644 doc/gconf/html/gconf-gconf-sources.html create mode 100644 doc/gconf/html/gconf-gconf-value.html create mode 100644 doc/gconf/html/gconf-gconf.html create mode 100644 doc/gconf/html/gconf.devhelp create mode 100644 doc/gconf/html/gconf.devhelp2 create mode 100644 doc/gconf/html/home.png create mode 100644 doc/gconf/html/index.html create mode 100644 doc/gconf/html/index.sgml create mode 100644 doc/gconf/html/left.png create mode 100644 doc/gconf/html/right.png create mode 100644 doc/gconf/html/style.css create mode 100644 doc/gconf/html/up.png create mode 100644 doc/gconf/tmpl/gconf-backend.sgml create mode 100644 doc/gconf/tmpl/gconf-changeset.sgml create mode 100644 doc/gconf/tmpl/gconf-client.sgml create mode 100644 doc/gconf/tmpl/gconf-engine.sgml create mode 100644 doc/gconf/tmpl/gconf-error.sgml create mode 100644 doc/gconf/tmpl/gconf-internals.sgml create mode 100644 doc/gconf/tmpl/gconf-listeners.sgml create mode 100644 doc/gconf/tmpl/gconf-locale.sgml create mode 100644 doc/gconf/tmpl/gconf-orbit.sgml create mode 100644 doc/gconf/tmpl/gconf-schema.sgml create mode 100644 doc/gconf/tmpl/gconf-sources.sgml create mode 100644 doc/gconf/tmpl/gconf-unused.sgml create mode 100644 doc/gconf/tmpl/gconf-value.sgml create mode 100644 doc/gconf/tmpl/gconf.sgml create mode 100644 doc/gconf/xml/gconf-backend.xml create mode 100644 doc/gconf/xml/gconf-changeset.xml create mode 100644 doc/gconf/xml/gconf-client.xml create mode 100644 doc/gconf/xml/gconf-engine.xml create mode 100644 doc/gconf/xml/gconf-error.xml create mode 100644 doc/gconf/xml/gconf-internals.xml create mode 100644 doc/gconf/xml/gconf-listeners.xml create mode 100644 doc/gconf/xml/gconf-locale.xml create mode 100644 doc/gconf/xml/gconf-schema.xml create mode 100644 doc/gconf/xml/gconf-sources.xml create mode 100644 doc/gconf/xml/gconf-value.xml create mode 100644 doc/gconf/xml/gconf.xml create mode 100644 doc/gconftool-2.1 create mode 100644 examples/Makefile.am create mode 100644 examples/Makefile.in create mode 100644 examples/basic-gconf-app.c create mode 100644 examples/simple-controller.c create mode 100644 examples/simple-view.c create mode 100644 gconf-2.0.pc.in create mode 100644 gconf-2.m4.in create mode 100644 gconf-dbus.manifest create mode 100755 gconf-zip.in create mode 100644 gconf/Makefile.am create mode 100644 gconf/Makefile.in create mode 100644 gconf/default.path.in create mode 100644 gconf/dllmain.c create mode 100644 gconf/gconf-backend.c create mode 100644 gconf/gconf-backend.h create mode 100644 gconf/gconf-changeset.c create mode 100644 gconf/gconf-changeset.h create mode 100644 gconf/gconf-client.c create mode 100644 gconf/gconf-client.h create mode 100644 gconf/gconf-database-dbus.c create mode 100644 gconf/gconf-database-dbus.h create mode 100644 gconf/gconf-database.c create mode 100644 gconf/gconf-database.h create mode 100644 gconf/gconf-dbus-utils.c create mode 100644 gconf/gconf-dbus-utils.h create mode 100644 gconf/gconf-dbus.c create mode 100644 gconf/gconf-engine.h create mode 100644 gconf/gconf-enum-types.c create mode 100644 gconf/gconf-enum-types.h create mode 100644 gconf/gconf-error.c create mode 100644 gconf/gconf-error.h create mode 100644 gconf/gconf-internals.c create mode 100644 gconf/gconf-internals.h create mode 100644 gconf/gconf-listeners.c create mode 100644 gconf/gconf-listeners.h create mode 100644 gconf/gconf-locale.c create mode 100644 gconf/gconf-locale.h create mode 100644 gconf/gconf-sanity-check.c create mode 100644 gconf/gconf-schema.c create mode 100644 gconf/gconf-schema.h create mode 100644 gconf/gconf-sources.c create mode 100644 gconf/gconf-sources.h create mode 100644 gconf/gconf-value.c create mode 100644 gconf/gconf-value.h create mode 100644 gconf/gconf.c create mode 100644 gconf/gconf.h create mode 100644 gconf/gconf.service.in create mode 100644 gconf/gconfd-dbus.c create mode 100644 gconf/gconfd-dbus.h create mode 100644 gconf/gconfd.c create mode 100644 gconf/gconfd.conf create mode 100644 gconf/gconfd.h create mode 100644 gconf/gconfmarshal.list create mode 100644 gconf/gconftool.c create mode 100755 gconf/regenerate-enum-footer.sh create mode 100755 gconf/regenerate-enum-header.sh create mode 100644 gtk-doc.make create mode 100755 install-sh create mode 100644 intltool-extract.in create mode 100644 intltool-merge.in create mode 100644 intltool-update.in create mode 100644 ltmain.sh create mode 100755 missing create mode 100755 mkinstalldirs create mode 100644 packaging/01_removePopt.dpatch create mode 100644 packaging/02_poweroff.dpatch create mode 100644 packaging/gconf-dbus.spec create mode 100644 po/ChangeLog create mode 100644 po/LINGUAS create mode 100644 po/Makefile.in.in create mode 100644 po/POTFILES.in create mode 100644 po/POTFILES.skip create mode 100644 po/am.po create mode 100644 po/ar.po create mode 100644 po/az.po create mode 100644 po/be.po create mode 100644 po/bg.po create mode 100644 po/bn.po create mode 100644 po/bn_IN.po create mode 100644 po/bs.po create mode 100644 po/ca.po create mode 100644 po/cs.po create mode 100644 po/cy.po create mode 100644 po/da.po create mode 100644 po/de.po create mode 100644 po/el.po create mode 100644 po/en_CA.po create mode 100644 po/en_GB.po create mode 100644 po/es.po create mode 100644 po/et.po create mode 100644 po/eu.po create mode 100644 po/fa.po create mode 100644 po/fi.po create mode 100644 po/fr.po create mode 100644 po/ga.po create mode 100644 po/gl.po create mode 100644 po/gu.po create mode 100644 po/he.po create mode 100644 po/hi.po create mode 100644 po/hr.po create mode 100644 po/hu.po create mode 100644 po/id.po create mode 100644 po/is.po create mode 100644 po/it.po create mode 100644 po/ja.po create mode 100644 po/ka.po create mode 100644 po/ko.po create mode 100644 po/ku.po create mode 100644 po/lt.po create mode 100644 po/lv.po create mode 100644 po/mg.po create mode 100644 po/mk.po create mode 100644 po/ml.po create mode 100644 po/mn.po create mode 100644 po/ms.po create mode 100644 po/nb.po create mode 100644 po/ne.po create mode 100644 po/nl.po create mode 100644 po/nn.po create mode 100644 po/or.po create mode 100644 po/pa.po create mode 100644 po/pl.po create mode 100644 po/pt.po create mode 100644 po/pt_BR.po create mode 100644 po/ro.po create mode 100644 po/ru.po create mode 100644 po/rw.po create mode 100644 po/sk.po create mode 100644 po/sl.po create mode 100644 po/sq.po create mode 100644 po/sr.po create mode 100644 po/sr@Latn.po create mode 100644 po/sv.po create mode 100644 po/ta.po create mode 100644 po/th.po create mode 100644 po/tr.po create mode 100644 po/uk.po create mode 100644 po/vi.po create mode 100644 po/xh.po create mode 100644 po/yi.po create mode 100644 po/zh_CN.po create mode 100644 po/zh_HK.po create mode 100644 po/zh_TW.po create mode 100644 tests/Makefile.am create mode 100644 tests/Makefile.in create mode 100644 tests/testaddress.c create mode 100644 tests/testbackend.c create mode 100644 tests/testchangeset.c create mode 100644 tests/testdirlist.c create mode 100644 tests/testencode.c create mode 100644 tests/testgconf.c create mode 100644 tests/testlisteners.c create mode 100644 tests/testpersistence.c create mode 100644 tests/testschemas.c create mode 100644 tests/testunique.c diff --git a/ABOUT-NLS b/ABOUT-NLS new file mode 100644 index 0000000..28d38c7 --- /dev/null +++ b/ABOUT-NLS @@ -0,0 +1,226 @@ +Notes on the Free Translation Project +************************************* + + Free software is going international! The Free Translation Project +is a way to get maintainers of free software, translators, and users all +together, so that will gradually become able to speak many languages. +A few packages already provide translations for their messages. + + If you found this `ABOUT-NLS' file inside a distribution, you may +assume that the distributed package does use GNU `gettext' internally, +itself available at your nearest GNU archive site. But you do *not* +need to install GNU `gettext' prior to configuring, installing or using +this package with messages translated. + + Installers will find here some useful hints. These notes also +explain how users should proceed for getting the programs to use the +available translations. They tell how people wanting to contribute and +work at translations should contact the appropriate team. + + When reporting bugs in the `intl/' directory or bugs which may be +related to internationalization, you should tell about the version of +`gettext' which is used. The information can be found in the +`intl/VERSION' file, in internationalized packages. + +One advise in advance +===================== + + If you want to exploit the full power of internationalization, you +should configure it using + + ./configure --with-included-gettext + +to force usage of internationalizing routines provided within this +package, despite the existence of internationalizing capabilities in the +operating system where this package is being installed. So far, only +the `gettext' implementation in the GNU C library version 2 provides as +many features (such as locale alias or message inheritance) as the +implementation here. It is also not possible to offer this additional +functionality on top of a `catgets' implementation. Future versions of +GNU `gettext' will very likely convey even more functionality. So it +might be a good idea to change to GNU `gettext' as soon as possible. + + So you need not provide this option if you are using GNU libc 2 or +you have installed a recent copy of the GNU gettext package with the +included `libintl'. + +INSTALL Matters +=============== + + Some packages are "localizable" when properly installed; the +programs they contain can be made to speak your own native language. +Most such packages use GNU `gettext'. Other packages have their own +ways to internationalization, predating GNU `gettext'. + + By default, this package will be installed to allow translation of +messages. It will automatically detect whether the system provides +usable `catgets' (if using this is selected by the installer) or +`gettext' functions. If neither is available, the GNU `gettext' own +library will be used. This library is wholly contained within this +package, usually in the `intl/' subdirectory, so prior installation of +the GNU `gettext' package is *not* required. Installers may use +special options at configuration time for changing the default +behaviour. The commands: + + ./configure --with-included-gettext + ./configure --with-catgets + ./configure --disable-nls + +will respectively bypass any pre-existing `catgets' or `gettext' to use +the internationalizing routines provided within this package, enable +the use of the `catgets' functions (if found on the locale system), or +else, *totally* disable translation of messages. + + When you already have GNU `gettext' installed on your system and run +configure without an option for your new package, `configure' will +probably detect the previously built and installed `libintl.a' file and +will decide to use this. This might be not what is desirable. You +should use the more recent version of the GNU `gettext' library. I.e. +if the file `intl/VERSION' shows that the library which comes with this +package is more recent, you should use + + ./configure --with-included-gettext + +to prevent auto-detection. + + By default the configuration process will not test for the `catgets' +function and therefore they will not be used. The reasons are already +given above: the emulation on top of `catgets' cannot provide all the +extensions provided by the GNU `gettext' library. If you nevertheless +want to use the `catgets' functions use + + ./configure --with-catgets + +to enable the test for `catgets' (this causes no harm if `catgets' is +not available on your system). If you really select this option we +would like to hear about the reasons because we cannot think of any +good one ourself. + + Internationalized packages have usually many `po/LL.po' files, where +LL gives an ISO 639 two-letter code identifying the language. Unless +translations have been forbidden at `configure' time by using the +`--disable-nls' switch, all available translations are installed +together with the package. However, the environment variable `LINGUAS' +may be set, prior to configuration, to limit the installed set. +`LINGUAS' should then contain a space separated list of two-letter +codes, stating which languages are allowed. + +Using This Package +================== + + As a user, if your language has been installed for this package, you +only have to set the `LANG' environment variable to the appropriate +ISO 639 `LL' two-letter code prior to using the programs in the +package. For example, let's suppose that you speak German. At the +shell prompt, merely execute `setenv LANG de' (in `csh'), +`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash'). This +can be done from your `.login' or `.profile' file, once and for all. + + An operating system might already offer message localization for +many of its programs, while other programs have been installed locally +with the full capabilities of GNU `gettext'. Just using `gettext' +extended syntax for `LANG' would break proper localization of already +available operating system programs. In this case, users should set +both `LANGUAGE' and `LANG' variables in their environment, as programs +using GNU `gettext' give preference to `LANGUAGE'. For example, some +Swedish users would rather read translations in German than English for +when Swedish is not available. This is easily accomplished by setting +`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'. + +Translating Teams +================= + + For the Free Translation Project to be a success, we need interested +people who like their own language and write it well, and who are also +able to synergize with other translators speaking the same language. +Each translation team has its own mailing list, courtesy of Linux +International. You may reach your translation team at the address +`LL@li.org', replacing LL by the two-letter ISO 639 code for your +language. Language codes are *not* the same as the country codes given +in ISO 3166. The following translation teams exist, as of December +1997: + + Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en', + Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian + `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja', + Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish + `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es', + Swedish `sv', and Turkish `tr'. + +For example, you may reach the Chinese translation team by writing to +`zh@li.org'. + + If you'd like to volunteer to *work* at translating messages, you +should become a member of the translating team for your own language. +The subscribing address is *not* the same as the list itself, it has +`-request' appended. For example, speakers of Swedish can send a +message to `sv-request@li.org', having this message body: + + subscribe + + Keep in mind that team members are expected to participate +*actively* in translations, or at solving translational difficulties, +rather than merely lurking around. If your team does not exist yet and +you want to start one, or if you are unsure about what to do or how to +get started, please write to `translation@iro.umontreal.ca' to reach the +coordinator for all translator teams. + + The English team is special. It works at improving and uniformizing +the terminology in use. Proven linguistic skill are praised more than +programming skill, here. + +Available Packages +================== + + Languages are not equally supported in all packages. The following +matrix shows the current state of internationalization, as of December +1997. The matrix shows, in regard of each package, for which languages +PO files have been submitted to translation coordination. + + Ready PO files cs da de en es fi fr it ja ko nl no pl pt ru sl sv + .----------------------------------------------------. + bash | [] [] [] | 3 + bison | [] [] [] | 3 + clisp | [] [] [] [] | 4 + cpio | [] [] [] [] [] [] | 6 + diffutils | [] [] [] [] [] | 5 + enscript | [] [] [] [] [] [] | 6 + fileutils | [] [] [] [] [] [] [] [] [] [] | 10 + findutils | [] [] [] [] [] [] [] [] [] | 9 + flex | [] [] [] [] | 4 + gcal | [] [] [] [] [] | 5 + gettext | [] [] [] [] [] [] [] [] [] [] [] | 12 + grep | [] [] [] [] [] [] [] [] [] [] | 10 + hello | [] [] [] [] [] [] [] [] [] [] [] | 11 + id-utils | [] [] [] | 3 + indent | [] [] [] [] [] | 5 + libc | [] [] [] [] [] [] [] | 7 + m4 | [] [] [] [] [] [] | 6 + make | [] [] [] [] [] [] | 6 + music | [] [] | 2 + ptx | [] [] [] [] [] [] [] [] | 8 + recode | [] [] [] [] [] [] [] [] [] | 9 + sh-utils | [] [] [] [] [] [] [] [] | 8 + sharutils | [] [] [] [] [] [] | 6 + tar | [] [] [] [] [] [] [] [] [] [] [] | 11 + texinfo | [] [] [] | 3 + textutils | [] [] [] [] [] [] [] [] [] | 9 + wdiff | [] [] [] [] [] [] [] [] | 8 + `----------------------------------------------------' + 17 languages cs da de en es fi fr it ja ko nl no pl pt ru sl sv + 27 packages 6 4 25 1 18 1 26 2 1 12 20 9 19 7 4 7 17 179 + + Some counters in the preceding matrix are higher than the number of +visible blocks let us expect. This is because a few extra PO files are +used for implementing regional variants of languages, or language +dialects. + + For a PO file in the matrix above to be effective, the package to +which it applies should also have been internationalized and +distributed as such by its maintainer. There might be an observable +lag between the mere existence a PO file and its wide availability in a +distribution. + + If December 1997 seems to be old, you may fetch a more recent copy +of this `ABOUT-NLS' file on most GNU archive sites. + diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..3bc119c --- /dev/null +++ b/AUTHORS @@ -0,0 +1 @@ +Havoc Pennington \ No newline at end of file diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..eb685a5 --- /dev/null +++ b/COPYING @@ -0,0 +1,481 @@ + GNU LIBRARY GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1991 Free Software Foundation, Inc. + 675 Mass Ave, Cambridge, MA 02139, USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the library GPL. It is + numbered 2 because it goes with version 2 of the ordinary GPL.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Library General Public License, applies to some +specially designated Free Software Foundation software, and to any +other libraries whose authors decide to use it. You can use it for +your libraries, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if +you distribute copies of the library, or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link a program with the library, you must provide +complete object files to the recipients so that they can relink them +with the library, after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + Our method of protecting your rights has two steps: (1) copyright +the library, and (2) offer you this license which gives you legal +permission to copy, distribute and/or modify the library. + + Also, for each distributor's protection, we want to make certain +that everyone understands that there is no warranty for this free +library. If the library is modified by someone else and passed on, we +want its recipients to know that what they have is not the original +version, so that any problems introduced by others will not reflect on +the original authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that companies distributing free +software will individually obtain patent licenses, thus in effect +transforming the program into proprietary software. To prevent this, +we have made it clear that any patent must be licensed for everyone's +free use or not licensed at all. + + Most GNU software, including some libraries, is covered by the ordinary +GNU General Public License, which was designed for utility programs. This +license, the GNU Library General Public License, applies to certain +designated libraries. This license is quite different from the ordinary +one; be sure to read it in full, and don't assume that anything in it is +the same as in the ordinary license. + + The reason we have a separate public license for some libraries is that +they blur the distinction we usually make between modifying or adding to a +program and simply using it. Linking a program with a library, without +changing the library, is in some sense simply using the library, and is +analogous to running a utility program or application program. However, in +a textual and legal sense, the linked executable is a combined work, a +derivative of the original library, and the ordinary General Public License +treats it as such. + + Because of this blurred distinction, using the ordinary General +Public License for libraries did not effectively promote software +sharing, because most developers did not use the libraries. We +concluded that weaker conditions might promote sharing better. + + However, unrestricted linking of non-free programs would deprive the +users of those programs of all benefit from the free status of the +libraries themselves. This Library General Public License is intended to +permit developers of non-free programs to use free libraries, while +preserving your freedom as a user of such programs to change the free +libraries that are incorporated in them. (We have not seen how to achieve +this as regards changes in header files, but we have achieved it as regards +changes in the actual functions of the Library.) The hope is that this +will lead to faster development of free libraries. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, while the latter only +works together with the library. + + Note that it is possible for a library to be covered by the ordinary +General Public License rather than by this special one. + + GNU LIBRARY GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library which +contains a notice placed by the copyright holder or other authorized +party saying it may be distributed under the terms of this Library +General Public License (also called "this License"). Each licensee is +addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also compile or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + c) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + d) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the source code distributed need not include anything that is normally +distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Library General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + Appendix: How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the Free + Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..0e397e5 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,6947 @@ +2008-09-11 Richard Hult + + * Release 2.16.0 of the dbus version. + +2008-09-11 Richard Hult + + * gconf/Makefile.am (DISTCLEANFILES): Add generated dbus service + file. + +2008-05-15 Richard Hult + + * gconf/gconf-database-dbus.c (gconf_database_notify_listeners): + Get rid of critical warning (and crash when built with + --disable-debug), when unsetting a key that has no writable + sources. + +2008-05-09 Richard Hult + + * gconf/gconf-client.c: (gconf_client_flush_notifies): If the key + is not in the cache, check if it's being monitored. Fixes issue + where notifications were sent out for the first change after + unsetting a key (for example). + +2008-03-31 Richard Hult + + * gconf/gconf-database.c (gconf_database_notify_listeners): Get + rid of critical warning (and crash when built with + --disable-debug), when unsetting a key that has no writable + sources. + +2008-03-05 Richard Hult + + * gconf/gconf-client.c (remove_key_from_cache_recursively_foreach): + Fix crash, not sure why a null entry can be in the cache though so + this is more of a workaround. + +2008-02-07 Richard Hult + + * backends/Makefile.am: Patch from Ross Burton to fix build with + --as-needed. + +2008-01-28 Richard Hult + + * gconf/gconf-dbus.c: Patch from Ross Burton to use right the + match rule, fixes problems when using D-Bus 1.1.x. + +2007-12-11 Richard Hult + + * gconf/gconf-dbus.c: (ensure_dbus_connection), + (gconf_dbus_message_filter): Warn instead of exit when we get + disconnected from the bus. + +2007-11-10 Richard Hult + + * gconf/gconf-dbus.c: (gconf_handle_dbus_exception), + (gconf_engine_all_entries), (gconf_engine_all_dirs), + (gconf_engine_suggest_sync), (gconf_engine_dir_exists): Plug + leaks (also do some s/bool/pointer/ in g_return_val_if_fail + macros). + +2007-06-27 Richard Hult + + * gconf/gconf-database-dbus.c: (database_message_func), + (database_handle_suggest_sync): + * gconf/gconf-dbus.c: (gconf_engine_suggest_sync): Implement + suggest_sync. + +2007-06-27 Richard Hult + + * backends/Makefile.am: Patch from Ronald Bultje to fix + portability. + +2007-06-27 Richard Hult + + * gconf/gconf-database-dbus.c (database_handle_set_schema): Empty + schema name means unset. + +2007-05-24 Richard Hult + + * gconf/gconf-database-dbus.c: (database_handle_get_all_dirs): + * gconf/gconf-dbus.c: (gconf_engine_all_dirs): Use an array for + directories as well, to avoid hitting the max size for message + headers if there are many dirs (hundreds at the same level). + +2007-05-22 Richard Hult + + * dbus-tests/test-getting-and-setting.sh: + * dbus-tests/test-schema-bug.c: (main): + * dbus-tests/test-schemas.schemas: Use different keys for the + different tests so they don't interfere with each other. + + * gconf/gconf-database-dbus.c: + (database_handle_name_owner_changed), + (gconf_database_dbus_teardown): Remove obsolete comments. + (gconf_database_dbus_notify_listeners): Notify other listeners. + + * gconf/gconf-dbus.c: (gconf_engine_is_local): + * gconf/gconfd-dbus.c: (gconfd_dbus_get_connection): Remove + obsolete comments. + +2007-05-21 Richard Hult + + * gconf/gconf-dbus-utils.c: (utils_append_value_helper_pair), + (utils_append_value), (utils_append_entry_values), + (utils_get_value_helper_fundamental), + (utils_get_value_helper_pair): Handle empty pairs. + +2007-05-15 Richard Hult + + * dbus-tests/test-stale-value-bug.c: Improve the test. + + * gconf/gconf-client.c (remove_key_from_cache_recursively_foreach) + (remove_key_from_cache_foreach): Fix the checks for keys to + remove. + +2007-01-19 Richard Hult + + * gconf/gconftool.c: (main): Back out the "killall" change and put + in a patch instead. + +2007-01-17 Richard Hult + + * dbus-tests/run-all.sh: Add test that can be used to hammer the + library and daemon. + + * gconf/gconf-database-dbus.c: (database_handle_lookup_ext): Fix + small leak. + + * gconf/gconf-database.c: (source_notify_cb), + (gconf_database_unset), (gconf_database_recursive_unset): Plug + small leaks. + + * gconf/gconf-value.c: Fix leaks (bug filed upstream). + + * gconf/gconfd.c: (main), (gconf_main): Make Ctrl-C work, no need + to ignore that signal. Also ignore the cleanup timeout also when + quitting on maemo. + +2007-01-17 Richard Hult + + * gconf/gconf-database.c (gconf_database_unset): Fix a leaked + GConfValue when unsetting a value. + + * dbus-tests/test-schema-bug.c: Add new test for testing another + schema usage. + + * gconf/gconftool.c (main): Send TERM instead of HUP since the + maemo version doesn't have the 30 second timeout to check for the + reload flag. + + * gconf/gconfd.c (main): Setup up signal handler for the right + signals in dbus mode (don't try to catch the "error" ones as it + doesn't make sense, just catch TERM, HUP, USR1). + +2007-01-17 Richard Hult + + NOTE: This change is just inserted here so that it's not missed + when listing changes against upstream. + + Back out this, since it's wrong. I've commented in bugzilla upstream. + + * gconf/gconf-client.c: Fix error handling in the + getters. (#102050, #360224) + +2007-01-17 Richard Hult + + * dbus-tests/test-stale-value-bug.c: Test more and also make the + float tests work (use double and check with a delta). + (change_timeout_func): Fix leak so we can use this to check for + leaks in the client library. + +2007-01-11 Richard Hult + + * gconf/gconfd.c (gconf_main): Disable the 30 second cleanup + timeout, and rely on gconftool killing the daemon instaead: + + * gconf/gconftool.c (main): Kill the daemon after installing / + uninstalling schemas. + +2007-01-10 Richard Hult + + * dbus-tests/test-stale-value-bug.c: Expand test. + + * gconf/gconf-client.c: (remove_key_from_cache_foreach), + (remove_key_from_cache_recursively_foreach), + (remove_key_from_cache), (remove_key_from_cache_recursively): Add + function to clear the cache. + (gconf_client_set), (gconf_client_unset), + (gconf_client_recursive_unset), + (gconf_client_set_float), (gconf_client_set_int), + (gconf_client_set_string), (gconf_client_set_bool), + (gconf_client_set_schema), (gconf_client_set_list), + (gconf_client_set_pair): Clear the cache when changing something + successfully, this works around the problem caused by the dbus + version not getting notified until after the next mainloop + iteration. + +2007-01-09 Richard Hult + + * dbus-tests/test-stale-value-bug.c: Add more tests here for + various types and set/unset operations. + +2006-12-07 Richard Hult + + * gconf/gconfd.c: Disable the signal handlers except SIGUSR1, + since we don't need to keep any state in the daemon for the D-Bus + version. + - Change the CORBA defines to be consistent. + + * dbus-tests: Add some tests made specifically for this version. + +2006-12-07 Richard Hult + + * Start maemo specific changes. + +=========================================================== + +2006-10-07 Matthias Clasen + + * gconf/gconf-client.c: Fix error handling in the + getters. (#102050, #360224) + +============================= 2.16.0 ====================== + +2006-08-15 Kjartan Maraas + + * configure.in: Fix intltool req. + +2006-08-08 Kjartan Maraas + + * doc/gconftool-2.1: Add missing newline (Loïc Minier, + Jan Kratochvil) Closes bug #304143. + +2006-08-07 Alexander Larsson + + * configure.in: + Don't link to libpopt. (#336307) + Patch from William Jon McCann. + +2006-06-14 Michael Meeks + + * gconf/GConfX.idl: declare that we raise the + exception we raise - fixes debug issue in sabayon & + kills syslog spew: + gconfd (sabayon-admin): Some clown returned + undeclared exception 'IDL:ConfigException:1.0' + cf. gconfd_get_database. + +2006-05-12 Julio M. Merino Vidal + + * configure.in: + * gconf/Makefile.am: + * gconf/default.path.in: Generate the default.path file during the + build instead of doing it from configure.ac so that we get the correct + expanded value for sysgconfdir. According to Autoconf documentation + this is the canonical way to access *dir variables. Addresses + problems introduced by #336019. + +2006-05-07 Kjartan Maraas + + * Makefile.am: Add intltool files to EXTRA_DIST and + DISTCLEANFILES. + * autogen.sh: Run intltoolize. + * configure.in: Fix the po/LINGUAS stuff. + +2006-05-06 Kjartan Maraas + + * backends/xml-dir.c: (dir_sync): Fix a potential use after free + reported by the coverity checker - #1239. Closes bug #338196. + +2006-05-05 Kjartan Maraas + + * configure.in: + * gconf/Makefile.am: + * gconf/gconf-sanity-check.c: (main): + * gconf/gconftool.c: (main): + Migrate to GOption. Patch by Vincent Vuntz. Closes + bug #336307. + +2006-05-05 Kjartan Maraas + + * configure.in: Reinstate the previous patch. + * po/LINGUAS: Same. + +2006-05-05 Kjartan Maraas + + * configure.in: Revert the LINGUAS patch until we have branched. + * po/LINGUAS: Remove temporarily. + +2006-05-05 Kjartan Maraas + + * gconf/gconf-internals.c: (read_current_server): Fix a + NULL pointer deref reported by Coverity. Patch from Pascal + Terjan. Closes bug #338617. + +2006-05-05 Kjartan Maraas + + * configure.in: Move to the new LINGUAS handling. + * po/LINGUAS: Patch from Luis Menina. Closes bug #338036. + +2006-05-05 Julio M. Merino Vidal + + * configure.in: Fix staged installation if sysconfdir is overriden + from the command line. Closes bug #336019. + +2006-05-05 Kjartan Maraas + + * doc/gconf/gconf-sections.txt: Add GConfSchema functions. + * doc/gconf/tmpl/gconf-schema.sgml: Add docs for GConfSchema. + Patch from . Closes bug #147758. + +2006-05-05 Kjartan Maraas + + * gconf/gconf-changeset.h: + * gconf/gconf-client.h: + * gconf/gconf-database.h: + * gconf/gconf-engine.h: + * gconf/gconf-error.h: + * gconf/gconf-listeners.h: + * gconf/gconf-locale.h: + * gconf/gconf-schema.h: + * gconf/gconf-value.h: + * gconf/gconf.h: + * gconf/gconfd.h: Use G_BEGIN/END_DECLS instead + of a lot of #ifdef __cplusplus stuff. Closes bug 306313. + Patch from Fabrício Barros Cebral. + +2006-05-05 Kjartan Maraas + + * backends/markup-tree.c: (parse_value_element): + Use the right variable in test. Closes coverity #1238 + and GNOME bug #338195. + +2006-04-17 Kjartan Maraas + + * configure.in: Remove obsolete entry for no_NO. + * po/no.po: And the translation. + +2006-03-18 Guilherme de S. Pastore + + * NEWS: updated. + + * configure.in: version 2.14.0. + +2006-03-10 Kjartan Maraas + + * backends/markup-tree.c: (parse_tree): Patch from + Matthias Clasen to fix my leak fix to not crash. + Closes bug #334047. + +2006-03-06 Kjartan Maraas + + * backends/markup-tree.c: (parse_tree): Free the parse context in + some more cases. Fixes bug #332528. + +2006-03-06 Mark McLoughlin + + Based on patch from Josselin Mouette + in bug #333353 to speed up the install of multiple + schem files + + * gconf/gconftool.c: + (do_load_file): split do_sync() out of here + (main), (do_makefile_install): call do_sync() + after calling do_load_file() + +2006-03-06 Mark McLoughlin + + Patch from Christopher.Hanna@sun.com + + * doc/gconftool-2.1: improved man page + +2006-02-17 Benoît Dejean + + * configure.in: + * gconf/gconf-value.c: (gconf_value_new), (gconf_value_free), + (gconf_entry_new_nocopy), (gconf_entry_unref): Use new g_slice API. + +2006-01-28 Benoît Dejean + + * gconf/gconf-schema.c: + * gconf/gconf-value.c: Got rid of padding members in private structs. + +2006-01-27 Tor Lillqvist + + * gconf-zip.in: Include backend DLLs only in the runtime zipfile. + + * gconf/gconfd.c (main): Don't call closelog() unless we HAVE_SYSLOG_H. + +2006-01-15 Mark McLoughlin + + * configure.in: post-release bump to 2.13.6. + +==================== 2.13.5 ==================== + +2006-01-15 Mark McLoughlin + + * configure.in: Version 2.13.5. + +2006-01-10 Thomas Vander Stichele + + * backends/Makefile.am: + don't use top_builddir to link in library from current directory; + fixes parallel make + +2006-01-05 Vincent Untz + + * gconf/gconf-client.c: (clear_dir_cache_foreach): new, clears a cache + entry if it matches the directory + (gconf_client_real_remove_dir): remove from cache all entries that are + in this directory + Fix bug #127285. + +2006-01-05 Tor Lillqvist + + * gconf-zip.in: Include the backend DLLs in the runtime zipfile. + +2006-01-03 Mark McLoughlin + + Switch on "subtree merging" by default in the defaults + database. + + * gconf/gconftool.c: (do_get_default_source): add the + "merged" flag to the default target for + --makefile-install-rule + + * backends/markup-backend.c: + (resolve_address), (ms_new): add a new "merged" flag + signalling that the entire tree should be saved as + a subtree. + + * backends/markup-tree.[ch]: + (markup_tree_get): add "merged" param and set flag + on MarkupTree struct + (recursively_load_subtree): copy function from + gconf-merge-tree.c + (markup_dir_sync): when saving the tree, save it as a + merged subtree if the "merged" flag is set + + * backends/gconf-merge-tree.c: (recursively_load_subtree): + remove; it's in markup-tree.c now + + * configure.in: remove --enable-gconf-source option which + was only used when we installed standard-schemas + + * standard-schemas: remove old cruft + +2006-01-03 Mark McLoughlin + + Pointed out by Nicolas Peninguy + in bug #323509 + + * gconf/gconf-internals.c: (gconf_value_decode): fix crasher + with previous fix for decoding schemas + +2005-12-30 Abel Cheung + + * configure.in: Added "is" "zh_HK" to ALL_LINGUAS. + +2005-12-11 Mark McLoughlin + + * backends/markup-tree.c: + (markup_entry_get_value): re-work the logic for finding + the best schema for the given locales. + +2005-12-11 Mark McLoughlin + + * backends/markup-tree.c: + - Introduce the concept of a "subtree root" - a point + in the tree where we save a subtree in a merged file. + - When loading a subtree (%gconf-tree.xml), take note of + any available translations (%gconf-tree-$(locale).xml) + - When getting/setting/unsetting a schema, ensure that + the appropriate translations are loaded + - When parsing a translations file, allow for missing + attributes and elements and read the translations of + descriptions + - When syncing a subtree, write out all translations + of descriptions which are currently cached in memory + to separate files. + + * backends/gconf-merge-tree.c: (merge_tree): update for + markup_dir_build_file_path() change + +2005-12-09 Jorn Baayen + + * gconf/gconf-internals.h: + * gconf/gconf-value.h: + Publicize gconf_value_compare() and gconf_entry_equal(). + Closes bug #322832. + +2005-12-09 Mark McLoughlin + + * configure.in: post-branch bump to 2.13.1 + +2005-12-08 Kjartan Maraas + + * gconf/gconf-internals.c: (gconf_value_decode): Make + this function work for schemas too. Patch from Nicolas Peninguy + . Closes bug #323509. + +2005-12-08 Dan Williams + + * gconf/gconf.c: (gconf_unescape_string): Don't stomp on + the function-level scoped 'end' from deep in the function. + Fixes a segfault. + +2005-11-11 Dinoop Thomas + + * gconf/gconf.c: (gconf_debug_shutdown): Corrected documentation. + * doc/gconf/gconf-sections.txt: Included the functions for which doc was + newly added. + * doc/gconf/tmpl/gconf-changeset.sgml, + doc/gconf/tmpl/gconf-client.sgml, + doc/gconf/tmpl/gconf-engine.sgml, + doc/gconf/tmpl/gconf-error.sgml, + doc/gconf/tmpl/gconf-internals.sgml, + doc/gconf/tmpl/gconf-listeners.sgml, + doc/gconf/tmpl/gconf-value.sgml, + doc/gconf/tmpl/gconf.sgml: Included documentation for all the missing + functions exported by gconf library. + +2005-11-08 Mark McLoughlin + + Patch from Jens Granseuer in bug #320852 + + * gconf/gconf-listeners.c: (ltable_insert): remove C99 + usage. + +2005-11-03 Alexander Larsson + + * configure.in: + Post release version bump + +==================== 2.12.1 ==================== + +2005-11-03 Alexander Larsson + + * NEWS: + Update for release + +2005-11-01 Kjartan Maraas + + * gconf/gconf-backend.c: (gconf_get_backend): Use + G_MODULE_BIND_LAZY in g_module_open(). + * gconf/gconf-internals.c: (gconf_value_from_corba_value), + (gconf_value_type_to_string), (gconf_unquote_string_inplace), + (type_byte), (byte_type), (gconf_value_encode), + (gconf_get_lock_or_current_holder): Remove unused and + unreachable code. + * gconf/gconf-listeners.c: (ltable_insert): Warning fix. + * gconf/gconf-value.c: (gconf_value_compare): Same here. + * gconf/gconf.c: (gconf_unescape_key), + (corba_errno_to_gconf_errno), (gconf_server_broken), + (gconf_handle_corba_exception): And here. + * gconf/gconfd.c: (main): Missing closelog() call. + +2005-10-28 Erdal Ronahi + + * configure.in: Added ku (Kurdish) to ALL_LINGUAS + +2005-10-27 Alexander Larsson + + * gconf/gconf-sources.c (gconf_sources_is_affected): + Correctly handle the case where the modified source + is not in the sources list. + +2005-10-18 Tor Lillqvist + + * gconf/gconf-backend.c (invalid_chars[]): Do allow space in + configuration source addresses on Windows, as space is common in + user names, and thus home directories (i.e., profile folders). + +2005-10-09 Mark McLoughlin + + Based on patch from Lorenzo Colitti + in bug #316673 + + * backends/markup-tree.c: (parse_tree): read and process + the xml file incrementally in 4k chunks. + +2005-09-13 Stepan Kasal + + * gconf-2.m4.in (AM_GCONF_SOURCE_2): Simplify the handling of + --enable-schemas-install. + * Makefile.am (EXTRA_DIST): Remove sources for files gnerated at + config time; they are distributed automatically. + (DISTCLEANFILES): Deleted; we don't use intltool here. + * .cvsignore: Add mkinstalldirs. + +2005-09-10 Tor Lillqvist + + * gconf/gconf-backend.c (gconf_address_resource): On Win32, do + _gconf_win32_replace_prefix() on the return value so that we + change configure-time prefix pathnames in the path file into + corresponding end-user installation prefix pathnames. + + * gconf/gconf-sanity-check.c: Use gstdio wrappers here, too. + + * backends/markup-backend.c (get_dir_from_address): Use + G_IS_DIR_SEPARATOR(). + +2005-09-06 Mark McLoughlin + + * configure.in: post-release bump to 2.12.1. + +==================== 2.12.0 ==================== + +2005-09-06 Mark McLoughlin + + * configure.in: Version 2.12.0. + +2005-08-29 Tor Lillqvist + + * gconf-zip.in: Use correct capitalization of GConf in the zipfile + names. + +2005-08-22 Mark McLoughlin + + * configure.in: post-release bump to 2.11.93. + +==================== 2.11.92 ==================== + +2005-08-22 Mark McLoughlin + + * configure.in: Version 2.11.92. + +2005-08-10 Adam Weinberger + + * backends/evoldap-backend.c: Minor spelling fix + and capitalization tweak (fixes bug #301133) + +2005-07-25 Mark McLoughlin + + * configure.in: post-release bump to 2.11.91. + +==================== 2.11.90 ==================== + +2005-07-25 Mark McLoughlin + + * configure.in: Version 2.11.90. + +2005-07-14 Aivars Kalvans + + Reduce number g_string_append_c() calls (bug#309760) + + * configure.in: flockfile is not used anymore + * gconf/gconf.c (gconf_escape_key): join two + g_string_append_c() and g_string_append_printf() call + * gconf/gconfd.c (read_line): use fgets() instead of getc_unlocked() + to read a line + +2005-07-13 Gustavo J. A. M. Carneiro + + * gconf/gconf-client.c (gconf_client_notify): + s/g_entry_unref/gconf_entry_unref (a typo). + +2005-07-13 Aivars Kalvans + + * gconf/gconf-client.c (gconf_client_notify): unref GConfEntry + after notifying client. Fixes bug #158756 + +2005-06-21 Mark McLoughlin + + * configure.in: require glib 2.7.0 + +2005-06-21 Mark McLoughlin + + Patch from Marcus Meissner in + bug #308448 + + * gconf/gconf-changeset.h, + gconf/gconf-client.h: use G_GNUC_NULL_TERMINATED for + gconf_(client|engine)_change_set_from_current() + +2005-06-18 Aivars Kalvans + + * gconf/gconf-sources.c (gconf_source_free): free ->address + Fixes bug #307887 + +2005-06-17 Theppitak Karoonboonyanan + + * configure.in: Added 'th' (Thai) to ALL_LINGUAS. + +2005-06-13 Mark McLoughlin + + Fixes bug #306937 - gconfd-2 not shutting down when its + no longer in use. + + * gconf/gconfd.c: (no_databases_in_use): account for the + fact that the default database is on the global list of + databases now too. + +2005-06-08 Tor Lillqvist + + * configure.in: Require GLib 2.6.0 so we can use the "gstdio + wrappers". + + * backends/*.c + * gconf/*.c: Use gstdio wrappers and gdir for better support of + non-ASCII pathnames on Windows. Use g_strerror() consistently in + error messages, as g_printerr() etc want UTF-8. + + * gconf/Makefile.am: Append EXEEXT to gconfd's name. + + * gconf/gconf-internals.h: Use functions instead of variables to + access the run-time pathnames on Win32. This enables us to have a + cleaner DllMain(). Add underscore prefix to the internal + Win32-only functions. + + * gconf/dllmain.c (DllMain): Use minimalistic DllMain() that only + stores the handle to the DLL. + (setup): Do the real work here instead. + (_gconf_win32_get_locale_dir, etc): Functions to return the + run-time pathnames. + + * gconf/gconf-internals.c (_gconf_win32_get_home_dir): + As g_get_home_dir() has now been fixed to never return NULL on + Windows, we don't have to bother checking that here. + +2005-05-17 Mark McLoughlin + + * configure.in: post-release bump to 2.11.2. + +==================== 2.11.1 ==================== + +2005-05-17 Mark McLoughlin + + * configure.in: Version 2.11.1. + +2005-05-17 Mark McLoughlin + + * backends/README.evoldap: update. + +2005-05-17 Mark McLoughlin + + Re-work a bit so it now supports putting the addressbook, + calendar and task sources in LDAP. + + * backends/evoldap-backend.c: + (get_evolution_uid), (get_variable): renamed the $(ACCOUNT_UID) + variable to $(EVOLUTION_UID) + (parse_conf_file): upd to lookup the new templates. + (subst_variables_into_template): allow substituing into + any template. + (build_value_from_entries): split out; constructs a list value + by munging the LDAP entries with a template. + (lookup_values_from_ldap): lookup the addressbook, calendar + and tasks sources too. + (query_value), (all_entries), (all_subdirs), + (dir_exists): upd. to handle addressbook, calendar and tasks. + (destroy_source): free new stuff. + + * backends/evoldap.conf: change the format slightly to add + templates for addressbook, calendar and tasks. + + * backends/evoldap.schema: add new schema. + +2005-05-09 Mark McLoughlin + + Update to use GNOME OIDs as assigned by + Jochen Friedrich + + * backends/evoldap.schema: use GNOME OIDs. + +2005-05-06 Mark McLoughlin + + Small fix for previous commit. + + * gconf/gconfd.c: (gconfd_notify_other_listeners): + Don't try and free a NULL GConfValue. + +2005-05-06 Mark McLoughlin + + Fix for crasher based on patch from Josselin Mouette + in bug #158917 + + * gconf/gconfd.c: (gconfd_notify_other_listeners): if the + value is unset, create an InvalidVal ConfigValue. + +2005-04-27 Mark McLoughlin + + * backends/Makefile.am: link the evoldap backend with libxml. + +2005-04-25 Mark McLoughlin + + Pointed out by Gustavo Carneiro in + bug #300804 + + * gconf/gconf-enum-types.[ch]: run "make regenerate-built-sources" + so that we get GCONF_TYPE_UNSET_FLAGS. + + * gconf/gconf-error.h, + gconf/gconf-value.h: remove unneccessary glib-mkenums options + from C comment. + + * gconf/regenerate-enum-footer.sh, + gconf/regenerate-enum-header.sh: tweak the arguments to glib-mkenums + so that we get the same output that we were getting before and the + command line is a wee bit more readable. + +2005-04-18 Mark McLoughlin + + * backends/evoldap-backend.c, backends/evoldap.conf, + backends/evoldap.schema, backends/README.evoldap: + Add Evolution mail account LDAP backend. + + * configure.in, backends/Makefile.am: build the backend + if we can find the openldap library and header. + +2005-05-07 Gareth Owen + + * po/en_GB.po: Updated British English translation. + +2005-04-04 Mark McLoughlin + + Patch from Stepan Kasal + + * gconf-2.m4.in (AM_GCONF_SOURCE_2): Use "--enable-schemas-install", + not "--disable-schemas-install", in the error message; one has to + give "--enable-schemas-install=foo" to get here, the form + "--disable-schemas-install=*" is refused immediately by the init + code of the configure script. + +2005-03-30 Steve Murphy + + * configure.in: Added "rw" to ALL_LINGUAS. + +2005-03-27 Tor Lillqvist + + * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated + after all, and in fact necessary with HEAD libtool. + +2005-03-23 Tor Lillqvist + + * gconf/gconfd.c (test_safe_tmp_dir): Nah, stat() isn't useful for + permission checking on Win32. Bypass for now on Win32. + +2005-03-18 Tor Lillqvist + + Port to Windows: + + * gconf-zip.in: New file, script to build zipfile-based + distribution for Windows. + + * Makefile.am + * configure.in: Distribute and expand it. + + * configure.in: Check for Win32, Define automake conditional + OS_WIN32. Force shared library (DLL) build on Windows. Check for + some more headers and functions. + + * */*.c: Conditionalize on HAVE_SYSLOG_H, HAVE_SYS_WAIT_H, + HAVE_GETUID, HAVE_FSYNC, HAVE_FCHMOD, HAVE_SIGACTION, F_GETFD, + FD_CLOEXEC, F_SETLK, SIGBUS, SIGPIPE, SIGHUP, SIGUSR1, and ELOOP. + + * backends/Makefile.am: Explicitly link with INTLLIBS. + + * backends/markup-tree.c (save_tree): Can't rename or remove open + files on Win32. + + * backends/xml-backend.c: Don't use G_MODULE_EXPORT on Win32. If + we use it, only the functions thus marked will be exported, and + xml-test uses also other ones. Instead rely on the auto-export + feature. + + * gconf/Makefile.am: Pass -DPREFIX=$(prefix). Include dllmain.c + on Win32. + + * gconf/dllmain.c: New file. Used for installation location + independence. + (DllMain) DLL entry point. Automatically called when the DLL is + attached to a process. Deduce the run-time installation location + and construct run-time pathnames. + (gconf_win32_replace_prefix): New funcion. Replaces a + configure-time prefix in a pathname with the corresponding + end-user run-time installation prefix. + + * gconf/gconf-internals.c (gconf_win32_get_home_dir): New + function, returns the home directory with forward + slashes. Guaranteed to return non-NULL, unlike GLib's + g_get_home_dir(). + (get_variable, gconf_get_daemon_dir): Use gconf_win32_get_home_dir(). + (gconf_load_source_path): Use gconf_win32_replace_prefix(). + (create_new_locked_file, open_empty_locked_file, + gconf_release_lock): Use _sopen() to open file with locking on + Win32. + (close_fd_func): Not used on Win32, where there is no FD_CLOEXEC, + and a gspawn child setup function is run in the parent process + anyway. + + * gconf/gconf-internals.h: mkdir() takes only one parameter on + Win32. S_IRWX{U,G,O} aren't in mingw's sys/stat.h. Use run-time + installation prefix instead of configure-time. Redefine the + GCONF_*DIR macros to refer to the variables from the dllmain.c + file. Use NUL: on Windows instead of /dev/null. + + * gconf/gconf-sanity-check.c + * gconf/gconftool.c: Use POPT_AUTOHELP. + + * gconf/gconf.c: Use g_get_current_time() instead of gettimeofday(). + + * gconf/gconfd.c (gconf_server_load, get_log_names): Use + gconf_win32_get_home_dir(). + (signal_handler): If we don't HAVE_SIGACTION, use signal(), and + re-arm the signal handler. + (test_safe_tmp_dir): Can't open() a directory on Win32. + (get_log_names): Use g_build_filename() instead of + gconf_concat_dir_and_key() on all platforms. + +2005-03-14 Mark McLoughlin + + * acinclude.m4: remove - we don't use anything from + it anymore. Fixes bug #153049 + +2005-03-14 Mark McLoughlin + + * configure.in: bump version to 2.11.1 after branching. + +2005-03-07 Mark McLoughlin + + * configure.in: post-release bump to 2.10.1. + +==================== 2.10.0 ==================== + +2005-03-07 Mark McLoughlin + + * configure.in: Version 2.10.0. + +2005-02-16 Adi Attar + + * configure.in: Added "xh" to ALL_LINGUAS. + +2005-02-07 Mark McLoughlin + + * configure.in: post-release bump to 2.9.92. + +==================== 2.9.92 ==================== + +2005-02-07 Mark McLoughlin + + * configure.in: Version 2.9.91. + +2005-02-06 Mark McLoughlin + + Fix bug #154005 - "preload breaks saved state", caused + by a bug in the way the listeners tree was constructed. + + * gconf/gconf-listeners.c: + (ltable_entry_new): take a list of path elements + and index to the entry and construct the full + path for that entry. + (ltable_insert): update for above so that we + don't pass use the wrong path for full_name. + +2005-01-18 Mark McLoughlin + + Fixes problem where a path file which only includes + another path file wouldn't work. + + * gconf/gconf-internals.c: (gconf_load_source_path): + assign the return value of g_slist_concat() to something. + +2005-01-17 Mark McLoughlin + + Fix double free with gconf_client_clear_cache() + + * gconf/gconf-client.c: (clear_cache_foreach): don't + free the key explicitly - the key is owned by the + GConfEntry. + +2005-01-12 Vincent Untz + + * gconf-value.c: (gconf_value_validate): add sanity check + +2004-11-30 Mark McLoughlin + + * configure.in: post-release bump to 2.9.3. + +==================== 2.9.2 ==================== + +2004-11-30 Mark McLoughlin + + * configure.in: Version 2.9.2. + +Tue Nov 16 12:24:26 2004 Jonathan Blandford + + * doc/gconf/gconf-docs.sgml: add a title/name instead of [Insert + name here] + +2004-11-02 Fernando Herrera + + * backends/markup-tree.c: (markup_entry_get_value): Read the schema + file until a matching locale is found and the C one. This solves + bug #152175 when current locale is before the C. + +2004-11-02 Fernando Herrera + + * gconf/gconf-sources.c: (gconf_sources_all_entries): Get schema_name + also if we got a value from a previous source. Fix #131011 + +2004-10-12 Mark McLoughlin + + * configure.in: post-release bump to 2.8.2. + +==================== 2.8.1 ==================== + +2004-10-12 Mark McLoughlin + + * configure.in: Version 2.8.1. + +2004-10-04 Mark McLoughlin + + GConf part of fix for gconf-editor spewing warnings + on startup. See bug #144833. + + * backends/markup-backend.c: (resolve_address): if the + toplevel directory isn't writable, mark the whole source + as non-writable. + +2004-09-30 Kjartan Maraas + + * gconf/gconf-internals.c: (gconf_activate_server): + Fix pipe misuse reported by valgrind. Suggested fix + by Mark McLoughlin. Closes bug #153929. + +2004-09-28 Kjartan Maraas + + * gconf/gconf-sanity-check.c: (main): Plug a leak. + * gconf/gconfd.c: (main): Plug a couple of leaks. + Ref bug #153929. Still one to go. + +2004-09-28 Mark McLoughlin + + Leak identified by Kjartan in bug #153891. + + * gconf/gconfd.c: (gconf_server_load_sources): + Plug leak. + + * gconf/gconf-internals.c: + (gconf_load_source_path): remove some crufty code, + don't unneccessarily copy strings. + +2004-09-14 Mark McLoughlin + + * configure.in: post-release bump to 2.8.1. + +==================== 2.8.0.1 ==================== + +2004-09-13 Mark McLoughlin + + * configure.in: Version 2.8.0.1. + +2004-09-14 Mark McLoughlin + + * autogen.sh: use automake 1.7 and run gtkdocize. + + * configure.in: check for glib-genmarshal and use + GTK_DOC_CHECK. + + * Makefile.am: add --enable-gtk-doc to + DISTCHECK_CONFIGURE_FLAGS. + + * gconf/Makefile.am: re-do how the marshallers + are generated. + + * doc/gconf/Makefile.am: use gtk-doc.make. + + * doc/gconf/gconf.sgml: tweak to validate. + + * backends/Makefile.am: make xml-test link + against the backend rather than rebuilding + the sources. + + * gconf-2.m4.in: rename from gconf.m4.in. + +2004-09-13 Mark McLoughlin + + * configure.in: post-release bump to 2.8.1. + +==================== 2.8.0 ==================== + +2004-09-13 Mark McLoughlin + + * configure.in: Version 2.8.0. + +2004-08-30 Mark McLoughlin + + * configure.in: post-release bump to 2.7.93. + +==================== 2.7.92 ==================== + +2004-08-30 Mark McLoughlin + + * configure.in: Version 2.7.92. + +2004-08-30 Mark McLoughlin + + Fix problem with schemas install. Bug #151334. + + * gconf/gconftool.c: (process_locale_info): install the + global default in the C locale only. + +2004-08-30 Mark McLoughlin + + Lots of debugging info from Mickey Stein + narrowed this one down in bug #150779. + + * gconf/gconfd.c: (drop_old_databases): don't drop the default + database here, we do that later. Hangover from the fact that + the default database didn't use to be on db_list. + +2004-08-30 Mark McLoughlin + + Patch from Josselin Mouette in bug #148028 + + * gconf/gconfd.c: (periodic_cleanup_timeout): save and reload + ~/.gconfd/saved_state so we don't drop listeners when reloading + the database. + +2004-08-27 Mark McLoughlin + + * gconf/gconftool.c: (process_locale_info): don't explicitly + install the global default in a schema for every locale since + we happily fall back to the C locale anyway. Fixes bug #131488. + +2004-08-25 Mark McLoughlin + + * backends/markup-tree.c: (markup_entry_get_value): don't + abort if we find no local schema to match any locales - there + may not be a "C" local schema at all. See bug #147522 for a + test case from Caio Begotti + +2004-08-19 Mark McLoughlin + + * configure.in: post-release bump to 2.7.92. + +==================== 2.7.91.1 ==================== + +2004-08-19 Mark McLoughlin + + * configure.in: Version 2.7.91.1. + +2004-08-19 Mark McLoughlin + + Revert the patch to make use of the merge-subtree feature at + specific points in the tree. Not clear that it solves the + problems we thought it solved. Patch archived in bug #138498 + + * backends/markup-tree.[ch]: + (markup_tree_get): remove try_merge flag. + (markup_dir_sync): don't try and save as a merged subtree. + + * backends/markup-backend.c: (resolve_address), (ms_new): + Remove the "nomerge" backend flag. + + * backends/gconf-merge-tree.c: + (recursively_load_subtree): add back. + (merge_tree): upd. for markup_tree_get() change. + +2004-08-16 Christian Rose + + * configure.in: Added "bs" to ALL_LINGUAS. + +2004-08-16 Mark McLoughlin + + * configure.in: post-release bump to 2.7.92. + +==================== 2.7.91 ==================== + +2004-08-16 Mark McLoughlin + + * configure.in: Version 2.7.91. + +2004-08-11 Kjartan Maraas + + * backends/xml-cache.c: (cache_clean): Use NULL in place of 0. + * configure.in: Added nb to ALL_LINGUAS. + * gconf/gconf-internals.c: (gconf_invalid_corba_value): ANSI + parameter list warning. + * gconf/gconf-sanity-check.c: (ensure_gtk): NULL vs. 0 + * gconf/gconfd.c: (main): Same. Closes bug #149843. + +2004-08-10 Mark McLoughlin + + * gconf/gconftool.c: (main): set the umask for + --makefile-install-mode so we always install the + schemas with the correct permissions. bug #145041. + +2004-08-07 Danilo Šegan + + Fixes bug #149518. + + * gconf/gconftool.c (options): s/dir/directory/ s/standard out/standard output/. + * gconf/gconfd.c (main): s/fd/file descriptor/. + * gconf/gconf-sources.c (gconf_sources_new_from_addresses): s/config/configuration/. + * backends/markup-tree.c (parse_value_element): s/car_type/first-element/. + +2004-08-03 Mark McLoughlin + + * configure.in: post-release bump to 2.7.91. + +==================== 2.7.90 ==================== + +2004-08-03 Mark McLoughlin + + * configure.in: Version 2.7.90. + +2004-08-03 Mark McLoughlin + + Patch from Carlos Daniel Ruvalcaba Valenzuela + in bug #148973. + + * gconf/gconf-internals.[ch]: (gconf_escape_percents): remove unused + (and internal) function. + +2004-07-09 Mark McLoughlin + + Patch from Kai Willadsen in + bug #120349. + + * doc/gconf/gconf.sgml, + doc/gconf/tmpl/gconf-client.sgml, + doc/gconf/tmpl/gconf.sgml, + doc/intro-article.sgml, + gconf/gconf-client.h, + gconf/gconf-listeners.h: bring the docs up to + date with the patch that we're using GObject instead + of GtkObject. + +2004-07-07 Mark McLoughlin + + * configure.in: post-release bump to 2.7.4. + +==================== 2.7.3.1 ==================== + +2004-07-07 Mark McLoughlin + + * configure.in: Version 2.7.3.1. + +2004-07-07 Mark McLoughlin + + * gconf/gconftool.c: (process_key_list): one character + fix to make the schema actually be applied. + +2004-07-07 Fernando Herrera + + * gconf/default.path.in: Removed outdated comment. + +2004-07-07 Mark McLoughlin + + * gconf/gconftool.c: (do_makefile_uninstall): merge with + do_makefile_install() by adding a "unload" flag. + +2004-07-05 Mark McLoughlin + + * configure.in: post-release bump to 2.7.4. + +==================== 2.7.3 ==================== + +2004-07-05 Mark McLoughlin + + * configure.in: Version 2.7.3. + +2004-07-05 Mark McLoughlin + + Patch from Josselin Mouette to handle + SIGHUP by reloading all databases. Intended to be used + in package's postinst scripts to get all running gconfds + to reload schemas. + + * gconf/gconfd.c: + (signal_handler): handle SIGHUP by setting flag. + (periodic_cleanup_timeout): reload all databases when + the reload flag is set. + +2004-07-04 Mark McLoughlin + + Patch from Julio M. Merino Vidal in bug #134517 + to add a --sysconfsubdir configure argument which allows the + sub-directory GConf uses under $sysconfdir to be change. + + * configure.in: add --sysconfsubdir argument and subst $sysgconfdir + which contains the full sysconf path GConf uses. + + * Makefile.am, + examples/Makefile.am, + gconf/Makefile.am, + gconf/default.path.in, + gconf/gconftool.c, + standard-schemas/Makefile.am, + wrappers/cxx/Makefile.am: use $sysgconfdir. + +2004-07-02 Mark McLoughlin + + Fixup some bugs with the merge files support which was + causing unset entries not to be completely wiped out. + + * backends/markup-tree.c: + (clean_old_local_schemas): rename. + (clean_old_local_schemas_recurse): if we're saving as a subtree, + recurse down the tree. + (delete_useless_subdirs): ignore the some_subdir_needs_sync and + entries_need_save flags on the subdir - they're irrelevant if + there's no entries or subdirs. Also, check whether the subdir + is in a subtree file rather than current dir. + (delete_useless_subdirs_recurse): correctly recurse over subdirs. + (delete_useless_entries_recurse): implement recursively deleting + entries too. + (recursively_load_subtree): set the not_in_filesytem flag if we're + going to be saving as a subtree. + (markup_dir_sync): recusively clean schemas and delete entries + if we're saving as a subtree. + +2004-07-02 Mark McLoughlin + + Based on a patch to add --unload option from + Julio M. Merino Vidal in bug #130129. + + * gconf/gconftool.c: + (main): add --unload option. + (do_load_file): add an 'unload' flag. + (set_values), (process_entry), + (process_key_list), (hash_install_foreach), (process_schema), + (process_list): pass the flag about and unset/unassociate + things as appropriate. + (do_makefile_uninstall): pass the unload flag to do_load_file(). + +2004-07-02 Mark McLoughlin + + Fix for bug #145141. + + * backends/markup-tree.c: (load_subdirs): recognise + subdirs which don't contain a %gconf.xml file but do + contain a %gconf-tree.xml file. + +2004-07-01 Pawan Chitrakar + + * configure.in: Added "ne" Nepali in ALL_LINGUAS + +2004-06-27 Ross Burton + + * doc/Makefile.am: Distribute the incredibly useful FAQ and DTD. + +2004-06-22 Mark McLoughlin + + * backends/markup-tree.c: fix tiny typo which was causing + /schemas/apps to be saved as one gigantic file. + +2004-06-21 Mark McLoughlin + + Fix for bug #138498 - turn on "subtree-in-a-file" for the + subdirectories of the following directories: + + /apps/evolution", + /apps/panel/profiles", + /apps + /desktop/gnome + /system + /schemas/apps + /schemas/desktop/gnome + /schemas/system + /schemas + / + + You can turn this of by passing the "nomerge" flag to the + backend - e.g. xml:readwrite,nomerge:$(HOME)/.gconf + + * backends/markup-tree.[ch]: + (markup_tree_get): pass in the nomerge path. + (markup_dir_build_file_path), + (markup_dir_build_dir_path): simple wrappers for build_path(). + (load_subtree), (load_entries), (load_subdirs), + (delete_useless_subdirs): upd. for above change. + (recursively_load_subtree): impl. recursively loading the tree + below a given dir. + (should_save_as_subtree): logic to figure out which dirs should + be saved as merged files. + (markup_dir_sync): save the dir in a merged file if neccessary. + (markup_dir_build_path): allow building a non-filesystem path. + (parse_tree), (save_tree): upd. + (write_dir): set the "not_in_filesystem" flag. + + * backends/markup-backend.c: + (resolve_address), (ms_new): parse and use the "nomerge" flag. + + * backends/gconf-merge-tree.c: (merge_tree): upd. + +2004-06-21 Mark McLoughlin + + * gconf/gconfd.c: (shutdown_databases): don't free the + default database twice. Its on the databases list now + so it doesn't need to freed explicitly. + +2004-06-21 Mark McLoughlin + + Patch from Leonardo Quijano Vincenzi + in bug #144502. + + * doc/gconf/tmpl/gconf-client.sgml: warn the g_type_init() + must be called before using GConfClient. + +2004-06-12 Mark McLoughlin + + Patch from Daniel Elstner + in bug #143679. + + * gconf.m4.in (AM_GCONF_SOURCE_2): Use $(sysconfdir)/gconf/schemas + as the default value of GCONF_SCHEMA_FILE_DIR, without the trailing + slash. Also get rid of the pointless else branch. + +2004-06-12 Mark McLoughlin + + Patch from Julio M. Merino Vidal + in bug #134247. + + * doc/gconf/Makefile.am: don't create a directory if + its not needed. + +2004-06-12 Mark McLoughlin + + Patch from Mariano Suárez-Alvarez + in bug #122958 to change the encoding logic so as to produce + shorter encoded keys when encoding non-ascii characters. Does + not require changes to the decoder. + + * gconf/gconf.c: (gconf_escape_key): use a shorter encoding + for non-ascii characters. + +2004-06-12 Mark McLoughlin + + 64-bit fix from Joe Marcus Clarke + + * backends/markup-tree.c: (parse_tree): the length + returned from g_file_get_contents() is a gsize + not an int. + +2004-06-09 Kjartan Maraas + + * gconf/gconf-internals.c: (gconf_activate_server): + Plug a small leak. Fixes bug #143941. + +2004-05-31 Mark McLoughlin + + * configure.in: post-release bump to 2.7.2. + +==================== 2.7.1 ==================== + +2004-05-31 Mark McLoughlin + + * configure.in: Version 2.7.1. + +2004-05-04 Morten Welinder + + * gconf/gconf-internals.c (gconf_activate_server): Delete stray + ";" aka null statement. (Valid only in C99 where it had no + effect.) + +2004-04-23 Mark McLoughlin + + * gconf/gconf-sources.c: (gconf_sources_new_from_addresses): return + NULL and the last error if we failed to resolve any of the addresses. + +2004-04-21 Richard Hult + + * gconf/gconf-database.c (gconf_database_unset): Init + modified_sources to NULL since we access it later. Fixes random + crashes. + +2004-04-19 Mark McLoughlin + + Based on a patch from Julio Merino + in bug #102825 + + * configure.in: add a --enable-gtk=yes/no/auto (defaults to auto) + +2004-04-19 Mark McLoughlin + + Patch Elijah Newren in bug #138009 + + * examples/basic-gconf-app.c: (config_entry_commit): + return a boolean so we don't crash. + +2004-04-19 Mark McLoughlin + + Based on a patch from Ryan Lovett + in bug #95198. + + * backends/markup-backend.c: (resolve_address): + backends/xml-backend.c: (resolve_address): check to see + if the dir exists before trying to create it rather than + relying on EEXIST from mkdir. + +2004-04-19 Mark McLoughlin + + * backends/dir-utils.[ch], + backends/val-encode.[ch]: remove last remenants + of the BDB backend. + +2004-04-19 Mark McLoughlin + + Tracked down by Gustavo Giráldez + in bug #139170 + + * gconf/gconfd.c: (logfile_save): don't save default_db explicitly + since its now stored in the same list as the other dbs - but do + make sure that it gets saved as "def" rather than using its full + address list. + +2004-04-16 Colin Walters + + * gconf/gconf-internals.c (gconf_activate_server): Move temporary + directory creation into daemon code, so that we play better with + SELinux. Patch reviewed by (and several improvements suggested by) + Mark McLoughlin . + +2004-04-13 Mark McLoughlin + + Fix pointed out by Frédéric L. W. Meunier <1@pervalidus.net>. + + * gconf.m4.in: add quotes around AM_GCONF_SOURCE_2 to + quell autoconf's rudeness. + +2004-04-08 Guntupalli Karunakar + + * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS. + +2004-04-08 Adam Weinberger + + * configure.in: Added en_CA to ALL_LINGUAS. + +2004-04-05 Mark McLoughlin + + Revert the --dump behaviour change (not dumping schema defaults) + and add a --ignore-schema-defaults argument which applies to + all arguments which get the value of a key. + + * gconf/gconftool.c: + (main): check that --ignore-schema-defaults is being used with + an option which gets a value. + (list_pairs_in_dir), (dump_entries_in_dir): + respect --ignore-schema-defaults. + (get_maybe_without_default): helper function. + (do_get), (do_get_type), (do_get_list_size), (do_get_list_element): + respect --ignore-schema-defaults. + +2004-04-02 Mark McLoughlin + + * gconf/gconftool.c: (set_values), (process_entry): handle + an with only a correctly. + +2004-04-01 Mark McLoughlin + + * gconf/gconftool.c: (dump_entries_in_dir): don't dump + the value if its the schema default. + +2004-04-01 Mark McLoughlin + + * gconf/default.path.in: fix the position of the + local-defaults.path include. Bug #137578. + +2004-03-31 Mark McLoughlin + + Fix last remaining obvious issue I'm seeing with the previous + patches. gconfd was crashing when removing objects from the + panel. + + * gconf/gconf-database.c: (gconf_database_recursive_unset): + Don't try and propogate a NULL error. + + * gconf/gconf-sources.c: + (gconf_sources_unset_value): create modified_sources when + they it doesn't exist. + (prepend_unset_notify): add a couple of assertions. + (recursive_unset_helper): unset modified_sources between + unsets so that we don't append to the same source list. + +2004-03-30 Mark McLoughlin + + * gconf/gconf-backend.c: (gconf_backend_verify_vtable): + Return TRUE if the vtable is okay. + +2004-03-30 Mark McLoughlin + + * doc/gconf/tmpl/gconf-backend.sgml: add some documentation + for set_notify_func(). + +2004-03-30 Mark McLoughlin + + * tests/testbackend.c: (foreach_recursive), (sync_and_clear), + (check_unset), (set_value), (get_value): upd. for the fact + we have a copy of the vtale now rather than a pointer to it. + +2004-03-30 Mark McLoughlin + + * gconf/gconf-backend.h: actually add the vtable_size + vtable member. + +2004-03-29 Mark McLoughlin + + * gconf/gconf-database.c: + (safe_g_hash_table_insert): remove - no hash table here. + +2004-03-29 Mark McLoughlin + + * gconf/gconf-engine.h: add gconf_engine_get_for_addresses() + and gconf_engine_get_local_for_addresses(). + + * gconf/gconf.c: + (gconf_engine_connect): implement setting up a database from + an arbitrary stack of sources. + (register_engine): use the concatenation of addresses for the key. + (unregister_engine): free the persistent address and address list on + unregistering. + (lookup_engine): use the concatenation of addresses for the key. + (gconf_engine_get_local_for_addresses): add. + (gconf_engine_get_for_address): update for register_engine change. + (gconf_engine_get_for_addresses): impl support for remote composite dbs. + (update_listener): update for the fact that listeners are now saved using + the persistent name. + + * gconf/GConfX.idl: extend the ConfigServer interface + by adding ConfigServer2 inherting from ConfigServer. + Add ConfigServer2::get_database_for_addresses(). + + * gconf/gconf-backend.c: + (gconf_address_valid), (gconf_get_backend): check the backend + address doesn't contain any special characters. + + * gconf/gconf-database.[ch]: + (source_notify_cb): don't notify unless this change could + actually cause a change for the client. + (gconf_database_notify_listeners): impl. notifying "other" + listeners - clients listening on other stacks which contains + any of the modified sources. + (gconf_database_set), (gconf_database_unset): keep track of + the sources modified by the change and update for the + notify_listeners change. + (gconf_database_recursive_unset): ditto and upd. for the + change in the listeners list returned by + gconf_sources_recursive_unset(). + (gconf_database_get_persistent_name): make the persistent + name a concatenation of the individual addresses instead + of the first address. + + * gconf/gconf-internals.[ch]: + (gconf_address_list_get_persistent_name): impl method similar + to gconf_database_get_persistent_name, except concatenate + the addresses from a GSList. + (gconf_persistent_name_get_address_list): do the reverse. + (gconf_address_list_free): free the list of strings. + + * gconf/gconf-sources.[ch]: + (gconf_sources_new_from_source): allow creating an empty source + list. + (gconf_sources_set_value), + (gconf_sources_unset_value): return the sources modified by + the change. + (prepend_unset_notify), (recursive_unset_helper), + (gconf_sources_recursive_unset): return a list of GConfUnsetNotifys + which contains both the key and the modified source. + (get_address_resource): copy and paste of gconf_address_resource + except it doesn't dup the return value. + (gconf_sources_is_affected): figure out if a change to a particular + key in one source affects the key with a particular stack of sources. + + * gconf/gconfd.[ch]: impl ConfigServer2 inheritance. + (gconfd_get_database): upd for obtain_database change. + (gconfd_get_composite_database): implement. + (init_databases): rename dbs_by_address to dbs_by_addresses. + (set_default_database): register the default db like the others. + (register_database): use the persistent name as the key. + (unregister_database): ditto. + (lookup_database): ditto. + (obtain_database): use a list of addresses, not a single one. + (gconfd_notify_other_listeners): impl notifying listeners + on GConfDatabases other than the one which was changed. + (listener_logentry_restore_and_destroy_foreach): restore by + splitting the address list string. + + * gconf/gconftool.c: (main): enable --config-source without + --direct as it works better now. Also allow --config-source + to be an address list. + +2004-03-29 Mark McLoughlin + + * backends/markup-backend.c, + backends/xml-backend.c: initialize the set_notify_func + vtable member. + +2004-03-29 Mark McLoughlin + + Re-work the notifications-from-backends patch so that the + backend doesn't have to keep track of a callback per + listener as suggested by Cyrille. + + * gconf/gconf-backend.h: add a set_notify_func() member to + the vtable and remove the callback arg from add_listener(). + + * gconf/gconf-database.c: + (gconf_database_new): set the notification callback here. + (gconf_database_readd_listener): upd. + + * gconf/gconf-sources.[ch]: + (gconf_source_set_notify_func): add. + (gconf_source_add_listener): upd. + (gconf_sources_set_notify_func): add. + (gconf_sources_add_listener): upd. + +2004-03-26 Mark McLoughlin + + * gconf/gconf-database.c: (source_notify_cb): don't leak + the schema name. + + * gconf/gconf-sources.c: + (gconf_sources_add_listener), + (gconf_sources_remove_listener): fix mistake pointed out + by Cyrille. + +2004-03-25 Mark McLoughlin + + Allow backends to notify the daemon of changes to entries. + Based on a patch from Cyrille Moureaux + in bug #07692. + + * gconf/gconf-backend.h: add add_listener() and + remove_listener() members to the vtable. + + * gconf/gconf-database.c: + (source_notify_cb): re-compute the value and notify + listeners when the backend reports the key has changed. + (gconf_database_readd_listener), + (gconf_database_remove_listener): add/remove backend + listeners. + + * gconf/gconf-sources.[c]: + (gconf_source_add_listener), + (gconf_source_remove_listener), + (gconf_sources_add_listener), + (gconf_sources_remove_listener): impl. the glue. + + * doc/gconf/tmpl/gconf-backend.sgml: update the backend + documentation. + + * backends/markup-backend.c, + backends/xml-backend.c: set the add_listener() and + remove_listener() members to NULL. + +2004-03-24 Mark McLoughlin + + * gconf/gconf-backend.h: add a vtable_size member to + the vtable. + + * gconf/gconf-backend.c: + (gconf_backend_verify_vtable): impl. copying handling + mismatches in vtable sizes and also refuse to use the + backend if any of the functions we require are NULL. + (gconf_get_backend): fixup error handling a bit. + + * gconf/gconf-sources.c: update to take into account + that the we have a copy of the vtable now rather than + just a pointer to it. + + * doc/gconf/tmpl/gconf-backend.sgml: upd. + + * backends/markup-backend.c, + backends/xml-backend.c: add sizeof (GConfBackendVTable) to + the vtable. + +2004-03-24 Mark McLoughlin + + * gconf/gconf-database.c: (impl_ConfigDatabase_set): don't + convert the value into a string and then do nothing with it. + +2004-03-30 Mark McLoughlin + + * configure.in: bump to 2.7.1. 2.6.x development is on + the gnome-2-6 branch now. + +2004-03-24 Mark McLoughlin + + * configure.in: kill the message-of-doom. + +2004-03-22 Guntupalli Karunakar + + * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS. + +2004-03-22 Mark McLoughlin + + * configure.in: post-release bump to 2.6.1. + +2004-03-22 Mark McLoughlin + + * configure.in: Version 2.6.0 + +2004-03-18 Ross Burton + + * doc/FAQ.txt: + Added a FAQ, based upon the old FAQ and updated for the new + locking policy. + +2004-03-16 Gareth Owen + + * configure.in: Added "en_GB" (British) to ALL_LINGUAS + +2004-03-02 Dinesh Nadarajah + + * ta.po: Started Tamil Translation. + +2004-02-24 Mark McLoughlin + + * configure.in: Version 2.5.90. + +2004-02-01 Robert Sedak + + * configure.in: Added "hr" (Croatian) to ALL_LINGUAS. + +2003-12-14 Havoc Pennington + + * configure.in: 2.5.1 + +2003-12-03 Ross Burton + + * tmpl/gconf.sgml: lamest patch *ever*, remove a newline. + +Tue Nov 4 17:17:07 2003 Jonathan Blandford + + * gconf/gconf-changeset.h: register GConfChangeSet as a boxed type. + +2003-11-02 Havoc Pennington + + * ChangeLog: ascii-ize various people's names; Emacs can't handle + UTF-8, sadly + + * backends/Makefile.am: cut over to the new backend implementation + + * configure.in: change to 2.5.0, add "this is the unstable + branch" warning. + +2003-10-28 Ghee Teo + + * gconf/default.path.in: added hooks for paths to preserve + local configuration gconf values as in bug #107481. + +2003-10-28 Mark McLoughlin + + * backends/gconf-merge-tree.c: include locale.h - patch + from Damien Carbery in bug #125688. + +2003-10-27 Mark McLoughlin + + Patch to allow a single XML file to represent an arbitrary + GConf tree rather than a single directory. Also fixes + many little bugs with the markup backend. See bug #116948. + + * backends/Makefile.am: install the markup backend and + build gconf-merge-tree. + + * backends/markup-tree.c: if a %gconf-tree.xml file exists + in a given directory, load that and ignore any %gconf.xml + files in the directory and any sub-directories. Also, + fix many little buglets to make this work compatibly with + the XML backend. + + * gconf/gconftool.c: + (recurse_subdir_dump), (do_dump_values): sort the directories + before dumping. + (print_schema_in_xml): don't add extra whitespace to schema + descriptions. + (print_value_in_xml): dump " " strings as empty strings. + (compare_entries), (dump_entries_in_dir): dump entries + sorted by the key name. + + * backends/markup-backend.c: (cleanup_timeout): fixup. + + * backends/gconf-merge-tree.c: utility to merge a GConf + tree into a single markup backend %gconf-tree.xml file. + Doing this to a tree means that any changes you make + to that tree using the markup backend will not be reflected + if you go back to the XML backend. + + * tests/testbackend.c: include stdio.h to fix warnings. + +Wed Oct 22 22:59:47 2003 Matthias Clasen + + * doc/gcnf/Makefile.am: + * doc/gconf/gconf.sgml: + * doc/gconf/tmpl/gconf-backend.sgml: + * doc/gconf/tmpl/gconf-client.sgml: + * doc/gconf/tmpl/gconf-engine.sgml: + * doc/gconf/tmpl/gconf.sgml: Use gtk-doc in xml mode. (#111791) + +2003-10-22 Havoc Pennington + + * gconf/gconf.c, gconf/gconfd.c: use g_string_new (NULL) + rather than g_string_new ("") #106974 Morten Welinder + + * gconf/gconfd.c (gconf_main): change cleanup/exit timeout to 30 + seconds, bug #97361 + + * backends/xml-cache.c (cache_clean): whack string that needed + ngettext, as it was dumb debug spew. #123866 Danilo Segan + + * gconf/gconf.c (gconf_handle_corba_exception): fix to avoid + passing arbitrary data as printf format, #123556 Dan Winship + + * backends/markup-backend.c (resolve_address): remove unused + variables, #122734 Kjartan Maraas + + * gconf.spec.in: remove, not maintained + + * gconf/gconf-error.c (gconf_error_new_valist): don't put a + newline in error messages, bug #111845 Morten Welinder + + * throughout: s/dir/directory/ bug #111822 Christian Rose + + * gconf/gconfd.c (gconf_server_load_sources): avoid string + concatenation with #defines, confuses gettext, #111821 + Christian Rose + + * gconf/gconfd.h: fix gconf_get_poa() declaration, #110186 + Morten Welinder + + * gconf/gconf-internals.c (read_current_server_and_set_warning): + fix a warning, bug #110179 + + * gconf/gconfd.c (test_safe_tmp_dir): fix warning + +2003-10-22 Havoc Pennington + + * gconf/gconf-client.c: patch from Ray Strode to avoid breaking + the schema name cache, bug #94412 + + * doc/rationales.txt: add file to track bugzilla numbers to refer + to later + +2003-10-22 Vincent Untz + + * backends/xml-dir.c (dir_load_doc): don't mark "%s" as translatable. + Fix bug #84893. + +2003-10-09 Ross Burton + + * doc/Makefile.am: + * doc/gconftool-2.1: + Added a basic man page. + +2003-10-07 Aygimantas Beru?ka + + * configure.in: Added "lt" to ALL_LINGUAS + +2003-09-26 Havoc Pennington + + * gconf/gconf.c (gconf_engine_all_dirs): fix crash calling this + with --direct (local source), the list contains strings not + GConfEntry + +Wed Sep 10 15:23:17 2003 Jonathan Blandford + + * configure.in: Rerelease 2.4.0.1 to fix glib-gettext problem. + +2003-09-08 Havoc Pennington + + * configure.in: 2.4.0 + +2003-09-05 Taneem Ahmed + + * configure.in: Added "bn" to ALL_LINGUAS. + +2003-08-30 Laurent Dhima + + * configure.in: Added "sq" (Albanian) to ALL_LINGUAS. + +2003-08-18 Muktha + + * gconf/gconftool.c (main) : Print usage message when no options are + passed to gconftool-2. Fixes #70316. + +2003-08-11 Christophe Fergeau + + * doc/gconf/tmpl/gconf-client.sgml: + * doc/gconf/tmpl/gconf.sgml: Update API documentation (in particular + the gconf_client doc). Fixes #89348. + +2003-08-11 Frederic Crozat + + * gconf/gconf-client.c: (gconf_client_real_unreturned_error), + (gconf_client_real_error), (cache_pairs_in_dir): + * gconf/gconf-internals.c: (gconf_log): + * gconf/gconf-listeners.c: (ltable_insert), (ltable_remove), + (spew_func), (ltable_spew): + * gconf/gconfd.c: (main): + * gconf/gconftool.c: (main), (recurse_subdir_list), + (do_recursive_list), (do_dump_values), (list_pairs_in_dir), + (print_schema_in_xml), (print_pair_in_xml), (print_list_in_xml), + (print_value_in_xml), (dump_entries_in_dir), (do_dir_exists), + (do_spawn_daemon), (do_get), (read_value_type), (do_set), + (do_get_type), (do_get_list_size), (do_get_list_element), + (do_schema_info), (do_associate_schema), (do_dissociate_schema), + (do_set_schema), (do_all_entries), (do_unset), + (do_recursive_unset), (do_all_subdirs), (get_list_value_from_xml), + (get_pair_value_from_xml), (get_schema_values_from_xml), + (get_values_from_xml), (set_values), (fill_default_from_string), + (extract_global_info), (process_locale_info), (process_key_list), + (get_schema_from_xml), (hash_install_foreach), + (hash_uninstall_foreach), (process_schema), (process_list), + (do_load_file), (do_makefile_install), (do_makefile_uninstall), + (check_err), (key_breakage), (do_break_key), (do_break_directory), + (do_get_default_source): + * gconf/gnome-testclient.c: (notify_func), (main): + * gconf/testclient.c: (main), (notify_func): + use g_print/g_printerr instead of printf/fprintf(strerr). It + fixes UTF-8 being displayed on command line with non-UTF-8 locales. + +2003-08-09 Guntupalli Karunakar + + * configure.in: Added "hi" in ALL_LINGUAS. + +2003-03-16 Jeffrey Stedfast + + Fixes bug #108574 + + * backends/xml-dir.c (gconf_xml_doc_dump): Replacement for + xmlDocDump() which is not reliable. While we're at it, also dump + formatted xml. + (dir_sync): Call the new gconf_xml_doc_dump() rather than + xmlDocDump() because we don't want to risk losing user settings. + +2003-07-19 Havoc Pennington + + * doc/gconf/gconf.sgml: doc fixes from Samuel Stringham + #117830 + +2003-07-17 Havoc Pennington + + * gconf/gconftool.c (do_recursive_unset): do a suggest_sync after + do_recursive_unset() (which shouldn't be necessary except that we + suck). Patch from Greg Hudson #117713 + + * gconf/gconf-value.h: flags can't be 0, patch from + Greg Hudson, #117712 + +2003-07-07 Mark McLoughlin + + * gconf/gconf-client.c: + (recurse_subdir_list): the subdir list contains full + paths, so don't append it to the full path. Fixes + recursive preloading. + (gconf_client_preload): don't get (and leak) the list + of subdirs if we're only doing onelevel preloading. + +2003-06-28 Dafydd Harries + + * gconf/gconftool.c (main): Slight extra option tweaking. + +2003-06-26 Dafydd Harries + + * gconf/gonftool.c (main): Tidied up "--foo option must be used by + itself" messages. + +2003-06-26 Ross Golder + + * gconf/gconftool.c (do_dissociate_schema): Fixed a misleading + string (#116042) + * gconf/gconftool.c (do_associate_schema): Prevent segfault when + no args supplied (#116040) + * gconf/gconftool.c (do_dissociate_schema): Prevent segfault when + no args supplied (#116040) + +2003-06-26 Abel Cheung + + * configure.in: Added "am" "mk" to ALL_LINGUAS. + +2003-06-26 Abel Cheung + + * configure.in: Added "am" "mk" to ALL_LINGUAS. + +2003-06-23 Havoc Pennington + + * NEWS: update + + * configure.in: 2.3.3 + +2003-06-22 James M. Cape + + * gconf/gconf-database.c: Fix for GCC 3.3 warning (fixes #115722). + +2003-06-18 Mohammad DAMT + + * po/id.po: Added Indonesian translation + * configure.in: Added "id" to ALL_LINGUAS + +2003-06-18 Rodrigo Moya + + Fixes #73323 + + * gconf/gconf-sources.h: moved GConfUnsetFlags enum... + + * gconf/gconf-value.h: ...to here. + + * gconf/gconf-client.[ch] (gconf_client_recursive_unset): + implemented new function for calling the unrecursive_unset + method on the engine. + +2003-06-12 Guntupalli Karunakar + + * configure.in: Added "ml" in ALL_LINGUAS. + +2003-06-06 Michael Meeks + + * configure.in: remove the explicit linc module. + +2003-05-31 Michael Meeks + + * backends/markup-tree.c: include + +2003-05-19 Ross Burton + + * gconf/gconftool.c: Implement uninstalling GConf schemas, closing + #104487. Patch based on work by jmmv@hispabsd.org . + +2003-05-19 Telsa Gwynne + + * configure.in: Add cy (Welsh) to ALL_LINGUAS + +2003-05-09 Mark McLoughlin + + * gconf/gconftool.c: + (print_value_in_xml): escape the string text before + outputting it in the XML. + (dump_entries_in_dir): ouput the keyname relative to + the base directory rather than the current directory. + +2003-05-08 Ross Burton + + * gconf/gconf-client.[ch]: Add gconf_client_notify(), to fake a + notification from a monitored key. Fixes #70553. + +2003-05-07 Danilo Egan + + * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS. + +2003-05-03 Havoc Pennington + + * configure.in: 2.3.2 + + * NEWS: update + +2003-04-26 Masahiro Sakai + + * configure.in: call AC_LIBTOOL_WIN32_DLL. + + * backends/Makefile.am: add -no-undefined to *_la_LDFLAGS. + add $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la to *_la_LIBADD. + + * gconf/Makefile.am (libgconf_2_la_LDFLAGS): add -no-undefined. + + * gconf/gconfd.c (main): use g_strdup_printf() instead of strlen() + + g_malloc() + g_snprintf(). + +03-04-23 Muktha + * gconf/gconfd.c + When reading the saved_state file, gconfd will not log message if + the saved_state file is not present. Fixes bug #110944. + +2003-03-27 Brian Cameron + + * gconf/gconf-sanity-check.c + Updated text of the lock question to more clear text that was + approved by the docs team. Havoc reviewed/approved this + change. + +2003-03-27 Ross Burton + + * gconf/gconftool.c: + Added --get-type, --get-list-size and --get-list-element. Patch + from TODO, closing #91349. + (do_dump_values): Return an int as the prototype says we do. + + Applied patch from Jeff Franks with a extensions, + closing #97205. + * gconf/gconf-schema.h: + * gconf/gconf-value.h: Wrapped both header files in an extern "C" + for C+compilation. + + * gconf/gconf-internals.h: + * gconf/gconf-value.h: Exported gconf_entry_copy(), _ref and + _unref. Moved declaration from gconf-internals.h to + gconf-value.h. Also deprecated gconf_entry_free(). + + * doc/gconf/tmpl/gconf-value.sgml: Fixed typo, GCONF_VALUE_DOUBLE, + in the description for gconf_value_get_float(). Changed the value + type to GCONF_VALUE_FLOAT. + + * gconf/gconf-client.h: Added missing GCONF_CLIENT_GET_CLASS + macro. + +2003-03-26 Havoc Pennington + + * gconf/gconf-internals.c (gconf_get_daemon_dir): we need + giop_tmpdir_init(), linc_get_tmpdir() isn't helpful. Revert to + /tmp/gconfd-foo for now. + +2003-03-26 Havoc Pennington + + * gconf/gconf-internals.c (gconf_get_daemon_dir): call + linc_set_tmpdir() to maybe make it work + +2003-03-26 Havoc Pennington + + * configure.in: bump to 2.3.1 + + Apply "local locks" patch with linc_get_tmpdir modification from + Michael, and the default changed to local locks. Now to + get global locks you must set GCONF_GLOBAL_LOCKS=1. + + * gconf/gconf-internals.c (gconf_log): convert to locale encoding + to pass stuff to syslog + +2003-03-26 Christian Rose + + * configure.in: Added "yi" to ALL_LINGUAS. + +2003-03-14 Mark McLoughlin + + Basically the same patch as the previous one .. but + for the markup backend. + + * backends/markup-backend.c: + (resolve_address): update. + (clear_cache): use markup_tree_rebuild() instead of + re-creating the tree. + (ms_new): remove the read_only arg and s/markup_tree_new/ + markup_tree_get/ + (ms_destroy): s/markup_tree_free/markup_tree_unref/ + + * backends/markup-tree.[ch]: + (markup_tree_get), (markup_tree_unref): rename these + from new()/free() and share caches for sources with + the same root directory. + (markup_tree_rebuild): impl. + (markup_dir_needs_sync): we don't keep the read_only + flag per-tree anymore so don't check it here. + +2002-07-16 Mark McLoughlin + + Use the same cache for multiple sources with the same + root directory. + + * backends/xml-cache.[ch]: + (cache_get): rename from cache_new and return and existing + cache for this root dir if one exists. Also use g_free + as a key destroy handler for the nonexistant hash instead + of doing it manually. + (cache_unref): rename from cache_destroy and only destroy + when refcount drops to zero. + (cache_set_nonexistent), (cache_destroy_nonexistant_foreach): + don't free the key here. + + * backends/xml-backend.c: + (xs_new): s/cache_new/cache_get/ + (xs_destroy): s/cache_destroy/cache_unref/. + +2003-03-14 Mark McLoughlin + + * backends/Makefile.am: kill unused bdb SOURCES. + +2003-03-13 Mark McLoughlin + + Implement --load and --dump options for gconftool. e.g.: + gconftool-2 --dump /apps/metacity > metacity.dump + gconftool-2 --config-source blah --load metacity.dump + or + gconftool-2 -load metacity.dump /apps/other_metacity + + * gconf/gconftool.c: + (recurse_subdir_dump), (do_dump_values), + (print_schema_in_xml), (print_pair_in_xml), + (print_list_in_xml), (print_value_in_xml), (get_key_relative), + (dump_entries_in_dir): impl dumping to XML. + (get_list_value_from_xml), (get_car_cdr_value), + (get_pair_value_from_xml), (get_schema_values_from_xml), + (get_values_from_xml), (get_first_value_from_xml), (set_values): + impl loading entries from XML. + (hash_listify_foreach), (process_entry), (fill_default_from_string), + (extract_global_info), (process_locale_info), (get_schema_from_xml), + (hash_install_foreach), (process_schema), (process_list), + (do_load_file), (do_makefile_install): munge the entries loading + code with schemas loading code. + +2003-03-05 Havoc Pennington + + * backends/Makefile.am: remove BDB backend + + * configure.in: remove BDB backend support + +2003-03-04 Mark McLoughlin + + Fixes weird bug where a directory appears to not exist when + you create subdirectories of it. + + * backends/xml-cache.c: + (cache_lookup): use unset_nonexistent. + (cache_unset_nonexistent): unset the existent flag not + only on this directory but all parent directories. + +2003-02-25 Havoc Pennington + + * configure.in: bump to 2.3.0 unstable version number to avoid + confusion + +2003-02-22 Roozbeh Pournader + + * configure.in: Added "fa" to ALL_LINGUAS. + +2003-02-12 Mark McLoughlin + + * gconf/gconf.c: (gconf_engine_set), + (gconf_engine_associate_schema): don't rely on + caller passing in a valid GError** in assertions. + +2003-02-12 Mark McLoughlin + + * backends/xml-dir.c: (listify_foreach): set the schema + name even when the key is set. + +2003-01-21 Ross Burton + + * doc/gconf-1.0.dtd: Add comments to the DTD. + +2003-01-21 Christian Rose + + * configure.in: Added "mn" to ALL_LINGUAS. + +2003-01-12 Havoc Pennington + + * configure.in: 2.1.90 + +2002-12-04 Havoc Pennington + + * backends/markup-tree.c (markup_entry_get_value): fix + a logic error causing us to deref a null pointer, reported + by Brian Alexander Quistorff + +2002-11-22 Dan Mills + + * configure.in: fix gtk-doc version check. + +2002-11-09 Dmitry G. Mastrukov + + * configure.in: Added Belarusian to ALL_LINGUAS + +2002-11-02 Havoc Pennington + + * gconf/gconf-internals.c + (gconf_value_list_to_primitive_list_destructive): fix using the + wrong type (value->type not value->list_type) in an error message, + #96210 + +2002-10-18 Havoc Pennington + + * gconf/gconf-internals.c (subst_variables): patch from + Benn Vosseteig fixing a crash with a long path to $HOME + +2002-09-30 Yanko Kaneti + + * doc/gconf/gconf.sgml: + * doc/gconf-1.0.dtd: Some additions to match the full range of schema + elements curently accepted by gconftool. Supposedly complete now. + +2002-09-18 Yanko Kaneti + + * doc/Makefile.am: change the gconf-1.0.dtd install location to + $(datadir)/sgml/gconf which sounds more standards compliant. + +2002-09-18 Havoc Pennington + + * backends/markup-backend.c (resolve_address): add FIXME about + GCONF_LOCAL_LOCKS + +2002-09-18 Havoc Pennington + + Merge gconf-markup-hacking branch + + * tests/testbackend.c: add a test for backends + + * gconf/gconftool.c (extract_global_info): add more error + checking, adding more error strings + + * gconf/gconf-schema.c (gconf_schema_validate): do some more + validation with error strings that couldn't be added to stable + branch + + * backends/xml-dir.c: fix quoting in error string + + * backends/xml-backend.c (resolve_address): fix quoting in error + string + + * backends/markup-tree.c: make it work + + * backends/markup-backend.c: make it work + + * backends/Makefile.am (libgconfbackend_markup_la_SOURCES): add + markup-backend.c + +2002-09-18 Yanko Kaneti + + * gconf.m4.in: Introduce --disable-schemas-install and the + GCONF_SCHEMAS_INSTALL conditional, which allows disabling + the schemas installation given the package decides to support it. + + * doc/Makefile.am: + * doc/gconf/gconf.sgml: + * doc/gconf-1.0.dtd (ADDED): formal dtd for the schema files. + Not yet complete. Installed in $(pkgdatadir)/xml/gconf/ for now. + +2002-09-18 Havoc Pennington + + * configure.in: bump to 2.1.0, to get in sync with gnome and allow + identifying HEAD + +2002-09-09 jacob berkman + + * gconf/GConf.idl: + * gconf/GConfX.idl: + * gconf/Makefile.am: + * gconf/gconf-database.h: + * gconf/gconf-internals.h: + * gconf/gconf.c: + * gconf/gconfd.c: + * gconf/gconfd.h: rename GConf.idl to GConfX.idl in order to build + on non-case-sensitive file systems + +2002-09-06 Peteris Krisjanis + + * configure.in: Added Latvian (lv) to ALL_LINGUAS + +2002-08-04 Havoc Pennington + + * configure.in: 1.2.1 + +2002-07-12 Brian Cameron + + * gconf/gconfd.c + Removed reference to gnome_segv2 since it was not used. + +2002-07-11 Brian Cameron + + * gconf-2.0.pc.in + * gconf.spec.in + * gconf/Makefile.am + * gconf/gconfd.c + * gconf/gconf-internals + Now install gconfd-2 and gconf-sanity-check-2 in libexec + +2002-07-09 Mark McLoughlin + + * gconf/gconfd.c: (obtain_database): fix + silly with addresses list. + +2002-07-04 Havoc Pennington + + * gconf/gconfd.c (logfile_read): close our FILE* when we're done. + Reported by Michael. + +2002-07-03 Yanko Kaneti + + * configure.in: (ALL_LINGUAS) Added Bulgarian (bg). + +2002-06-16 Havoc Pennington + + * gconf/gconf-sources.c (gconf_sources_recursive_unset): don't + propagate nonexistent errors, fixes a warning. + +Fri Jun 14 13:24:42 2002 HideToshi Tajima + + * gconf/gconfd.c: include for setlocale. + +2002-06-11 Havoc Pennington + + * configure.in: version 1.2.0 + + * README, NEWS, AUTHORS: update + +2002-06-02 Havoc Pennington + + * gconf/gconftool.c: add --version argument, #79555, involves a + help string but it should be OK if this string isn't translated. + + * gconf/gconf-client.c (gconf_client_get): add some + g_return_if_fail, #74984 + (gconf_client_key_is_writable): handle NULL entry, + #75503 + + * gconf/gconfd.c (gconf_handle_segv): disable bug-buddy for now, + too much recursion danger. + + * gconf/gconf-internals.c, gconf/gconfd.c: replace isspace() with + g_ascii_isspace, bug #70945 + + * gconf/gconf-value.c (gconf_value_new): init i18n here + + * gconf/gconf.c (gconf_engine_blank): init i18n here + + * gconf/gconftool.c (main): init i18n here, call textdomain + + * gconf/gconfd.c (main): init i18n here, and call setlocale and + textdomain + + * gconf/gconf-internals.c (_gconf_init_i18n): function to call + from various places + (gconf_orb_get): init i18n here + + * configure.in: require ORBit 2.4.0, linc 0.5.0, + + bump version to 1.1.11 + + fix setting of gconflocaledir (there was a typo, + gtklocaledir instead of gconflocaledir) + + check for bind_textdomain_codeset + + * backends/Makefile.am (noinst_LTLIBRARIES): make markup lib + noinst for now, until we merge back the gconf-markup-hacking + branch post-string-freeze + +2002-06-02 Havoc Pennington + + * backends/xml-cache.c (cache_sync): avoid zombie directory cruft by + aggressively redoing the resync anytime we delete a subdir, which + might enable a parent dir to also be deleted. + +2002-06-02 Havoc Pennington + + * backends/xml-cache.c (cache_lookup): don't leave a dir marked + nonexistent after creating it + (cache_set_nonexistent): remove hash entry _before_ freeing + the current key. Should fix assorted "gconf loses my settings" + kind of bugs. + + * backends/xml-dir.c (dir_sync): don't try to delete the root dir, + should fix some warnings. + +2002-05-27 Hasbullah Bin Pit + + * configure.in: Added Malay (ms)to ALL_LINGUAS. + * po/ms.po: Added Malay Translation. + +2002-05-27 Havoc Pennington + + * backends/markup-tree.c: implement all the tree reading stuff, + need to implement modification/writing and implement + markup-backend.c. (Backend is totally unused and unusable + until post-GNOME2, don't worry.) + + * gconf/gconf-internals.h (gconf_value_set_string_nocopy): + new function + +2002-05-15 Pablo Saratxaga + + * configure.in: Added Vietnamese (vi) to ALL_LINGUAS + +2002-05-10 Shivaram U + + * doc/gconf/Makefile.am: Honouring CFLAGS and LDFLAGS passed by the user + Ensures successful 64bit build on Solaris. + +2002-05-09 Michael Meeks + + * backends/xml-entry.c (entry_get_value): ensure we + don't print a NULL. + +2002-04-29 Pablo Saratxaga + + * configure.in: Added Basque (eu) to ALL_LINGUAS + +2002-04-29 Havoc Pennington + + * configure.in: 1.1.10 + +2002-04-26 Havoc Pennington + + * gconf/gconf-changeset.c: make the internal functions static + + * gconf/gconf-internals.c (byte_type): make static + (get_hostname): remove + + * gconf/gconfd.c (add_client): set the maximum connection buffer + to a reasonable-size value in order to handle locked-up clients. + + * backends/xml-entry.c (node_set_schema_value): opacity fixes + + * gconf/gconftool.c (list_pairs_in_dir): opacity fixes + + * gconf/gconf.c: opacity fixes + (gconf_engine_get_for_address): remove the g_warning about using + this function; the change notification is a bit broken but maybe + it's still useful. + + * gconf/gconf-sources.c: opacity fixes + + * gconf/gconf-database.c: namespace fixes + + * gconf/gconf-internals.h: namespace some things + + * gconf/gconf-internals.c: opacity fixes + (fill_corba_schema_from_gconf_schema): + make static + (corba_schema_from_gconf_schema): make static + + * gconf/gconf-schema.c: do groundwork to make GConfSchema opaque, + and fix some lack of spaces before parens + + * gconf/gconf-value.c: do groundwork to make GConfEntry mostly + opaque (implement with GConfRealEntry) + +2002-04-19 Abel Cheung + + * configure.in: Added "zh_TW" to ALL_LINGUAS. + +2002-04-10 jacob berkman + + * backends/xml-dir.c (my_xml_parse_file): g_file_get_contents() + takes gsize, not int + +2002-03-29 Havoc Pennington + + * configure.in: 1.1.9 + + * gconf/gconf-client.c (gconf_client_get_string): clean up some + weird cruft + + * gconf/gconf-internals.c (primitive_value): steal the schema, + avoids a copy. + + * gconf/gconf-value.h, gconf/gconf-value.c: Hide private fields, + suggested by Michael. But then make them public again + for now due to libgnome/eel being broken. + + * configure.in (PKGCONFIG_MODULES): require the right versions of + various things + +2002-03-24 Havoc Pennington + + * gconf/gconf-internals.c (gconf_activate_server): save a bit more + data about the errors that occurred for the error message, + and shorten the message in favor of a link to the new + gconf web page. + +2002-03-23 Havoc Pennington + + * gconf/gconfd.c (gconf_main): change exit timeout to 2 minutes + +2002-03-22 Havoc Pennington + + * gconf/gconfd.c (gconf_set_exception): change "returning + exception" message to DEBUG priority + +2002-03-20 Havoc Pennington + + * tests/testpersistence.c: remove the -G_MAXFLOAT test, since + it didn't work and probably shouldn't + + * gconf/gconf-internals.c (gconf_double_to_string): use + g_ascii_dtostr() + (gconf_string_to_double): use g_ascii_strtod() + +2002-03-21 Havoc Pennington + + * configure.in: fuck, Martin apparently deleted -Wall last March. + + * gconf/gconftool.c (main): don't pass unused arg to do_get_default_source + + * backends/xml-test.c: include all headers we use + + * backends/xml-backend.c (remove_dir): fix unused variable + + * backends/xml-dir.c (dir_rescan_subdirs): return a value in all + cases + + * gconf/gconf-sanity-check.c (check_gconf): remove unused variables + + * gconf/gconfd.c: include sys/wait.h + + * gconf/gconf-client.c: remove unused function + +2002-03-21 Havoc Pennington + + * backends/xml-entry.c (schema_node_extract_value): be sure + we use only NODE elements as a fallback, and that we + always use a NODE if possible + (schema_node_extract_value): fix bug that would fail to fall back + to a less-well-matched locale value if a better matched locale had + no value. Should fix Galeon. And the world rejoiced! Assuming + it actually fixes it. ;-) + +2002-03-21 Havoc Pennington + + * gconf/gconf-schema.c: move schema accessors to be functions not + macros. + +2002-03-20 Havoc Pennington + + * gconf/gconf-internals.c + (gconf_value_list_to_primitive_list_destructive): don't call + gconf_value_get_int on a bool. WTF. + + * gconf/gconfd.c (main): enable the signal handler for USR1 + + * backends/xml-dir.c (dir_load_doc): do our own file reading, only + use libxml to parse, so we can return an error on I/O problems + (as opposed to the current behavior, nuking the file contents, + which only makes sense for corrupt files) + +2002-03-20 Havoc Pennington + + * gconf/gconf-value.c: change all the "getters" to be functions + not macros, so we can add g_return_if_fail and be typesafe and + generally suck less. Suggested most recently by Jody. + +2002-03-19 Havoc Pennington + + * backends/xml-cache.c (dircmp): fix bad assertion reported + by lunarbard on #gnome + +2002-03-14 Havoc Pennington + + * gconf/gconf-sanity-check.c (check_gconf): beef up the sanity + checker to detect stuck locks, missing config files, and other + screwups. + +2002-03-10 Havoc Pennington + + * gconf/gconf-sources.c (gconf_sources_query_metainfo): fix + obnoxious typo (s/mi/this_mi/), also needed to fix bug + reported by Kristian. + + * backends/xml-backend.c (query_metainfo): make key relative prior + to looking up metainfo. Fixes bug where schema defaults would + mysteriously get lost in some cases, reported by Kristian + Rietveld. + +2002-03-07 Havoc Pennington + + * backends/xml-test.c: test program for XML backend code + + * configure.in: add a "minimum" debug mode and compile with it + by default. + + * gconf/gconftool.c (main): call setlocale() + + * tests/runtests.sh: run tests in various locales + + * gconf/gconf-value.h: add more padding to GConfEntry + + * gconf/gconf-internals.c (gconf_CORBA_Object_equal): + (gconf_CORBA_Object_hash): remove stupid inlining of these + functions + +2002-02-26 Havoc Pennington + + * gconf/gconf-client.c (notify_one_entry): protect notify callback + with a reference count around the entry, for reentrancy. Reported + by Rodrigo Moya and Alex Larsson. + + * gconf/gconf-value.c (gconf_entry_unref, gconf_entry_ref): new + internal (for now) functions + (gconf_entry_free): just call gconf_entry_unref + +Sat Feb 16 01:27:29 2002 Jonathan Blandford + + * gconf/gconftool.c (read_value_type): fix typo in reading args. + +2002-02-14 Dave Camp + + * gconf/gconf.c: (gconf_string_to_enum): Use g_ascii_strcasecmp + instead of g_strcasecmp. + * gconf/gconfd.c: (gconf_main), (gconf_main_quit): Replace + g_main_* with g_main_loop_*. + * examples/simple-controller.c: (main): Use g_signal_connect + instead of gtk_signal_connect. + * examples/simple-view.c: (key_changed_callback): Use + gtk_label_set_text instead of gtk_label_set. + +2002-02-12 Havoc Pennington + + * configure.in: version 1.1.8 + +2002-02-10 Jody Goldberg + + * gconf/gconftool.c : Include libxml/globals to get xmlFree + Without it we call a NULL function pointer. + * backends/xml-entry.c : ditto. + +2002-02-10 Havoc Pennington + + * gconf/gconfd.c (signal_handler): run gnome_segv if DISPLAY is + set. Why not. may turn it off for production. + +2002-02-10 Havoc Pennington + + * gconf/gconf.c (CHECK_OWNER_USE): put name of function in the + warning + (gconf_engine_associate_schema): remove warning from this + function, it has no GConfClient equivalent and won't mangle the + cache + +2002-02-10 Zbigniew Chyla + + * configure.in (ALL_LINGUAS): Added pl (Polish). + +2002-02-08 jacob berkman + + * gconf.m4.in: revert some stuff i didn't mean to commit + yesterday. Fixes problems when building with DESTDIR set. + +2002-02-07 jacob berkman + + * gconf/Makefile.am (install-exec-local): don't install gconftool + symlink + + * gconf.m4.in (AM_GCONF_SOURCE_2): call gconftool-2 rather than + gconftool + +2002-02-05 Havoc Pennington + + * gconf/gconf-sanity-check.c (main): add gconf-sanity-check-2 app, + which either exits sucessfully and does nothing, or pops up a + dialog explaining a gconf problem and exits with a failure code. + Could be placed in gnome-session, or at least we can tell users + to run it as a diagnostic tool. + + Only catches very simple problems so far. + + * configure.in: define XML_AND_GTK_CFLAGS + +2002-02-05 Michael Meeks + + * gconf/gconf.h: move (gconf_debug_shutdown) out of + the internals guard - doh. + + * gconf/gconf-client.c (gconf_client_get_default): + ensure we still own the reference we keep around. + +2002-02-04 Havoc Pennington + + * gconf/Makefile.am (regenerate-built-sources): give up and check + stupid enum sources in to CVS and require manual rebuild. + + * configure.in: bump to 1.1.7, do library versioning. + Default bdb backend to disabled, since I don't think + it's being actively used/tested. + + * autogen.sh: use automake-1.4 aclocal-1.4 if found + +2002-02-02 jacob berkman + + * gconf/Makefile.am: re-enable explicit dependency on built + sources, as it doesn't build otherwise. + +2002-02-01 Havoc Pennington + + * gconf/Makefile.am: include the *.sh scripts + + * gconf/regenerate-enum-footer.sh: fix screwup that broke build + +2002-02-01 Havoc Pennington + + * gconf/Makefile.am: move the complicated enum rules into small + shell scripts (regenerate-enum-*.sh), rename CORBA_SOURCES to + CORBA_SOURCECODE + +2002-01-28 Michael Meeks + + * gconf/gconf-database.c: warning cleans. + (impl_ConfigDatabase3_add_listener_with_properties): + init name. + (gconf_database_add_listener): right args for format. + + * gconf/gconf-client.c: warning cleans. + + * gconf/gconf-internals.c (gconf_orb_release): + return shutdown status. + + * gconf/gconf.c (gconf_detach_config_server): + privatize again, and split out ORB shutdown into + (gconf_debug_shutdown): here. + +2002-01-25 Michael Meeks + + * gconf/gconf.c (try_to_contact_server): release the + server reference, if it's to a duff object. + (gconf_get_config_listener): strip local 'listener', + since we have a static module global for that. + (gconf_detach_config_server): release the listener. + (gconf_get_config_listener): release the poa & manager + references. + + * tests/testgconf.c (main): add + gconf_detach_config_server + + * gconf/gconf-internals.c + (gconf_orb_get): remove bonobo activation + worries, kill bogus fiddling with the default + context. + (gconf_orb_release): impl. + + * gconf/gconf.c (gconf_detach_config_server): + publicise & destroy engines_by_cb. + (database_rec_release): impl. + (gconf_engine_set_database): use g_hash_table_new_full + (gconf_engine_detach): just remove from the hash. + (try_to_contact_server): release the server reference, + if it's to a duff object. + +2002-01-28 Ross Golder + + * configure.in: Updated popt URL. + +2002-01-27 Havoc Pennington + + * gconf/Makefile.am: don't use BUILT_SOURCES, might fix annoying + build problems + (CLEANFILES): put stamp files in CLEANFILES + (s-enum-types-h): make enum stamps depend on Makefile + +2002-01-20 Havoc Pennington + + * gconf/Makefile.am: add gconf-enum-types.h/gconf-enum-types.c + files, thanks to Johan Dahlin + + * gconf-2.0.pc.in (Libs): oops, we had Requires: bonobo-activation + still + +2002-01-16 Anders Carlsson + + * gconf/gconf-client.c (gconf_client_get_full): Plug a leak. + +2002-01-14 Havoc Pennington + + * gconf/gconf.c (gconf_key_is_below): fix to handle root dir + + * gconf/gconftool.c (main): add --unapply-schema mode + + * gconf/gconf-database.c (impl_ConfigDatabase_set_schema): allow + unset schema if we get an empty schema name + + * gconf/gconf.c (gconf_engine_associate_schema): allow NULL + schema name to unset the schema + + * gconf/gconftool.c (do_recursive_unset): use new + gconf_engine_recursive_unset internal function to do the unset + + * backends/xml-cache.c, backends/xml-dir.c: rearrange things + to try and make directories auto-disappear when empty + + * backends/xml-backend.c (remove_dir): make this do nothing + + * backends/xml-dir.c (dir_all_subdirs): cache subdir names in the + directory so we can cheaply check if we have subdirectories + + * gconf/gconf-sources.c (gconf_sources_set_value): enhance the + other giant error message + + * gconf/gconf-internals.c (gconf_activate_server): improve error + message to cover stale locks and explain how to active TCP for + ORBit + + * gconf/gconf-sources.c (gconf_sources_recursive_unset): implement + + * gconf/gconf.c (gconf_key_check): handle NULL key + + * gconf/gconf-sources.c (gconf_sources_set_schema): allow NULL + schema name + + * gconf/GConf.idl: add flags to recursive_unset + + * gconf/gconf.c (gconf_engine_recursive_unset): Add this internal + API to use in gconftool etc. + +2002-01-14 Havoc Pennington + + * gconf/gconf-client.c (gconf_client_get_full): fix segfault on + missing entry + +2002-01-12 Havoc Pennington + + * examples/basic-gconf-app.c (main): remove unused variable, + fix from Markus Bertheau + + * gconf/gconf-client.c (get): fix to always store the same + semantic thing in the cache, regardless of whether + user wanted the schema default (always pass use_default = TRUE + to GConfEngine) + (gconf_client_key_is_writable): avoid pointless copies if + possible, to make this fast + + * gconf/gconf-schema.h: add padding to GConfSchema + + * gconf/gconf-value.h: add padding to GConfEntry + + * gconf/gconf-value.c (gconf_entry_equal): new internal function + + * gconf/gconf-client.c: queue notifies to an idle handler, replace + CacheEntry with GConfEntry + + * gconf/gconf-client.h (struct _GConfClientClass): add padding + (struct _GConfClient): add padding + +2001-12-11 Havoc Pennington + + * tests/testgconf.c (check_unset): fixes + +2002-01-10 Havoc Pennington + + * configure.in: version to 1.1.6 + (GCONF_REVISION): increment + +2002-01-08 Mark McLoughlin + + * backends/xml-dir.c: + (struct _Dir): kill unused subdir_cache. + (dir_sync): move incorrect assertion. + +2002-01-07 Mark McLoughlin + + * gconf/gconf-database.c: (gconf_database_new): + * gconf/gconf.c: (gconf_get_config_listener): + * gconf/gconfd.c: (main): no need to explicitly activate CORBA objects, + the RootPOA has the IMPLICIT_ACTIVATION policy. + +2002-01-05 Havoc Pennington + + * gconf/gconf-client.c (gconf_client_cache): return bool for + whether the value in the cache changed + (notify_from_server_callback): short-circuit notification if a + value hasn't actually changed. would be better to do this + server-side, but that's a bit complicated for now. + + * gconf/gconf-value.c (gconf_value_compare): new function, + internal for now to avoid API addition + + * gconf/gconf-client.c (cache_entry_list_destructively): new + static function + (gconf_client_all_entries): cache the requested entries, if + we are monitoring the dir we get the values from. + + * gconf/gconf-value.c (gconf_entry_copy): new function, internal + for now to avoid API addition + +2002-01-04 Havoc Pennington + + * gconf/gconf-client.c (gconf_client_class_init): add + GCONF_DEBUG_TRACE_CLIENT setting, to debug spew about + what's going on + (gconf_client_real_unreturned_error): also ignore + GCONF_ERROR_NO_WRITABLE_DATABASE since it's typically not + an error to report. + +2002-01-04 Havoc Pennington + + * gconf/gconf-client.c (gconf_client_preload): allow preloading + directories that are below directories being monitored, not just + the exact directory being monitored. + +2002-01-04 Havoc Pennington + + * gconf/gconf-database.c: support storing names of clients + and new ConfigDatabase3 + (client_alive_predicate): fix backward predicate; we were removing + all live clients, and keeping all dead clients. Doh! Doh! Doh! + + * gconf/gconf.c (gconf_engine_notify_add): use + add_listener_with_properties if available to send name of client + to the server + + * gconf/GConf.idl: put in ConfigDatabase3 with a couple of new + methods, just to make this file more horrible + +2002-01-04 Havoc Pennington + + * gconf/gconfd.c (main): if GCONF_DEBUG_OUTPUT is set, + enable gconf_log_debug_messages + +2002-01-03 Havoc Pennington + + * gconf/gconftool.c (main): honor + GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL to do nothing for + --makefile-install-mode + + * backends/xml-cache.c (cache_sync): fill in the error if we + return a failure code. + +2002-01-03 Havoc Pennington + + * gconf.m4.in: Add quotes to + GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' so that "make + install sysconfdir=/foo" will work. May break some conceivable + usage of this variable. + +2001-12-22 Duarte Loreto + + * configure.in: Added portuguese (pt) to ALL_LINGUAS + +2001-12-17 Havoc Pennington + + * gconf/gconf-listeners.c: reference count the listeners, make a + copy of listener lists and ref all listeners prior to doing the + notifies, to minimize reentrancy screwups. + +2001-12-17 Josh Barrow + + * examples/basic-gconf-app.c: + s/GLIB_DISABLE_DEPRECATED/G_DISABLE_DEPRECATED/ + +2001-12-17 Darin Adler + + * doc/gconf/.cvsignore: + * examples/.cvsignore: + Update. + +2001-12-11 Havoc Pennington + + * gconf/gconfd.c (drop_old_clients): fix this + + * gconf/gconf-database.c (client_alive_predicate): fix spelling in + log message + +2001-12-11 Havoc Pennington + + * gconf/gconfd.c (drop_old_clients): use + CORBA_Object_non_existent() instead of ConfigListener_ping + + * gconf/gconf-database.c (client_alive_predicate): use + CORBA_Object_non_existent() instead of ConfigListener_ping + +2001-12-11 Havoc Pennington + + * gconf/gconf.c (gconf_engine_get_default): change to not start + gconfd immediately, so we can avoid starting it if + we're just going to shut it down, and just generally do + things lazily. + (gconf_shutdown_daemon): ignore NO_SERVER error code + + * backends/xml-dir.c (dir_get_value): always get schema name, not + just if value is unset + + * gconf/gconfd.c (main): don't free logname since there are atexit + handlers for now + + * gconf/gconf-sources.c (gconf_sources_query_value): don't look + for a default value for the schema. Useless and adds a bit of + inefficiency. + + * gconf/gconfd.c (main): set log handler for GLib + (log_handler): mask extra flags out of log level + + * gconf/gconf-sources.c (gconf_sources_query_value): Fix this so + Gergo's bug doesn't happen; hope no other semantic gets broken. + + * tests/testschemas.c: do some unbreaking, and put in a test that + exposes Gergo's bug (failure to read schema name if a key is set) + + * tests/*: put in a big comment saying don't use these as example + code since they are ugly-ass and broken. + +Sun Dec 9 18:22:50 2001 Jonathan Blandford + + * gconf.m4.in: Just when I think I understand the depths of the + bogosity autoconf, something else comes up to impress me. + +2001-12-09 Havoc Pennington + + * gconf/gconf-internals.c (gconf_load_source_path): for fuck's + sake - we've been reading the config source backward forever - + this has never fricking worked. Dammit. + + * gconf/gconf-sources.c (gconf_sources_set_value): make huge error + message even more so + (gconf_sources_new_from_addresses): add debug log about config + source writability + +2001-12-08 Havoc Pennington + + * gconf/gconf-client.c: fix some warnings + + * gconf/gconf-internals.h: try to fix gettext issues + +2001-12-08 Havoc Pennington + + * gconf/gconf-value.c (gconf_value_validate): take const arg + + * gconf/gconf.c: add internal API to check that GConfEngine isn't + being used "underneath" its owning GConfClient, thus causing + cache inconsistencies. Bad hack, yay. + + * gconf/gconf-client.c: Use new internal GConfEngine "exclusive + owner" API + (gconf_client_real_unreturned_error): + silently ignore GCONF_ERROR_OVERRIDDEN, because if the system + is "locked down" most apps will probably call gconf_client_set + anyway. + + * gconf/gconf-client.h: fix comment to be accurate about how + overlaps are handled + +2001-12-06 Havoc Pennington + + * autogen.sh: fix up check for gettext to do glib-gettext instead + + * configure.in: add gtk-doc checks and remove --docs-only + since I don't think --docs-only works and don't see how it could. + + * doc/gconf/Makefile.am: make makefile use snazzy canonical + gtk-doc makefile from gtk + + * doc/gconf/gconf.sgml: make it reflect current reality a bit + more. + + * examples/basic-gconf-app.c: Update the example + + * examples/complex-gconf-app.c: Move the old basic-gconf-app.c + into here. + + * gconf/gconf-listeners.c (gconf_listeners_remove): remove + g_return_if_fail on 0 ID, since that will probably end up + happening from time to time + +2001-12-04 Havoc Pennington + + * gconf/gconf-internals.c (open_empty_locked_file): improve error + + * gconf/gconftool.c (main): complain about using --config-source + but not --direct + + * backends/xml-backend.c (resolve_address): don't try to lock + readonly sources; fixes the case where users install to a prefix + that they can write to, was causing problems for people using + build scripts. + + * gconf/gconfd.c (gconf_set_exception): add missing value to case + statement so we don't crash + + * examples/basic-gconf-app.c: update comment to say that the + example isn't really right anymore + + * gconf/gconftool.c (process_schema_list): make sure we have an + element instead of a text node before we try to process it; kills + a bunch of irritating warnings. + + * Makefile.am (SUBDIRS): remove standard-schemas subdir, should + have long ago + +2001-12-04 jacob berkman + + * gconf/Makefile.am: add an explicit dependency on the built files + +2001-12-03 Laszlo Peter + + * gconf/gconf-internals.c: oops, s/ulong_t/gulong/ + +2001-12-03 Laszlo Peter + + * gconf/gconf-internals.c (get_hostname): fix memory alignment + problem on Solaris. + +2001-12-02 Havoc Pennington + + * gconf/gconf-value.h: put casts in the accessor macros, so they + can accept void pointers. Doh. + +2001-11-26 Havoc Pennington + + * configure.in: version to 1.1.5 + +Tue Nov 20 15:37:58 2001 Owen Taylor + + * gconf/gconf-client.c: Remove extraneous gobject/* includes. + +2001-11-18 Miles Lane + + * gconf/gconf-client.h: replace include of gobject/gobject.h + with glib-object.h, due to a change in gobject/gobject.h + that forces an #error for all direct includes. + This checkin was approved by Havoc. + +2001-10-31 Havoc Pennington + + * configure.in: bump version to 1.1.4, and set revision to 1 + + * doc/gconf/Makefile.am: fix this + + * doc/gconf/gconf.types: update + +2001-10-31 Havoc Pennington + + * gconf/gconftool.c: add --recursive-unset command line option + +2001-10-31 Zbigniew Chyla + + * gconf/gconf-internals.c (gconf_activate_server): Plug leak. + +2001-10-30 Frederic Crozat + + * backends/val-encode.c: add missing headers to remove + some warnings. + +2001-10-29 jacob berkman + + * gconf-editor/gconf-editor.c (main): bind to GETTEXT_PACKAGE + rather than PACKAGE + + * autogen.sh: call glib-gettextize + + * configure.in: set the GETTEXT_PACKAGE to be more like the gnome + 1 one + +2001-10-30 Abel Cheung + + * configure.in: When probing for db3, check libdb-3.3, libdb-3.2 and + libdb-3.1 in addition to libdb-3 . + +2001-10-16 Ross Golder + + * gconf.spec.in: updated installation paths + +2001-10-15 Havoc Pennington + + * gconf/gconftool.c (main): don't create config daemon for + --get-default-source + (main): shut down daemon in makefile install mode + +2001-10-14 Havoc Pennington + + * configure.in: bump version, increment GCONF_CURRENT + and GCONF_AGE due to API additions + +2001-10-13 Jaka Mocnik + + * configure.in: allow for db3 headers/includes installed in a + strange location. + * backends/Makefile.am: add BDB_CFLAGS to INCLUDES. + +2001-10-12 Havoc Pennington + + Merge from stable. + + * gconf/gconf.c (gconf_engine_set): check UTF-8 validity here, + instead of at the higher levels + + * gconf/gconf-value.c (gconf_value_validate): new internal function + +2001-10-12 Havoc Pennington + + Merge from stable. + + * tests/testschemas.c (check_schema_storage): add some UTF-8 + + * tests/testpersistence.c: UTF-8 test + + * tests/testgconf.c: add a UTF-8 test + + * gconf/gconf.c: UTF-8 checks, and some indentation + + * gconf/gconf-schema.c: UTF-8 checks + + * gconf/gconf-value.c: add some UTF-8 robustness + +2001-10-12 Havoc Pennington + + Merging from stable. + + * backends/xml-entry.c (entry_unset_value): don't translate "%s" + + * backends/xml-cache.c (cache_sync_foreach): printf string screwup + + * backends/xml-backend.c (query_value): fix printf string derived + from untrusted data + (query_value): ditto + + * configure.in: ensure we find the right bdb headers, if we find + the library, error if not. Reported by Samuel Stringham + + * gconf/gconf-internals.c (gconf_double_to_string): use g_snprintf + not plain snprintf for Solaris 2.5.1 friendliness + + * doc/gconf/tmpl/gconf-value.sgml: fix docs to mention that pairs + contain only primitive types; pointed out by Gregory Merchan + + * configure.in (BDB_CFLAGS): patch from Nils Philippsen to detect + DB 3.1 if available. + +2001-10-11 Havoc Pennington + + * tests/testgconf.c (check_utils): add test for the key + escaper/unescaper thingy + + * gconf/gconf.c (gconf_escape_key): new function + (gconf_unescape_key): new function + +2001-10-10 Havoc Pennington + + * gconf/gconf.c (gconf_valid_key): disallow non-ASCII characters + in key names + +2001-10-10 Havoc Pennington + + * backends/xml-dir.c (dir_sync): fix to reflect bizarre behavior + of xmlSaveFile() (it tries to unescape the filename as a URI, + resulting in mangling my filename!) + +2001-10-04 Havoc Pennington + + * gconf/gconf-internals.c (gconf_release_lock): do wack-ass juju + to avoid .nfs23344534543 files appearing in the lock directory + and causing warnings. + +2001-10-04 Havoc Pennington + + * backends/xml-dir.c (dir_fill_cache_from_doc): remove an + extra warning + +2001-10-04 Havoc Pennington + + * gconf/gconf-internals.c (open_empty_locked_file): include + strerror in the error message on lock failure + +2001-10-01 Michael Meeks + + * gconf/gconf.h: fix deprecated guard. + + * gconf/gconf.c (ctable_remove_by_client_id): remove unused. + +2001-09-29 Carlos Perello Marin + + * gconf/gconf.h (GCONF_DISABLE_DEPRECATED): closed a comment. + +2001-09-28 Havoc Pennington + + * gconf/gconfd.c (main): fix write_byte_fd to always be initialized + + * gconf/gconf-internals.c (gconf_get_current_lock_holder): read + IOR file, not directory it's inside + +2001-09-26 Havoc Pennington + + * gconf/gconf.h: mark gconf_init() deprecated + + * gconf/Makefile.am (INCLUDES): libxml cflags + + * gconf/gconf.c (gconf_init): make this a no-op, instead init on + demand. + + Merge from stable + + * gconf.m4.in: patch from Yanko Kaneti to have AM_GCONF_SOURCE + define a GCONF_SCHEMA_FILE_DIR variable for the directory where + schema files should be installed + + * gconf/Makefile.am (install-data-local): don't install oafinfo + + * configure.in: don't generate oafinfo + + * gconf/gconftool.c (main): remove error message about running + gconfd while installing schemas, instead we'll fail to get a lock. + + * gconf/gconfd.c (main): redirect stdin/out/err to /dev/null + instead of just closing them, saves ORBit some confusion + + * backends/xml-cache.c (cache_clean): change the "items remain in + cache" message to DEBUG level + + * gconf/gconf-internals.c (gconf_get_lock_or_current_holder): + rearrange locking to just use fcntl() + + * gconf/gconf.c (gconf_engine_connect): fix error message in + default daemon case + + * gconf/gconfd.c (gconf_main): reduce exit-after-unused timeout to + 2 minutes + + * gconf/Makefile.am (INCLUDES): add -DGCONF_BINDIR + + * gconf/gconf-internals.c: delete nanosleep junk + +2001-09-27 Havoc Pennington + + * backends/Makefile.am (INCLUDES): srcdir != builddir fixage + + * configure.in: increment version for release + (ORBIT_IDL): look for orbit-idl-2 using pkg-config + +2001-09-17 Havoc Pennington + + * configure.in: look for orbit-idl-2 not orbit-idl, + add option to explicitly enable/disable bdb backend + +2001-09-08 Wang Jian + + * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN. + +2001-08-25 Darin Adler + + * backends/Makefile.am: + * examples/Makefile.am: + * gconf-editor/Makefile.am: + * tests/Makefile.am: + * wrappers/guile/Makefile.am: + Got rid of extra unneeded -I directives. + + * examples/basic-gconf-app.c: + * examples/simple-controller.c: + * examples/simple-view.c: + Changed includes to use the normal format, because + that is both better for examples, and works fine when building + gconf too, without any special -I trickery. + +2001-08-19 Jesus Bravo Alvarez + + * configure.in: Added gl (Galician) to ALL_LINGUAS. + +2001-08-17 Maciej Stachowiak + + * gconf/gconf-internals.c: (gconf_handle_oaf_exception): Handle + rename for ParseFailed exception. + +2001-08-15 Havoc Pennington + + Merge from stable. + + * backends/xml-backend.c (x_shutdown): ditto + (resolve_address): ditto + + * backends/bdb-backend.c (vtable_bdb_shutdown): ditto + (vtable_bdb_resolve_address): ditto + + * gconf/gconf-internals.c (gconf_load_source_path): ditto + + * gconf/gconfd.c (gconf_server_load_sources): change to DEBUG + level + + * backends/xml-backend.c (g_module_check_init): change a log + message to DEBUG level + +2001-08-14 Michael Meeks + + * configure.in: depend on bonobo-activation >= 0.9.1 + + * gconf/Makefile.am: Update to install GNOME_Config.server. + + * configure.in: update to GNOME_Config.server + + * gconf/Makefile.am (-DIID): rename to GNOME_Config_Daemon + to fit with the bonobo namespace guidelines. + + * gconf/GNOME_Config.server.in: update & indent. + +2001-08-13 Marco Pesenti Gritti + + * doc/gconf/gconf.sgml: small explanation about + AM_GCONF_SOURCE_2 macro + +2001-08-13 Havoc Pennington + + Merge from stable. + + * gconf/gconf-internals.c (gconf_load_source_path): patch from + Adam Spiers to honor variables in include lines + + * gconf/gconf-database.c (notify_listeners_cb): + indentation/whitespace changes + + * backends/xml-entry.c (entry_fill_from_node): Only print a + warning if there's no schema name. Avoids spurious warnings + on nodes that only have a schema name. + +2001-08-13 Michael Meeks + + * gconf/gconf-internals.c: remove nano_sleep; it's unused. + + * configure.in: remove nanosleep check. + +2001-08-07 Marco Pesenti Gritti + + * configure.in: remove the chmod on gconf-config, + the file has been removed + * gconf.m4.in: rename AM_GCONF_SOURCE to AM_GCONF_SOURCE_2 + to not break parallel installs + +2001-08-07 Marco Pesenti Gritti + + * gconf/gconf.m4.in: remove duplicate macro + +2001-08-07 Marco Pesenti Gritti + + * gconf/gconf.m4.in: New file. GCONF_SCHEMA_CONFIG_SOURCE macro + * configure.in: add gconf.m4 to AC_OUTPUT + * Makefile.am: add gconf.m4 to EXTRA_DIST and install-data-local + Setup a default gconf source on make install. + * galeon.spec.in: Distribute also the path file and + the directories for the default source. + * gconf/Makefile.am: install the default path as "path" instead + of "path.example". Add GCONF_ETCDIR define. + * gconf/gconftool.c: Add --get-default-source option. + +2001-08-03 Martin Baulig + + * gconf/gconfd.oafinfo.in: Renamed -> gconfd.server.in. + + * Makefile.am: Install gconfd.server into the correct dir + for bonobo-activation. + +2001-08-03 Abel Cheung + + * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. + +2001-08-02 Havoc Pennington + + * configure.in: version 1.1.1 + + * autogen.sh: don't search for subdirs to autogen, that's just + annoying if you have a make dist directory laying around + +2001-08-01 Michael Meeks + + * port to bonobo-activation from oaf. + +2001-07-28 Yanko Kaneti + + * gconf/gconftool.c (main): s/all-pairs/all-entries/ in the error + messages + +2001-07-24 Darin Adler + + Merge from stable. + + * acinclude.m4: Set BUILD_INCLUDED_LIBINTL for compatibility + with newer versions of gettext. + +2001-07-23 Havoc Pennington + + Merge from stable. + + * gconf/gconfd.c (main): don't warn about failure to create + ~/.gconfd if EEXIST + + * gconf/gconf.c (gconf_engine_all_entries): convert empty string + to NULL + + * gconf/gconf-database.c + (impl_ConfigDatabase2_all_entries_with_schema_name): don't give + ORBit any NULL strings in the array, avoids a core dump + + * gconf/gconftool.c (list_pairs_in_dir): put a newline after the + error message + +2001-07-16 Havoc Pennington + + Merge from stable. + + * gconf/gconfd.c (main): add super-lame hack to + pass currently-running gconfd to oafd if oafd has lamely leaked it + due to lame-assness + + * gconf/gconf-internals.c (gconf_get_lock): fix leak of object + reference belonging to server that held the lock + (gconf_get_lock_or_current_holder): add function to get current + owner of a lock + + * gconf/GConf.idl: add subclass of ConfigDatabase for some + exciting new hacky functions. + + So an extensible IDL interface would probably have simply passed + XML messages. But then what's the point of an IDL interface, if + it's just going to be parse_string() get_string()? Hmm. Cosmic + question. ;-) + + * gconf/gconf.c (try_to_contact_server): make the error on + OAF-did-not-set-exception really, really verbose, and explicitly + say "do not file a GConf bug report." But with fixed OAF this + shouldn't happen anymore anyhow. + + * gconf/gconf-sources.c (gconf_sources_set_value): lengthy verbose + error message about possible causes of lack of a config database. + But my lame-ass hack above should keep this from happening so + much. + +2001-07-18 Anders Carlsson + + * configure.in: Remove gconf-config and gconf.m4 from AC_OUTPUT + +2001-07-17 Anders Carlsson + + * Makefile.am: Remove gconf-config and gconf.m4 from EXTRA_DIST + and do not try to install them. + + * gconf.m4.in: Remove this file. + + * gconf-config.in: Remove this file. + +2001-07-17 Darin Adler + + * gconf/gconf.c: (gconf_postinit): + Let CORBA generate the ID instead of providing one ourselves. + +2001-07-17 Laszlo Peter + + * gconf/Makefile.am: remove the -Wno-unused flag; not portable. + +2001-07-14 Kjartan Maraas + + * configure.in: Added "nn" to ALL_LINGUAS. + +2001-07-13 Darin Adler + + Fix a bunch of warnings. + + * backends/bdb-backend.c: (vtable_bdb_set_value): Add const. + * backends/bdb.c: (bdb_put_value): Add const. + * backends/bdb.h: Add const. + * backends/val-encode.c: (bdb_serialize_value): Add const. + * backends/val-encode.h: Add const. + * backends/xml-backend.c: (set_value): Add const. + * backends/xml-dir.c: (dir_set_value): Add const. + * backends/xml-dir.h: Add const. + * backends/xml-entry.h: Add const. + * gconf/gconf-backend.c: (gconf_get_backend): Add const. + * gconf/gconf-backend.h: Add const. + * gconf/gconf-internals.c: (fill_corba_value_from_gconf_value), + (corba_value_from_gconf_value), + (fill_corba_schema_from_gconf_schema), + (corba_schema_from_gconf_schema): Add const. + * gconf/gconf-internals.h: Add const. + * gconf/gconf-sources.c: (gconf_source_set_value), + (gconf_sources_set_value): Add const. + * gconf/gconf-sources.h: Add const. + * gconf/gconf.c: (gconf_engine_set): Add const. + * gconf/gconf.h: Add const. + + * gconf/gconf-value.h: + * gconf/gconf-value.c: (gconf_value_set_list): Remove const, + because const GSList * doesn't do anything useful. + + * backends/xml-entry.c: (entry_get_value), (entry_set_value), + (entry_sync_if_needed), (entry_fill_from_node): Got rid of + unused GValue * parameter to entry_sync_if_needed. Also, add + const in one place. + + * gconf/gconftool.c: (main): Add cast. + +2001-07-07 Peter Williams + + * backends/bdb*: s,uint32_t,guint32,g + +2001-07-11 Michael Meeks + + * gconf/Makefile.am (CLEANFILES): add stamps so we can + clean & make. + +2001-07-03 Michael Meeks + + * configure.in: add ORBIT_IDL check. + +2001-07-02 Carlos Perello Marin + + * gconf/gconf-client.c: /s/g_signal_newc/g_signal_new to reflect + the changes at glib2 module. Now It compiles. + +2001-06-29 Laszlo Peter + + * gconf/Makefile.am: Fix the marshaller rules to avoid looping. + +2001-06-20 Peter Williams + + * configure.in (ACLOCAL): Save flags to aclocal -- life + easier when configure.in changes. + +2001-06-15 Havoc Pennington + + * configure.in: remove library versioning for + no-longer-existing gconf-gtk lib and Guile wrapper + +2001-06-01 Peter Williams + + * configure.in: Check if DB3 headers are in db3/db.h as well. + + * acconfig.h: Add HAVE_DB3_DB_H + + * backends/bdb.c: #include config.h to get HAVE_DB3_DB_H + + * backends/bdb.h: Include the proper db.h + +2001-05-11 Tomas O Connor + + * gconf/gconf-internals.h, gconf/gconf-value.h: move + gconf_value_new_from_string to make it a public API + +2001-05-11 Havoc Pennington + + Merge from stable. + + * gconf/gconfd.c (signal_handler): on SIGUSR1, enable/disable + debug spew. + + * gconf/gconf-internals.c (gconf_log): use a runtime variable to + decide whether to log debug messages + + * gconf/gconf-database.c, gconf/gconfd.c, gconf/gconf-internals.c: + Change some GCL_WARNING to GCL_DEBUG to chill out logging of + fairly normal events + +2001-05-09 Havoc Pennington + + * gconf/Makefile.am: remove testgconfclient from build, should + now be made nongraphical and stuck in tests/ + + * Makefile.am (SUBDIRS): remove "wrappers" from subdirs + + * configure.in: remove Guile cruft, fix up pkg-config usage + + * acinclude.m4: Use the pkg-config macros, remove gnome-common + dependency. Requires CVS pkg-config, need a pkg-config release. + (Since OAF doesn't build against ORBit1 anyway, I figured why not + check this in too...) + +2001-04-28 Murray Cumming + + * gconf/gconf-client.c, gconf/gconf-client.h, + gconf/gconf-schema.c, gconf/gconf-schema.h, + gconf/gconf-value.c, gconf/gconf-value.h, + gconf/gconf.c, gconf/gconf.h: Use of const with function + args. e.g. gconf_value_copy(const GConfValue* src). + +2001-04-17 Michael Meeks + + * gconf/Makefile.am (dist-hook): don't distribute built + sources. + +Wed Apr 11 08:07:11 2001 George Lebl + + * gconf/gconf.c (gconf_engine_unref): If unreffing the default engine + set the default_engine pointer to NULL + +2001-04-02 Federico Mena Quintero + + * acinclude.m4: "sourceforge.net", not "sourceforce.net". + +2001-03-24 Anders Carlsson + + * configure.in (REBUILD): Add gconf-2.0.pc to AC_OUTPUT files. + +2001-03-23 Marius Andreiana + + * configure.in: Added ro (Romanian) to ALL_LINGUAS + +2001-03-18 Martin Baulig + + * gconf/gthreadpool.[ch]: Removed. + * gconf/gconf-glib-private.h: Removed. + * gconf/gconf-glib-public.h: Removed. + + * gconf/gconf-client.[ch]: Moved here from wrappers/gtk/ + and migrated to use GObject. + + * gconf/testgconfclient.c: Moved here from wrappers/gtk/. + + * gconf/gconf-internals.h + (gconf_CORBA_Object_hash, gconf_CORBA_Object_equal): + New static inline functions. + + * gconf/gconfmarshal.list: New file. + + * gconf/gconftool.c: Use libxml 2. + + * backends/xml-backend.c, backends/xml-cache.h, + backends/xml-dir.c, backends/xml-dir.h, + backends/xml-entry.c, backends/xml-entry.h: Use libxml 2. + + * wrappers/gtk/*: Moved to gconf/. + +2001-03-18 Martin Baulig + + We're now on the GNOME 2.0 platform. + + * configure.in: Set MAJOR_VERSION to 2, use pkg-config to + check for stuff; GTK+ is now optional and only used for + the examples; depend on ORBit2. + + * acinclude.m4: Add the contents of + gnome-common/macros2/gnome-pkgconfig.m4 here. + + * Makefile.am: Install gconf-2.0.pc. + + * gconf-2.0.pc.in: New file. + +2001-03-13 Kjartan Maraas + + * backends/xml-entry.c: Merge from branch. Use xmlFree(). + * gconf/gconftool.c: Merge from branch. Use xmlFree() and + don't free until after referencing stuff. + +2001-03-12 Timur Bakeyev + + * Makefile.am: Made warning printing a bit nicer. + +2001-03-06 Havoc Pennington + + Merge from stable. + + * gconf/gconfd.c (gconf_main): change the periodic timeout to 15 + minutes, to be a bit more aggressive about cleanup. + (open_append_handle): add a timeout to close the + saved_state filehandle after a short time, to avoid keeping + descriptors open. + (gconfd_need_log_cleanup): new internal function used to control + whether the periodic cleanup function needs to save a log file + +2001-02-27 Havoc Pennington + + * gconf.spec.in: %define prefix %{_prefix} instead of @prefix@ + +2001-02-27 Havoc Pennington + + Merge from stable. + + * gconf/gconfd.c (main): Close stdin/stdout/stderr. Also, set the + log handler, so we don't need stdout/stderr to see GLib messages, + they go to syslog. + + * gconf/Makefile.am (INCLUDES): set the log domain + + * gconf/gconftool.c (recurse_subdir_list): the list contains full + directory paths to start with, fix from Colm + + * gconf/gconfd.c (register_database): bugfix from Colm + + * gconf/gconf.c (lookup_engine): fix from Colm to check that we + have an engines hash + (gconf_engine_get_for_address): improve warning message, fix from + Colm + (gconf_engine_remove_dir): new function from Colm, this was + implemented on the server side but somehow never exported. + + * gconf/gconf-database.c (gconf_database_get_persistent_name): Fix + from Colm to handle the case of empty databases (no sources). + +2001-02-05 Havoc Pennington + + File permissions fixes, problem pointed out by Steve Fox. + + * backends/xml-dir.c (dir_sync): chmod() the XML file after + xmlSaveFile creates it + + * gconf/gconfd.c (main): following Stevens advice for daemons, we + were calling umask(0), change to umask(022). We need a predictable + umask, but a safer one would be good since this is a per-user + daemon not a system daemon. + + * backends/dir-utils.c (mode_t_to_mode): make this more portable, + for paranoia + + * backends/xml-dir.c (dir_load): We were getting directory + permissions from the %gconf.xml file, instead of from the XML root + directory. Fix. + +2001-01-23 Stanislav Visnovsky + + * configure.in: Add 'sk' to ALL_LINGUAS + +2001-01-21 Havoc Pennington + + * configure.in: change version to 1.1 + + Sync from stable + + * backends/xml-entry.c (schema_subnode_extract_data): don't warn + about with no locale field, because that's normal + for the default case + (schema_node_extract_value): use with no locale + if it exists and we don't find anything better + + * tests/testschemas.c (check_schema_use): fix indentation and mem + leaks + + * gconf/gconftool.c (do_get): print default value from schema + +2000-12-19 Rebecca Schulman + + * gconf/gconfd.c: (gconf_server_load_sources): + Added a return value to a g_slist_append that would + cause a segfault in some cases. + +Fri Dec 01 00:54:33 2000 George Lebl + + * gconf/gconf-locale.c (gconf_split_locale): When inserting "C" + into a list, dup it first to avoid a possible crash later. + +2000-11-30 Havoc Pennington + + * gconf/gconf.c (gconf_engine_unset): Fix dereference of NULL GError** + +2000-11-20 Havoc Pennington + + * doc/gconf/Makefile.am: Fix "make scan" to actually work, so + you can build the docs + +2000-11-11 Havoc Pennington + + * gconf/gconf-value.c (gconf_entry_set_is_writable): Add this + function + +2000-11-05 Havoc Pennington + + * gconf/gconf-glib.c, gconf/gconf-glib-private.h: Remove the + GMarkup and Unicode stuff, turned out to be unnecessary. + Left only GError. + +2000-11-05 Havoc Pennington + + * gconf/gconfd.c (parse_listener_entry): fix strtoul error + checking + + * gconf/gconf-internals.c (gconf_string_to_gulong): Fix error + checking on strtoul + +2000-11-05 Havoc Pennington + + * gconf/gconf-glib.c (g_propagate_error): Sync from GLib, + should fix one very minor memory leak in GConf + +2000-10-31 Almer S. Tigelaar + + * configure.in: Add 'nl' to ALL_LINGUAS + +2000-10-26 Havoc Pennington + + * configure.in: Bump version to 0.11 + +2000-10-25 Havoc Pennington + + * wrappers/gtk/gconf-client.c: remove get_nocopy, since it can't + be implemented since we don't cache everything. Oops. + +2000-10-16 Havoc Pennington + + * wrappers/gtk/gconf-client.c + (gconf_client_real_unreturned_error): implement default error + handler that prints to stderr + (gconf_client_key_is_writable): hmm, this function didn't compile + very cleanly + + * wrappers/gtk/gconf-client.h: Remove the ParentWindowFunc + concept. Two reasons: a) it was really hard for users to implement + such a thing, and if they did then implementing an error dialog + function was pretty trivial also b) decided to make the default + error handler use fprintf(stderr) since GConfClient is going to + move into the main GConf library and thus not depend on GTK. + + So, this is mild API breakage (but hopefully no one was using the + feature anyway). + +2000-10-10 Christophe Merlet + + * backends/Makefile.am: Added README.bdb in EXTRA_DIST. + + * gconf/gconf-glib.c: Corrected mispelling string. + +2000-10-10 Havoc Pennington + + * gconf/gconf-value.c (gconf_value_to_string): fix segfault when + pair contains unset car or cdr + (gconf_value_set_car): allow setting car or cdr of a pair to + NULL. I'm not sure if this is the normal thing in the code + right now, but, hmm. + + * gconf/gconf-sources.c (gconf_sources_all_entries): fix + cut-and-paste error resulting in NULL pointer dereference. + +2000-10-08 Havoc Pennington + + gconfd should now exit when not in use. + + * gconf/gconf-database.c (gconf_database_drop_dead_listeners): + function to drop any listeners with dead clients. + + * gconf/gconfd.c (drop_old_databases): before checking + whether the listener count is 0, clean up listeners belonging + to dead clients. + + * gconf/gconf-listeners.c (gconf_listeners_remove_if): New + function removes listeners matching some predicate + (ltable_remove): fix some indentation + +2000-10-08 Havoc Pennington + + * configure.in: version to 0.10 + +2000-10-06 Havoc Pennington + + * wrappers/gtk/gconf-client.c: indentation/formatting + + * gconf/gconfd.c (parse_listener_entry): extra paranoia error + check. Also, make log messages level DEBUG, not WARNING. + +2000-10-06 Havoc Pennington + + * configure.in: check for flockfile. + Check for BDB, but don't make it fatal; do an AM_CONDITIONAL and + don't build the BDB backend if it's not found. + + * gconf/gconfd.c (main): unregister with OAF after all shutdown is + complete. + (signal_handler): do the full, clean shutdown on SIGTERM; should + reduce the damage caused by those pesky killall gconfd scripts ;-) + Try to do the same on FPE and PIPE, though it's not likely to + work, it doesn't hurt to try. + (logfile_read): rewrite the logfile reading code; somewhat more + robust, possibly. + + * gconf/gconf-database.c, gconf/gconfd.c: Make all CORBA + implementation return immediately with an error if we're currently + shutting down. We'd just unregister with OAF, or deactivate our + objects, but then another gconfd would start up before we finish + cleaning up our stuff and introduce a mess of race + conditions. Instead clients will automatically retry lots of times + if they get the IN_SHUTDOWN error. Actually this possibly + shouldn't even happen, since we aren't normally in the main loop + once we start to shut down, I don't think - not sure. + + * gconf/gconfd.c (gconf_set_exception): add ConfigInShutdown + + * gconf/GConf.idl: add ConfigInShutdown error + + * gconf/gconf.c (corba_errno_to_gconf_errno): add ConfigInShutdown + + * gconf/gconf-error.h: two error codes had the same integer value. + Also, add GCONF_ERROR_IN_SHUTDOWN + + * gconf/gconfd.c (gconfd_in_shutdown): Add a flag + to indicate we're shutting down; all operations will + return an error at that point. + + * gconf/gconf.c (gconf_server_broken): treat ConfigInShutdown + as a broken server. + +2000-10-06 Colm Smyth + + * Committed BerkeleyDB back-end:- + + backends/bdb.c backends/bdb.h backends/bdb-backend.c + backends/val-encode.c backends/val-encode.h + backends/dir-utils.c backends/dir-utils.h backends/README.bdb + + * Changes to make GConf build with an ISO C compiler:- + + configure.in backends/Makefile.am backends/xml-cache.c + gconf/gconf-database.c gconf/gconf-sources.c gconf/gconfd.c + tests/testchangeset.c tests/testencode.c tests/testgconf.c + tests/testlisteners.c tests/testpersistence.c + tests/testschemas.c + + +2000-10-03 Robin * Slomkowski + + * gconf.spec.in:/etc/etc is not a directory + OK I am less foolish now + +2000-10-03 Robin * Slomkowski + + * gconf.spec.in: updated the spec file again + if you are interested we are trying to track it + http://tinderbox.eazel.com + +2000-10-03 Havoc Pennington + + * gconf/gconfd.c (close_append_handle): set invalid FILE* to + NULL afterward, avoid segfaults. + + * Makefile.am: add install-schemas target here which recurses + into standard-schemas and runs install-schemas + + * standard-schemas/Makefile.am (install-schemas): Move schema + installation to a special target install-schemas which must be + run manually _after_ make install. This should resolve problems + people are having with RPMs and such. However it means spec files + have to explicitly add a 'make install-schemas' + +2000-09-29 Havoc Pennington + + * gconf/gconf.c (drop_all_caches): don't spew warnings here for + now. + (invalidate_cached_values): no spew + (update_listener): remove more spew + +2000-09-29 Havoc Pennington + + * gconf/gconf.c (ctable_reinstall): we were overwriting the hash + key before trying to remove the old server ID from the hash, so + the removal failed, leading to an assertion failure later (this + hopefully fixes one of the bugs reported by Ramiro, if not then + I'll keep looking) + +2000-09-26 Havoc Pennington + + * gconf/gconf-locale.c (gconf_locale_cache_expire): fix a + static initialization with non-const value + +2000-09-25 Havoc Pennington + + Bug fixes and portability issues reported by Colm Smyth + + * gconf/gconf-sources.c (gconf_sources_query_value): fix NULL + pointer dereference + + * s/__FUNCTION__/G_GNUC_FUNCTION/g; + + * configure.in: Add check for GCC before using -Wall (can't + believe no one has _ever_ tried building GConf without gcc, + but it appears so...) + + * gconf/gconftool.c: use N_ not _ with static strings. + + * tests/testschemas.c: Don't include locale.h + + * gconf/gconf-internals.h: Remove some of the #defines from + the non-ENABLE_NLS case. + +2000-09-24 Havoc Pennington + + * NEWS: Put release notes for 0.9 in here. + +2000-09-24 Havoc Pennington + + * gconf/gconfd.c (gconf_main): With debugging turned on, use + obscenely short timeout for periodic cleanups, to ensure bugs + get triggered. + + * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Set + _release to TRUE for sequences + (impl_ConfigDatabase_all_entries): ditto + + * gconf/gconfd.c (half_hour_timeout): exit only if client count is + 0 after dropping all dead clients. + + * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Don't + put memory in the out param if we set an exception + (impl_ConfigDatabase_all_entries): Ditto + + * backends/xml-dir.c (dir_all_subdirs): Fix a memory leak + + * gconf/gconfd.c: Implement client list logging + + * gconf/gconf.c: Add self to the server's client list + whenever we get a new server objref + +2000-09-23 Havoc Pennington + + * gconf/gconfd.c: Implement add/remove client methods; + still need to log these to disk, and on restart tell the + logged clients to drop their caches. + + * gconf/GConf.idl: Add methods on ConfigServer to maintain + a list of active clients; this allows us to invalidate client + caches on daemon restart. + +2000-09-21 Havoc Pennington + + * configure.in: remove intl/Makefile + + * Makefile.am: remove intl subdir + +2000-09-17 Havoc Pennington + + * gconf/gconf.c: Update to reflect IDL change + + * gconf/GConf.idl: Change invalidate_cached_values() to take + multiple keys to invalidate; better efficiency that way + +2000-09-17 Havoc Pennington + + * gconf/gconf-database.c: Add new methods on ConfigDatabase + + * gconf/gconf.c: Add new methods on ConfigListener, but they + do nothing at the moment + + * gconf/GConf.idl: Add some methods to ConfigListener to tell + clients when they need to drop cached values Add batch_lookup() + and batch_change() methods to ConfigDatabase so we can implement + them later + +2000-09-16 Havoc Pennington + + * gconf/gconf.c (gconf_engine_key_is_writable): And actually + implement it here. Doh. + + * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Gee, + forgot to actually implement this function after implementing all + the backend work for it... + + * gconf/gconf.c (corba_errno_to_gconf_errno): add + NO_WRITABLE_DATABASE handling here also + + * gconf/gconfd.c (gconf_set_exception): handle + NO_WRITABLE_DATABASE error + + * gconf/GConf.idl: Add NoWritableDatabase to error type enum + + * wrappers/gtk/testgconfclient.c (entry_attached_to): Update + to properly handle writability + + * examples/simple-controller.c (main): set entry sensitivity + properly + + * examples/basic-gconf-app.c (main): Remove ref/sink and destroy, + just use plain refcounting + (create_config_entry): Set entry sensitivity according to key + writability + + * wrappers/gtk/gconf-client.c (gconf_client_finalize): Move all + cleanup to finalize, remove destroy handler + +2000-09-16 Havoc Pennington + + * doc/gconf/tmpl/gconf-value.sgml: Update some docs + + * wrappers/gtk/gconf-client.c (notify_listeners_callback): Update + to reflect new callback signature for GConfClientNotifyFunc + + * gconf/gconf-sources.c (gconf_sources_set_value): Make it an + error to if we try to write a value for a non-writable source. + This is new; it used to silently fail. + + * gconf/gconf-database.c (gconf_database_notify_listeners): Add + is_writable here + + * gconf/GConf.idl: Add writable flag to notification + + * gconf/gconf.h: Update GConfNotifyFunc to have fewer args, and + a GConfEntry is just passed in (since I was going to have + to add an is_writable arg, and passing in a GConfEntry + gives us future extensibility against this sort of thing) + BREAKS USER CODE, many apologies. + + * wrappers/gtk/gconf-client.c (gconf_client_get_entry): Update + to reflect GConfEngine changes + + * gconf/gconf.c (gconf_engine_all_entries): Get the writability + stuff + (gconf_engine_get_full): rename to gconf_value_get_entry + and return an entry; drop the is_default argument. + + * gconf/gconf-sources.c (gconf_sources_query_value): Implement + finding out if a value is writable + (gconf_sources_all_entries): Implement setting is_writable + flag on the entries + + * gconf/gconf-value.c (gconf_entry_new_nocopy): Default to + the entry being writable + + * gconf/gconf-database.c: Change to match IDL changes + + * gconf/GConf.idl (lookup_with_locale): Add out param for + writability + (all_entries): Add out param for writability + + * gconf/gconf-value.h: Add is_writable field to GConfEntry + (gconf_entry_get_is_writable): Add this + + * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Add + the matching stub here + + * gconf/gconf.c (gconf_engine_key_is_writable): Go ahead and add + this function so we can implement it later, but it always returns + TRUE at the moment. + + * gconf/gconf-changeset.c (gconf_change_set_set_user_data, + gconf_change_set_get_user_data): Add user data for language + bindings + + * gconf/gconf.c (gconf_engine_set_user_data, + gconf_engine_get_user_data): Add user data for language + bindings + +2000-09-15 Havoc Pennington + + * s/gconf_concat_key_and_dir/gconf_concat_dir_and_key/g + +2000-09-14 Havoc Pennington + + * gconf/gconf.c (gconf_engine_all_dirs): Update to + return fully qualified name in GConfEntry + (gconf_engine_all_entries): missed the local case + earlier when adapting it to use fully-qualified name + + * acinclude.m4: Add never-use-included-gettext macro + + * configure.in: Bump version to 0.9 + +2000-09-14 Darin Adler + + * backends/xml-dir.c: (dir_load): Fixed code that set up file mode + to always be 0600 to instead inherit from parent directory as + intended. + + * gconf/gconf-sources.c: (gconf_sources_new_from_addresses): + Removed unused variable. + * tests/.cvsignore: Added some generated files. + +2000-09-13 Havoc Pennington + + * More renaming: + + s/gconf_meta_info_schema/gconf_meta_info_get_schema/g; + s/gconf_meta_info_mod_user/gconf_meta_info_get_mod_user/g; + s/gconf_meta_info_mod_time/gconf_meta_info_mod_time/g; + + s/gconf_entry_key/gconf_entry_get_key/g; + s/gconf_entry_value/gconf_entry_get_value/g; + s/gconf_entry_schema_name/gconf_entry_get_schema_name/g; + s/gconf_entry_is_default/gconf_entry_get_is_default/g; + + s/gconf_value_string/gconf_value_get_string/g; + s/gconf_value_int/gconf_value_get_int/g; + s/gconf_value_float/gconf_value_get_float/g; + s/gconf_value_list_type/gconf_value_get_list_type/g; + s/gconf_value_list/gconf_value_get_list/g; + s/gconf_value_car/gconf_value_get_car/g; + s/gconf_value_cdr/gconf_value_get_cdr/g; + s/gconf_value_bool/gconf_value_get_bool/g; + s/gconf_value_schema/gconf_value_get_schema/g; + + s/gconf_schema_type/gconf_schema_get_type/g; + s/gconf_schema_list_type/gconf_schema_get_list_type/g; + s/gconf_schema_car_type/gconf_schema_get_car_type/g; + s/gconf_schema_cdr_type/gconf_schema_get_cdr_type/g; + s/gconf_schema_locale/gconf_schema_get_locale/g; + s/gconf_schema_short_desc/gconf_schema_get_short_desc/g; + s/gconf_schema_long_desc/gconf_schema_get_long_desc/g; + s/gconf_schema_owner/gconf_schema_get_owner/g; + s/gconf_schema_default_value/gconf_schema_get_default_value/g; + +2000-09-13 Havoc Pennington + + * gconf/gconf.c (gconf_engine_all_entries): Put full key in + GConfEntry (but we only get the relative key over the + CORBA wire) + + * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): Change to + reflect fact that GConfEntry now contains full key + + * gconf/gconftool.c (list_pairs_in_dir): Change to reflect full + key in GConfEntry + + * doc/gconf/tmpl/gconf-value.sgml: updated GConfEntry docs on this + matter. + +2000-09-11 Havoc Pennington + + * Actually use gettext. Involves checking in configure.in, linking + to it in Makefile.am, making _() do the right thing. + + I have gettext in libc instead of -lintl though, so I'm not going + to see Makefile bugs - maybe someone can check on it. + +2000-09-10 Havoc Pennington + + * gconf/gconf-value.c (gconf_entry_new): New function + (gconf_entry_set_value): New function + +2000-09-10 Havoc Pennington + + * Another rename fest: + + #!/usr/bin/perl -pi.bak + + ## note that this regexp could affect non-GConf stuff + s/writeable/writable/g; + + s/gconf_meta_info_destroy/gconf_meta_info_free/g; + s/gconf_database_destroy/gconf_database_free/g; + s/gconf_source_destroy/gconf_source_free/g; + s/gconf_sources_destroy/gconf_sources_free/g; + s/gconf_locale_cache_destroy/gconf_locale_cache_free/g; + +2000-09-10 Havoc Pennington + + * gconf/gconf-value.c (gconf_value_new): don't use + GCONF_INTERNAL_VALUE_TYPE_VALID + + * gconf/gconf-internals.h, gconf/gconf-error.h: + (gconf_error_new) + (gconf_set_error) + (gconf_compose_errors): + Move these to gconf-internals.h, now they aren't needed due + to GError + + * gconf/gconf.c: Get rid of GConfEnginePrivate, just define struct + _GConfEngine in the private .c file, like a sane person. + + * gconf/gconf-value.h: remove GCONF_INTERNAL_VALUE_TYPE_VALID + + * gconf/gconf.h: #ifdef the GNOME module system and popt stuff for + GNOME 1.4. This stuff is tied to GNOME 2.0 and still unstable in + that respect; should not be used before GNOME 2.0 + (gconf_get_string): forgot to rename this earlier + +2000-09-09 Havoc Pennington + + * gconf/gconfd.c (half_hour_timeout): Convert one_hour_timeout to + half_hour_timeout() to more agressively prune resources. In the + half hour timeout, if we have no connected listeners on any + database, shut down gconfd. (We might want to make the timeout + length configurable; and for laptops people might not want any + timeouts at all, since it will wake up their laptop.) + (fast_cleanup): Remove comment about getting incoming connections + after shutting things down; this is no longer a problem because + we deactivate databases in the POA + +2000-09-09 Havoc Pennington + + * gconf/Makefile.am (libgconf_1_la_SOURCES): Move gconf-backend.h + here, I don't see why it was in the public headers + + + Throughout, rename a bunch of stuff: + + #!/usr/bin/perl -pi.bak + + s/gconf_notify_add/gconf_engine_notify_add/g; + s/gconf_notify_remove/gconf_engine_notify_remove/g; + s/gconf_get_without_default/gconf_engine_get_without_default/g; + s/gconf_get_full/gconf_engine_get_full/g; + s/gconf_get_with_locale/gconf_engine_get_with_locale/g; + s/gconf_get_default_from_schema/gconf_engine_get_default_from_schema/g; + s/gconf_unset/gconf_engine_unset/g; + s/gconf_associate_schema/gconf_engine_associate_schema/g; + s/gconf_all_entries/gconf_engine_all_entries/g; + s/gconf_all_dirs/gconf_engine_all_dirs/g; + s/gconf_suggest_sync/gconf_engine_suggest_sync/g; + s/gconf_dir_exists/gconf_engine_dir_exists/g; + s/gconf_get_float/gconf_engine_get_float/g; + s/gconf_get_int/gconf_engine_get_int/g; + s/gconf_get_bool/gconf_engine_get_bool/g; + s/gconf_get_schema/gconf_engine_get_schema/g; + s/gconf_get_list/gconf_engine_get_list/g; + s/gconf_get_pair/gconf_engine_get_pair/g; + s/gconf_set_float/gconf_engine_set_float/g; + s/gconf_set_int/gconf_engine_set_int/g; + s/gconf_set_string/gconf_engine_set_string/g; + s/gconf_set_bool/gconf_engine_set_bool/g; + s/gconf_set_schema/gconf_engine_set_schema/g; + s/gconf_set_list/gconf_engine_set_list/g; + s/gconf_set_pair/gconf_engine_set_pair/g; + + s/gconf_commit_change_set/gconf_engine_commit_change_set/g; + s/gconf_create_reverse_change_set/gconf_engine_reverse_change_set/g; + s/gconf_create_change_set_from_currentv/gconf_engine_change_set_from_currentv/g; + s/gconf_create_change_set_from_current/gconf_engine_change_set_from_current/g; + + s/gconf_schema_destroy/gconf_schema_free/g; + s/gconf_value_destroy/gconf_value_free/g; + s/gconf_listeners_destroy/gconf_listeners_free/g; + s/gconf_entry_destroy/gconf_entry_free/g; + + s/gconf_client_create_change_set_from_current/gconf_client_change_set_from_current/g; + s/gconf_client_create_change_set_from_currentv/gconf_client_change_set_from_currentv/g; + s/gconf_client_create_reverse_change_set/gconf_client_reverse_change_set/g; + + ## These require some care, since they can be the prefix for unrelated stuff. + s/gconf_get /gconf_engine_get /g; + s/gconf_set /gconf_engine_set /g; + + s/gconf_get\(/gconf_engine_get (/g; + s/gconf_set\(/gconf_engine_set (/g; + + +2000-09-09 Havoc Pennington + + * gconf/gconf-database.c (gconf_database_add_listener) + (gconf_database_remove_listener): immediately log the addition + or removal to the saved state file, which is now in a streaming + format + (gconf_database_get_persistent_name): abstraction for getting + the address of the database, of "def" if it's the default one + (gconf_database_log_listeners_to_string): replaces conversion + from database to markup node; no longer using GMarkup here + + * gconf/gconf-listeners.c (gconf_listeners_get_data): + new function to get listener data for a connection ID + + * gconf/gconfd.c (one_hour_timeout): save the logfile in the + timeout, to compress it since we have just been appending over the + last hour + (logfile_read, logfile_save): rewrite to use new format, not the + GMarkup format + + * gconf/gconf-internals.c (gconf_object_to_string): Add + this function + +2000-09-04 Havoc Pennington + + * doc/gconf/Makefile.am (LDFLAGS): libs have been renamed + +2000-08-31 Havoc Pennington + + * Massive rename from GConfError to GError + + * gconf/gconf-error.h, gconf/gconf-error.c: Remove + redundant-with-GError stuff; add GCONF_ERROR domain + macro + +2000-08-30 Havoc Pennington + + * gconf/gconfd.c (restore_listener): use gconf_string_to_gulong + instead of atoi for reading a ulong out of the log file + + * gconf/gconf.c (gconf_engine_get_default): assign to the + default_engine variable, so we don't keep creating new default + engines. + + * gconf/gconf-listeners.c (ltable_next_cnxn): Start "uniqueness + bits" at a different location depending on pid + +2000-08-30 Havoc Pennington + + * gconf/gconf.c: Change client to new system (use object + references to ConfigDatabase instead of the integer context ID). + + * gconf/gconf-backend.c: Fix path to uninstalled modules, and + put the whole uninstalled modules thing in GCONF_ENABLE_DEBUG + + * gconf/gconf-database.c: add some missing includes, and fix + a typo bug + + * gconf/gconfd.c: CORBA_Object_duplicate() the ConfigDatabase + objrefs before passing them back out to ORBit. Remove + some bogus assertions. + + * TODO: Updates, added notes from Colm + +2000-08-30 Havoc Pennington + + * gconf/gconfd.c, gconf/gconf-database.h, gconf/gconf-database.c, + gconf/gconfd.h: Completed the server-side implementation of + the new system where a ConfigServer_Context becomes + a ConfigDatabase object. Client side doesn't even compile + yet. Will get it compiling in the morning. + +2000-08-29 Havoc Pennington + + * gconf/gconfd.c: Add logfile load/save; not really working + yet. + + * gconf/gconf.c: Remove reinstall-listeners stuff and implement + update_listeners() from the server. Most of this is about to get + removed again when I fix context ID's to be object references + instead. + + * gconf/gconf-listeners.c: #include , + store full key name on tree nodes, add connection ID to + foreach callback + + * gconf/GConf.idl: Add update_listener method on ConfigListener, + so the daemon can tell a client that a listener's ID has changed + + * gconf/gconf-glib-public.h, + gconf/gconf-glib-private.h, + gconf/gconf-glib.c: Put in gmarkup.[hc], gunicode stuff, + and gerror.[hc] from GLib 2.0. The Unicode char tables are + causing big bloat; may be able to get rid of them + before GNOME 1.4 if we are lucky. + +2000-08-27 Havoc Pennington + + * gconf/gconf-glib-public.h, + gconf/gconf-glib-private.h, + gconf/gconf-glib.c: Place to put cut-and-paste code from + GLib 2.0 + + * gconf/gconf.c (notify): Only print warnings on bogus notifies + if debugging is enabled; without debugging, silently ignore + the notifies, it just means gconfd got confused. + +2000-08-26 Havoc Pennington + + * gconf/gconf-listeners.c (gconf_listeners_foreach): Add a foreach + function, will use that to dump the daemon's listener table to + a file. + +2000-08-26 Havoc Pennington + + * TODO: Created a TODO file + +2000-08-09 Havoc Pennington + + * configure.in: 0.8 + + * fixes from Ralph Loader for DESTDIR support (hopefully + got them all in) + + * gconf.spec: fix description (the G is just a G, doesn't stand + for anything) + +2000-08-09 Robin * Slomkowski + + * gconf.spec.in: made it so the specfile worked for rpm builds + +2000-08-07 Robin * Slomkowski + + * gconf/Makefile.am: use top_build instead of build + and some beautification. + +Wed Aug 02 18:11:37 2000 George Lebl + + * backends/xml-entry.c (node_set_schema_value) (node_unset_value) + (schema_node_extract_value): Set the list_type and car_type and + cdr_type from the schema. Unset these on clear. Also get these + on extraction. + + * gconf/GConf.idl: Add value_list_type, value_car_type, + value_cdr_type to the ConfigSchema struct + + * gconf/gconf-internals.c (fill_corba_schema_from_gconf_schema) + (gconf_schema_from_corba_schema) (corba_type_from_gconf_type) + (gconf_type_from_corba_type) (gconf_string_to_double) + (gconf_double_to_string) (gconf_unquote_string_inplace) + (gconf_value_decode) (gconf_value_encode): When passing schema + to/from corba, pass the list_type and car/cdr_type fields as well. + When converting to/from doubles guard the printf/scanf with + setlocale(LC_NUMERIC, "C"). When encoding/decoding the lists + encode their type, for schemas encode/decode the list/car/cdr_type + + * gconf/gconf-internals.h: For gconf_value_new_list_from_string + and gconf_value_new_pair_from_string add an GConfError field + + * gconf/gconf-schema.[ch] (gconf_schema_new) (gconf_schema_copy): + Add the list/car/cdr_type fields to the schema structure and + support it when creating and copying. Also add accessors for + these fields. + + * gconf/gconf-value.c (escape_string) + (gconf_value_new_list_from_string) + (gconf_value_new_pair_from_string) + (gconf_value_to_string): Implement the list and pair_from_string + functions. In to_string escape the characters that would cause + problems. + + * gconf/gconf.c (gconf_unique_key): use GPOINTER_TO_UINT to + avoid warning on alpha + + * gconf/gconftool.c (do_get) (do_set) (do_set_schema) + (fill_default_from_string) (extract_global_info) + (process_locale_info) (process_schema): Add support for + setting lists and pairs by supporting the list/car/cdr_type. + Add these to setting schemas as well. Also add support for + these in reading/setting schemas from .schema files and support + defaults of lists/pairs using this information. + +2000-07-27 Havoc Pennington + + * backends/Makefile.am (backenddir): backenddir is + pkglibdir/MAJOR_VERSION, not plain VERSION + + * configure.in: Bump to 0.7 + +Wed Jul 26 12:40:45 2000 George Lebl + + * gconf/gconf.c (gconf_key_is_below): Make sure that the segment + above is a complete directory and not just partial directory. + so that /foo is not taken as above /foobar/blah + +Tue Jul 25 23:48:24 2000 George Lebl + + * wrappers/gtk/gconf-client.c: || doesn't mean && :). It would + consider as an above directory every directory that had a notify_id + +2000-07-25 James Henstridge + + * Makefile.am, gconf/Makefile.am: make relative symlinks rather than + absolute path symlinks. Again to help packagers. + + * configure.in (GCONF_CONFIG_SOURCE): don't use + EXPANDED_SYSCONFDIR hack. Instead just escape the dollar sign in + ${sysconfdir}. This fixes build root installs used when building + packages. + +Mon Jul 24 16:39:01 2000 George Lebl + + * wrappers/gtk/gconf-client.[ch]: Allow adding overlapping + subdirectories. What happens is that the real gconf notify + is not added for subdirectories. When directories are added + or removed the hash is traversed and fixed up. This is + done in a simple and incredibly inefficent manner and needs + to be fixed. Also this change adds an "err" argument to + the _remove_dir call as errors can now happen. Also + fix a minor warning by casting. + + * wrappers/gtk/testgconfclient.c: Add some testing of overlapping + directories. Add buttons to add/remove the main directory and + the subdirectory. This way you can see if things get proper + notifications. + +2000-07-24 Yukihiro Nakai + + * configure.in: Add Japanese (ja) + +2000-07-21 Robin * Slomkowski + + * gconf.spec.in: just fixed up some filename stuff + +2000-07-14 Havoc Pennington + + * gconf/gconf-sources.c (gconf_sources_query_value): Fix memleak + of schema_name in case where we return a value + (hash_lookup_defaults_func): Fix bug where we returned the schema + instead of the default value stored in the schema, when returning + default values for a directory listing, which GConfClient did in + order to preload its cache. (Upshot: GConfClient with preloading + was broken if you had schemas.) + +2000-07-13 Havoc Pennington + + * gconf/gconfd.c (shutdown_contexts): fix cheesy race condition + (context_list may not exist at this point) + +2000-07-12 Havoc Pennington + + * gconf.spec.in: Change spec file to reflect my fooling with + names of things + + * configure.in: Some files converted to .in files, so we can + do versioning + + * gconf-config.in: output versioned names for libs and includes + + * gconf/Makefile.am: version all installed files + + * wrappers/gtk/Makefile.am: put version in the name of + everything + + * wrappers/gtk/testgconfclient.c (main): remove ref/sink to + reflect change to GConfClient + +2000-07-13 Havoc Pennington + + * backends/xml-entry.c (schema_node_extract_value): fix a + double-free + +2000-07-12 Havoc Pennington + + * configure.in: Bump library versions, bump to 0.6 + + * gconf/gconf.c (gconf_engine_get_local): Rename from + gconf_engine_new_local + (gconf_engine_get_default): rename from gconf_engine_new + (gconf_engine_get_for_address): rename from + gconf_engine_new_from_address + + * wrappers/gtk/gconf-client.c (gconf_client_get_default): rename + from gconf_client_new. Always sink the client, so we are strictly + refcounted, no floating state (for future GObject compatibility) + (gconf_client_get_for_engine): rename from + gconf_client_new_with_engine + +2000-07-11 Havoc Pennington + + * Makefile.am: spew messages about needing to create + prefix/etc/gconf/path, should make things easier for users. + +2000-07-05 Eskil Heyn Olsen + + * gconf-config.in: + adds output of oaf-config, since gconf uses oaf. + +2000-07-05 Eskikl Heyn Olsen + + * gconf.spec.in: + Fixed som typos. + +2000-06-22 Dan Winship + + * wrappers/gtk/gconf-client.c (gconf_client_set_pair): Pass both + car and cdr to gconf_set_pair rather than passing car twice. Oops. + +2000-06-12 Eskil Heyn Olsen + + * gconf.spec.in: Removed the .a libs from the base package, but + added them to -devel. + +2000-06-11 Eskil Heyn Olsen + + * gconf.spec.in: Req oaf >= 0.3.0 + +2000-06-11 Eskil Heyn Olsen + + * gconf.spec.in: Added a .spec file. + * configure.in: Generate gconf.spec. + * Makefile.am: Added gconf.spec.in and gconf.spec to the + EXTRA_DIST. + +2000-06-07 Pavel Cisler + + * wrappers/gtk/gconf-client.c: (gconf_client_get_string): + Fix a storage leak -- a g_strdup and an string ownership + swapping optimization were working against each other. + Removed the g_strdup that is not needed. + +2000-06-04 Mathieu Lacage + + * gconf-config.in: add gtk-config --cflags and --libs + output to the gconf-gtk --cflags and --libs output. + +2000-06-01 Havoc Pennington + + * gconf/gconf.c (lookup_engine): check whether the hash is NULL + before looking up the engine. + +2000-06-01 Havoc Pennington + + * gconf/gconf.c (gconf_engine_new): If there's an existing engine + for a given context, return that engine instead of creating a new + one. + (gconf_engine_new_from_address): ditto + + * wrappers/gtk/gconf-client.c (gconf_client_finalize): remove + client from client registration table + (gconf_client_new): register newly-created client in hash from + engines to clients; return an existing client if there's already + a client for the default engine + (gconf_client_new_with_engine): register newly-created client, + and try to return existing client. + +2000-05-07 Havoc Pennington + + * gconf/gconf-listeners.c: Move struct _GConfListeners + into the .c file, eventually need to simply get rid of this. + +2000-04-24 Fatih Demir + + * configure.in : Added tr to ALL_LINGUAS . + +2000-04-19 Pablo Saratxaga + + * configure.in (ALL_LINGUAS): Added Catalan language + +2000-04-19 Sebastian Wilhelmi + + * gconf/gconftool.c (main): Don't g_free the result of g_getenv (). + +Tue Apr 18 01:37:51 2000 George Lebl + + * gconf/gconf.c: make the default path sane by adding the flag + field with readwrite + + * gconf/gconf.path: add readwrite flag field to make the path legal + +2000-03-30 Matthias Warkus + + * configure.in (ALL_LINGUAS): Added German translation. + +2000-03-13 Alastair McKinstry + + * configure.in (ALL_LINGUAS): Added Irish translation. + +2000-03-09 Havoc Pennington + + * configure.in (absolute_top_srcdir): don't do makefile for Guile + stuff. + + * Makefile.am: create DIST_SUBDIRS with tests directory + +2000-03-09 Elliot Lee + * gconf/gconf-internals.c: Don't syslog things. + * gconf/examples/Makefile.am: Fix for builddir != srcdir. + +2000-03-08 Havoc Pennington + + * gconf/gconf.c (gconf_init): exit on error. + + * examples/simple-controller.c (main): fix gconf_init() error + + * examples/simple-view.c (main): fix gconf_init() error + +2000-03-06 Havoc Pennington + + * doc/intro-article.sgml: Add the examples + + * examples/simple-view.c: Change include to work before + we install. + + * examples/simple-controller.c: ditto + +2000-02-29 Havoc Pennington + + * configure.in: Add goofy "--enable-docs" option to bypass all + library checks, we just want to generate sufficient makefile + for the doc-building targets to run on developer.gnome.org + +2000-02-26 Havoc Pennington + + * examples/Makefile.am: Add new examples + * examples/simple-view.c, examples/simple-controller.c: + Two simple new examples + +2000-02-23 Havoc Pennington + + * configure.in: Bump version and libtool versions, + and try to fix the prefix mess. Update required OAF version. + + * doc/gconf/Makefile.am: srcdir != builddir fix + + * standard-schemas/Makefile.am: add schemas to EXTRA_DIST + +2000-02-22 Elliot Lee + + * tests/Makefile.am: srcdir != builddir fix. + * wrappers/gtk/Makefile.am: Add libgconf-gtk.la to testgconfclient + deps so that 'make -j' builds will work correctly. + +2000-02-19 Havoc Pennington + + * gconf/gconf.c (try_to_contact_server): Make sure we always set + an error + +2000-02-15 Havoc Pennington + + * gconf/gconf-changeset.c (gconf_change_set_set): apply patch from + Rusty Conover fixing an infinite recursion + typo + + * gconf/gconfd.c (fast_cleanup): Don't bother to unregister with + OAF + +2000-02-01 Havoc Pennington + + * configure.in (GCONF_CONFIG_SOURCE): update default schema + install source + (XML_LIBS): add better check that we actually ran xml-config + successfully + + * gconf/gconf-backend.c (gconf_backend_resolve_address): Honor the + "readonly" flag in address names + + * gconf/gconf-sources.c (SOURCE_WRITEABLE): convert to a function, + source_is_writeable + + * gconf/gconf-sources.h: add GCONF_SOURCE_NEVER_WRITEABLE flag + + * tests/testaddress.c: new test to verify the functions that break + up a configuration source address + + * gconf/gconf-backend.c (gconf_address_flags): function to extract + configuration source flags + + * doc/gconf/gconf.sgml: note new configuration source URL format + + * gconf/gconf.c: Add space, tab, carriage return, newline to the + invalid characters in a gconf key + +2000-01-31 Havoc Pennington + + * wrappers/gtk/gconf-client.c (check_type): include name of the + key with the wrong type in the error message + +2000-01-31 Havoc Pennington + + * wrappers/gtk/gconf-client.c + (gconf_client_real_unreturned_error): only handle the error if the + mode is GCONF_CLIENT_HANDLE_UNRETURNED + (gconf_client_real_error): only handle if GCONF_CLIENT_HANDLE_ALL + (gconf_client_init): change default error handling to + GCONF_CLIENT_HANDLE_UNRETURNED + + * wrappers/gtk/gconf-client.h: don't pass error handling mode to + the error handler function + +2000-01-28 Havoc Pennington + + * wrappers/gtk/gconf-client.c + (gconf_client_set_global_default_error_handler): New function so + gnome-libs can install a Gnomized error dialog + +2000-01-27 Havoc Pennington + + * wrappers/gtk/gconf-client.c (check_overlap): fix the no-debug + case + +2000-01-24 Havoc Pennington + + * backends/xml-backend.c (resolve_address): base mode for creating + files and directories on the permissions of the root XML directory + + * gconf/gconf.h: Clean up indentation + +2000-01-27 Elliot Lee + * gconf/Makefile.am, standard-schemas/Makefile.am: Fix builddir != srcdir + +2000-01-24 Havoc Pennington + + * gconf/gconf-sources.c (gconf_sources_new_from_addresses): + never return errors, just log them. + + * gconf/gconf-backend.c (gconf_get_backend): fix mem leak (free + "name" if we don't create a new backend to use it in) + + * gconf/gconf-internals.c (gconf_get_lock): fix mem leak + + * backends/xml-entry.c (schema_node_extract_value): fix a mem leak + + * gconf/gconfd.c (main): keep a pointer to the object ID returned + from PortableServer_POA_activate_object() + + * backends/xml-backend.c (resolve_address): fix a mem leak on + error + +2000-01-24 Havoc Pennington + + * gconf/gconf-internals.c (gconf_get_lock): Use a long enough + buffer to read in the IOR + +2000-01-24 Havoc Pennington + + * gconf/gconftool.c (do_load_schema_file): Apply patch from Mirko, + properly locates the root node instead of assuming it is the only + node at the toplevel (handles comments, etc). + (process_schema): Report error if a schema has no + tags. + +2000-01-23 Havoc Pennington + + * backends/xml-entry.c (node_set_value): Store strings in a + sub-node and use xmlEncodeEntitiesReentrant() to encode it + (node_extract_value): Extract string from the subnode + +2000-01-23 Havoc Pennington + + * doc/gconf/gconf.sgml: Add schema file DTD from Mirko + + * backends/xml-dir.c (dir_sync): pass the XML filename in to + create_fs_dir() + (dir_load): This was broken; bug reported by Mirko Streckenbach. + The Dir object was created even if %gconf.xml file didn't exist, + so we didn't get around to actually creating %gconf.xml + (create_fs_dir): Make %gconf.xml the thing this function is + primarily creating, with the directory containing it as a side + effect only. + + * gconf/Makefile.am (install-data-local): Install default path to + path.example, so we don't override someone's existing setup. + + * gconf/tests/testdirlist.c: test program that detects dir listing + bugs. + +2000-01-22 Havoc Pennington + + * backends/xml-dir.c (dir_all_subdirs): If we can't open the + directory it's not an error, just return NULL. + +2000-01-21 Havoc Pennington + + * backends/xml-cache.c (cache_clean_foreach): remove everything + older than or the same age as the older_than time value (i.e. + put >= instead of >) + (cache_destroy_foreach): debug check to be sure we aren't + destroying unsynced directories + + * gconf/gconfd.c (context_synchronous_sync): remove sync + timeout/idle handlers when we do a synchronous sync + +2000-01-21 Havoc Pennington + + * gconf/gconf-value.c (gconf_value_new_from_string): use new + double conversion + (gconf_value_to_string): use new conversion + + * gconf/gconf-internals.c (gconf_double_to_string) + (gconf_string_to_double): new functions to go from string + to double, we had precision problems with this and maybe + still do, these functions encapsulate it. For now + copied code from gnumeric/src/xml-io.c + + * gconf/gconftool.c (main): improve gconfd-is-running error + message + + * gconf/gconf.c (gconf_synchronous_sync): internal-only API + for the synchronous sync + + * gconf/gconfd.c (gconfd_synchronous_sync): implement a way to + force _immediate_ sync for testing purposes + +2000-01-21 Havoc Pennington + + * tests/Makefile.am (testpersistence_SOURCES): add new test + + * tests/testpersistence.c: New test, clears the cache after every + set, to see if the get() function can properly load stuff off of + disk. Right now we fail this test. Blah. + +2000-01-21 Havoc Pennington + + * backends/xml-cache.c (cache_clean): oops, this was broken + before; we need to check that the dir doesn't need a sync before + we destroy it. + + * backends/xml-dir.c (dir_sync_pending): new function + + * backends/xml-backend.c (clear_cache): implement clearing cache + for XML backend + + * gconf/gconf.c (gconf_clear_cache): implement API here + + * gconf/GConf.idl: add clear_cache method + + * gconf/gconfd.c (context_clear_cache): add code to implement + clear_cache IDL + + * gconf/gconf-sources.c (gconf_sources_clear_cache): New function + for debugging purposes + +2000-01-20 Havoc Pennington + + * backends/xml-entry.c (node_extract_value): Detect case where a + pair is missing car and/or cdr and do an error instead of + returning an invalid pair. + + * gconf/gconf-internals.c (gconf_get_lock): remove IOR debug spew + + * gconf/gconftool.c: Add --break-key and --break-directory, these + allow you to easily torture test your application and see if + you're robust against users setting your config keys to stupid + stuff. + + * tests/testgconf.c: Include the empty string in the list + of strings we test. I know this is currently broken if you + exit gconfd or purge the cache between set and get. + +2000-01-20 Havoc Pennington + + * gconf/Makefile.am (EXTRA_DIST): fix EXTRA_DIST to have + default.path.in in it + +2000-01-20 Havoc Pennington + + * gconf/default.path: remove, replace with gconf/default.path.in + which is set up properly to go in $sysconfdir + + * gconf/gconftool.c (main): Always unref the engine when we're + done, to ensure we cleanly give up locks on local sources. + + * configure.in (GCONF_CONFIG_SOURCE): --enable-gconf-source option + + * gconf/gconftool.c (main): add an --makefile-install-rule option, + which does the right thing in makefile install rules. + + * Makefile.am: add standard-schemas subdir + + * configure.in (absolute_top_srcdir): create standard-schemas Makefile + + * standard-schemas/desktop.schemas: Schemas that any desktop can use + + * standard-schemas/Makefile.am: install schemas + +2000-01-19 Havoc Pennington + + * gconf/gconfd.c (gconf_set_exception): warn if the error is set + to GCONF_ERROR_SUCCESS + + * gconf/gconf-error.h: Prefix all errno values with GCONF_ERROR as + Owen suggested + +2000-01-15 Havoc Pennington + + * tests/testlisteners.c (check_immediate_remove_after_add): update + to match change to gconf-listeners.c + + * gconf/gconf-listeners.c: Use only 24 bits for the array index, + and put a variable value in the top 8 bits, so recycling array + indices doesn't create the possibility of clients clashing with + each other (i.e. to clients it doesn't appear that indexes are + being recycled). + +2000-01-15 Havoc Pennington + + * backends/xml-dir.c (dir_unset_value): check entries for + uselessness on unset, even if they are unchanged by the unset. + Allows us to delete useless crap we loaded from disk. + If you unset, the entry should no longer appear in all_entries + unless there's a schema name to remember. + + * backends/xml-entry.c (entry_unset_value): Fix this to properly + unset value for all locales if the locale passed in to "unset" is + NULL + (entry_sync_to_node): Remember to unset the value if necessary + + * gconf/gconftool.c (list_pairs_in_dir): handle entries with no + value. + +2000-01-15 Havoc Pennington + + * backends/xml-dir.c (dir_destroy): destroy entries before the xml + doc, since they hold pointers into the xml doc. + + * backends/xml-entry.c (entry_sync_to_node): if no cached value, + blow away the value in the node. + +2000-01-14 Havoc Pennington + + * gconf/gconfd.c (gconfd_all_entries): remove bad assertion that + the value in an entry was non-NULL + + * gconf/gconf.c (gconf_set): check for invalid list type + + * gconf/gconf-internals.c (gconf_value_from_corba_value): Be more + paranoid about list types coming from gconfd + +2000-01-13 Havoc Pennington + + * gconf/gconf.c (gconf_unique_key): function to generate + a pseudo-random very-very-likely-to-be-unique key name. + +2000-01-13 Havoc Pennington + + * gconf/gconf-internals.c (gconf_concat_key_and_dir): move + declaration to public header + + * doc/gconf/tmpl/gconf-client.sgml: Document the changed + dir add/remove behavior + +2000-01-13 Havoc Pennington + + * backends/xml-dir.c (dir_load): arguments to this were backward + + * wrappers/gtk/gconf-client.c: keep a count of the number of times + a directory has been added/removed from the dir list, so we only + remove it from the list after that number of removals. + Perhaps somewhat unintuitive, but we'll document it, and it's + really necessary if multiple code sections are going to share the + same GConfClient. + (gconf_client_destroy): move a bunch of stuff to finalize + so we remain "safe" before last unref + +2000-01-12 Havoc Pennington + + * gconf/gconfd.c (main): don't use custom object ID + +2000-01-12 Jonathan Blandford + + * wrappers/gtk/gconf-client.c: #include + +2000-01-11 Havoc Pennington + + * gconf.m4: separate $4 from gconf_config_args + + * gconf-config.in (af_libs): -lgconf, not -lgconf-client + (Libraries): add gconf-gtk lib + +2000-01-11 Andreas Hyden + + * configure.in : added sv (swedish) + +2000-01-08 Havoc Pennington + + * gconf/gconftool.c (main): had local and non-local cases backward + so you got the opposite of what you requested + + * gconf/gconf-internals.c (gconf_release_lock): include strerror() + in "can't open lock file" message + (gconf_get_lock): actually write the PID to the lock file, + and use ConfigServer_ping() instead of CORBA_Object_is_nonexistent() + +2000-01-07 Havoc Pennington + + * gconf/gconf-internals.c (gconf_get_lock): totally rewrite the + locking stuff + + * backends/xml-dir.c (dir_load): if errno == ENOENT don't make + dir_load() fail + + * gconf/gconfd.c (main): check return value of + oaf_active_server_register() and act accordingly. + + * gconf/gconf.c (try_to_contact_server): use new + OAF_FLAG_EXISTING_ONLY when appropriate + + * gconf/gconf-internals.c (gconf_set_daemon_ior): allow setting + IOR to a global var + + * gconf/gconfd.c (main): set the IOR so it can be used in lockfiles + +2000-01-03 Havoc Pennington + + * gconf/gconftool.c (main): add support for direct config source access + +1999-12-31 Havoc Pennington + + * gconf/gconf-internals.c (gconf_log): in non-daemon mode, use + fprintf() when it's an error and printf() when not + (gconf_in_daemon_mode): new function + + * gconf/gconfd.c (signal_handler): special-case some more signals; + do more thorough cleanup when we can. + (main): fix which signals we add an action for + + * gconf/gconf-internals.h: Remove server_info* functions + + * gconf/gconf-error.h: add GCONF_LOCK_FAILED + + * gconf/gconf.c (corba_errno_to_gconf_errno): lock failed error + + * gconf/gconf-internals.c (gconf_nanosleep): Add utility function + to portably sleep a little while (we should really stick one of + these in glib) + (gconf_release_lock, gconf_get_lock): Lock directory functions + +2000-01-02 Timur Bakeyev + + * doc/gconf/Makefile.am: Replace unportable install -d with $MKINSTALLDIRS. + install -m 0644 - with $(INSTALL_DATA). + +2000-01-02 Timur Bakeyev + + * po/uk.po: Add missed "\n" in 2 strings. Things sholud be checked + before commit :) + + * backends/Makefile.am, wrappers/gtk/Makefile.am: Add $(top_builddir)/gconf + to INCLUDES to make GConf.h visiable. + + * gconf/gconf-internals.c: If LC_MESSAGE doesn't exist, use value of + LC_CTYPE (is this correct?) + +1999-12-31 Yuri Syrota + + * configure.in: Added "uk" to ALL_LINGUAS + +1999-12-30 Havoc Pennington + + * backends/xml-backend.c: Complete cleanup of XML backend, + all test suite passes, code is much more manageable. + +1999-12-21 Havoc Pennington + + * doc/gconf/tmpl/gconf-backend.sgml: Documented the methods in the + backend vtable. + + * backends/xml-dir.[hc], backends/xml-entry.[hc]: fixed up some + code, mostly done. + +1999-12-20 Havoc Pennington + + * gconf/gconf-sources.c (gconf_sources_new_from_addresses): const + correctness + + * gconf/gconfd.c: Massive const-correctness changes to match + latest ORBit + + * gconf/gconf.c (notify): "in string" seems to be const again now. + + * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): store the + is_default parameter when preloading + + * gconf/gconf.c (gconf_all_entries): receive the is_default + parameter + + * gconf/gconfd.c (gconfd_all_entries): pass the is_default + parameter over the CORBA link + + * backends/xml-backend.c (listify_foreach): Add the schema name to + the entry if appropriate (if value is unset) + + * gconf/gconf-sources.c (gconf_sources_all_entries): Change to + match new semantics of all_entries in the backend; get all entries + that have a schema set on them, and the corresponding default + value if appropriate. + + * gconf/gconf-value.c (gconf_entry_set_is_default): new function + (gconf_entry_set_schema_name): new function + + * backends/xml-backend.c (listify_foreach): Include keys that + exist but have no value set in the list of returned entries. + +1999-12-20 Havoc Pennington + + * tests/testlisteners.c: fix include + + * wrappers/gtk/gconf-client.c (gconf_client_preload): Actually + implement preloading. We have some "issues" here to resolve I + think, because of the defaults stuff and schemas. + +1999-12-14 Havoc Pennington + + * gconf/gconf.c (gconf_engine_new_from_address): Add a g_warning() + that people probably don't want to use this. + +1999-12-14 Havoc Pennington + + * doc/gconf/tmpl/gconf-client.sgml: fix a typo, add additional + explanation to the introduction. + + * doc/gconf/tmpl/gconf.sgml: Document the string-to-enum functions. + Update some other docs too. + + * doc/gconf/gconf-sections.txt: add new functions + + * gconf/gconf.c (gconf_string_to_enum): new function + (gconf_enum_to_string): new function + + * gconf/gconf-engine.h: Put gconf_engine_new_local() here instead + of gconf-internals.h + + * gconf/gconf-internals.h: added a new GCONF_ENABLE_INTERNALS + define, to allow us to have internal stuff in headers other than + gconf-internals.h + + * gconf/gconf.c (gconf_unset): local version + (gconf_associate_schema): local version + (gconf_all_entries): local version + (gconf_all_dirs): local version + (gconf_suggest_sync): local version + (gconf_dir_exists): local version + + * gconf/gconf-internals.h (gconf_engine_new_local): Declare this + function here, though it's defined in gconf.c + + * gconf/gconf.c (gconf_set): local version + + * gconf/gconfd.c (context_query_default_value): use + gconf_sources_query_default_value() + + * gconf/gconf-sources.c (gconf_sources_query_default_value): New + function + + * gconf/gconf-sources.h: egtk-format-protos the function + prototypes. + + * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-locale.[hc] + into the library, bah + + * gconf/gconf.c (gconf_get_full): Add local (no gconfd) version + + * gconf/gconf-locale.c (gconf_split_locale): locale splitter + function. + + * gconf/gconf-sources.c (gconf_sources_new_from_source): new function + + * examples/basic-gconf-app.c (create_prefs_dialog): Move keys from + /apps/gnome to plain /apps + + * doc/gconf/gconf.sgml: Add an initial stab at namespace + splitting. + +1999-12-09 Havoc Pennington + + * gconf/gconf.c (gconf_init): Safety check to ensure we don't + initialize OAF a second time. + +1999-12-06 Havoc Pennington + + * gconf/gconf.c (gconf_notify_add): Backward assertion + +1999-12-02 Havoc Pennington + + * examples/basic-gconf-app.c (create_configurable_widget): use + gconf_client_get_string() instead of gconf_client_get() + (update_entry): Check for the default value if we have an unset + value in the change set. + + * wrappers/gtk/gconf-client.c + (gconf_client_create_change_set_from_currentv): use without_default + (revert_foreach): use without_default + + * gconf/gconf-changeset.c (gconf_create_change_set_from_currentv): + use gconf_get_without_default() + (revert_foreach): use gconf_get_without_default() + + * wrappers/gtk/testgconfclient.c (entry_notify_func): fix to compile + + * examples/basic-gconf-app.c (configurable_widget_config_notify): + fix to compile + + * wrappers/gtk/gconf-client.c + (gconf_client_get_default_from_schema): New function + + * gconf/gconf.c (gconf_get_without_default): renamed from + gconf_get_no_default(), so that gconf_get_default_from_schema() + won't be as confusing maybe. + (gconf_get_default_from_schema): new function to read the default + setting in the schema + + * backends/xml-backend.c (xentry_extract_value): remove ignore_subsequent + (xentry_set_value): ditto + + * gconf/gconf-sources.c (gconf_sources_query_value): Remove ignore + subsequent + + * gconf/gconf-value.c (gconf_value_new_from_string): remove + ignore_subsequent + (gconf_value_to_string): remove ignore_subsequent + (gconf_value_copy): Remove ignore_subsequent + + * gconf/gconfd.c (context_unset): add is_default to notification + (context_set): add is_default to notification + + * gconf/gconf-internals.c (gconf_value_type_to_string): Remove + ignore_subsequent. + + * gconf/gconf.c (gconf_cnxn_notify): add is_default + (notify) add is_default + + * gconf/gconf-value.h: Remove GCONF_VALUE_IGNORE_SUBSEQUENT + + * gconf/gconf-sources.c (gconf_sources_unset_value): don't do that + weird IGNORE_SUBSEQUENT goo + + * wrappers/gtk/Makefile.am (INCLUDES): add top_builddir to include + search to get the built sources + + * gconf/gconf-engine.h: fix includes + + * gconf/gconf-changeset.h: fix includes + + * gconf/Makefile.am (gconfd_SOURCES): add gconf-sources.h here + instead of installing it. + + * wrappers/gtk/Makefile.am (INCLUDES): remove -I$(top_builddir)/gconf + + * wrappers/gtk/gconf-client.c (gconf_client_get_full): Add this, + etc. + + * gconf/gconf-sources.c (gconf_sources_query_value): Set a flag + indicating whether the retrieved value was the default or not. + + * gconf/GConf.idl: add value_is_default out flag to + lookup_with_locale() + +1999-12-02 Havoc Pennington + + * gconf/gconf-error.c: Was missing an element in the err_msgs + array and the array had the wrong size. + + * gconf/gconf-sources.c (gconf_sources_query_value): Add + use_schema_default flag here (and in the other stuff that calls + it, I'm skipping some layers in the changelog) + (gconf_sources_query_value): If we find an IGNORE_SUBSEQUENT, we + should return immediately, rather than checking the schema default. + + * gconf/gconfd.c (gconfd_lookup_with_locale): fix + + * gconf/gconf.c (gconf_get_no_default): new function to get + a value, but not fall back to the schema default. + + * gconf/GConf.idl: lookup_with_locale() needs to raise + ConfigException. Also, add a "use schema default" flag. + +1999-12-01 Havoc Pennington + + * gconf/gconf.c: Add local "direct mode" engine; mildly bad hack. + This file could use some modularization. Still have to make + all the methods support the local version. + + * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-sources.c to + the library instead of gconfd (again). + + * gconf/gconf-internals.c (gconf_handle_oaf_exception): set the + GCONF_OAF_ERROR errno + + * gconf/gconf-error.c: add strerror stuff for those errors. + + * gconf/gconf-error.h: add oaf error and "this is not a gconfd + engine" error. + +1999-12-01 Havoc Pennington + + * gconf/gconf.c (try_to_contact_server): handle OAF exceptions + + * gconf/gconf-internals.c (gconf_handle_oaf_exception): new + function to handle OAF CORBA exceptions, now I have to find all + the places that I need to use this function... + +1999-12-01 Havoc Pennington + + * doc/gconf/gconf-sections.txt: Add new create_change_set + functions for GConfClient and GConfEngine + + * doc/gconf/Makefile.am (LDFLAGS): Use proper cflags/ldflags + for gtk and OAF when doing 'make scan' + + * wrappers/gtk/testgconfclient.c (entry_attached_to): change for + new get_string() thing + + * gconf/gconf-changeset.h: fix the "" vs. <> issue on an #include + + * wrappers/gtk/gconf-client.c (gconf_client_get_bool): remove + "default" argument + (gconf_client_get_string): ditto + (gconf_client_get_int): ditto + (gconf_client_get_float): ditto + + * gconf/gconf.c (gconf_get_bool): Remove "default" argument. + (gconf_get_string): ditto + (gconf_get_int): ditto + (gconf_get_float): ditto + +1999-11-30 Havoc Pennington + + * backends/xml-backend.c (resolve_address): s/dir/root_dir/ + +1999-11-29 Havoc Pennington + + * gconf/gconftool.c (do_load_schema_file): Use new syntax for + attaching schema names to key names + + * backends/xml-backend.c (resolve_address): Create the XML root + directory if necessary. + +1999-11-29 Havoc Pennington + + * wrappers/gtk/gconf-client.c (gconf_client_get): sheesh, this + stupid function didn't work at all. fix it + (get): properly check whther val is NULL before copying it. + + * gconf/gconf-internals.c (gconf_set_daemon_mode): Function to set + daemon mode, for now changes gconf_log behavior + (gconf_log): handle daemon vs. non-daemon mode, and with syslog do + syslog(pri, "%s", msg) instead of syslog(pri, msg) to avoid + unwanted printf magic. + (gconf_value_from_corba_value): more robust for list types, add an assertion + + * gconf/gconfd.c (gconfd_set): return if the conversion from + GConfValue doesn't fly + + * gconf/gconf-value.c (gconf_value_new): add a check for valid type + + * gconf/gconf-value.h (GCONF_VALUE_TYPE_VALID): Add macro to check the + a value type is valid + + * gconf/gconf-changeset.c (change_set): return if the value being + set is the same as the existing value. + + * examples/Makefile.am (EFENCE): add EFENCE var + + * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set): + add checks + + * gconf/gconf-changeset.c (gconf_commit_change_set): add checks + + * gconf/gconf-listeners.c (gconf_listeners_remove): Robust against + bad notify_id + + * gconf/gconf-changeset.c (gconf_create_change_set_from_current): + New function to create a change set which will restore the current + values of a list of keys. + (gconf_create_change_set_from_currentv): Vector version of the + same function. + (gconf_change_set_check_value): new function to check for and get + the value of a key in a change set. + + * wrappers/gtk/gconf-client.h: Add client analogues for the above + two set-creation functions. + +1999-11-28 Havoc Pennington + + * gconf.m4: add the "" around the $4, seems to work - the problem + here seems to have something to do with aclocal or autoconf + doing the wrong thing, rather than a shell issue. I don't + understand it yet. + +1999-11-23 Havoc Pennington + + * backends/xml-backend.c (query_value): Don't return errors here; + this is somewhat wrong, we actually need to discriminate between + errors and report the "abnormal" ones, but for now I think all of + them are ignorable. + + * gconf/gconf-internals.c (gconf_log): If the log string contains + a % escape it with another percent so we don't get printf() + effects (was causing a segfault) - however it's still broken if + unintentional percents exist in the initial format string. Will + fix later by adding a "printf()-formatting" arg I think + + * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set): + put some casts in to chill warnings + + * gconf/gconf-changeset.c (gconf_change_set_size): new function + + * wrappers/gtk/gconf-client.c (gconf_client_destroy): Destroy the + directory list. + + * Makefile.am (SUBDIRS): add "examples" directory + + * examples/Makefile.am, examples/basic-gconf-app.c: Examples; + write nice example program. + + * gconf/gconfd.c (notify_listeners_cb): error message improvement + (set_default_context): Set the "context" field of the default + context, I don't get how that was working before. + +1999-11-23 Havoc Pennington + + * wrappers/gtk/testgconfclient.c: remove GNOME dependency + + * configure.in: don't build gconf-editor makefile. + + * Makefile.am (SUBDIRS): never build gconf-editor, it will have to + go in a separate module (somewhat inconveniently, since I'll + probably end up installing gconf-internals.h for its use, blah) + + * configure.in (GCONF_AGE): Check for plain GTK not GNOME + + * wrappers/Makefile.am (SUBDIRS): change GNOME conditional to GTK + +1999-11-23 Havoc Pennington + + * gconf/Makefile.am (libgconf_la_LDFLAGS): split off LIBADD + + * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): set shared + lib version + (libgconf_gtk_la_LDFLAGS): split LIBADD and LDFLAGS maybe properly. + + * configure.in: remove gnorba cflags/libs + + * gconf/Makefile.am (install-data-local): Create the + $(sysconfdir)/gconf directory. + + * wrappers/Makefile.am: For now, always disable Guile wrapper + build. + +1999-11-22 Havoc Pennington + + * backends/xml-backend.c (resolve_address): Check whether the XML + directory is readable/writeable and report an error if neither; + set readable/writeable flags properly. + + * gconf/gconfd.c (gconf_server_load_sources): log decision to use + default config source + +1999-11-22 Havoc Pennington + + * gconf/gconfd.c (gconf_server_load_sources): Fall back to + xml:~/.gconf if no config file is found + +1999-11-22 Havoc Pennington + + * gconf/default.path: default configuration file + + * gconf/Makefile.am (install-data-local): Install default.path to + sysconfdir/gconf/path (theoretically) + +1999-11-22 Havoc Pennington + + * gconf/gconfd.c (gconf_set_exception): lots of assertions + (gconf_server_load_sources): Install the default context even if + we don't find any configuration sources in the path + + * gconf/gconf.c (gconf_get_config_server): always return an error + if the server isn't available. This is still not doing the right + thing; for shutdown and ping we need to be able to get the object + if and only if it already exists. This feature is also needed for + something like magicdev-patched gtcd. + + * gconf/gconfd.c (gconf_server_load_sources): #ifdef the + debug-only search for debugging path file. + +1999-11-19 Havoc Pennington + + * gconf/gconfd.c (gconf_server_load_sources): Give actual + sysconfdir in the error message, not just /etc; + include liboaf.h + + * gconf/gconf.c: include liboaf.h + (gconf_postinit): fix a bunch of missing semicolons + +1999-11-20 Havoc Pennington + + * wrappers/gtk/gconf-client.c + (gconf_client_create_reverse_change_set): new function + (gconf_client_commit_change_set): new function + +1999-11-20 Havoc Pennington + + * gconf/gconf-changeset.c (gconf_create_reverse_change_set): New + function creates a change set which will revert another change set + on commit. + +1999-11-19 Havoc Pennington + + * gconf/gconfd.c (gconf_server_load_sources): Give actual + sysconfdir in the error message, not just /etc; + include liboaf.h + + * gconf/gconf.c: include liboaf.h + (gconf_postinit): fix a bunch of missing semicolons + +1999-11-19 Havoc Pennington + + * gconf/gconf.c (gconf_server_broken): don't need to set the + server to NIL here, it gets set in gconf_detach_config_server() + + * doc/gconf/gconf-sections.txt: Add preinit, postinit + + * doc/gconf/gconf.sgml: Remove gconf-orbit entity + + * doc/gconf/gconf-sections.txt: Remove gconf-orbit stuff + + * tests/*.c: Fix to not include gconf-orbit.h, call gconf_init() + properly + + * gconf-editor/gconf-editor.c: don't include gconf-orbit.h + + * wrappers/gtk/testgconfclient.c (main): remove "orb" variable + + * gconf/gconftool.c: don't include gconf-orbit.h + + * gconf/gconfd.c: don't include gconf-orbit.h + + * gconf/gconf.c: don't include gconf-orbit.h + + * gconf/gconf.h: don't include gconf-orbit.h + + * gconf/Makefile.am (gconfinclude_HEADERS): remove gconf-orbit.h + (libgconf_la_SOURCES): remove gconf-orbit.c + + * gconf/gconfd.c (main): fix error message if oaf_init() returns FALSE + + * gconf/gconf.c (try_to_contact_server): Use the IID macro + (gconf_postinit): Change all the error checks to assertions; if + these errors can really happen they need to be reported as before + (not sure how to do this with the pre/post init setup), if they + can't happen then they should be asserted, not error-checked. + + * gconf/gconfd.c (fast_cleanup): Unregister with OAF in order to + clean up. + + * gconf/Makefile.am: add -DIID to INCLUDES + + * gconf/gconfd.c (main): Use a macro for the IID + + * gconf/gconf-internals.c: Remove gconf_read_server_ior(), + gconf_info_dir(), gconf_info_file(), etc. since we use OAF instead. + + * gconf/gconfd.c (main): Remove "nodaemon" flag since we don't run + as a daemon anymore. + (main): After oaf_init(), don't try to use "err" since oaf_init() + won't set it. + + * gconf/gconf-orbit.h, gconf/gconf-orbit.c: Delete these, we + are using OAF now. + + * gconf/gconf.c (gconf_get_config_server): Change this to only + call try_to_contact_server() if start_if_not_found is TRUE, + since with OAF any attempt to contact the server will + automatically restart it. Now we keep the server variable + up-to-date locally (set it to NULL on any system exception). + +1999-11-19 Elliot Lee + + * Make it all use OAF, and redo the initialization routine(s) to + fit better into the GnomeModuleInfo system. + +1999-11-18 Elliot Lee + + * gconf.m4: AM_PATH_GCONF macro. + + * wrappers/gtk/Makefile.am, autogen.sh, backends/Makefile.am: Work with builddir != srcdir + + * Makefile.am: Distribute gconf.m4 & gconf-config.in, install gconf.m4 + +1999-11-18 Havoc Pennington + + * gconf/gconfd.c (gconf_server_load_sources): fix the message + about writeable sources + +1999-11-18 Havoc Pennington + + * backends/xml-backend.c (find_schema_subnode_by_locale): Check + that locale && this_locale before strcmp()'ing them + (entry_unset): take a NULL locale in unset to mean "unset all locales" + + * tests/testschemas.c (check_one_schema): fix the locale-related tests + + * gconf/gconf.c (gconf_set_schema): remove debug spew + + * gconf/gconf-internals.c (gconf_schema_from_corba_schema): parse + the encoded default value + (fill_corba_schema_from_gconf_schema): encode the default value to + ship to the server. + + * gconf/GConf.idl: Add encoded default value string to + ConfigSchema struct + + * gconf/gconf-internals.c (gconf_value_decode): implement + (gconf_value_encode): implement + + * gconf/gconf-value.c (gconf_value_to_string): Use + g_strdup_printf() to create int/float strings, rather than + guessing at the needed string size. + +1999-11-17 Havoc Pennington + + * tests/testencode.c: new test for string quoting + + * gconf/gconf-internals.c (gconf_unquote_string_inplace): new + function unquotes a string + (gconf_quote_string): quotes a string + (gconf_unquote_string): unquotes a const string + +1999-11-16 Havoc Pennington + + * gconf/gconf-schema.c (gconf_schema_copy): copy locale, and + handle NULL fields. Sheesh this was broken. + (gconf_schema_destroy): destroy default value and locale + +1999-11-16 Havoc Pennington + + * gconf/gconf-value.c (gconf_value_to_string): print more info + about schemas + + * backends/xml-backend.c (xentry_set_schema_value): Set the schema + type on the toplevel node, not the localized node. + (xentry_set_schema_value): Set the owner on the toplevel node + (schema_node_extract_value): Do better at falling back to any + schema if the locale we want isn't found. + (my_xmlSetProp): Replace xmlSetProp with this, deletes the prop + if setting to NULL or "" + (my_xmlGetProp): Replace xmlGetProp with this, returns NULL if the + prop has an empty value. + + * gconf/gconf-internals.c (gconf_value_type_to_string): Add case + for GCONF_VALUE_INVALID + + * backends/xml-backend.c (entry_unset): refill cached_value if + other locale values still exist. Also, mark the Entry dirty. + (entry_value): add a sync_if_needed here + (entry_sync_if_needed): just always sync if it's a schema; this + code is so broken we may as well not try to be clever. + +1999-11-15 Havoc Pennington + + * backends/xml-backend.c (entry_fill): handle locale by syncing + cached value if necessary + + * wrappers/gtk/gconf-client.c (gconf_client_get_string): + g_strdup() the retval if necessary + (gconf_client_get_pair): fix one of the checks + + * backends/xml-backend.c (xentry_extract_value): use "C" locale if + none is given. + + * gconf/gconftool.c (do_load_schema_file): check type of nodes + (process_key_list): check node type + (process_schema): check node type + (process_locale_info): check node type + (extract_global_info): check node type + + * backends/xml-backend.c (entry_unset): deal with locales + (entry_set): deal with locales + (entry_value): locales + (schema_node_extract_value): handle locales + + * gconf/gconf-internals.c (gconf_log): move the check for debug + messages to the top of the function, before g_strdup_vprintf(), + and if GCONF_ENABLE_DEBUG isn't defined return immediately (ignore + the GCL_DEBUG messages). + +1999-11-15 Havoc Pennington + + * doc/gconf/tmpl/gconf-client.sgml: write GConfClient docs. + + * wrappers/gtk/gconf-client.c (gconf_client_new_with_engine): + change this to increment the #GConfEngine reference count. + + * doc/gconf/gconf.sgml: Add GConfClient entity + + * doc/gconf/gconf-sections.txt: Add GConfClient stuff, add + set_list and set_pair for GConfChangeSet + + * doc/gconf/gconf.types: New file gtk-doc requires + + * doc/gconf/Makefile.am (scan): Scan GConfClient as well. + Uses a bad, probably nonportable hack, but this stuff isn't + built by default anyway. + + * wrappers/Makefile.am: Build GConfClient if we have GNOME + +1999-11-15 Havoc Pennington + + * gconf/gconf.c (gconf_get): Fix it to use the current + locale as documented. + + * gconf/gconf-internals.c + (gconf_value_list_to_primitive_list_destructive): new function + takes most code from gconf_get_list() + (gconf_value_pair_to_primitive_pair_destructive): new function + + * wrappers/gtk/gconf-client.c (get): Return a copy of the cached + value, should save us some segfaults. + (gconf_client_get_list): new function + (gconf_client_get_pair): new function + (gconf_client_set_list): new function + (gconf_client_set_pair): new function + + * gconf/gconf-internals.c (gconf_value_pair_from_primitive_pair): + new function removes guts of gconf_set_pair() + + * gconf/gconf.c (gconf_set_list): change to use + gconf_value_list_from_primitive_list() + + * gconf/gconf-changeset.c (gconf_change_set_set_list): new + convenience function + (gconf_change_set_set_pair): new function + + * gconf/gconf-internals.c (gconf_value_list_from_primitive_list): + new function, takes most of the code from gconf_set_list() to + share with other list-set wrappers + +1999-11-14 Havoc Pennington + + * backends/xml-backend.c (listify_foreach): s/gconf_entry_new/gconf_entry_new_nocopy/ + + * gconf/gconf.c (gconf_all_entries): s/gconf_entry_new/gconf_entry_new_nocopy/ + + * gconf/doc/*: tons of documentation updates. + + * gconf/gconf-changeset.c: Add an "in_foreach" flag and warn if + you do bad things during a foreach operation. + (gconf_change_set_remove): check that we aren't in a foreach + (gconf_change_set_unref): if refcount == 0 check that we aren't in + a foreach + + * gconf/gconf-changeset.h: try to spell "committed" right. + + * gconf/gconf-value.h (gconf_entry_value): add accessor macros + to GConfEntry. + + * gconf/gconf-value.c (gconf_entry_new_nocopy): Rename + gconf_entry_new() to gconf_entry_new_nocopy() to reflect its + actual behavior. + +1999-11-13 Havoc Pennington + + * gconf/gconf-internals.h: move the value-from-string constructors + here + + * gconf/gconf-value.h: moved from here + +1999-11-13 Havoc Pennington + + * gconf/gconf-value.h (gconf_meta_info_schema): Add const cast to + this macro. + + * gconf/gconf.c (gconf_set_list): allow list of schemas + (from_primitive): handle schemas + (primitive_value): handle schemas + (gconf_get_list): handle schemas + + * doc/gconf/tmpl/gconf-value.sgml: docs! + + * doc/gconf/tmpl/gconf.sgml: docs! + + * doc/gconf/gconf-sections.txt: add set/get list/pair + + * gconf/gconf.c (gconf_set_list): Fix dumb bug (assign back to the + original list!) + +1999-11-13 Havoc Pennington + + * tests/testgconf.c (check_list_storage): Use the new list + convenience wrappers, to be sure they are tested. (the test + reveals that right now they don't work ;-) + + * gconf/gconf.c (error_checked_set): destroy the error if it isn't + passed out to the user, to avoid a mem leak + (gconf_set_float): checks + (gconf_set_int): checks + (gconf_set_string): checks + (gconf_set_bool): checks + (gconf_set_bool): canonicalize the boolean value with !! + (gconf_set_schema): checks + + * gconf/gconf-value.h (gconf_value_string): add const cast to this + macro + + * gconf/gconf.c (gconf_get_schema): add checks + (gconf_get_bool): checks + (gconf_get_string): checks + (gconf_get_int): checks + (gconf_get_float): checks + (gconf_get_with_locale): checks + (gconf_set): more checks + (gconf_unset): checks + (gconf_associate_schema): checks + (gconf_all_dirs): checks + (gconf_dir_exists): checks + (gconf_get_list): New function, gets a list of native types + and avoids GConfValue. + (gconf_get_pair): New function, gets a pair of native types + (gconf_set_list): New function, sets a list of native types + (gconf_set_pair): New function, sets a pair of native types + +1999-11-12 Havoc Pennington + + * doc/gconf/gconf.sgml: Set up the gtk-doc system. Added all the + files for that. + +1999-11-12 Havoc Pennington + + * backends/xml-backend.c: Change all comments starting with /** to + not start with that (for gtkdoc) + +1999-11-12 Havoc Pennington + + * gconf/gconftool.c (main): Add the ability to specify a + configuration source other than the default configuration source + stack. + Add the ability to install a schema file. + + * gconf/Makefile.am (INCLUDES): add XML_CFLAGS + (gconftool_LDADD): add XML_LIBS + + * backends/Makefile.am (INCLUDES): add XML_CFLAGS + +1999-11-11 Havoc Pennington + + * tests/testchangeset.c: test for the changeset stuff + + * gconf/gconf.c (gconf_set): add check that string values don't + contain a NULL string + + * gconf/gconf-changeset.c (gconf_change_set_unset): fix typo + + * doc/gconf.sgml: tweaks + + * gconf/gconf-changeset.c, gconf/gconf-changeset.h: ChangeSet data + structure stores a bunch of changes to be committed in a block. + For now the gconf_commit_change_set() function is really naive + (iterates over the change set and sets each value) + + * backends/xml-backend.c: Throughout, use accessor functions to + access the "value" field in the cache entries; we're going to + have to update the value field to match the proper locale + before supplying it via the entry_value() accessor. + +1999-11-11 Havoc Pennington + + * tests/runtests.sh: Enhance to detect missing tests. + + * gconf/gconf-internals.c (gconf_log): don't log DEBUG level stuff + if built without GCONF_ENABLE_DEBUG + + * backends/xml-backend.c (safe_g_hash_table_insert): Same, use + GCONF_ENABLE_DEBUG + Add locales stuff throughout this file, but do nothing with it for + now. + + * gconf/gconfd.c (safe_g_hash_table_insert): Make this dependent + on GCONF_ENABLE_DEBUG setting. + + * gconf/gconf-sources.c (gconf_sources_query_value): fix locale + (gconf_sources_unset_value): locale + (gconf_sources_all_entries): locales + + * gconf/gconfd.c (context_query_value): Use locale list + (context_unset): locale argument + (context_all_entries): locale argument + (gconfd_unset_with_locale): locale + + * gconf/gconf-sources.c (gconf_source_query_value): Pass an array + of locales to look for + (gconf_source_all_entries): ditto + (gconf_source_unset_value): pass locale to unset + + * gconf/gconf-backend.h: Add locale args to the backend functions + that need it + + * gconf/gconf-internals.c (gconf_current_locale): Use setlocale() + again, not guess_category_value from gnome-i18n + +1999-11-10 Havoc Pennington + + * gconf/Makefile.am (gconfd_SOURCES): Move the locale stuff here; + decided not to use it in backends, so it can be in gconfd not the + library. + + * gconf/gconfd.c (one_hour_timeout): Expire old locale cache stuff + (locale_cache_lookup): New function to look stuff up in the locale + cache. + (main): free the locale cache on exit + +1999-11-10 Havoc Pennington + + * backends/xml-backend.c (free_childs): function to free children + of a node. + (xentry_set_value): free_childs() in a couple places we weren't + + * tests/testschemas.c: Add new schema test to check for storing a + blank schema + + * gconf/gconf-locale.c, gconf/gconf-locale.h: New module, creates + and caches the list of locales to search for given an environment + variable value + + * gconf/gconf-internals.c (gconf_current_locale): We want + LC_MESSAGES not LC_ALL + +1999-11-07 Havoc Pennington + + * gconf/gconf.c (reinstall_listeners_for_all_engines): Function to + iterate over all engines and do the context + reinstallation. However, it's not used yet because we also need + to regenerate the context IDs. + + * gconf/gconfd.c: Add a ConfigServer_Context field to GConfContext + (register_context): fill in the ConfigServer_Context field + (context_new): init context field to invalid context + + * gconf/gconf.c (register_engine): Keep a hash from context ID's + to GConfEngine, because we no longer have the global connection + table (that table was broken anyway). + (gconf_engine_blank): new function shared by the GConfEngine + constructors (contains previous contents of gconf_engine_new, + separate function required by registration stuff) + (gconf_engine_new): Create blank engine, then register it + (gconf_engine_new_from_address): register the engine + (gconf_engine_unref): unregister the engine + + * gconf/GConf.idl: Add a context ID to the argument + list of the notification. + + * gconf/gconf.c (gconf_server_broken): New predicate, asks if an + exception is set indicating that our server is hosed. + (gconf_detach_config_server): Function to release the server + object reference and set it to nil + (gconf_engine_new_from_address): Detach server and retry if + appropriate. + (gconf_notify_add): Detach and respawn if needed + (gconf_notify_remove): ditto + (gconf_set): ditto + (gconf_associate_schema): ditto + (gconf_unset): ditto + (gconf_all_entries): ditto + (gconf_all_dirs): ditto + (gconf_suggest_sync): ditto + (gconf_notify_add): remove debugging spew + (gconf_cnxn_new): Add namespace_section to GConfCnxn struct + (gconf_cnxn_destroy): free namespace_section + (GConfEnginePrivate): Put the connection table in here, it is + per-context (and thus per-GConfEngine), should not be global. + (gconf_init): don't create CnxnTable here, create it for each engine. + (gconf_engine_new_from_address): remove redundant refcount + initialization + (gconf_engine_unref): Destroy CnxnTable, and free the engine + struct itself. + (notify): remove debug spew, reflect new signature of notify function + +1999-11-07 Havoc Pennington + + * gconf/gconf-internals.c: #include , oops + +1999-11-07 Havoc Pennington + + * tests/testschemas.c (check_schema_storage): Properly consider + that schema fields can be NULL + + * backends/xml-backend.c (entry_value): Properly consider that + a schema can have a NULL locale + + * gconf/gconf.c (gconf_get_with_locale): New function + (gconf_get): just calls get_with_locale() with a NULL locale + (gconf_get_schema): Use get_with_locale() + + * gconf/gconf-internals.c (gconf_current_locale): So I don't have + to think about setlocale() + + * tests/testschemas.c: New test program for schema stuff + +1999-11-06 Havoc Pennington + + * gconf/gconf.c (gconf_associate_schema): Add function to associate + a schema name with a key. + +1999-10-28 Havoc Pennington + + * backends/xml-backend.c (query_value): Add locale + (dir_get_value): add locale + (entry_value): new function gets the value from an entry, + looking up a new value by locale if necessary. + + (xentry_extract_value): locale argument added, but needs to + be implemented. + + * gconf/gconf-backend.h: Add locale to query_value in vtable + + * gconf/gconf-sources.c (gconf_source_query_value): Add locale + (gconf_sources_query_value): Add locale + + * gconf/gconfd.c (gconfd_lookup_with_locale): Implement new + IDL method + (context_query_value): Add locale + + * gconf/GConf.idl: Add lookup_with_locale() method + + * gconf/gconf-internals.c (fill_corba_schema_from_gconf_schema): + Handle case where some schema fields are NULL, handle locale field. + (gconf_schema_from_corba_schema): Handle locale field. + + * gconf/gconf-schema.c (gconf_schema_set_locale): New function + + * gconf/gconftool.c: Clean up so it is easier to deal with + +1999-10-28 Havoc Pennington + + * gconf/gconfd.c: Rework the sync code; now, any change queues a + sync in 1 minute. If a client calls suggest_sync(), we sync in an + idle (as soon as the event loop quiets down). Also, we now sync + on shutdown. + + * tests/testgconf.c: Fix to compile + + * tests/Makefile.am (testgconf_LDADD): Fix Makefile.am to use new + library name + +1999-10-27 Havoc Pennington + + * configure.in: Add --enable-debug option to G_DISABLE_CHECKS as needed + + * gconf/wrappers/gtk/testgconfclient.c: Test program for the GTK+ + client wrapper. + + * gconf/gconf-sources.c (gconf_sources_query_value): + Wasn't handling errors; now we report errors. The bad thing is, + it might be better to go ahead and do our best despite the error. + + * gconf/gconf.c (gconf_init): Actually set the have_initted variable. + + * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): Don't try to + link with libgconf; + Add testgconfclient target. + + * wrappers/gtk/gconf-client.h, wrappers/gtk/gconf-client.c: Make + it compile + + * configure.in: Generate Makefile for GtkObject wrapper + +1999-10-27 Havoc Pennington + + * gconf-editor/Makefile.am (gconf_editor_LDADD): + link to libgconf.la + + * gconf/Makefile.am: Renamed the shared lib to libgconf instead of + libgconf-client. + + * wrappers/gtk/Makefile.am: Renamed gconf-gtk.[hc] to + gconf-client.[hc] via CVS surgery, then updated Makefile. + +1999-10-21 Havoc Pennington + + * gconf/gconf.c (gconf_key_is_below): New function, tells you if a + key is below another key in the directory hierarchy. + +1999-10-20 Havoc Pennington + + * gconf/gconfd.c, gconf/gconf-sources.c: Finish stuff from the + 17th (use GConfError throughout, etc.) + + * gconf/gconfd-error.h, gconf/gconfd-error.c: Remove the broken + old error stuff, even gconfd no longer uses it. + +1999-10-17 Havoc Pennington + + * gconf/gconf-sources.c: Use GConfError** throughout, make the + _source_ functions static + (gconf_sources_query_value): Use the new flags and readable + function + (gconf_sources_set_value): use the new flags and writeable + function + + * gconf/gconf-error.c (gconf_error_copy): new function + (gconf_compose_errors): new function + + * backends/xml-backend.c: Throughout, use a GConfError** argument + instead of the global errno thing + + * gconf/gconf-error.c (gconf_set_error): New function properly + handles a GConfError** by setting error or ignoring if NULL, + also warns if you "stack" two errors on top of each other. + (gconf_clear_error): New function clears a GConfError** + + * gconf/gconfd.c: don't include gconfd-error.h + + * backends/xml-backend.c: Remove inclusion of gconfd-error.h + + * gconf/gconf-backend.h: Add lock/unlock and readable/writeable + functions to the backend vtable, and add error arguments to + all functions in the vtable. + + * gconf/gconfd.c (safe_g_hash_table_insert): priority GCL_WARNING + + * backends/xml-backend.c (safe_g_hash_table_insert): make + it priority GCL_WARNING. + + * gconf/gconf-sources.h: GCONF_SOURCE_ALL_WRITEABLE, + GCONF_SOURCE_ALL_READABLE flags to short-circuit calls to the new + writeable/readable vtable functions. + +1999-10-17 Havoc Pennington + + * gconf/gconf-orbit.h: Include orb/orbit.h instead of GConf.h + +1999-10-17 Havoc Pennington + + * backends/xml-backend.c: Use %gconf.xml instead of .gconf.xml + for the magic files. + +1999-10-17 Havoc Pennington + + * tests/runtests.sh: Make this script work + + * gconf/gconftool.c: Don't use -s for --spawn, since it's used for + --set. + + * gconf/gconf.c (gconf_get_config_server): Clear the error + from the initial ping if we're asked to start the server. + (gconf_engine_unref): No error spew if server is down when + the engine is destroyed. + + Throughout: Make sure error is set but don't require a + specific error type + + * gconf/gconf-internals.c (gconf_read_server_ior): Set error + if the server info file doesn't exist + + * gconf/gconf.c (try_to_contact_server): Add a check for setting + the error properly + + * gconf/gconftool.c (main): Switch to gconf_suggest_sync() + instead of gconf_sync() + + * gconf/gconfd.c: Add a GConfContext::sync_idle field, to + store the source ID of an idle function that performs a sync. + (context_destroy): Remove the sync idle + (context_hibernate): Check that sync idle is 0 + (context_sync): Add the sync idle if it doesn't exist + + * gconf/gconf.c (gconf_suggest_sync): gconf_sync() renamed to + gconf_suggest_sync(), because a sync is for all clients; + suggest_sync() means "I just finished a large block of operations, + so I'm suggesting that it would be efficient and data-preserving + to schedule a sync in the near future." gconf_sync() didn't + make much sense because it was global, not per-client. + +1999-10-17 Havoc Pennington + + * For all files, s/G_CONF/GCONF + +1999-10-12 Havoc Pennington + + * gconf/gconfd.c: Use GConfListeners to handle listener + registration and notification + +1999-10-12 Havoc Pennington + + * gconf/gconf-listeners.c (ltable_insert): Was failing to init + the node in the flat array of nodes if the listener location + was NULL. + (gconf_listeners_count): new function reports number of listeners + (ltable_new): init next_cnxn to 1 instead of 0 + (ltable_remove): Do a better job of cleaning up dead + tree nodes (go up looking for empty parent nodes) + (ltable_destroy): type error, was calling listener_destroy() + on the GNodes. Oops. fixed, now use g_node_traverse() to + destroy the node contents. + (ltable_new): don't create the root node until it's needed + (ltable_insert): add root node here if needed + (ltable_remove): zero lt->tree if we destroy it + + * tests/testlisteners.c: New test program for GConfListeners, + fairly comprehensive + + * tests/Makefile.am: add testlisteners, put EFENCE at the end of + the link line + +1999-10-12 Havoc Pennington + + * gconf/Makefile.am: Fixes - remove some public headers from + libgconf_client_SOURCES, look for GConf.idl in $(srcdir) (bug from + Wichert Akkerman) + + * gconf/gconf-listeners.h, gconf/gconf-listeners.c: New files, + compile but are not tested. Moves listener tree interface into + a public header to re-use in GTK+ wrapper. + +1999-10-11 Havoc Pennington + + * For all files, s/g_conf/gconf + +1999-10-05 Havoc Pennington + + * tests/testgconf.c (check_list_storage): Add checks for empty + lists, and all the various list types. + + * gconf/gconf-value.c (g_conf_value_to_string): Fix a segfault + (not always allocating a large enough buffer) + +1999-10-05 Havoc Pennington + + * configure.in: 0.3, bump soname + +1999-10-04 Havoc Pennington + + * tests/testgconf.c (main): Add checks for getting/setting lists, + bools, floats, and ints + + * gconf/gconf-internals.c (fill_corba_value_from_g_conf_value): We + have to set the release flag on a sequence inside a union, since + the sequence isn't default initialized as it normally would be. + Plugs a big memory leak (all sequence buffers). + + * backends/xml-backend.c (dir_fill_cache_from_doc): Plug a leak + where we set entry->name and then reset it in entry_fill() + (entry_destroy): Free entry->mod_user + (x_shutdown): Renamed shutdown() to x_shutdown() to avoid + namespace clash with some libcs. Bug report from Bjorn Andersson + . + + * gconf/gconf-internals.c (g_conf_log): Plug memory leak (not + freeing log string) + + * gconf/gconfd.c (gconfd_set): Plug memory leak (not freeing the GConfValue) + + * tests/Makefile.am: Make testgconf noinst + + * gconf/gconfd.c (main): check GCONFD_NO_DAEMON environment + variable to run in no-daemon mode for debugging. Needless to say + this does NOT work if you are trying to use gconf for real. + + * gconf/gconf-internals.c (fill_corba_value_from_g_conf_value): + Fill in the list type in the CORBA value + (g_conf_value_from_corba_value): Fill in the list type in the + GConfValue + + * gconf/GConf.idl: Create ConfigList type to past the list type + along with the sequence of values + + * gconf/gconf-value.c (g_conf_value_set_list): New function, list + setter that copies the list + + * gconf/gconf.c (g_conf_unset, g_conf_set): return boolean to + indicate success + + * gconf/gconf-value.c (g_conf_value_new_from_string): Rewrite the + bool string parser with switch, accept y/n as values. + +1999-10-01 Havoc Pennington + + * gconf/gconf-sources.c (g_conf_sources_query_value): Check for + errors when we query the default value from the schema. + + * backends/xml-backend.c (entry_fill): If the schema key for a key is + invalid, don't load it. + +1999-09-30 Havoc Pennington + + * gconf/gconf-sources.c (g_conf_key_check_hack): Clear error + before we check the key + + * backends/xml-backend.c (dir_unset_value): Actually set the + entry's value to NULL + (entry_destroy): check whether Entry::value is NULL. Not sure + why I didn't check; I think NULL is allowed, but if not + we will have problems I guess. + + * tests/testgconf.c: Easiest to just write the test suite in + C. Tests set/get and unset for strings so far. + +1999-09-29 Havoc Pennington + + * gconf/gconf.sgml: Update docs + +1999-09-29 Havoc Pennington + + * gconf/gconf-conf.h: Replaced with gconf-engine.h + + * gconf/Makefile.am: use gconf-engine.h + + * gconf/gconf.c, gconf/gconf.h, gconf/gconftool.c, + gconf-editor/app.c, wrappers/guile/scm-gconf.c: + Use GConfEngine name instead of GConf + +1999-09-29 Rodrigo Stulzer Lopes + + * configure.in: added pt_BR to ALL_LINGUAS + +1999-09-29 Havoc Pennington + + * backends/xml-backend.c: include gconfd-error.h and gconf.h, + change error checking to new system as needed + + * gconf/Makefile.am: Put more stuff in gconfd_SOURCES instead of + client lib, add new files + + * gconf/gconf-backend.h: include gconf-sources.h + + * gconf/gconf-conf.h: add error arg to g_conf_new_from_address + + * gconf/gconf-error.c: move strerror in here, fixups, + preconditions + + * gconf/gconf-internals.c, gconf/gconf-sources.c: move all sources + stuff to new gconf-sources file + + * gconf/gconf-orbit.c: Check for failure to get lock + + * All the rest of this giant diff: Move to new error-handling + scheme + +1999-09-26 Havoc Pennington + + * gconf/Makefile.am: add gconf-error.h, gconf-conf.h headers, + gconf-value.c file + + * gconf/gconf-error.h, gconf/gconf-conf.h, gconf/gconf-value.c: + New files, just rearranging old files, no new code (well, there is + a new GConfError object but it's unused) + + * gconf/gconf-internals.c: Move the value, metainfo, and entry + datatypes to gconf-value.c + + * gconf/gconf.c, gconf/gconf.h: Remove appname argument from + g_conf_init(), remove g_conf_global_appname() function. + + * gconf/gconftool.c: don't pass appname to g_conf_init() + + * gconf-editor/gconf-editor.c: Ditto + +1999-09-25 Kjartan Maraas + + * configure.in: Added "da" to ALL_LINGUAS. + +1999-09-19 Havoc Pennington + + * NEWS, README: put something in here + + * Makefile.am: conditionally include gconf-editor if we have + GNOME + + * autogen.sh: make it more like "macros" autogen.sh + + * configure.in: manually check for GNOME instead of using + "macros" + + * macros, intl: remove these subdirs, autogen.sh now + generates intl + + * gconf/gconf.c: fix array size for strerror messages + + * gconf-editor/Makefile.am: use new GNOME variables + + * gconf-editor/gconf-editor.c: use new g_conf_init() + signature + + * gconf-editor/menus.h, gconf-editor/menus.c: These + hadn't been added + +1999-09-19 Havoc Pennington + + * gconf/gconf.h: Add G_CONF_OVERRIDDEN error if you try to + set a value which will have no effect due to a read-only + setting earlier in the path. + + * gconf/gconf.c: Add G_CONF_OVERRIDDEN to strerror, etc. + + * gconf/GConf.idl: add ConfigOverridden to pass it across the + CORBA link + + * doc/gconf.sgml: Add more stuff to docs + +1999-09-17 Havoc Pennington + + * gconf/gconf-internals.c (subst_variables): Add a new function to + perform variable substitution on addresses in the path file. + Supports $(HOME), $(USER), and $(ENV_ANYENVVARNAME) + + * Makefile.am: Add "doc" subdir + + * doc/Makefile.am: Added + + * doc/gconf.sgml: write more docs + +1999-09-03 Havoc Pennington + + * configure.in: Set library version info variables, and locate + Guile libraries, etc. + + * wrappers/Makefile.am: conditionally build Guile subdir if we + found guile. + + * wrappers/guile: new subdir with the basic files/build for Guile + bindings, will add the actual bindings later. + +1999-09-03 Havoc Pennington + + * configure.in: set POPT_LIBS instead of adding -lpopt to generic + LDFLAGS; this was causing libtool to fail to generate the .so + file for the XML backend module. + + * gconf/Makefile.am: use POPT_LIBS + + * gconf/gconf-backend.c: change some g_warning to g_conf_log + +1999-09-03 Havoc Pennington + + * gconf/gconfd.c: Every hour or so, hibernate all contexts that + haven't been accessed in 45 minutes. Make some assorted changes + to support that. + +1999-09-02 Havoc Pennington + + * gconf/gconf-internals.h, gconf/gconf-internals.c: Add a new + g_conf_log() function for logging errors in backends; + for now this wraps syslog() but if we eventually have non-daemon + direct access to backends, we will need to change it. Use + g_conf_log() throughout this file instead of printf() and + g_warning(). + + * gconf/backends/xml-backend.c: Install a timeout which cleans + old stuff out of the cache every 5 minutes; use g_conf_log + to report problems. + + * gconf/gconfd.c: Use g_conf_log(); log "exiting" later than we + had been, after shutting everything down. + +1999-09-02 Havoc Pennington + + * backends/Makefile.am: Install backends in $(libdir)/gconf + + * gconf/Makefile.am: Look for backends in $(libdir)/gconf + + * gconf/gconf-backend.c (g_conf_backend_file): Use + g_module_build_path() to build the module path + + * gconf/gconf-orbit.c (g_conf_get_cookie_reliably): Make the + ~/.gconfd directory if necessary. + + Lots of error-checking added. + + * gconf/gconfd.c: Mark a lot of strings for translation; include + username in the syslog spew. + +1999-09-02 Havoc Pennington + + * gconf/gconfd.c (main): If the orb init fails, syslog the + GConf error. + + * gconf/gconf-orbit.c: Add tons of error checks/reports + +1999-09-01 Tim P. Gerla + + * configure.in: Added test for popt. + +1999-09-01 Havoc Pennington + + * backends/xml-backend.c (dir_get_value): Fix a segfault, check + that an Entry != NULL before dereferencing it + + * GConf.idl: Add ConfigException and ConfigErrorType to pass + errors from server to client + + * gconf.c (g_conf_handle_corba_exception): set the GConf error + based on CORBA error, if any, and free the exception. + Use throughout the file to receive server errors. + + * gconfd.c (g_conf_set_exception): set the CORBA exception based + on the GConf error, if any. Use this function throughout the file + to send errors to clients. + (g_conf_nuke_dir): Remove this obsolete function + (context_set): don't notify listeners of a change if an error + occurred + +1999-09-01 Havoc Pennington + + * configure.in: add gmodule check to AM_PATH_GLIB, add an error if + glib isn't found, use detected $XML_CONFIG to instead of + xml-config, AC_PATH_PROG orbit-config, check for C++ compiler + (since we'll have a C++ wrapper soon) + + * gconf/Makefile.am: Assume GMODULE_CFLAGS are now included in + GLIB_CFLAGS since we fixed configure.in + + * gconf/gconf.c, gconf/gconf.h: Reference count the GConf object, + add extern "C" when using C++ + + * gconf/gconftool.c: unref instead of destroying the GConf object + +1999-08-31 Dave Camp + + * gconf/gconf.c (g_conf_is_initialized): New function. + +1999-08-31 Dave Camp + + * gconf/gconftool.c (main): Changed --dir-exists to return 0 if + the dir exists, and 2 if it does not. + +1999-08-31 Dave Camp + + * gconf/gconftool.c (options): Added "--dir-exists". + (main): If dir_exists is on the command line, check if the argument dir + exists. + + * gconf/gconfd.c (server_epv): Added gconfd_dir_exists. + (gconfd_dir_exists): New function. + (context_dir_exists): New function. + + * gconf/gconf.c (g_conf_dir_exists): New function. + + * gconf/gconf-internals.c (g_conf_sources_dir_exists): New function. + (g_conf_source_dir_exists): New function. + + * gconf/gconf-backend.h (GConfBackendVTable): Added a dir_exists + entry. + + * gconf/GConf.idl (dir_exists): New function. + + * backends/xml-backend.c (dir_exists): New function. + (xml_vtable): Added dir_exists. + +1999-08-30 Dave Camp + + * gconf/gconf.h: #include gconf-orbit.h. + + * gconf/Makefile.am (gconfinclude_HEADERS): Install gconf-orbit.h, + GConf.h + +1999-08-29 Dave Camp + + * Makefile.am (bin_SCRIPTS): Install gconf-config. + + * configure.in (AC_OUTPUT): Create gconf-config. + + * gconf/Makefile.am: Install gconf.h and gconf-schema.h. + + +1999-08-29 Dave Camp + + * configure.in (XML_LIBS): Use xml-config. + +1999-08-29 Kjartan Maraas + + * configure.in: Added "no" to ALL_LINGUAS diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..b42a17a --- /dev/null +++ b/INSTALL @@ -0,0 +1,182 @@ +Basic Installation +================== + + These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' if you want to change +it or regenerate `configure' using a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +Compiling For Multiple Architectures +==================================== + + You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not supports the `VPATH' +variable, you have to compile the package for one architecture at a time +in the source code directory. After you have installed the package for +one architecture, use `make distclean' before reconfiguring for another +architecture. + +Installation Names +================== + + By default, `make install' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=PATH' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + + Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + + There may be some features `configure' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +Sharing Defaults +================ + + If you want to set default values for `configure' scripts to share, +you can create a site shell script called `config.site' that gives +default values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..cae1bc3 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,33 @@ + +SUBDIRS = gconf backends po doc examples dbus-tests +DIST_SUBDIRS=tests $(SUBDIRS) + +EXTRA_DIST = \ + TODO \ + gtk-doc.make \ + intltool-update.in \ + intltool-extract.in \ + intltool-merge.in \ + autogen.sh + +DISTCLEANFILES = \ + intltool-update \ + intltool-merge \ + intltool-extract + +DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc + +install-data-local: + -mkdir -p $(DESTDIR)$(sysgconfdir)/gconf.xml.defaults + -chmod 755 $(DESTDIR)$(sysgconfdir)/gconf.xml.defaults + -mkdir -p $(DESTDIR)$(sysgconfdir)/gconf.xml.mandatory + -chmod 755 $(DESTDIR)$(sysgconfdir)/gconf.xml.mandatory + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = gconf-2.0.pc + +aclocaldir = $(datadir)/aclocal +aclocal_DATA = gconf-2.m4 + +install-schemas: + (cd standard-schemas && $(MAKE) $(AM_MAKEFLAGS) install-schemas) diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000..f356722 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,724 @@ +# Makefile.in generated by automake 1.7.9 from Makefile.am. +# @configure_input@ + +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +# Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +top_builddir = . + +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = @INSTALL@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +host_triplet = @host@ +ACLOCAL = @ACLOCAL@ +ALL_LINGUAS = @ALL_LINGUAS@ +AMDEP_FALSE = @AMDEP_FALSE@ +AMDEP_TRUE = @AMDEP_TRUE@ +AMTAR = @AMTAR@ +AR = @AR@ +AS = @AS@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CATALOGS = @CATALOGS@ +CATOBJEXT = @CATOBJEXT@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DATADIRNAME = @DATADIRNAME@ +DBUS_SERVICE_DIR = @DBUS_SERVICE_DIR@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEPENDENT_CFLAGS = @DEPENDENT_CFLAGS@ +DEPENDENT_LIBS = @DEPENDENT_LIBS@ +DEPENDENT_WITH_GTK_CFLAGS = @DEPENDENT_WITH_GTK_CFLAGS@ +DEPENDENT_WITH_GTK_LIBS = @DEPENDENT_WITH_GTK_LIBS@ +DEPENDENT_WITH_XML_AND_GTK_CFLAGS = @DEPENDENT_WITH_XML_AND_GTK_CFLAGS@ +DEPENDENT_WITH_XML_AND_GTK_LIBS = @DEPENDENT_WITH_XML_AND_GTK_LIBS@ +DEPENDENT_WITH_XML_CFLAGS = @DEPENDENT_WITH_XML_CFLAGS@ +DEPENDENT_WITH_XML_LIBS = @DEPENDENT_WITH_XML_LIBS@ +DLLTOOL = @DLLTOOL@ +ECHO = @ECHO@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +ENABLE_GTK_DOC_FALSE = @ENABLE_GTK_DOC_FALSE@ +ENABLE_GTK_DOC_TRUE = @ENABLE_GTK_DOC_TRUE@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +GCONF_AGE = @GCONF_AGE@ +GCONF_CURRENT = @GCONF_CURRENT@ +GCONF_REVISION = @GCONF_REVISION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ +GMOFILES = @GMOFILES@ +GMSGFMT = @GMSGFMT@ +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@ +GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@ +GTK_FALSE = @GTK_FALSE@ +GTK_TRUE = @GTK_TRUE@ +HTML_DIR = @HTML_DIR@ +INDENT = @INDENT@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INSTOBJEXT = @INSTOBJEXT@ +INTLLIBS = @INTLLIBS@ +INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ +INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ +INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ +INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ +INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ +INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ +INTLTOOL_MERGE = @INTLTOOL_MERGE@ +INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ +INTLTOOL_PERL = @INTLTOOL_PERL@ +INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@ +INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ +INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ +INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ +INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ +INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ +INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ +INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ +INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ +INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ +INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ +INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ +INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ +LDAP_CFLAGS = @LDAP_CFLAGS@ +LDAP_LIBS = @LDAP_LIBS@ +LDAP_SUPPORT_FALSE = @LDAP_SUPPORT_FALSE@ +LDAP_SUPPORT_TRUE = @LDAP_SUPPORT_TRUE@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ +MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ +MAJOR_VERSION = @MAJOR_VERSION@ +MAKEINFO = @MAKEINFO@ +MKINSTALLDIRS = @MKINSTALLDIRS@ +MSGFMT = @MSGFMT@ +MSGFMT_OPTS = @MSGFMT_OPTS@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OS_WIN32_FALSE = @OS_WIN32_FALSE@ +OS_WIN32_TRUE = @OS_WIN32_TRUE@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ +PKG_CONFIG = @PKG_CONFIG@ +POFILES = @POFILES@ +POSUB = @POSUB@ +PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ +PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ +PTHREADS_FALSE = @PTHREADS_FALSE@ +PTHREADS_TRUE = @PTHREADS_TRUE@ +RANLIB = @RANLIB@ +REBUILD = @REBUILD@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +USE_SYSTEM_BUS_FALSE = @USE_SYSTEM_BUS_FALSE@ +USE_SYSTEM_BUS_TRUE = @USE_SYSTEM_BUS_TRUE@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +absolute_top_srcdir = @absolute_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_F77 = @ac_ct_F77@ +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ +am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ +am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gconflocaledir = @gconflocaledir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +sysconfdir = @sysconfdir@ +sysconfsubdir = @sysconfsubdir@ +sysgconfdir = @sysgconfdir@ +target_alias = @target_alias@ + +SUBDIRS = gconf backends po doc examples dbus-tests +DIST_SUBDIRS = tests $(SUBDIRS) + +EXTRA_DIST = \ + TODO \ + gtk-doc.make \ + intltool-update.in \ + intltool-extract.in \ + intltool-merge.in \ + autogen.sh + + +DISTCLEANFILES = \ + intltool-update \ + intltool-merge \ + intltool-extract + + +DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = gconf-2.0.pc + +aclocaldir = $(datadir)/aclocal +aclocal_DATA = gconf-2.m4 +subdir = . +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = gconf-2.m4 gconf-zip gconf-2.0.pc +DIST_SOURCES = +DATA = $(aclocal_DATA) $(pkgconfig_DATA) + + +RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \ + ps-recursive install-info-recursive uninstall-info-recursive \ + all-recursive install-data-recursive install-exec-recursive \ + installdirs-recursive install-recursive uninstall-recursive \ + check-recursive installcheck-recursive +DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure \ + ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL Makefile.am NEWS \ + TODO acconfig.h aclocal.m4 config.guess config.h.in config.sub \ + configure configure.in depcomp gconf-2.0.pc.in gconf-2.m4.in \ + gconf-zip.in install-sh ltmain.sh missing mkinstalldirs +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: + +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu Makefile +Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) + +$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) + +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) + +config.h: stamp-h1 + @if test ! -f $@; then \ + rm -f stamp-h1; \ + $(MAKE) stamp-h1; \ + else :; fi + +stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.h + +$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/acconfig.h + cd $(top_srcdir) && $(AUTOHEADER) + touch $(srcdir)/config.h.in + +distclean-hdr: + -rm -f config.h stamp-h1 +gconf-2.m4: $(top_builddir)/config.status gconf-2.m4.in + cd $(top_builddir) && $(SHELL) ./config.status $@ +gconf-zip: $(top_builddir)/config.status gconf-zip.in + cd $(top_builddir) && $(SHELL) ./config.status $@ +gconf-2.0.pc: $(top_builddir)/config.status gconf-2.0.pc.in + cd $(top_builddir) && $(SHELL) ./config.status $@ + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool +uninstall-info-am: +aclocalDATA_INSTALL = $(INSTALL_DATA) +install-aclocalDATA: $(aclocal_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(aclocaldir) + @list='$(aclocal_DATA)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " $(aclocalDATA_INSTALL) $$d$$p $(DESTDIR)$(aclocaldir)/$$f"; \ + $(aclocalDATA_INSTALL) $$d$$p $(DESTDIR)$(aclocaldir)/$$f; \ + done + +uninstall-aclocalDATA: + @$(NORMAL_UNINSTALL) + @list='$(aclocal_DATA)'; for p in $$list; do \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " rm -f $(DESTDIR)$(aclocaldir)/$$f"; \ + rm -f $(DESTDIR)$(aclocaldir)/$$f; \ + done +pkgconfigDATA_INSTALL = $(INSTALL_DATA) +install-pkgconfigDATA: $(pkgconfig_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(pkgconfigdir) + @list='$(pkgconfig_DATA)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " $(pkgconfigDATA_INSTALL) $$d$$p $(DESTDIR)$(pkgconfigdir)/$$f"; \ + $(pkgconfigDATA_INSTALL) $$d$$p $(DESTDIR)$(pkgconfigdir)/$$f; \ + done + +uninstall-pkgconfigDATA: + @$(NORMAL_UNINSTALL) + @list='$(pkgconfig_DATA)'; for p in $$list; do \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " rm -f $(DESTDIR)$(pkgconfigdir)/$$f"; \ + rm -f $(DESTDIR)$(pkgconfigdir)/$$f; \ + done + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @set fnord $$MAKEFLAGS; amf=$$2; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $$MAKEFLAGS; amf=$$2; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ETAGS = etags +ETAGSFLAGS = + +CTAGS = ctags +CTAGSFLAGS = + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique + +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if (etags --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + else \ + include_option=--include; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + +top_distdir = . +distdir = $(PACKAGE)-$(VERSION) + +am__remove_distdir = \ + { test ! -d $(distdir) \ + || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -fr $(distdir); }; } + +GZIP_ENV = --best +distuninstallcheck_listfiles = find . -type f -print +distcleancheck_listfiles = find . -type f -print + +distdir: $(DISTFILES) + $(am__remove_distdir) + mkdir $(distdir) + $(mkinstalldirs) $(distdir)/. $(distdir)/po + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ + list='$(DISTFILES)'; for file in $$list; do \ + case $$file in \ + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + esac; \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ + if test -d $$d/$$file; then \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" \ + distdir=../$(distdir)/$$subdir \ + distdir) \ + || exit 1; \ + fi; \ + done + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r $(distdir) +dist-gzip: distdir + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +dist dist-all: distdir + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + $(am__remove_distdir) + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - + chmod -R a-w $(distdir); chmod a+w $(distdir) + mkdir $(distdir)/_build + mkdir $(distdir)/_inst + chmod a-w $(distdir) + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && cd $(distdir)/_build \ + && ../configure --srcdir=.. --prefix="$$dc_install_base" \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \ + && rm -f $(distdir).tar.gz \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + $(am__remove_distdir) + @echo "$(distdir).tar.gz is ready for distribution" | \ + sed 'h;s/./=/g;p;x;p;x' +distuninstallcheck: + @cd $(distuninstallcheck_dir) \ + && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am +check: check-recursive +all-am: Makefile $(DATA) config.h +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(aclocaldir) $(DESTDIR)$(pkgconfigdir) + +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f $(CONFIG_CLEAN_FILES) + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-hdr distclean-libtool \ + distclean-tags + +dvi: dvi-recursive + +dvi-am: + +info: info-recursive + +info-am: + +install-data-am: install-aclocalDATA install-data-local \ + install-pkgconfigDATA + +install-exec-am: + +install-info: install-info-recursive + +install-man: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: uninstall-aclocalDATA uninstall-info-am \ + uninstall-pkgconfigDATA + +uninstall-info: uninstall-info-recursive + +.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \ + clean-generic clean-libtool clean-recursive ctags \ + ctags-recursive dist dist-all dist-gzip distcheck distclean \ + distclean-generic distclean-hdr distclean-libtool \ + distclean-recursive distclean-tags distcleancheck distdir \ + distuninstallcheck dvi dvi-am dvi-recursive info info-am \ + info-recursive install install-aclocalDATA install-am \ + install-data install-data-am install-data-local \ + install-data-recursive install-exec install-exec-am \ + install-exec-recursive install-info install-info-am \ + install-info-recursive install-man install-pkgconfigDATA \ + install-recursive install-strip installcheck installcheck-am \ + installdirs installdirs-am installdirs-recursive \ + maintainer-clean maintainer-clean-generic \ + maintainer-clean-recursive mostlyclean mostlyclean-generic \ + mostlyclean-libtool mostlyclean-recursive pdf pdf-am \ + pdf-recursive ps ps-am ps-recursive tags tags-recursive \ + uninstall uninstall-aclocalDATA uninstall-am uninstall-info-am \ + uninstall-info-recursive uninstall-pkgconfigDATA \ + uninstall-recursive + + +install-data-local: + -mkdir -p $(DESTDIR)$(sysgconfdir)/gconf.xml.defaults + -chmod 755 $(DESTDIR)$(sysgconfdir)/gconf.xml.defaults + -mkdir -p $(DESTDIR)$(sysgconfdir)/gconf.xml.mandatory + -chmod 755 $(DESTDIR)$(sysgconfdir)/gconf.xml.mandatory + +install-schemas: + (cd standard-schemas && $(MAKE) $(AM_MAKEFLAGS) install-schemas) +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..603705c --- /dev/null +++ b/NEWS @@ -0,0 +1,572 @@ +2.14.0 +====== + + Misc + - Improved manual page (Christopher Hanna) + - Uses the new g_slice API (Benoît Dejean) + - Got rid of padding members in private structs (Benoît) + - Speed up the installation of multiple schema files (Josselin Mouette, + Mark LcLoughlin) + + Fixes + - Only calls closelog() when it has HAVE_SYSLOG_H (Tor Lillqvist) + - Fixed a memory leak, bugs #332528 and #334047 (Kjartan Maraas, + Matthias Clasen) + + Translators + - Petr Tomeš (cs) + - Rhys Jones (cy) + - Ole Laursen (da) + - Hendrik Richter (de) + - Kostas Papadimas (el) + - Ivar Smolin (et) + - Iñaki Larrañaga (eu) + - Rajesh Ranjan (hi) + - Gabor Kelemen (hu) + - Alessio Frusciante (it) + - Takeshi AIHANA (ja) + - Changwoo Ryu (ko) + - Gnome PL Team (pl) + - Evandro Fernandes Giovanini (pt_BR) + - Duarte Loreto (pt) + - Mişu Moldovan (ro) + - Leonid Kanter (ru) + - Laurent Dhima (sq) + - Слободан Д. Средојевић (sr) + - Christian Rose (sv) + - Maxim Dziumanenko (uk) + - Funda Wang (zh_CN) + +2.13.5 +====== + + Features + - Save translations in separate file with markup backend's "meged" mode (Mark McLoughlin) + - Switch on "merged" mode for the defaults database (Mark McLoughlin) + - Make gconf_value_compare() and gconf_entry_equal() public (Jorn Baayen) + - Lots of new docs (Dinoop Thomas) + + Fixes + - Remove unused --enable-gconf-source configure option (Mark McLoughlin) + - Fix parallel build (Thomas Vander Stichele) + - Make gconf_client_remove_dir() clear the dir's cache (Vincent Untz) + - Win32 build fix - include DLLs in zipfile package (Tor Lillqvist) + - Make gconf_value_decode() work with schemas (Nicolas Peninguy) + - Fix segault unescaping strings (Dan Williams) + - Remove C99 usage (Jens Granseuer) + + Translators + - Ales Nyakhaychyk (be) + - Alexander Shopov (bg) + - Jordi Mallach (ca) + - Adam Weinberger (en_CA) + - Francisco Javier F. Serrador (es) + - Ivar Smolin (et) + - Ilkka Tuohela (fi) + - Christophe Merlet (RedFox) (fr) + - Ignacio Casal Quinteiro (gl) + - Ankit Patel (gu) + - Takeshi AIHANA (ja) + - Žygimantas Beručka (lt) + - Kjartan Maraas (nb) + - Tino Meinen (nl) + - Åsmund Skjæveland (nn) + - Kjartan Maraas (no) + - Evandro Fernandes Giovanini (pt_BR) + - Marcel Telka (sk) + - Theppitak Karoonboonyanan (th) + - Clytie Siddall (vi) + - Abel Cheung (zh_HK) + - Chao-Hsiung Liao (zh_TW) + +2.12.1 +====== + + Fixes + - Code cleanups (Kjartan Maraas) + - Open GModules with G_MODULE_BIND_LAZY (Kjartan Maraas) + - Fix change notification with multiple sources (Alexander Larsson) + - Allow space in config source names on windows (Tor Lillqvist) + - Read xml files in larger chunks (Mark McLoughlin) + - Simplify the handling of --enable-schemas-install (Stepan Kasal) + - Win32 Fixes (Tor Lillqvist) + + Translators + + - Alexander Shopov (bg) + - Samia Niamatullah (bn) + - Miloslav Trmac (cs) + - Martin Willemoes Hansen (da) + - Adam Weinberger (en_CA) + - Francisco Javier F. Serrador (es) + - Ivar Smolin (et) + - Hizkuntza Politikarako Sailburuordetza (eu) + - Ilkka Tuohela (fi) + - Ignacio Casal Quinteiro (gl) + - Ankit Patel (gu) + - Yair Hershkovitz (he) + - Erdal Ronahi (ku) + - Tino Meinen (nl) + - Mişu Moldovan (ro) + - Marcel Telka (sk) + - Laurent Dhima (sq) + - Christian Rose (sv) + - Maxim Dziumanenko (uk) + - Clytie Siddall (vi) + - Funda Wang (zh_CN) + +2.12.0 +====== + + Misc + + - Fix issue with Win32 zipfile (Tor Lillqvist) + + Translators + + - Miloslav Trmac (cs) + - Ivar Smolin (et) + - Christophe Merlet (RedFox) (fr) + - Ignacio Casal Quinteiro (gl) + - Ankit Patel (gu) + - Gabor Kelemen (hu) + - Mohammad DAMT (id) + - Alessio Frusciante (it) + - Takeshi AIHANA (ja) + - Žygimantas Beručka (lt) + - Evandro Fernandes Giovanini (pt_BR) + - Leonid Kanter (ru) + - Данило Шеган (sr) + - Baris Cicek (tr) + - Clytie Siddall (vi) + - Chao-Hsiung Liao (zh_TW) + +2.11.91 +======= + + Misc + + - Fix typos in some error messages (Adam Weinberger) + + Translators + + - Alexander Shopov (bg) + - Jordi Mallach (ca) + - Rhys Jones (cy) + - Hendrik Richter (de) + - Kostas Papadimas (el) + - Adam Weinberger (en_CA) + - Francisco Javier F. Serrador (es) + - Ivar Smolin (et) + - Ilkka Tuohela (fi) + - Gabor Kelemen (hu) + - Changwoo Ryu (ko) + - Kjartan Maraas (nb) + - Sameer Rajbhandari (ne) + - Tino Meinen (nl) + - Kjartan Maraas (no) + - Gnome PL Team (pl) + - Duarte Loreto (pt) + - Mişu Moldovan (ro) + - Marcel Telka (sk) + - Laurent Dhima (sq) + - Theppitak Karoonboonyanan (th) + - Maxim Dziumanenko (uk) + - Funda Wang (zh_CN) + +2.11.90 +======= + + Fixes + + - More work on Win32 support (Tor Lillqvist) + - Fix gconfd not shutting down when not in use (Mark) + - Plug some memory leaks (Aivars Kalvans) + - Use G_GNUC_NULL_TERMINATED in some APIs (Marcus Meissner) + - Fix build breakage (Gustavo J. A. M. Carneiro) + - Improve performance by reducing no. of g_string_append_c() calls (Aivars Kalvans) + + Translators + + - Rostislav Raykov (bg) + - Jordi Mallach (ca) + - Martin Willemoes Hansen (da) + - Hendrik Richter (de) + - Ivar Smolin (et) + - Hizkuntza Politikarako Sailburuordetza (eu) + - Hamed Malek (fa) + - Ignacio Casal Quinteiro (gl) + - Ankit Patel (gu) + - Yair Hershkovitz (he) + - Mohammad DAMT (id) + - Takeshi AIHANA (ja) + - Žygimantas Beručka (lt) + - Kjartan Maraas (nb, no) + - Duarte Loreto (pt) + - Marcel Telka (sk) + - Laurent Dhima (sq) + - Данило Шеган (sr) + - Christian Rose (sv) + - Theppitak Karoonboonyanan (th) + - Funda Wang (zh_CN) + - Chao-Hsiung Liao (zh_TW) + +2.11.1 +====== + + Features + + - Port to Windows (Tor Lillqvist) + - Backend for retrieving Evolution data sources from LDAP (Mark) + + Fixes + + - Fix crasher with gconf-editor (Josselin Mouette, Mark) + - Generate GType for GConfUnsetFlags (Mark, Gustavo Carneiro) + - Fix --enable-schemas-install error message (Stepan Kasal) + - Fix build failure when building from CVS (Mark) + + Translators + + - Miloslav Trmac (cs) + - Dafydd Harries (cy) + - Kostas Papadimas (el) + - Adam Weinberger (en_CA) + - David Lodge (en_GB) + - Francisco Javier F. Serrador (es) + - Ivar Smolin (et) + - Hizkuntza Politikarako Sailburuordetza (eu) + - Elnaz Sarbar (fa) + - Gabor Kelemen (hu) + - Steve Murphy (rw) + - Marcel Telka (sk) + - Laurent Dhima (sq) + +2.10.0 +====== + + Translators + + - Ivar Smolin (et) + - Žygimantas Beručka (lt) + - Reinout van Schouwen (nl) + - Mişu Moldovan (ro) + - Maxim Dziumanenko (uk) + - Canonical Ltd (xh) + +2.9.90 +====== + + Fixes + + - Fix daemon reloading causing listeners to break (Mark) + - Fixes problem where a path file which only includes another path + file wouldn't work (Mark) + - Fix double free with gconf_client_clear_cache() (Mark) + - Add pre-condition to gconf_value_validate (Vincent Untz) + + Translators + + - Rostislav Raykov (bg) + - Priit Laes (et) + - Pauli Virtanen (fi) + - Marcel Telka (sk) + +2.9.2 +===== + + Fixes + + - Make all_entries() get the schema name when the value is set (Fernando Herrera) + - Look up value in the C locale even if its found in the current locale (Fernando Herrera) + - Add title/name to the API documentation (Jonathan Blandford) + + Translators + + - Changwoo Ryu (ko) + +2.8.1 +===== + + Fixes + + - If the toplevel directory of a source isn't writable, + then mark the whole source as readonly (Mark) + - Plug various leaks (Kjartan) + + Translators + + - Christophe Merlet (RedFox) (fr) + - Alessio Frusciante (it) + - Žygimantas Beručka (lt) + - Li-Jen Hsin (zh_TW) + +2.8.0.1 +======= + + Fixes + + - Use automake 1.7 (Mark) + - Always ship the API docs html in the tarball (Mark) + +2.8.0 +===== + + Translators + + - Ayman Hourieh (ar) + - Kenan Hadžiavdić (bs) + - Miloslav Trmac (cs) + - Dafydd Harries (cy) + - Kostas Papadimas (el) + - Francisco Javier F. Serrador (es) + - Alessio Frusciante (it) + - Hasbullah Bin Pit (ms) + - Evandro Fernandes Giovanini (pt_BR) + - Mişu Moldovan (ro) + - Gurkan Aslan (tr) + +2.7.92 +====== + + Fixes + + - Fix crash caused by dropping the default database early (Mark) + - Fix issue with SIGHUP causing listeners to be dropped (Josselin Mouette) + - Only install the global schema default in the C locale (Mark) + - Don't crash if there's no schema for the locale (Mark) + + Translators + + - Jordi Mallach (ca) + - Laszlo Dvornik (hu) + - Pawan Chitrakar (ne) + - Tino Meinen (nl) + - Laurent Dhima (sq) + - Maxim Dziumanenko (uk) + +2.7.91.1 +======== + + Features + + - Switch off the "subtree-in-a-file" thing again (Mark) + See: http://mail.gnome.org/archives/desktop-devel-list/2004-August/msg00393.html + + Translators + + - Kenan Hadžiavdić (bs) + - Martin Willemoes Hansen (da) + - Pauli Virtanen (fi) + - Takeshi AIHANA (ja) + - Laurent Dhima (sq) + +2.7.91 +====== + + Fixes + + - Fix a bunch of coding errors (Kjartan Maraas) + - Always install schemas with the correct permissions (Mark) + - Fix various strings to use better terminology (Danilo Šegan) + + Translators + + - Miloslav Trmac (cs) + - Christian Neumair (de) + - Adam Weinberger (en_CA) + - David Lodge (en_GB) + - Francisco Javier F. Serrador (es) + - Pauli Virtanen (fi) + - Ankit Patel (gu) + - Changwoo Ryu (ko) + - Sanlig Badral (mn) + - Kjartan Maraas (nb) + - Åsmund Skjæveland (nn) + - Kjartan Maraas (no) + - Amanpreet Singh Alam (pa) + - Gnome PL Team (pl) + - Duarte Loreto (pt) + - Dmitry G. Mastrukov (ru) + - Laurent Dhima (sq) + - Данило Шеган (sr) + - Christian Rose (sv) + - Funda Wang (zh_CN) + +2.7.90 +====== + + Fixes + + - Remove unused internal function (Carlos Daniel Ruvalcaba Valenzuela) + - Bring docs up to date with GObject (rather than GtkObject) usage (Kai Willadsen) + + Translators + + - Rostislav Raykov (bg) + - Adam Weinberger (en_CA) + - Francisco Javier F. Serrador (es) + - Ravishankar Shrivastava (hi) + - Laszlo Dvornik (hu) + - Takeshi AIHANA (ja) + - Changwoo Ryu (ko) + - Žygimantas Beručka (lt) + - Sanlig Badral (mn) + - Tino Meinen (nl) + - Kjartan Maraas (no) + - Gnome PL Team (pl) + - Duarte Loreto (pt) + - Laurent Dhima (sq) + - Christian Rose (sv) + - Maxim Dziumanenko (uk) + +2.7.3.1 +======= + + Fixes + + - Make --makefile-install-rule worky again (Mark) + - Remove an outdated comment from the path file (Fernando Herrera) + + Translators + + - Alexander Shopov (bg) + - Miloslav Trmac (cs) + - Gareth Owen (en_GB) + - Laurent Dhima (sq) + +2.7.3 +===== + + Features + + - Switch on "subtree-in-a-file" at certain points in the tree (Mark) + o See http://mail.gnome.org/archives/desktop-devel-list/2004-June/msg00424.html + - Add --unload to gconftool which complements --load (Julio M. Merino Vidal, Mark) + - Add --sysgconfsubdir configure argument (Julio M. Merino Vidal) + - Make gconfd reload all databases on SIGHUP (Josselin Mouette) + + Fixes + + - Fix gconfd segfault from freeing the default database twice (Mark) + - Warn in docs to call g_type_init() before using GConfCient (Leonardo Quijano Vincenzi) + - Don't create a dir during docs build if not needed (Julio M. Merino Vidal) + - Encode non-ascii GConf keys using a more compact encoding (Mariano Suárez-Alvare) + - 64-bit fix (Joe Marcus Clarke) + - Plug a leak (Kjartan Maraas) + +2.7.1 +===== + + Features: + + - Add a --ignore-schema-defaults argument for use with gconftool-2 --dump (Mark) + - Add API to construct databases from arbitrary stacks of sources (Mark) + - Allow backends to notify the daemon of changes (Cyrille Moureaux, Mark) + - Add vtable size mismatch detection (Mark) + + Fixes: + + - Fix accidental use of a C99ism (Morten Welinder) + - Fix random crashes when unsetting keys (Richard Hult) + - Fix .gconfd/saved_state growing to a huge size (Gustavo Giráldez) + + Translators: + + - Gisela Carbonell (ca) + - Miloslav Trmac (cs) + - Adam Weinberger (en_CA) + - Gareth Owen (en_GB) + - Francisco Javier F. Serrador (es) + - Hizkuntza Politikarako Sailburuordetza (eu) + - Christophe Merlet (RedFox) (fr) + - Nirav, Ankit, Ankur, Atit, Bhavin, Kartik, Khushbu, Sweta. (gu) + - helgi (is) + - Alessio Frusciante (it) + - Kjartan Maraas (no) + - Laurent Dhima (sq) + - Данило Шеган (sr) + - Yuri Syrota (uk) + - Funda Wang (zh_CN) + +2.6.1 +=== + + Fixes: + + - add a --enable-gtk=yes/no/auto configure arg (Julio Merino, Mark) + - fix basic example app to not crash (Elijah Newren) + - don't try and create a dir if it already exists (Ryan Lovett, Mark) + - only ever create the $(HOME)/.gconfd/ dir in the daemon (Colin Walters) + - add quotes around AM_GCONF_SOURCE_2 (Frédéric L. W. Meunier) + - handle with only correctly in --load (Mark) + - fix the order in which local-defaults.path gets included (Mark) + - fix minor inefficiency when not printing debugging messages (Mark) + + Translators: + + - Adam Weinberger (en_CA) + - Robert Sedak (hr) + - Samúel Jón Gunnarsson (is) + - Alessio Frusciante (it) + - Takeshi AIHANA (ja) + - Amanpreet Singh Alam (pa) + - Gurkan Aslan (tr) + +2.5.1 +=== + + Thanks to lots of people for contributions to this release. + + The primary change in this release is switching over to a new backend + for loading the XML config files, which should be faster and use far + less memory. However, the change is high-risk, report any problems. + +2.4.0 +=== + + Thanks to Muktha Narayan, Christophe Fergeau, Frederic Crozat, + Jeffrey Stedfast, Mark McLoughlin, Dafydd Harries, Ross Golder, + Greg Hudson for contributions to this release. + + - print usage message when no options passed to gconftool + - API docs updates + - fix UTF-8 handling for command line output + - fix reliability of writing out XML + - ensure recursive unsets get synced + - fix flag value that was "0" + - fix recursive preloading + - fix a memleak + - fix some gconftool messages/segfaults + +2.3.3 +=== + + Thanks to James Cape, Rodrigo Moya, Michael Meeks, Ross Burton, + Mark McLoughlin for contributions to this release. + + - new gconf_client_notify() API to fake a notification + - fixes to gconftool --dump feature + - implement schema uninstallation in gconftool so packages + can avoid leaving junk + - fix build issues with linc-free ORBit + - new gconf_client_recursive_unset API + - fix gcc 3.3 strict aliasing warnings + +2.3.2 +=== + + Thanks to Masahiro Sakai, Muktha Narayan, Brian Cameron, Ross Burton, + Jeff Franks for fixes in this release. + + - fix build on Cygwin + - don't complain about missing saved_state in syslog + - improve gconf-sanity-check error text + - added --get-type, --get-list-size and --get-list-element + - exported gconf_entry_copy + - cleaned up headers for C++ + - added missing GCONF_CLIENT_GET_CLASS + - hackaround fix for 2.3.1 lockfile breakage + +=== +GConf 1.2.0 released June 11 2002. diff --git a/README b/README new file mode 100644 index 0000000..853c270 --- /dev/null +++ b/README @@ -0,0 +1,19 @@ +GConf is a configuration database system, functionally similar to the +Windows registry but lots better. :-) It's being written for the GNOME +desktop but does not require GNOME; configure should notice if GNOME +is not installed and compile the basic GConf library anyway. + +GConf does require glib, ORBit, libxml, and the popt option parsing +library. libxml will be optional in the future if someone writes another +storage backend. (Update: one is written but not enabled by default yet.) + +For information, see: + http://www.gnome.org/projects/gconf/ + +There's a mailing list gconf-list@gnome.org, see +http://mail.gnome.org/mailman/listinfo/gconf-list. + +The GConf maintainer is Havoc Pennington . Bugs and +patches should be filed in Bugzilla, http://bugzilla.gnome.org, +against the GConf product. Send questions and comments to Havoc or to +gconf-list@gnome.org. diff --git a/TODO b/TODO new file mode 100644 index 0000000..bd15d44 --- /dev/null +++ b/TODO @@ -0,0 +1,110 @@ +GNOME 1.4 release (must freeze VERY soon) +=== + +The release with 1.4 is not going to be super-useful for large-scale +installation administration; it's mostly just going to be a +process-transparent way to store settings, limited to single +workstation config files. + +No more source-incompatible API changes are planned for 1.4 at this +time. + +API additions +== + +* Implement batch gets + +Other +== + +* Maintain documentation + +* Envisioneering + +Maybe 1.4 +=== + +* Implement dump/slurp functionality (define XML DTD to represent + modifications to the database; augment gconftool to be able to + write out the current state of the database in this format, + and also apply the changes given in the format) + +* Make it so that once the first notification of a change in a GConfChangeSet + is delivered, the other values will be retrieved by gconf_get() and + gconf_client_get(), which means a way to invalidate GConfClient + cached stuff, and doing the setting of all values in the changeset + before the notifications. + +* Allow various currently-hardcoded items to be set from environment variables + or a config file ("home" directory to use, timeout lengths, etc. are + some candidates). + +* "Laptop mode" where GConf avoids touching the disk much + +* Implement server-side search (Kind of hard to actually implement + on the server, at least in any sort of fast way, and + all other gconf-using apps will block while the server is searching, + without some tricks to let the main loop run sometimes, so, dunno.) + +* Implement a way to get the GConfMetaInfo + +Future +=== + +* Berkeley DB backend (note: consider issues surrounding various incompatible + versions of DB and historical problems with the upgrade path, cf. + RPM and gnome-mime-db) + +* Performance tuning + +* Document locking issues for backends (backends should perform + their own locking, handle concurrency, etc.) + +* Document which database GConf will write to given multiple + writeable databases (i.e. the first one it can write to, + at the moment, maybe eventually the "database map" will + specify which it writes to) + +* Implement a way for backends to notify gconfd of changes they detect + +* Implement a "database map"; this would be a tree structure (similar + in implementation to GConfListeners). Rather than storing listeners + at the tree nodes, store a list of databases in order, and + readability/writability of each database. Create a config file + (perhaps in the GMarkup XML subset from glib 2.0) for configuring + the database map. Figure out whether this can entirely replace + the readable/writable methods from the backend vtable. + It likely replaces the gconf/path configuration file. (Essentially + the idea is a database path per key/directory, instead of a + global database path, giving administrators more flexibility.) + + Also, aliases for paths, and way for apps to install a suggested + default database alias ("per_display" "per_homedir" etc.) + (See gconf-list post) + + Details to be figured out. + +* GUI admin tool, and GUI user tool (are these the same?) + +* Thread support for scalability; may require ORBit thread safety? + Or a protocol with oneway CORBA methods (client requests a value, + gconfd calls back when it has the value) + +* Fix non-default GConfEngines: this means propagating change + notifications from them to other engines with the same + databases. Or maybe instead we should use the mechanism + used when the same database is in two gconfds (backend + notifies us of changes). + + Suspect that all notification has to come from the backend, + this is the only way to get sane behavior if _some_ notification + comes from the backend. Hmm. + +* Use a real DTD and a nicer structure for the XML backend format + +* The design of the client-server architecture is horked, overcomplicating + GConf.idl; the client should remember all its state (listeners, etc.), + and when the server disappears (we lose the connection to it), the + client resends its state; thus eliminating the saved state file + and making things more robust. + \ No newline at end of file diff --git a/acconfig.h b/acconfig.h new file mode 100644 index 0000000..8e2a8ee --- /dev/null +++ b/acconfig.h @@ -0,0 +1,10 @@ +#undef PACKAGE +#undef VERSION +#undef HAVE_CATGETS +#undef HAVE_GETTEXT +#undef HAVE_LC_MESSAGES +#undef HAVE_STPCPY +#undef ENABLE_NLS +#undef HAVE_PTHREAD_H +#undef GETTEXT_PACKAGE +#undef HAVE_DB3_DB_H diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 0000000..fbfb937 --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,8231 @@ +# generated automatically by aclocal 1.7.9 -*- Autoconf -*- + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +# Like AC_CONFIG_HEADER, but automatically create stamp file. -*- Autoconf -*- + +# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +AC_PREREQ([2.52]) + +# serial 6 + +# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. +AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) + +# Do all the work for Automake. -*- Autoconf -*- + +# This macro actually does too much some checks are only needed if +# your package does certain things. But this isn't really a big deal. + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +# Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 10 + +AC_PREREQ([2.54]) + +# Autoconf 2.50 wants to disallow AM_ names. We explicitly allow +# the ones we care about. +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl + +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) +# AM_INIT_AUTOMAKE([OPTIONS]) +# ----------------------------------------------- +# The call with PACKAGE and VERSION arguments is the old style +# call (pre autoconf-2.50), which is being phased out. PACKAGE +# and VERSION should now be passed to AC_INIT and removed from +# the call to AM_INIT_AUTOMAKE. +# We support both call styles for the transition. After +# the next Automake release, Autoconf can make the AC_INIT +# arguments mandatory, and then we can depend on a new Autoconf +# release and drop the old call support. +AC_DEFUN([AM_INIT_AUTOMAKE], +[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl + AC_REQUIRE([AC_PROG_INSTALL])dnl +# test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && + test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi +AC_SUBST([CYGPATH_W]) + +# Define the identity of the package. +dnl Distinguish between old-style and new-style calls. +m4_ifval([$2], +[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl + AC_SUBST([PACKAGE], [$1])dnl + AC_SUBST([VERSION], [$2])], +[_AM_SET_OPTIONS([$1])dnl + AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl + AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl + +_AM_IF_OPTION([no-define],, +[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) + AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl + +# Some tools Automake needs. +AC_REQUIRE([AM_SANITY_CHECK])dnl +AC_REQUIRE([AC_ARG_PROGRAM])dnl +AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) +AM_MISSING_PROG(AUTOCONF, autoconf) +AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) +AM_MISSING_PROG(AUTOHEADER, autoheader) +AM_MISSING_PROG(MAKEINFO, makeinfo) +AM_MISSING_PROG(AMTAR, tar) +AM_PROG_INSTALL_SH +AM_PROG_INSTALL_STRIP +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. +AC_REQUIRE([AC_PROG_AWK])dnl +AC_REQUIRE([AC_PROG_MAKE_SET])dnl +AC_REQUIRE([AM_SET_LEADING_DOT])dnl + +_AM_IF_OPTION([no-dependencies],, +[AC_PROVIDE_IFELSE([AC_PROG_CC], + [_AM_DEPENDENCIES(CC)], + [define([AC_PROG_CC], + defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_CXX], + [_AM_DEPENDENCIES(CXX)], + [define([AC_PROG_CXX], + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl +]) +]) + + +# When config.status generates a header, we must update the stamp-h file. +# This file resides in the same directory as the config header +# that is generated. The stamp files are numbered to have different names. + +# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the +# loop where config.status creates the headers, so we can generate +# our stamp files there. +AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], +[# Compute $1's index in $config_headers. +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $1 | $1:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) + +# Copyright 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + +# AM_AUTOMAKE_VERSION(VERSION) +# ---------------------------- +# Automake X.Y traces this macro to ensure aclocal.m4 has been +# generated from the m4 files accompanying Automake X.Y. +AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.7"]) + +# AM_SET_CURRENT_AUTOMAKE_VERSION +# ------------------------------- +# Call AM_AUTOMAKE_VERSION so it can be traced. +# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], + [AM_AUTOMAKE_VERSION([1.7.9])]) + +# Helper functions for option handling. -*- Autoconf -*- + +# Copyright 2001, 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 2 + +# _AM_MANGLE_OPTION(NAME) +# ----------------------- +AC_DEFUN([_AM_MANGLE_OPTION], +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) + +# _AM_SET_OPTION(NAME) +# ------------------------------ +# Set option NAME. Presently that only means defining a flag for this option. +AC_DEFUN([_AM_SET_OPTION], +[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) + +# _AM_SET_OPTIONS(OPTIONS) +# ---------------------------------- +# OPTIONS is a space-separated list of Automake options. +AC_DEFUN([_AM_SET_OPTIONS], +[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) + +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) +# ------------------------------------------- +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +AC_DEFUN([_AM_IF_OPTION], +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) + +# +# Check to make sure that the build environment is sane. +# + +# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 3 + +# AM_SANITY_CHECK +# --------------- +AC_DEFUN([AM_SANITY_CHECK], +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftest.file +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + if test "$[*]" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftest.file` + fi + rm -f conftest.file + if test "$[*]" != "X $srcdir/configure conftest.file" \ + && test "$[*]" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken +alias in your environment]) + fi + + test "$[2]" = conftest.file + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +AC_MSG_RESULT(yes)]) + +# -*- Autoconf -*- + + +# Copyright 1997, 1999, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 3 + +# AM_MISSING_PROG(NAME, PROGRAM) +# ------------------------------ +AC_DEFUN([AM_MISSING_PROG], +[AC_REQUIRE([AM_MISSING_HAS_RUN]) +$1=${$1-"${am_missing_run}$2"} +AC_SUBST($1)]) + + +# AM_MISSING_HAS_RUN +# ------------------ +# Define MISSING if not defined so far and test if it supports --run. +# If it does, set am_missing_run to use it, otherwise, to nothing. +AC_DEFUN([AM_MISSING_HAS_RUN], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " +else + am_missing_run= + AC_MSG_WARN([`missing' script is too old or missing]) +fi +]) + +# AM_AUX_DIR_EXPAND + +# Copyright 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets +# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to +# `$srcdir', `$srcdir/..', or `$srcdir/../..'. +# +# Of course, Automake must honor this variable whenever it calls a +# tool from the auxiliary directory. The problem is that $srcdir (and +# therefore $ac_aux_dir as well) can be either absolute or relative, +# depending on how configure is run. This is pretty annoying, since +# it makes $ac_aux_dir quite unusable in subdirectories: in the top +# source directory, any form will work fine, but in subdirectories a +# relative path needs to be adjusted first. +# +# $ac_aux_dir/missing +# fails when called from a subdirectory if $ac_aux_dir is relative +# $top_srcdir/$ac_aux_dir/missing +# fails if $ac_aux_dir is absolute, +# fails when called from a subdirectory in a VPATH build with +# a relative $ac_aux_dir +# +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir +# are both prefixed by $srcdir. In an in-source build this is usually +# harmless because $srcdir is `.', but things will broke when you +# start a VPATH build or use an absolute $srcdir. +# +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, +# iff we strip the leading $srcdir from $ac_aux_dir. That would be: +# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` +# and then we would define $MISSING as +# MISSING="\${SHELL} $am_aux_dir/missing" +# This will work as long as MISSING is not called from configure, because +# unfortunately $(top_srcdir) has no meaning in configure. +# However there are other variables, like CC, which are often used in +# configure, and could therefore not use this "fixed" $ac_aux_dir. +# +# Another solution, used here, is to always expand $ac_aux_dir to an +# absolute PATH. The drawback is that using absolute paths prevent a +# configured tree to be moved without reconfiguration. + +# Rely on autoconf to set up CDPATH properly. +AC_PREREQ([2.50]) + +AC_DEFUN([AM_AUX_DIR_EXPAND], [ +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` +]) + +# AM_PROG_INSTALL_SH +# ------------------ +# Define $install_sh. + +# Copyright 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +AC_DEFUN([AM_PROG_INSTALL_SH], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +install_sh=${install_sh-"$am_aux_dir/install-sh"} +AC_SUBST(install_sh)]) + +# AM_PROG_INSTALL_STRIP + +# Copyright 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# One issue with vendor `install' (even GNU) is that you can't +# specify the program used to strip binaries. This is especially +# annoying in cross-compiling environments, where the build's strip +# is unlikely to handle the host's binaries. +# Fortunately install-sh will honor a STRIPPROG variable, so we +# always use install-sh in `make install-strip', and initialize +# STRIPPROG with the value of the STRIP variable (set by the user). +AC_DEFUN([AM_PROG_INSTALL_STRIP], +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +dnl Don't test for $cross_compiling = yes, because it might be `maybe'. +if test "$cross_compiling" != no; then + AC_CHECK_TOOL([STRIP], [strip], :) +fi +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" +AC_SUBST([INSTALL_STRIP_PROGRAM])]) + +# -*- Autoconf -*- +# Copyright (C) 2003 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 1 + +# Check whether the underlying file-system supports filenames +# with a leading dot. For instance MS-DOS doesn't. +AC_DEFUN([AM_SET_LEADING_DOT], +[rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null +AC_SUBST([am__leading_dot])]) + +# serial 5 -*- Autoconf -*- + +# Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + + +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be +# written in clear, in which case automake, when reading aclocal.m4, +# will think it sees a *use*, and therefore will trigger all it's +# C support machinery. Also note that it means that autoscan, seeing +# CC etc. in the Makefile, will ask for an AC_PROG_CC use... + + + +# _AM_DEPENDENCIES(NAME) +# ---------------------- +# See how the compiler implements dependency checking. +# NAME is "CC", "CXX", "GCJ", or "OBJC". +# We try a few techniques and use that to set a single cache variable. +# +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular +# dependency, and given that the user is not expected to run this macro, +# just rely on AC_PROG_CC. +AC_DEFUN([_AM_DEPENDENCIES], +[AC_REQUIRE([AM_SET_DEPDIR])dnl +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl +AC_REQUIRE([AM_MAKE_INCLUDE])dnl +AC_REQUIRE([AM_DEP_TRACK])dnl + +ifelse([$1], CC, [depcc="$CC" am_compiler_list=], + [$1], CXX, [depcc="$CXX" am_compiler_list=], + [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) + +AC_CACHE_CHECK([dependency style of $depcc], + [am_cv_$1_dependencies_compiler_type], +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_$1_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` + fi + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + : > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + case $depmode in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. + if depmode=$depmode \ + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # (even with -Werror). So we grep stderr for any message + # that says an option was ignored. + if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else + am_cv_$1_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_$1_dependencies_compiler_type=none +fi +]) +AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) +AM_CONDITIONAL([am__fastdep$1], [ + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) +]) + + +# AM_SET_DEPDIR +# ------------- +# Choose a directory name for dependency files. +# This macro is AC_REQUIREd in _AM_DEPENDENCIES +AC_DEFUN([AM_SET_DEPDIR], +[AC_REQUIRE([AM_SET_LEADING_DOT])dnl +AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl +]) + + +# AM_DEP_TRACK +# ------------ +AC_DEFUN([AM_DEP_TRACK], +[AC_ARG_ENABLE(dependency-tracking, +[ --disable-dependency-tracking Speeds up one-time builds + --enable-dependency-tracking Do not reject slow dependency extractors]) +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' +fi +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) +AC_SUBST([AMDEPBACKSLASH]) +]) + +# Generate code to set up dependency tracking. -*- Autoconf -*- + +# Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +#serial 2 + +# _AM_OUTPUT_DEPENDENCY_COMMANDS +# ------------------------------ +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], +[for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`AS_DIRNAME("$mf")` + else + continue + fi + grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue + # Extract the definition of DEP_FILES from the Makefile without + # running `make'. + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + test -z "$DEPDIR" && continue + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n -e '/^U = / s///p' < "$mf"` + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" + # We invoke sed twice because it is the simplest approach to + # changing $(DEPDIR) to its actual value in the expansion. + for file in `sed -n -e ' + /^DEP_FILES = .*\\\\$/ { + s/^DEP_FILES = // + :loop + s/\\\\$// + p + n + /\\\\$/ b loop + p + } + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`AS_DIRNAME(["$file"])` + AS_MKDIR_P([$dirpart/$fdir]) + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done +])# _AM_OUTPUT_DEPENDENCY_COMMANDS + + +# AM_OUTPUT_DEPENDENCY_COMMANDS +# ----------------------------- +# This macro should only be invoked once -- use via AC_REQUIRE. +# +# This code is only required when automatic dependency tracking +# is enabled. FIXME. This creates each `.P' file that we will +# need in order to bootstrap the dependency handling code. +AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], +[AC_CONFIG_COMMANDS([depfiles], + [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], + [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) +]) + +# Check to see how 'make' treats includes. -*- Autoconf -*- + +# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 2 + +# AM_MAKE_INCLUDE() +# ----------------- +# Check to see how make treats includes. +AC_DEFUN([AM_MAKE_INCLUDE], +[am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo done +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +AC_MSG_CHECKING([for style of include used by $am_make]) +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# We grep out `Entering directory' and `Leaving directory' +# messages which can occur if `w' ends up in MAKEFLAGS. +# In particular we don't look at `^make:' because GNU make might +# be invoked under some other name (usually "gmake"), in which +# case it prints its new name instead of `make'. +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then + am__include=include + am__quote= + _am_result=GNU +fi +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then + am__include=.include + am__quote="\"" + _am_result=BSD + fi +fi +AC_SUBST([am__include]) +AC_SUBST([am__quote]) +AC_MSG_RESULT([$_am_result]) +rm -f confinc confmf +]) + +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright 1997, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 5 + +AC_PREREQ(2.52) + +# AM_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE]) +AC_SUBST([$1_FALSE]) +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi +AC_CONFIG_COMMANDS_PRE( +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then + AC_MSG_ERROR([conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]) +fi])]) + +# Add --enable-maintainer-mode option to configure. +# From Jim Meyering + +# Copyright 1996, 1998, 2000, 2001, 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 2 + +AC_DEFUN([AM_MAINTAINER_MODE], +[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) + dnl maintainer-mode is disabled by default + AC_ARG_ENABLE(maintainer-mode, +[ --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer], + USE_MAINTAINER_MODE=$enableval, + USE_MAINTAINER_MODE=no) + AC_MSG_RESULT([$USE_MAINTAINER_MODE]) + AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes]) + MAINT=$MAINTAINER_MODE_TRUE + AC_SUBST(MAINT)dnl +] +) + +AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) + + +# Copyright 1996, 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 2 + +# @defmac AC_PROG_CC_STDC +# @maindex PROG_CC_STDC +# @ovindex CC +# If the C compiler in not in ANSI C mode by default, try to add an option +# to output variable @code{CC} to make it so. This macro tries various +# options that select ANSI C on some system or another. It considers the +# compiler to be in ANSI C mode if it handles function prototypes correctly. +# +# If you use this macro, you should check after calling it whether the C +# compiler has been set to accept ANSI C; if not, the shell variable +# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source +# code in ANSI C, you can make an un-ANSIfied copy of it by using the +# program @code{ansi2knr}, which comes with Ghostscript. +# @end defmac + +AC_DEFUN([AM_PROG_CC_STDC], +[AC_REQUIRE([AC_PROG_CC]) +AC_BEFORE([$0], [AC_C_INLINE]) +AC_BEFORE([$0], [AC_C_CONST]) +dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require +dnl a magic option to avoid problems with ANSI preprocessor commands +dnl like #elif. +dnl FIXME: can't do this because then AC_AIX won't work due to a +dnl circular dependency. +dnl AC_BEFORE([$0], [AC_PROG_CPP]) +AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C]) +AC_CACHE_VAL(am_cv_prog_cc_stdc, +[am_cv_prog_cc_stdc=no +ac_save_CC="$CC" +# Don't try gcc -ansi; that turns off useful extensions and +# breaks some systems' header files. +# AIX -qlanglvl=ansi +# Ultrix and OSF/1 -std1 +# HP-UX 10.20 and later -Ae +# HP-UX older versions -Aa -D_HPUX_SOURCE +# SVR4 -Xc -D__EXTENSIONS__ +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + AC_TRY_COMPILE( +[#include +#include +#include +#include +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +], [ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; +], +[am_cv_prog_cc_stdc="$ac_arg"; break]) +done +CC="$ac_save_CC" +]) +if test -z "$am_cv_prog_cc_stdc"; then + AC_MSG_RESULT([none needed]) +else + AC_MSG_RESULT([$am_cv_prog_cc_stdc]) +fi +case "x$am_cv_prog_cc_stdc" in + x|xno) ;; + *) CC="$CC $am_cv_prog_cc_stdc" ;; +esac +]) + +AU_DEFUN([fp_PROG_CC_STDC], [AM_PROG_CC_STDC]) + +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- + +# serial 48 AC_PROG_LIBTOOL + + +# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ----------------------------------------------------------- +# If this macro is not defined by Autoconf, define it here. +m4_ifdef([AC_PROVIDE_IFELSE], + [], + [m4_define([AC_PROVIDE_IFELSE], + [m4_ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + + +# AC_PROG_LIBTOOL +# --------------- +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX + ])]) +dnl And a similar setup for Fortran 77 support + AC_PROVIDE_IFELSE([AC_PROG_F77], + [AC_LIBTOOL_F77], + [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], + defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) +])])# AC_PROG_LIBTOOL + + +# _AC_PROG_LIBTOOL +# ---------------- +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Prevent multiple expansion +define([AC_PROG_LIBTOOL], []) +])# _AC_PROG_LIBTOOL + + +# AC_LIBTOOL_SETUP +# ---------------- +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.50)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl + +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +AC_LIBTOOL_SYS_MAX_CMD_LEN +AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +AC_LIBTOOL_OBJDIR + +AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +_LT_AC_PROG_ECHO_BACKSLASH + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e 1s/^X//' +[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] + +# Same as above, but do not quote variable references. +[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'] + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +# Constants: +rm="rm -f" + +# Global variables: +default_ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a +ltmain="$ac_aux_dir/ltmain.sh" +ofile="$default_ofile" +with_gnu_ld="$lt_cv_prog_gnu_ld" + +AC_CHECK_TOOL(AR, ar, false) +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$NM" && NM=nm +test -z "$SED" && SED=sed +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$ac_objext" && ac_objext=o + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" +fi + +_LT_CC_BASENAME([$compiler]) + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +enable_win32_dll=yes, enable_win32_dll=no) + +AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +AC_ARG_WITH([pic], + [AC_HELP_STRING([--with-pic], + [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], + [pic_mode="$withval"], + [pic_mode=default]) +test -z "$pic_mode" && pic_mode=default + +# Use C for the default configuration in the libtool script +tagname= +AC_LIBTOOL_LANG_C_CONFIG +_LT_AC_TAGCONFIG +])# AC_LIBTOOL_SETUP + + +# _LT_AC_SYS_COMPILER +# ------------------- +AC_DEFUN([_LT_AC_SYS_COMPILER], +[AC_REQUIRE([AC_PROG_CC])dnl + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC +])# _LT_AC_SYS_COMPILER + + +# _LT_CC_BASENAME(CC) +# ------------------- +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +AC_DEFUN([_LT_CC_BASENAME], +[for cc_temp in $1""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac +done +cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` +]) + + +# _LT_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +AC_DEFUN([_LT_COMPILER_BOILERPLATE], +[ac_outfile=conftest.$ac_objext +printf "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$rm conftest* +])# _LT_COMPILER_BOILERPLATE + + +# _LT_LINKER_BOILERPLATE +# ---------------------- +# Check for linker boilerplate output or warnings with +# the simple link test code. +AC_DEFUN([_LT_LINKER_BOILERPLATE], +[ac_outfile=conftest.$ac_objext +printf "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$rm conftest* +])# _LT_LINKER_BOILERPLATE + + +# _LT_AC_SYS_LIBPATH_AIX +# ---------------------- +# Links a minimal program and checks the executable +# for the system default hardcoded library path. In most cases, +# this is /usr/lib:/lib, but when the MPI compilers are used +# the location of the communication and MPI libs are included too. +# If we don't find anything, use the default library path according +# to the aix ld manual. +AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], +[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi],[]) +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi +])# _LT_AC_SYS_LIBPATH_AIX + + +# _LT_AC_SHELL_INIT(ARG) +# ---------------------- +AC_DEFUN([_LT_AC_SHELL_INIT], +[ifdef([AC_DIVERSION_NOTICE], + [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], + [AC_DIVERT_PUSH(NOTICE)]) +$1 +AC_DIVERT_POP +])# _LT_AC_SHELL_INIT + + +# _LT_AC_PROG_ECHO_BACKSLASH +# -------------------------- +# Add some code to the start of the generated configure script which +# will find an echo command which doesn't interpret backslashes. +AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], +[_LT_AC_SHELL_INIT([ +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} + +case X$ECHO in +X*--fallback-echo) + # Remove one level of quotation (which was required for Make). + ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` + ;; +esac + +echo=${ECHO-echo} +if test "X[$]1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X[$]1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then + # Yippee, $echo works! + : +else + # Restart under the correct shell. + exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} +fi + +if test "X[$]1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null 2>&1 && unset CDPATH + +if test -z "$ECHO"; then +if test "X${echo_test_string+set}" != Xset; then +# find a string as large as possible, as long as the shell can cope with it + for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do + # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... + if (echo_test_string=`eval $cmd`) 2>/dev/null && + echo_test_string=`eval $cmd` && + (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null + then + break + fi + done +fi + +if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : +else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for dir in $PATH /usr/ucb; do + IFS="$lt_save_ifs" + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$dir/echo" + break + fi + done + IFS="$lt_save_ifs" + + if test "X$echo" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + echo='print -r' + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running configure again with it. + ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} + else + # Try using printf. + echo='printf %s\n' + if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + echo="$CONFIG_SHELL [$]0 --fallback-echo" + elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$CONFIG_SHELL [$]0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do + if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null + then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "[$]0"'; then + echo_test_string=`eval $prev` + export echo_test_string + exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} + else + # Oops. We lost completely, so just stick with echo. + echo=echo + fi + fi + fi + fi +fi +fi + +# Copy echo and quote the copy suitably for passing to libtool from +# the Makefile, instead of quoting the original, which is used later. +ECHO=$echo +if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then + ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" +fi + +AC_SUBST(ECHO) +])])# _LT_AC_PROG_ECHO_BACKSLASH + + +# _LT_AC_LOCK +# ----------- +AC_DEFUN([_LT_AC_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_PUSH(C) + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_POP]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; +sparc*-*solaris*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) LD="${LD-ld} -m elf64_sparc" ;; + *) LD="${LD-ld} -64" ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; + ]) +esac + +need_locks="$enable_libtool_lock" + +])# _LT_AC_LOCK + + +# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], +[AC_REQUIRE([LT_AC_PROG_SED]) +AC_CACHE_CHECK([$1], [$2], + [$2=no + ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$3" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + fi + $rm conftest* +]) + +if test x"[$]$2" = xyes; then + ifelse([$5], , :, [$5]) +else + ifelse([$6], , :, [$6]) +fi +])# AC_LIBTOOL_COMPILER_OPTION + + +# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ------------------------------------------------------------ +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], +[AC_CACHE_CHECK([$1], [$2], + [$2=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $3" + printf "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&AS_MESSAGE_LOG_FD + $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + else + $2=yes + fi + fi + $rm conftest* + LDFLAGS="$save_LDFLAGS" +]) + +if test x"[$]$2" = xyes; then + ifelse([$4], , :, [$4]) +else + ifelse([$5], , :, [$5]) +fi +])# AC_LIBTOOL_LINKER_OPTION + + +# AC_LIBTOOL_SYS_MAX_CMD_LEN +# -------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], +[# find the maximum length of command line arguments +AC_MSG_CHECKING([the maximum length of command line arguments]) +AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl + i=0 + teststring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) + # This has been around since 386BSD, at least. Likely further. + if test -x /sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` + elif test -x /usr/sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` + else + lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs + fi + # And add a safety zone + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + ;; + + interix*) + # We know the value 262144 and hardcode it with a safety zone (like BSD) + lt_cv_sys_max_cmd_len=196608 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \ + = "XX$teststring") >/dev/null 2>&1 && + new_result=`expr "X$teststring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + teststring= + # Add a significant safety factor because C++ compilers can tack on massive + # amounts of additional arguments before passing them to the linker. + # It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + ;; + esac +]) +if test -n $lt_cv_sys_max_cmd_len ; then + AC_MSG_RESULT($lt_cv_sys_max_cmd_len) +else + AC_MSG_RESULT(none) +fi +])# AC_LIBTOOL_SYS_MAX_CMD_LEN + + +# _LT_AC_CHECK_DLFCN +# ------------------ +AC_DEFUN([_LT_AC_CHECK_DLFCN], +[AC_CHECK_HEADERS(dlfcn.h)dnl +])# _LT_AC_CHECK_DLFCN + + +# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# --------------------------------------------------------------------- +AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +if test "$cross_compiling" = yes; then : + [$4] +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + else + puts (dlerror ()); + + exit (status); +}] +EOF + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) $1 ;; + x$lt_dlneed_uscore) $2 ;; + x$lt_dlunknown|x*) $3 ;; + esac + else : + # compilation failed + $3 + fi +fi +rm -fr conftest* +])# _LT_AC_TRY_DLOPEN_SELF + + +# AC_LIBTOOL_DLOPEN_SELF +# ---------------------- +AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ]) + ;; + + *) + AC_CHECK_FUNC([shl_load], + [lt_cv_dlopen="shl_load"], + [AC_CHECK_LIB([dld], [shl_load], + [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], + [AC_CHECK_FUNC([dlopen], + [lt_cv_dlopen="dlopen"], + [AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], + [AC_CHECK_LIB([svld], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], + [AC_CHECK_LIB([dld], [dld_link], + [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) + ]) + ]) + ]) + ]) + ]) + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + AC_CACHE_CHECK([whether a program can dlopen itself], + lt_cv_dlopen_self, [dnl + _LT_AC_TRY_DLOPEN_SELF( + lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, + lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) + ]) + + if test "x$lt_cv_dlopen_self" = xyes; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + AC_CACHE_CHECK([whether a statically linked program can dlopen itself], + lt_cv_dlopen_self_static, [dnl + _LT_AC_TRY_DLOPEN_SELF( + lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, + lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) + ]) + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi +])# AC_LIBTOOL_DLOPEN_SELF + + +# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) +# --------------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler +AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + fi + fi + chmod u+w . 2>&AS_MESSAGE_LOG_FD + $rm conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files + $rm out/* && rmdir out + cd .. + rmdir conftest + $rm conftest* +]) +])# AC_LIBTOOL_PROG_CC_C_O + + +# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) +# ----------------------------------------- +# Check to see if we can do hard links to lock some files if needed +AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], +[AC_REQUIRE([_LT_AC_LOCK])dnl + +hard_links="nottested" +if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + AC_MSG_CHECKING([if we can lock with hard links]) + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + AC_MSG_RESULT([$hard_links]) + if test "$hard_links" = no; then + AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) + need_locks=warn + fi +else + need_locks=no +fi +])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS + + +# AC_LIBTOOL_OBJDIR +# ----------------- +AC_DEFUN([AC_LIBTOOL_OBJDIR], +[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], +[rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null]) +objdir=$lt_cv_objdir +])# AC_LIBTOOL_OBJDIR + + +# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) +# ---------------------------------------------- +# Check hardcoding attributes. +AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_AC_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ + test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \ + test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then + + # We can hardcode non-existant directories. + if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && + test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then + # Linking always hardcodes the temporary library directory. + _LT_AC_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_AC_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_AC_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) + +if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi +])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH + + +# AC_LIBTOOL_SYS_LIB_STRIP +# ------------------------ +AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], +[striplib= +old_striplib= +AC_MSG_CHECKING([whether stripping libraries is possible]) +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) +fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac +fi +])# AC_LIBTOOL_SYS_LIB_STRIP + + +# AC_LIBTOOL_SYS_DYNAMIC_LINKER +# ----------------------------- +# PORTME Fill in your ld.so characteristics +AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], +[AC_MSG_CHECKING([dynamic linker characteristics]) +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[[01]] | aix4.[[01]].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[[45]]*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext_cmds=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[[123]]*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[[01]]* | freebsdelf3.[[01]]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ + freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + freebsd*) # from 4.6 on + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +interix3*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # find out which ABI we are using + libsuff= + case "$host_cpu" in + x86_64*|s390x*|powerpc64*) + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *64-bit*) + libsuff=64 + sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" + ;; + esac + fi + rm -rf conftest* + ;; + esac + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + sys_lib_dlsearch_path_spec="/usr/lib" + need_lib_prefix=no + # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. + case $host_os in + openbsd3.3 | openbsd3.3.*) need_version=yes ;; + *) need_version=no ;; + esac + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[[89]] | openbsd2.[[89]].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext_cmds=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=freebsd-elf + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + if test "$with_gnu_ld" = yes; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + shlibpath_overrides_runpath=no + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + shlibpath_overrides_runpath=yes + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +AC_MSG_RESULT([$dynamic_linker]) +test "$dynamic_linker" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi +])# AC_LIBTOOL_SYS_DYNAMIC_LINKER + + +# _LT_AC_TAGCONFIG +# ---------------- +AC_DEFUN([_LT_AC_TAGCONFIG], +[AC_ARG_WITH([tags], + [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], + [include additional configurations @<:@automatic@:>@])], + [tagnames="$withval"]) + +if test -f "$ltmain" && test -n "$tagnames"; then + if test ! -f "${ofile}"; then + AC_MSG_WARN([output file `$ofile' does not exist]) + fi + + if test -z "$LTCC"; then + eval "`$SHELL ${ofile} --config | grep '^LTCC='`" + if test -z "$LTCC"; then + AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) + else + AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) + fi + fi + if test -z "$LTCFLAGS"; then + eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`" + fi + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for tagname in $tagnames; do + IFS="$lt_save_ifs" + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in + "") ;; + *) AC_MSG_ERROR([invalid tag name: $tagname]) + ;; + esac + + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null + then + AC_MSG_ERROR([tag name \"$tagname\" already exists]) + fi + + # Update the list of available tags. + if test -n "$tagname"; then + echo appending configuration tag \"$tagname\" to $ofile + + case $tagname in + CXX) + if test -n "$CXX" && ( test "X$CXX" != "Xno" && + ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || + (test "X$CXX" != "Xg++"))) ; then + AC_LIBTOOL_LANG_CXX_CONFIG + else + tagname="" + fi + ;; + + F77) + if test -n "$F77" && test "X$F77" != "Xno"; then + AC_LIBTOOL_LANG_F77_CONFIG + else + tagname="" + fi + ;; + + GCJ) + if test -n "$GCJ" && test "X$GCJ" != "Xno"; then + AC_LIBTOOL_LANG_GCJ_CONFIG + else + tagname="" + fi + ;; + + RC) + AC_LIBTOOL_LANG_RC_CONFIG + ;; + + *) + AC_MSG_ERROR([Unsupported tag name: $tagname]) + ;; + esac + + # Append the new tag name to the list of available tags. + if test -n "$tagname" ; then + available_tags="$available_tags $tagname" + fi + fi + done + IFS="$lt_save_ifs" + + # Now substitute the updated list of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then + mv "${ofile}T" "$ofile" + chmod +x "$ofile" + else + rm -f "${ofile}T" + AC_MSG_ERROR([unable to update list of available tagged configurations.]) + fi +fi +])# _LT_AC_TAGCONFIG + + +# AC_LIBTOOL_DLOPEN +# ----------------- +# enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], + [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_DLOPEN + + +# AC_LIBTOOL_WIN32_DLL +# -------------------- +# declare package support for building win32 DLLs +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_WIN32_DLL + + +# AC_ENABLE_SHARED([DEFAULT]) +# --------------------------- +# implement the --enable-shared flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([shared], + [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_shared=]AC_ENABLE_SHARED_DEFAULT) +])# AC_ENABLE_SHARED + + +# AC_DISABLE_SHARED +# ----------------- +# set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no) +])# AC_DISABLE_SHARED + + +# AC_ENABLE_STATIC([DEFAULT]) +# --------------------------- +# implement the --enable-static flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([static], + [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_static=]AC_ENABLE_STATIC_DEFAULT) +])# AC_ENABLE_STATIC + + +# AC_DISABLE_STATIC +# ----------------- +# set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no) +])# AC_DISABLE_STATIC + + +# AC_ENABLE_FAST_INSTALL([DEFAULT]) +# --------------------------------- +# implement the --enable-fast-install flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([fast-install], + [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) +])# AC_ENABLE_FAST_INSTALL + + +# AC_DISABLE_FAST_INSTALL +# ----------------------- +# set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no) +])# AC_DISABLE_FAST_INSTALL + + +# AC_LIBTOOL_PICMODE([MODE]) +# -------------------------- +# implement the --with-pic flag +# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default) +])# AC_LIBTOOL_PICMODE + + +# AC_PROG_EGREP +# ------------- +# This is predefined starting with Autoconf 2.54, so this conditional +# definition can be removed once we require Autoconf 2.54 or later. +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], +[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], + [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 + then ac_cv_prog_egrep='grep -E' + else ac_cv_prog_egrep='egrep' + fi]) + EGREP=$ac_cv_prog_egrep + AC_SUBST([EGREP]) +])]) + + +# AC_PATH_TOOL_PREFIX +# ------------------- +# find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in +[[\\/*] | ?:[\\/]*]) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +])# AC_PATH_TOOL_PREFIX + + +# AC_PATH_MAGIC +# ------------- +# find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# AC_PATH_MAGIC + + +# AC_PROG_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH([gnu-ld], + [AC_HELP_STRING([--with-gnu-ld], + [assume the C compiler uses GNU ld @<:@default=no@:>@])], + [test "$withval" = no || with_gnu_ld=yes], + [with_gnu_ld=no]) +AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by $CC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case $host_cpu in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +interix3*) + # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux*) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +nto-qnx*) + lt_cv_deplibs_check_method=unknown + ;; + +openbsd*) + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown +])# AC_DEPLIBS_CHECK_METHOD + + +# AC_PROG_NM +# ---------- +# find the pathname to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_nm_to_check="${ac_tool_prefix}nm" + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/$lt_tmp_nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS="$lt_save_ifs" + done + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +])# AC_PROG_NM + + +# AC_CHECK_LIBM +# ------------- +# check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, cos, LIBM="-lm") + ;; +esac +])# AC_CHECK_LIBM + + +# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl convenience library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-convenience to the configure arguments. Note that +# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, +# it is assumed to be `libltdl'. LIBLTDL will be prefixed with +# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/' +# (note the single quotes!). If your package is not flat and you're not +# using automake, define top_builddir and top_srcdir appropriately in +# the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_CONVENIENCE + + +# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl installable library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-install to the configure arguments. Note that +# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided, +# and an installed libltdl is not found, it is assumed to be `libltdl'. +# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and top_srcdir +# appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, lt_dlinit, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + LTDLINCL= + fi + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_INSTALLABLE + + +# AC_LIBTOOL_CXX +# -------------- +# enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], +[AC_REQUIRE([_LT_AC_LANG_CXX]) +])# AC_LIBTOOL_CXX + + +# _LT_AC_LANG_CXX +# --------------- +AC_DEFUN([_LT_AC_LANG_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([_LT_AC_PROG_CXXCPP]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) +])# _LT_AC_LANG_CXX + +# _LT_AC_PROG_CXXCPP +# ------------------ +AC_DEFUN([_LT_AC_PROG_CXXCPP], +[ +AC_REQUIRE([AC_PROG_CXX]) +if test -n "$CXX" && ( test "X$CXX" != "Xno" && + ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || + (test "X$CXX" != "Xg++"))) ; then + AC_PROG_CXXCPP +fi +])# _LT_AC_PROG_CXXCPP + +# AC_LIBTOOL_F77 +# -------------- +# enable support for Fortran 77 libraries +AC_DEFUN([AC_LIBTOOL_F77], +[AC_REQUIRE([_LT_AC_LANG_F77]) +])# AC_LIBTOOL_F77 + + +# _LT_AC_LANG_F77 +# --------------- +AC_DEFUN([_LT_AC_LANG_F77], +[AC_REQUIRE([AC_PROG_F77]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) +])# _LT_AC_LANG_F77 + + +# AC_LIBTOOL_GCJ +# -------------- +# enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ], +[AC_REQUIRE([_LT_AC_LANG_GCJ]) +])# AC_LIBTOOL_GCJ + + +# _LT_AC_LANG_GCJ +# --------------- +AC_DEFUN([_LT_AC_LANG_GCJ], +[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) +])# _LT_AC_LANG_GCJ + + +# AC_LIBTOOL_RC +# ------------- +# enable support for Windows resource files +AC_DEFUN([AC_LIBTOOL_RC], +[AC_REQUIRE([LT_AC_PROG_RC]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) +])# AC_LIBTOOL_RC + + +# AC_LIBTOOL_LANG_C_CONFIG +# ------------------------ +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) +AC_DEFUN([_LT_AC_LANG_C_CONFIG], +[lt_save_CC="$CC" +AC_LANG_PUSH(C) + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_AC_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}\n' + +_LT_AC_SYS_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) +AC_LIBTOOL_SYS_LIB_STRIP +AC_LIBTOOL_DLOPEN_SELF + +# Report which library types will actually be built +AC_MSG_CHECKING([if libtool supports shared libraries]) +AC_MSG_RESULT([$can_build_shared]) + +AC_MSG_CHECKING([whether to build shared libraries]) +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case $host_os in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + +aix4* | aix5*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; +esac +AC_MSG_RESULT([$enable_shared]) + +AC_MSG_CHECKING([whether to build static libraries]) +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes +AC_MSG_RESULT([$enable_static]) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_C_CONFIG + + +# AC_LIBTOOL_LANG_CXX_CONFIG +# -------------------------- +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) +AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], +[AC_LANG_PUSH(C++) +AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([_LT_AC_PROG_CXXCPP]) + +_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_AC_TAGVAR(allow_undefined_flag, $1)= +_LT_AC_TAGVAR(always_export_symbols, $1)=no +_LT_AC_TAGVAR(archive_expsym_cmds, $1)= +_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_direct, $1)=no +_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= +_LT_AC_TAGVAR(hardcode_minus_L, $1)=no +_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_AC_TAGVAR(hardcode_automatic, $1)=no +_LT_AC_TAGVAR(module_cmds, $1)= +_LT_AC_TAGVAR(module_expsym_cmds, $1)= +_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown +_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_AC_TAGVAR(no_undefined_flag, $1)= +_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= +_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Dependencies to place before and after the object being linked: +_LT_AC_TAGVAR(predep_objects, $1)= +_LT_AC_TAGVAR(postdep_objects, $1)= +_LT_AC_TAGVAR(predeps, $1)= +_LT_AC_TAGVAR(postdeps, $1)= +_LT_AC_TAGVAR(compiler_lib_search_path, $1)= + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_AC_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_AC_SYS_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_LD=$LD +lt_save_GCC=$GCC +GCC=$GXX +lt_save_with_gnu_ld=$with_gnu_ld +lt_save_path_LD=$lt_cv_path_LD +if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx +else + $as_unset lt_cv_prog_gnu_ld +fi +if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX +else + $as_unset lt_cv_path_LD +fi +test -z "${LDCXX+set}" || LD=$LDCXX +CC=${CXX-"c++"} +compiler=$CC +_LT_AC_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) + +# We don't want -fno-exception wen compiling C++ code, so set the +# no_builtin_flag separately +if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' +else + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= +fi + +if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + AC_PROG_LD + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test "$with_gnu_ld" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ + grep 'no-whole-archive' > /dev/null; then + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + +else + GXX=no + with_gnu_ld=no + wlarc= +fi + +# PORTME: fill in a description of your system's C++ link characteristics +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +_LT_AC_TAGVAR(ld_shlibs, $1)=yes +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GXX" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + else + # We have old collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + darwin* | rhapsody*) + case $host_os in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' + ;; + esac + fi + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GXX" = yes ; then + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + fi + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + case $cc_basename in + xlc*) + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + ;; + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + freebsd[[12]]*) + # C++ shared libraries reported to be fairly broken before switch to ELF + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + freebsd-elf*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + freebsd* | kfreebsd*-gnu | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + ;; + gnu*) + ;; + hpux9*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "[[-]]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + ;; + *) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + interix3*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + irix5* | irix6*) + case $cc_basename in + CC*) + # SGI C++ + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$GXX" = yes; then + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + fi + fi + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + linux*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc*) + # Intel C++ + with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. + case `$CC -V 2>&1` in + *"Version 7."*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= + case $host_cpu in + ia64*) tmp_idyn=' -i_dynamic';; + esac + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + pgCC*) + # Portland Group C++ compiler + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' + ;; + cxx*) + # Compaq C++ + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + m88k*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + openbsd2*) + # C++ shared libraries are fairly broken + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + openbsd*) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + fi + output_verbose_link_cmd='echo' + ;; + osf3*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + osf4* | osf5*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~ + $rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + psos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The C++ compiler is used as linker so we must use $wl + # flag to pass the commands to the underlying system + # linker. We must also pass each convience library through + # to the system linker between allextract/defaultextract. + # The C++ compiler will combine linker options so we + # cannot just pass the convience library names through + # without $wl. + # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' + ;; + esac + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + output_verbose_link_cmd='echo' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if $CC --version | grep -v '^2\.7' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + fi + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + fi + ;; + esac + ;; + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + # So that behaviour is only enabled if SCOABSPATH is set to a + # non-empty value in the environment. Most likely only useful for + # creating official distributions of packages. + # This is a hack until libtool officially supports absolute path + # names for shared libraries. + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + vxworks*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; +esac +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +_LT_AC_TAGVAR(GCC, $1)="$GXX" +_LT_AC_TAGVAR(LD, $1)="$LD" + +AC_LIBTOOL_POSTDEP_PREDEP($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC=$lt_save_CC +LDCXX=$LD +LD=$lt_save_LD +GCC=$lt_save_GCC +with_gnu_ldcxx=$with_gnu_ld +with_gnu_ld=$lt_save_with_gnu_ld +lt_cv_path_LDCXX=$lt_cv_path_LD +lt_cv_path_LD=$lt_save_path_LD +lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld +lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +])# AC_LIBTOOL_LANG_CXX_CONFIG + +# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) +# ------------------------------------ +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library. It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +ifelse([$1],[],[cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <> "$cfgfile" +ifelse([$1], [], +[#! $SHELL + +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# +# This file is part of GNU Libtool: +# Originally by Gordon Matzigkeit , 1996 +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e 1s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# The names of the tagged configurations supported by this script. +available_tags= + +# ### BEGIN LIBTOOL CONFIG], +[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# LTCC compiler flags. +LTCFLAGS=$lt_LTCFLAGS + +# A language-specific compiler. +CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) + +# Is the compiler the GNU C compiler? +with_gcc=$_LT_AC_TAGVAR(GCC, $1) + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_[]_LT_AC_TAGVAR(LD, $1) + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext_cmds='$shrext_cmds' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) + +# Commands used to build and install a shared archive. +archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) +archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) +module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" + +# Set to yes if exported symbols are required. +always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) + +# The commands to list exported symbols. +export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) + +# Symbols that must always be exported. +include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) + +ifelse([$1],[], +[# ### END LIBTOOL CONFIG], +[# ### END LIBTOOL TAG CONFIG: $tagname]) + +__EOF__ + +ifelse([$1],[], [ + case $host_os in + aix3*) + cat <<\EOF >> "$cfgfile" + +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +EOF + ;; + esac + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || \ + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +]) +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi +])# AC_LIBTOOL_CONFIG + + +# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl + +_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + + AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI + + +# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +# --------------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], +[AC_REQUIRE([AC_CANONICAL_HOST]) +AC_REQUIRE([AC_PROG_NM]) +AC_REQUIRE([AC_OBJEXT]) +# Check for command to grab the raw symbol name followed by C symbol from nm. +AC_MSG_CHECKING([command to parse $NM output from $compiler object]) +AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], +[ +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[[BCDEGRST]]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' + +# Transform an extracted symbol line into a proper C declaration +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) # Its linker distinguishes data from code symbols + if test "$host_cpu" = ia64; then + symcode='[[ABCDEGRST]]' + fi + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + ;; +linux*) + if test "$host_cpu" = ia64; then + symcode='[[ABCDGIRSTW]]' + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + fi + ;; +irix* | nonstopux*) + symcode='[[BCDEGRST]]' + ;; +osf*) + symcode='[[BCDEGQRST]]' + ;; +solaris*) + symcode='[[BDRT]]' + ;; +sco3.2v5*) + symcode='[[DT]]' + ;; +sysv4.2uw2*) + symcode='[[DT]]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[[ABDT]]' + ;; +sysv4) + symcode='[[DFNSTU]]' + ;; +esac + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGIRSTW]]' ;; +esac + +# Try without a prefix undercore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if grep ' nm_test_var$' "$nlist" >/dev/null; then + if grep ' nm_test_func$' "$nlist" >/dev/null; then + cat < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[[]] = +{ +EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_save_LIBS="$LIBS" + lt_save_CFLAGS="$CFLAGS" + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS="$lt_save_LIBS" + CFLAGS="$lt_save_CFLAGS" + else + echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD + fi + else + echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD + cat conftest.$ac_ext >&5 + fi + rm -f conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done +]) +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + AC_MSG_RESULT(failed) +else + AC_MSG_RESULT(ok) +fi +]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE + + +# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) +# --------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], +[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= + +AC_MSG_CHECKING([for $compiler option to produce PIC]) + ifelse([$1],[CXX],[ + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | os2* | pw32*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + interix3*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + case $host_os in + aix4* | aix5*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + darwin*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + case $cc_basename in + xlc*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | kfreebsd*-gnu | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + interix*) + # This is c89, which is MS Visual C++ (no shared libs) + # Anyone wants to do a port? + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux*) + case $cc_basename in + KCC*) + # KAI C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + icpc* | ecpc*) + # Intel C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgCC*) + # Portland Group C++ compiler. + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + cxx*) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx*) + # Digital/Compaq C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + solaris*) + case $cc_basename in + CC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc*) + # Lucid + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + vxworks*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + interix3*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + darwin*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + case $cc_basename in + xlc*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + esac + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + newsos6) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + linux*) + case $cc_basename in + icc* | ecc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgcc* | pgf77* | pgf90* | pgf95*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + ccc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + esac + ;; + + osf3* | osf4* | osf5*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + solaris*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + case $cc_basename in + f77* | f90* | f95*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; + *) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; + esac + ;; + + sunos4*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + unicos*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + + uts4*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then + AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], + _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), + [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +case $host_os in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" + ;; +esac + +# +# Check to make sure the static flag actually works. +# +wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\" +AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], + _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), + $lt_tmp_static_flag, + [], + [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) +]) + + +# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) +# ------------------------------------ +# See if the linker supports building shared libraries. +AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], +[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +ifelse([$1],[CXX],[ + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + case $host_os in + aix4* | aix5*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + else + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; + cygwin* | mingw*) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([[^ ]]*\) [[^ ]]*/\1 DATA/;/^I /d;/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' + ;; + *) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac +],[ + runpath_var= + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)= + _LT_AC_TAGVAR(archive_expsym_cmds, $1)= + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= + _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_minus_L, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown + _LT_AC_TAGVAR(hardcode_automatic, $1)=no + _LT_AC_TAGVAR(module_cmds, $1)= + _LT_AC_TAGVAR(module_expsym_cmds, $1)= + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_AC_TAGVAR(include_expsyms, $1)= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + extract_expsyms_cmds= + # Just being paranoid about ensuring that cc_basename is set. + _LT_CC_BASENAME([$compiler]) + case $host_os in + cygwin* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + fi + ;; + + amigaos*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + interix3*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + linux*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + tmp_addflag= + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + esac + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + + if test $supports_anon_versioning = yes; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + $echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + fi + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + sunos4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no; then + runpath_var= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + fi + ;; + + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + else + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GCC" = yes; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + else + # We have old collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test "$aix_use_runtimelinking" = yes; then + shared_flag="$shared_flag "'${wl}-G' + fi + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds its shared libraries. + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + # see comment about different semantics on the GNU ld section + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + bsdi[[45]]*) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' + _LT_AC_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + darwin* | rhapsody*) + case $host_os in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup' + ;; + esac + fi + ;; + esac + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + if test "$GCC" = yes ; then + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + case $cc_basename in + xlc*) + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + ;; + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi + ;; + + dgux*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + freebsd1*) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | kfreebsd*-gnu | dragonfly*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + + hpux10*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + fi + ;; + + hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + openbsd*) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + else + case $host_os in + openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + ;; + esac + fi + ;; + + os2*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + solaris*) + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' + if test "$GCC" = yes; then + wlarc='${wl}' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + wlarc='' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine linker options so we + # cannot just pass the convience library names through + # without $wl, iff we do not link with $LD. + # Luckily, gcc supports the same syntax we need for Sun Studio. + # Supported since Solaris 2.6 (maybe 2.5.1?) + case $wlarc in + '') + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; + *) + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;; + esac ;; + esac + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*) + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We can NOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' + _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var='LD_RUN_PATH' + + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +# +# Do we need to explicitly link libc? +# +case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $_LT_AC_TAGVAR(archive_cmds, $1) in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + AC_MSG_CHECKING([whether -lc should be explicitly linked in]) + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if AC_TRY_EVAL(ac_compile) 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) + then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + else + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) + ;; + esac + fi + ;; +esac +])# AC_LIBTOOL_PROG_LD_SHLIBS + + +# _LT_AC_FILE_LTDLL_C +# ------------------- +# Be careful that the start marker always follows a newline. +AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ +# /* ltdll.c starts here */ +# #define WIN32_LEAN_AND_MEAN +# #include +# #undef WIN32_LEAN_AND_MEAN +# #include +# +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif +# +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ +# #include +# DECLARE_CYGWIN_DLL( DllMain ); +# #endif +# HINSTANCE __hDllInstance_base; +# +# BOOL APIENTRY +# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) +# { +# __hDllInstance_base = hInst; +# return TRUE; +# } +# /* ltdll.c ends here */ +])# _LT_AC_FILE_LTDLL_C + + +# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) +# --------------------------------- +AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) + + +# old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +# This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL]) + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) + +AC_DEFUN([LT_AC_PROG_RC], +[AC_CHECK_TOOL(RC, windres, no) +]) + +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_SED. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # +# LT_AC_PROG_SED +# -------------- +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +AC_DEFUN([LT_AC_PROG_SED], +[AC_MSG_CHECKING([for a sed that does not truncate output]) +AC_CACHE_VAL(lt_cv_path_SED, +[# Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f $lt_ac_sed && continue + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test $lt_ac_count -gt 10 && break + lt_ac_count=`expr $lt_ac_count + 1` + if test $lt_ac_count -gt $lt_ac_max; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +]) +SED=$lt_cv_path_SED +AC_MSG_RESULT([$SED]) +]) + +dnl -*- mode: autoconf -*- + +# serial 1 + +dnl Usage: +dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) +AC_DEFUN([GTK_DOC_CHECK], +[ + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + dnl for overriding the documentation installation directory + AC_ARG_WITH([html-dir], + AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, + [with_html_dir='${datadir}/gtk-doc/html']) + HTML_DIR="$with_html_dir" + AC_SUBST([HTML_DIR]) + + dnl enable/disable documentation building + AC_ARG_ENABLE([gtk-doc], + AS_HELP_STRING([--enable-gtk-doc], + [use gtk-doc to build documentation [[default=no]]]),, + [enable_gtk_doc=no]) + + if test x$enable_gtk_doc = xyes; then + ifelse([$1],[], + [PKG_CHECK_EXISTS([gtk-doc],, + AC_MSG_ERROR([gtk-doc not installed and --enable-gtk-doc requested]))], + [PKG_CHECK_EXISTS([gtk-doc >= $1],, + AC_MSG_ERROR([You need to have gtk-doc >= $1 installed to build gtk-doc]))]) + fi + + AC_MSG_CHECKING([whether to build gtk-doc documentation]) + AC_MSG_RESULT($enable_gtk_doc) + + AC_PATH_PROGS(GTKDOC_CHECK,gtkdoc-check,) + + AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) + AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) +]) + +# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# +# Copyright © 2004 Scott James Remnant . +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# PKG_PROG_PKG_CONFIG([MIN-VERSION]) +# ---------------------------------- +AC_DEFUN([PKG_PROG_PKG_CONFIG], +[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) +m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) +AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=m4_default([$1], [0.9.0]) + AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + PKG_CONFIG="" + fi + +fi[]dnl +])# PKG_PROG_PKG_CONFIG + +# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +# +# Check to see whether a particular set of modules exists. Similar +# to PKG_CHECK_MODULES(), but does not set variables or print errors. +# +# +# Similar to PKG_CHECK_MODULES, make sure that the first instance of +# this or PKG_CHECK_MODULES is called, or make sure to call +# PKG_CHECK_EXISTS manually +# -------------------------------------------------------------- +AC_DEFUN([PKG_CHECK_EXISTS], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +if test -n "$PKG_CONFIG" && \ + AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then + m4_ifval([$2], [$2], [:]) +m4_ifvaln([$3], [else + $3])dnl +fi]) + + +# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) +# --------------------------------------------- +m4_define([_PKG_CONFIG], +[if test -n "$PKG_CONFIG"; then + if test -n "$$1"; then + pkg_cv_[]$1="$$1" + else + PKG_CHECK_EXISTS([$3], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], + [pkg_failed=yes]) + fi +else + pkg_failed=untried +fi[]dnl +])# _PKG_CONFIG + +# _PKG_SHORT_ERRORS_SUPPORTED +# ----------------------------- +AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi[]dnl +])# _PKG_SHORT_ERRORS_SUPPORTED + + +# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +# [ACTION-IF-NOT-FOUND]) +# +# +# Note that if there is a possibility the first call to +# PKG_CHECK_MODULES might not happen, you should be sure to include an +# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac +# +# +# -------------------------------------------------------------- +AC_DEFUN([PKG_CHECK_MODULES], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl +AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl + +pkg_failed=no +AC_MSG_CHECKING([for $1]) + +_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) +_PKG_CONFIG([$1][_LIBS], [libs], [$2]) + +m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS +and $1[]_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details.]) + +if test $pkg_failed = yes; then + _PKG_SHORT_ERRORS_SUPPORTED + if test $_pkg_short_errors_supported = yes; then + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"` + else + $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` + fi + # Put the nasty error message in config.log where it belongs + echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD + + ifelse([$4], , [AC_MSG_ERROR(dnl +[Package requirements ($2) were not met: + +$$1_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +_PKG_TEXT +])], + [$4]) +elif test $pkg_failed = untried; then + ifelse([$4], , [AC_MSG_FAILURE(dnl +[The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +_PKG_TEXT + +To get pkg-config, see .])], + [$4]) +else + $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS + $1[]_LIBS=$pkg_cv_[]$1[]_LIBS + AC_MSG_RESULT([yes]) + ifelse([$3], , :, [$3]) +fi[]dnl +])# PKG_CHECK_MODULES + + +dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) +# serial 36 IT_PROG_INTLTOOL +AC_DEFUN([IT_PROG_INTLTOOL], +[AC_PREREQ([2.50])dnl + +case "$am__api_version" in + 1.[01234]) + AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) + ;; + *) + ;; +esac + +if test -n "$1"; then + AC_MSG_CHECKING([for intltool >= $1]) + + INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` + INTLTOOL_APPLIED_VERSION=`awk -F\" '/\\$VERSION / { print $ 2; }' ${ac_aux_dir}/intltool-update.in` + [INTLTOOL_APPLIED_VERSION_AS_INT=`awk -F\" '/\\$VERSION / { split($ 2, VERSION, "."); print VERSION[1] * 1000 + VERSION[2] * 100 + VERSION[3];}' ${ac_aux_dir}/intltool-update.in` + ] + AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) + test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || + AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) +fi + + INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' + INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' + INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + +AC_SUBST(INTLTOOL_DESKTOP_RULE) +AC_SUBST(INTLTOOL_DIRECTORY_RULE) +AC_SUBST(INTLTOOL_KEYS_RULE) +AC_SUBST(INTLTOOL_PROP_RULE) +AC_SUBST(INTLTOOL_OAF_RULE) +AC_SUBST(INTLTOOL_PONG_RULE) +AC_SUBST(INTLTOOL_SERVER_RULE) +AC_SUBST(INTLTOOL_SHEET_RULE) +AC_SUBST(INTLTOOL_SOUNDLIST_RULE) +AC_SUBST(INTLTOOL_UI_RULE) +AC_SUBST(INTLTOOL_XAM_RULE) +AC_SUBST(INTLTOOL_KBD_RULE) +AC_SUBST(INTLTOOL_XML_RULE) +AC_SUBST(INTLTOOL_XML_NOMERGE_RULE) +AC_SUBST(INTLTOOL_CAVES_RULE) +AC_SUBST(INTLTOOL_SCHEMAS_RULE) +AC_SUBST(INTLTOOL_THEME_RULE) +AC_SUBST(INTLTOOL_SERVICE_RULE) +AC_SUBST(INTLTOOL_POLICY_RULE) + +# Use the tools built into the package, not the ones that are installed. +AC_SUBST(INTLTOOL_EXTRACT, '$(top_builddir)/intltool-extract') +AC_SUBST(INTLTOOL_MERGE, '$(top_builddir)/intltool-merge') +AC_SUBST(INTLTOOL_UPDATE, '$(top_builddir)/intltool-update') + +AC_PATH_PROG(INTLTOOL_PERL, perl) +if test -z "$INTLTOOL_PERL"; then + AC_MSG_ERROR([perl not found; required for intltool]) +fi +if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then + AC_MSG_ERROR([perl 5.x required for intltool]) +fi +if test "x$2" != "xno-xml"; then + AC_MSG_CHECKING([for XML::Parser]) + if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then + AC_MSG_RESULT([ok]) + else + AC_MSG_ERROR([XML::Parser perl module is required for intltool]) + fi +fi + +# Substitute ALL_LINGUAS so we can use it in po/Makefile +AC_SUBST(ALL_LINGUAS) + +# Set DATADIRNAME correctly if it is not set yet +# (copied from glib-gettext.m4) +if test -z "$DATADIRNAME"; then + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[]], + [[extern int _nl_msg_cat_cntr; + return _nl_msg_cat_cntr]])], + [DATADIRNAME=share], + [case $host in + *-*-solaris*) + dnl On Solaris, if bind_textdomain_codeset is in libc, + dnl GNU format message catalog is always supported, + dnl since both are added to the libc all together. + dnl Hence, we'd like to go with DATADIRNAME=share + dnl in this case. + AC_CHECK_FUNC(bind_textdomain_codeset, + [DATADIRNAME=share], [DATADIRNAME=lib]) + ;; + *) + [DATADIRNAME=lib] + ;; + esac]) +fi +AC_SUBST(DATADIRNAME) + +IT_PO_SUBDIR([po]) + +dnl The following is very similar to +dnl +dnl AC_CONFIG_FILES([intltool-extract intltool-merge intltool-update]) +dnl +dnl with the following slight differences: +dnl - the *.in files are in ac_aux_dir, +dnl - if the file haven't changed upon reconfigure, it's not touched, +dnl - the evaluation of the third parameter enables a hack which computes +dnl the actual value of $libdir, +dnl - the user sees "executing intltool commands", instead of +dnl "creating intltool-extract" and such. +dnl +dnl Nothing crucial here, and we could use AC_CONFIG_FILES, if there were +dnl a reason for it. + +AC_CONFIG_COMMANDS([intltool], [ + +for file in intltool-extract intltool-merge intltool-update; do + sed -e "s|@INTLTOOL_EXTRACT@|`pwd`/intltool-extract|g" \ + -e "s|@INTLTOOL_LIBDIR@|${INTLTOOL_LIBDIR}|g" \ + -e "s|@INTLTOOL_PERL@|${INTLTOOL_PERL}|g" \ + < ${ac_aux_dir}/${file}.in > ${file}.out + if cmp -s ${file} ${file}.out 2>/dev/null; then + rm -f ${file}.out + else + mv -f ${file}.out ${file} + fi + chmod ugo+x ${file} + chmod u+w ${file} +done + +], +[INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir='${ac_aux_dir}' +prefix="$prefix" exec_prefix="$exec_prefix" INTLTOOL_LIBDIR="$libdir" +INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}']) + +]) + + +# IT_PO_SUBDIR(DIRNAME) +# --------------------- +# All po subdirs have to be declared with this macro; the subdir "po" is +# declared by IT_PROG_INTLTOOL. +# +AC_DEFUN([IT_PO_SUBDIR], +[AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. +dnl +dnl The following CONFIG_COMMANDS should be exetuted at the very end +dnl of config.status. +AC_CONFIG_COMMANDS_PRE([ + AC_CONFIG_COMMANDS([$1/stamp-it], [ + rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" + >"$1/stamp-it.tmp" + [sed '/^#/d + s/^[[].*] *// + /^[ ]*$/d + '"s|^| $ac_top_srcdir/|" \ + "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" + ] + if test ! -f "$1/Makefile"; then + AC_MSG_ERROR([$1/Makefile is not ready.]) + fi + mv "$1/Makefile" "$1/Makefile.tmp" + [sed '/^POTFILES =/,/[^\\]$/ { + /^POTFILES =/!d + r $1/POTFILES + } + ' "$1/Makefile.tmp" >"$1/Makefile"] + rm -f "$1/Makefile.tmp" + mv "$1/stamp-it.tmp" "$1/stamp-it" + ]) +])dnl +]) + + +# deprecated macros +AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) +# A hint is needed for aclocal from Automake <= 1.9.4: +# AC_DEFUN([AC_PROG_INTLTOOL], ...) + + +# Copyright (C) 1995-2002 Free Software Foundation, Inc. +# Copyright (C) 2001-2003,2004 Red Hat, Inc. +# +# This file is free software, distributed under the terms of the GNU +# General Public License. As a special exception to the GNU General +# Public License, this file may be distributed as part of a program +# that contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# This file can be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU Public License +# but which still want to provide support for the GNU gettext functionality. +# +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995, 1996 +# +# Modified to never use included libintl. +# Owen Taylor , 12/15/1998 +# +# Major rework to remove unused code +# Owen Taylor , 12/11/2002 +# +# Added better handling of ALL_LINGUAS from GNU gettext version +# written by Bruno Haible, Owen Taylor 5/30/3002 +# +# Modified to require ngettext +# Matthias Clasen 08/06/2004 +# +# We need this here as well, since someone might use autoconf-2.5x +# to configure GLib then an older version to configure a package +# using AM_GLIB_GNU_GETTEXT +AC_PREREQ(2.53) + +dnl +dnl We go to great lengths to make sure that aclocal won't +dnl try to pull in the installed version of these macros +dnl when running aclocal in the glib directory. +dnl +m4_copy([AC_DEFUN],[glib_DEFUN]) +m4_copy([AC_REQUIRE],[glib_REQUIRE]) +dnl +dnl At the end, if we're not within glib, we'll define the public +dnl definitions in terms of our private definitions. +dnl + +# GLIB_LC_MESSAGES +#-------------------- +glib_DEFUN([GLIB_LC_MESSAGES], + [AC_CHECK_HEADERS([locale.h]) + if test $ac_cv_header_locale_h = yes; then + AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, + [AC_TRY_LINK([#include ], [return LC_MESSAGES], + am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) + if test $am_cv_val_LC_MESSAGES = yes; then + AC_DEFINE(HAVE_LC_MESSAGES, 1, + [Define if your file defines LC_MESSAGES.]) + fi + fi]) + +# GLIB_PATH_PROG_WITH_TEST +#---------------------------- +dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], +[# Extract the first word of "$2", so it can be a program name with args. +set dummy $2; ac_word=[$]2 +AC_MSG_CHECKING([for $ac_word]) +AC_CACHE_VAL(ac_cv_path_$1, +[case "[$]$1" in + /*) + ac_cv_path_$1="[$]$1" # Let the user override the test with a path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in ifelse([$5], , $PATH, [$5]); do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if [$3]; then + ac_cv_path_$1="$ac_dir/$ac_word" + break + fi + fi + done + IFS="$ac_save_ifs" +dnl If no 4th arg is given, leave the cache variable unset, +dnl so AC_PATH_PROGS will keep looking. +ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" +])dnl + ;; +esac])dnl +$1="$ac_cv_path_$1" +if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + +# GLIB_WITH_NLS +#----------------- +glib_DEFUN([GLIB_WITH_NLS], + dnl NLS is obligatory + [AC_REQUIRE([AC_CANONICAL_HOST])dnl + USE_NLS=yes + AC_SUBST(USE_NLS) + + gt_cv_have_gettext=no + + CATOBJEXT=NONE + XGETTEXT=: + INTLLIBS= + + AC_CHECK_HEADER(libintl.h, + [gt_cv_func_dgettext_libintl="no" + libintl_extra_libs="" + + # + # First check in libc + # + AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, + [AC_TRY_LINK([ +#include +], + [return !ngettext ("","", 1)], + gt_cv_func_ngettext_libc=yes, + gt_cv_func_ngettext_libc=no) + ]) + + if test "$gt_cv_func_ngettext_libc" = "yes" ; then + AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, + [AC_TRY_LINK([ +#include +], + [return !dgettext ("","")], + gt_cv_func_dgettext_libc=yes, + gt_cv_func_dgettext_libc=no) + ]) + fi + + if test "$gt_cv_func_ngettext_libc" = "yes" ; then + AC_CHECK_FUNCS(bind_textdomain_codeset) + fi + + # + # If we don't have everything we want, check in libintl + # + if test "$gt_cv_func_dgettext_libc" != "yes" \ + || test "$gt_cv_func_ngettext_libc" != "yes" \ + || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then + + AC_CHECK_LIB(intl, bindtextdomain, + [AC_CHECK_LIB(intl, ngettext, + [AC_CHECK_LIB(intl, dgettext, + gt_cv_func_dgettext_libintl=yes)])]) + + if test "$gt_cv_func_dgettext_libintl" != "yes" ; then + AC_MSG_CHECKING([if -liconv is needed to use gettext]) + AC_MSG_RESULT([]) + AC_CHECK_LIB(intl, ngettext, + [AC_CHECK_LIB(intl, dcgettext, + [gt_cv_func_dgettext_libintl=yes + libintl_extra_libs=-liconv], + :,-liconv)], + :,-liconv) + fi + + # + # If we found libintl, then check in it for bind_textdomain_codeset(); + # we'll prefer libc if neither have bind_textdomain_codeset(), + # and both have dgettext and ngettext + # + if test "$gt_cv_func_dgettext_libintl" = "yes" ; then + glib_save_LIBS="$LIBS" + LIBS="$LIBS -lintl $libintl_extra_libs" + unset ac_cv_func_bind_textdomain_codeset + AC_CHECK_FUNCS(bind_textdomain_codeset) + LIBS="$glib_save_LIBS" + + if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then + gt_cv_func_dgettext_libc=no + else + if test "$gt_cv_func_dgettext_libc" = "yes" \ + && test "$gt_cv_func_ngettext_libc" = "yes"; then + gt_cv_func_dgettext_libintl=no + fi + fi + fi + fi + + if test "$gt_cv_func_dgettext_libc" = "yes" \ + || test "$gt_cv_func_dgettext_libintl" = "yes"; then + gt_cv_have_gettext=yes + fi + + if test "$gt_cv_func_dgettext_libintl" = "yes"; then + INTLLIBS="-lintl $libintl_extra_libs" + fi + + if test "$gt_cv_have_gettext" = "yes"; then + AC_DEFINE(HAVE_GETTEXT,1, + [Define if the GNU gettext() function is already present or preinstalled.]) + GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl + if test "$MSGFMT" != "no"; then + glib_save_LIBS="$LIBS" + LIBS="$LIBS $INTLLIBS" + AC_CHECK_FUNCS(dcgettext) + MSGFMT_OPTS= + AC_MSG_CHECKING([if msgfmt accepts -c]) + GLIB_RUN_PROG([msgfmt -c -o /dev/null],[ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: test 1.0\n" +"PO-Revision-Date: 2007-02-15 12:01+0100\n" +"Last-Translator: test \n" +"Language-Team: C \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) + AC_SUBST(MSGFMT_OPTS) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; + return _nl_msg_cat_cntr], + [CATOBJEXT=.gmo + DATADIRNAME=share], + [case $host in + *-*-solaris*) + dnl On Solaris, if bind_textdomain_codeset is in libc, + dnl GNU format message catalog is always supported, + dnl since both are added to the libc all together. + dnl Hence, we'd like to go with DATADIRNAME=share and + dnl and CATOBJEXT=.gmo in this case. + AC_CHECK_FUNC(bind_textdomain_codeset, + [CATOBJEXT=.gmo + DATADIRNAME=share], + [CATOBJEXT=.mo + DATADIRNAME=lib]) + ;; + *) + CATOBJEXT=.mo + DATADIRNAME=lib + ;; + esac]) + LIBS="$glib_save_LIBS" + INSTOBJEXT=.mo + else + gt_cv_have_gettext=no + fi + fi + ]) + + if test "$gt_cv_have_gettext" = "yes" ; then + AC_DEFINE(ENABLE_NLS, 1, + [always defined to indicate that i18n is enabled]) + fi + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is not GNU xgettext we define it as : so that the + dnl Makefiles still can work. + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then + : ; + else + AC_MSG_RESULT( + [found xgettext program is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + + # We need to process the po/ directory. + POSUB=po + + AC_OUTPUT_COMMANDS( + [case "$CONFIG_FILES" in *po/Makefile.in*) + sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile + esac]) + + dnl These rules are solely for the distribution goal. While doing this + dnl we only have to keep exactly one list of the available catalogs + dnl in configure.in. + for lang in $ALL_LINGUAS; do + GMOFILES="$GMOFILES $lang.gmo" + POFILES="$POFILES $lang.po" + done + + dnl Make all variables we use known to autoconf. + AC_SUBST(CATALOGS) + AC_SUBST(CATOBJEXT) + AC_SUBST(DATADIRNAME) + AC_SUBST(GMOFILES) + AC_SUBST(INSTOBJEXT) + AC_SUBST(INTLLIBS) + AC_SUBST(PO_IN_DATADIR_TRUE) + AC_SUBST(PO_IN_DATADIR_FALSE) + AC_SUBST(POFILES) + AC_SUBST(POSUB) + ]) + +# AM_GLIB_GNU_GETTEXT +# ------------------- +# Do checks necessary for use of gettext. If a suitable implementation +# of gettext is found in either in libintl or in the C library, +# it will set INTLLIBS to the libraries needed for use of gettext +# and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable +# gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() +# on various variables needed by the Makefile.in.in installed by +# glib-gettextize. +dnl +glib_DEFUN([GLIB_GNU_GETTEXT], + [AC_REQUIRE([AC_PROG_CC])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + + GLIB_LC_MESSAGES + GLIB_WITH_NLS + + if test "$gt_cv_have_gettext" = "yes"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for presentlang in $ALL_LINGUAS; do + useit=no + if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then + desiredlanguages="$LINGUAS" + else + desiredlanguages="$ALL_LINGUAS" + fi + for desiredlang in $desiredlanguages; do + # Use the presentlang catalog if desiredlang is + # a. equal to presentlang, or + # b. a variant of presentlang (because in this case, + # presentlang can be used as a fallback for messages + # which are not translated in the desiredlang catalog). + case "$desiredlang" in + "$presentlang"*) useit=yes;; + esac + done + if test $useit = yes; then + NEW_LINGUAS="$NEW_LINGUAS $presentlang" + fi + done + LINGUAS=$NEW_LINGUAS + AC_MSG_RESULT($LINGUAS) + fi + + dnl Construct list of names of catalog files to be constructed. + if test -n "$LINGUAS"; then + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done + fi + fi + + dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly + dnl find the mkinstalldirs script in another subdir but ($top_srcdir). + dnl Try to locate is. + MKINSTALLDIRS= + if test -n "$ac_aux_dir"; then + MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" + fi + if test -z "$MKINSTALLDIRS"; then + MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" + fi + AC_SUBST(MKINSTALLDIRS) + + dnl Generate list of files to be processed by xgettext which will + dnl be included in po/Makefile. + test -d po || mkdir po + if test "x$srcdir" != "x."; then + if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then + posrcprefix="$srcdir/" + else + posrcprefix="../$srcdir/" + fi + else + posrcprefix="../" + fi + rm -f po/POTFILES + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ + < $srcdir/po/POTFILES.in > po/POTFILES + ]) + +# AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) +# ------------------------------- +# Define VARIABLE to the location where catalog files will +# be installed by po/Makefile. +glib_DEFUN([GLIB_DEFINE_LOCALEDIR], +[glib_REQUIRE([GLIB_GNU_GETTEXT])dnl +glib_save_prefix="$prefix" +glib_save_exec_prefix="$exec_prefix" +glib_save_datarootdir="$datarootdir" +test "x$prefix" = xNONE && prefix=$ac_default_prefix +test "x$exec_prefix" = xNONE && exec_prefix=$prefix +datarootdir=`eval echo "${datarootdir}"` +if test "x$CATOBJEXT" = "x.mo" ; then + localedir=`eval echo "${libdir}/locale"` +else + localedir=`eval echo "${datadir}/locale"` +fi +prefix="$glib_save_prefix" +exec_prefix="$glib_save_exec_prefix" +datarootdir="$glib_save_datarootdir" +AC_DEFINE_UNQUOTED($1, "$localedir", + [Define the location where the catalogs will be installed]) +]) + +dnl +dnl Now the definitions that aclocal will find +dnl +ifdef(glib_configure_in,[],[ +AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) +AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) +])dnl + +# GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) +# +# Create a temporary file with TEST-FILE as its contents and pass the +# file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with +# 0 and perform ACTION-IF-FAIL for any other exit status. +AC_DEFUN([GLIB_RUN_PROG], +[cat >conftest.foo <<_ACEOF +$2 +_ACEOF +if AC_RUN_LOG([$1 conftest.foo]); then + m4_ifval([$3], [$3], [:]) +m4_ifvaln([$4], [else $4])dnl +echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD +sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD +fi]) + + diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..7cc2b17 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,165 @@ +#!/bin/sh +# Run this to generate all the initial makefiles, etc. + +srcdir=`dirname $0` +test -z "$srcdir" && srcdir=. + +ORIGDIR=`pwd` +cd $srcdir +PROJECT="GConf D-Bus" +TEST_TYPE=-f +FILE=gconf/gconf.h + +DIE=0 + +(autoconf --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have autoconf installed to compile $PROJECT." + echo "Download the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" + DIE=1 +} + +AUTOMAKE=automake-1.7 +ACLOCAL=aclocal-1.7 + +($AUTOMAKE --version) < /dev/null > /dev/null 2>&1 || { + AUTOMAKE=automake + ACLOCAL=aclocal +} + +($AUTOMAKE --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have $AUTOMAKE installed to compile $PROJECT." + echo "Download the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" + DIE=1 +} + +(grep "^AM_PROG_LIBTOOL" configure.in >/dev/null) && { + (libtool --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "**Error**: You must have \`libtool' installed to compile $PROJECT." + echo "Get ftp://ftp.gnu.org/pub/gnu/libtool-1.2d.tar.gz" + echo "(or a newer version if it is available)" + DIE=1 + } +} + +grep "^AM_GLIB_GNU_GETTEXT" configure.in >/dev/null && { + grep "sed.*POTFILES" $srcdir/configure.in >/dev/null || \ + (glib-gettextize --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "**Error**: You must have \`glib' installed to compile $PROJECT." + DIE=1 + } +} + +(grep "^GTK_DOC_CHECK" configure.in >/dev/null) && { + (gtkdocize --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "**Error**: You must have \`gtk-doc' installed to compile $PROJECT." + DIE=1 + } +} + +if test "$DIE" -eq 1; then + exit 1 +fi + +test $TEST_TYPE $FILE || { + echo "You must run this script in the top-level $PROJECT directory" + exit 1 +} + +if test -z "$*"; then + echo "I am going to run ./configure with no arguments - if you wish " + echo "to pass any to it, please specify them on the $0 command line." +fi + +case $CC in +*xlc | *xlc\ * | *lcc | *lcc\ *) am_opt=--include-deps;; +esac + +for coin in ./configure.in +do + dr=`dirname $coin` + if test -f $dr/NO-AUTO-GEN; then + echo skipping $dr -- flagged as no auto-gen + else + echo processing $dr + macrodirs=`sed -n -e 's,AM_ACLOCAL_INCLUDE(\(.*\)),\1,gp' < $coin` + ( cd $dr + aclocalinclude="$ACLOCAL_FLAGS" + for k in $macrodirs; do + if test -d $k; then + aclocalinclude="$aclocalinclude -I $k" + ##else + ## echo "**Warning**: No such directory \`$k'. Ignored." + fi + done + if grep "^AM_GNU_GETTEXT" configure.in >/dev/null; then + if grep "sed.*POTFILES" configure.in >/dev/null; then + : do nothing -- we still have an old unmodified configure.in + else + echo "Creating $dr/aclocal.m4 ..." + test -r $dr/aclocal.m4 || touch $dr/aclocal.m4 + echo "Running gettextize... Ignore non-fatal messages." + echo "no" | gettextize --force --copy + echo "Making $dr/aclocal.m4 writable ..." + test -r $dr/aclocal.m4 && chmod u+w $dr/aclocal.m4 + fi + fi + if grep "^AM_GNOME_GETTEXT" configure.in >/dev/null; then + echo "Creating $dr/aclocal.m4 ..." + test -r $dr/aclocal.m4 || touch $dr/aclocal.m4 + echo "Running gettextize... Ignore non-fatal messages." + echo "no" | gettextize --force --copy + echo "Making $dr/aclocal.m4 writable ..." + test -r $dr/aclocal.m4 && chmod u+w $dr/aclocal.m4 + fi + if grep "^AM_GLIB_GNU_GETTEXT" configure.in >/dev/null; then + echo "Creating $dr/aclocal.m4 ..." + test -r $dr/aclocal.m4 || touch $dr/aclocal.m4 + echo "Running gettextize... Ignore non-fatal messages." + echo "no" | glib-gettextize --force --copy + echo "Making $dr/aclocal.m4 writable ..." + test -r $dr/aclocal.m4 && chmod u+w $dr/aclocal.m4 + fi + if grep "^AM_PROG_LIBTOOL" configure.in >/dev/null; then + echo "Running libtoolize..." + libtoolize --force --copy + fi + if grep "^GTK_DOC_CHECK" configure.in >/dev/null; then + echo "Running gtkdocize..." + gtkdocize + fi + if grep "^IT_PROG_INTLTOOL" configure.in >/dev/null; then + echo "Running intltoolize..." + intltoolize --force --copy + fi + echo "Running $ACLOCAL $aclocalinclude ..." + $ACLOCAL $aclocalinclude + if grep "^AM_CONFIG_HEADER" configure.in >/dev/null; then + echo "Running autoheader..." + autoheader + fi + echo "Running $AUTOMAKE --gnu $am_opt ..." + $AUTOMAKE --add-missing --gnu $am_opt + echo "Running autoconf ..." + autoconf + ) + fi +done + +conf_flags="--enable-maintainer-mode --enable-compile-warnings" #--enable-iso-c + +cd "$ORIGDIR" + +if test x$NOCONFIGURE = x; then + echo Running $srcdir/configure $conf_flags "$@" ... + $srcdir/configure $conf_flags "$@" \ + && echo Now type \`make\' to compile $PROJECT || exit 1 +else + echo Skipping configure process. +fi diff --git a/backends/Makefile.am b/backends/Makefile.am new file mode 100644 index 0000000..137c95c --- /dev/null +++ b/backends/Makefile.am @@ -0,0 +1,71 @@ +INCLUDES= -I$(top_srcdir) -I$(top_builddir) -I$(top_builddir)/gconf \ + $(DEPENDENT_WITH_XML_CFLAGS) \ + -DGCONF_ENABLE_INTERNALS=1 -DG_LOG_DOMAIN=\"GConf-Backends\" + +backenddir = $(pkglibdir)/$(MAJOR_VERSION) + +if LDAP_SUPPORT +EVOLDAP_BACKEND = libgconfbackend-evoldap.la +endif + +backend_LTLIBRARIES = libgconfbackend-xml.la libgconfbackend-oldxml.la $(EVOLDAP_BACKEND) + +noinst_LTLIBRARIES = libgconfbackend-oldxml-noinst.la + +libgconfbackend_oldxml_noinst_la_SOURCES = \ + xml-cache.h \ + xml-cache.c \ + xml-dir.h \ + xml-dir.c \ + xml-entry.h \ + xml-entry.c \ + xml-backend.c +libgconfbackend_oldxml_noinst_la_LIBADD = $(DEPENDENT_WITH_XML_LIBS) \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ + $(INTLLIBS) + +libgconfbackend_oldxml_la_SOURCES = + +libgconfbackend_oldxml_la_LDFLAGS = -avoid-version -module -no-undefined +libgconfbackend_oldxml_la_LIBADD = libgconfbackend-oldxml-noinst.la + +libgconfbackend_xml_la_SOURCES = \ + markup-backend.c \ + markup-tree.h \ + markup-tree.c + +libgconfbackend_xml_la_LDFLAGS = -avoid-version -module -no-undefined +libgconfbackend_xml_la_LIBADD = $(DEPENDENT_LIBS) $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la $(INTLLIBS) + +noinst_PROGRAMS = xml-test + +xml_test_SOURCES= xml-test.c +xml_test_LDADD = \ + $(DEPENDENT_WITH_XML_LIBS) \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ + libgconfbackend-oldxml-noinst.la + +bin_PROGRAMS = gconf-merge-tree +gconf_merge_tree_SOURCES = gconf-merge-tree.c +gconf_merge_tree_LDADD = $(DEPENDENT_LIBS) $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la + +if LDAP_SUPPORT +libgconfbackend_evoldap_la_SOURCES = evoldap-backend.c +libgconfbackend_evoldap_la_LDFLAGS = -avoid-version -module -no-undefined +libgconfbackend_evoldap_la_LIBADD = \ + $(DEPENDENT_WITH_XML_LIBS) \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ + $(INTLLIBS) \ + $(LDAP_LIBS) + +backendconfdir = $(sysconfdir)/gconf/2 +backendconf_DATA = evoldap.conf + +schemadir = $(pkgdatadir)/schema +schema_DATA = evoldap.schema +endif + +EXTRA_DIST = \ + README.evoldap \ + evoldap.conf \ + evoldap.schema diff --git a/backends/Makefile.in b/backends/Makefile.in new file mode 100644 index 0000000..c71d2b6 --- /dev/null +++ b/backends/Makefile.in @@ -0,0 +1,749 @@ +# Makefile.in generated by automake 1.7.9 from Makefile.am. +# @configure_input@ + +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +# Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +top_builddir = .. + +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = @INSTALL@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +host_triplet = @host@ +ACLOCAL = @ACLOCAL@ +ALL_LINGUAS = @ALL_LINGUAS@ +AMDEP_FALSE = @AMDEP_FALSE@ +AMDEP_TRUE = @AMDEP_TRUE@ +AMTAR = @AMTAR@ +AR = @AR@ +AS = @AS@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CATALOGS = @CATALOGS@ +CATOBJEXT = @CATOBJEXT@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DATADIRNAME = @DATADIRNAME@ +DBUS_SERVICE_DIR = @DBUS_SERVICE_DIR@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEPENDENT_CFLAGS = @DEPENDENT_CFLAGS@ +DEPENDENT_LIBS = @DEPENDENT_LIBS@ +DEPENDENT_WITH_GTK_CFLAGS = @DEPENDENT_WITH_GTK_CFLAGS@ +DEPENDENT_WITH_GTK_LIBS = @DEPENDENT_WITH_GTK_LIBS@ +DEPENDENT_WITH_XML_AND_GTK_CFLAGS = @DEPENDENT_WITH_XML_AND_GTK_CFLAGS@ +DEPENDENT_WITH_XML_AND_GTK_LIBS = @DEPENDENT_WITH_XML_AND_GTK_LIBS@ +DEPENDENT_WITH_XML_CFLAGS = @DEPENDENT_WITH_XML_CFLAGS@ +DEPENDENT_WITH_XML_LIBS = @DEPENDENT_WITH_XML_LIBS@ +DLLTOOL = @DLLTOOL@ +ECHO = @ECHO@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +ENABLE_GTK_DOC_FALSE = @ENABLE_GTK_DOC_FALSE@ +ENABLE_GTK_DOC_TRUE = @ENABLE_GTK_DOC_TRUE@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +GCONF_AGE = @GCONF_AGE@ +GCONF_CURRENT = @GCONF_CURRENT@ +GCONF_REVISION = @GCONF_REVISION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ +GMOFILES = @GMOFILES@ +GMSGFMT = @GMSGFMT@ +GREP = @GREP@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@ +GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@ +GTK_FALSE = @GTK_FALSE@ +GTK_TRUE = @GTK_TRUE@ +HTML_DIR = @HTML_DIR@ +INDENT = @INDENT@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INSTOBJEXT = @INSTOBJEXT@ +INTLLIBS = @INTLLIBS@ +INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ +INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ +INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ +INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ +INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ +INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ +INTLTOOL_MERGE = @INTLTOOL_MERGE@ +INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ +INTLTOOL_PERL = @INTLTOOL_PERL@ +INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@ +INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ +INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ +INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ +INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ +INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ +INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ +INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ +INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ +INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ +INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ +INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ +INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ +INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ +LDAP_CFLAGS = @LDAP_CFLAGS@ +LDAP_LIBS = @LDAP_LIBS@ +LDAP_SUPPORT_FALSE = @LDAP_SUPPORT_FALSE@ +LDAP_SUPPORT_TRUE = @LDAP_SUPPORT_TRUE@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ +MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ +MAJOR_VERSION = @MAJOR_VERSION@ +MAKEINFO = @MAKEINFO@ +MKINSTALLDIRS = @MKINSTALLDIRS@ +MSGFMT = @MSGFMT@ +MSGFMT_OPTS = @MSGFMT_OPTS@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OS_WIN32_FALSE = @OS_WIN32_FALSE@ +OS_WIN32_TRUE = @OS_WIN32_TRUE@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ +PKG_CONFIG = @PKG_CONFIG@ +POFILES = @POFILES@ +POSUB = @POSUB@ +PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ +PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ +PTHREADS_FALSE = @PTHREADS_FALSE@ +PTHREADS_TRUE = @PTHREADS_TRUE@ +RANLIB = @RANLIB@ +REBUILD = @REBUILD@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +USE_SYSTEM_BUS_FALSE = @USE_SYSTEM_BUS_FALSE@ +USE_SYSTEM_BUS_TRUE = @USE_SYSTEM_BUS_TRUE@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +absolute_top_srcdir = @absolute_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_F77 = @ac_ct_F77@ +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ +am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ +am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gconflocaledir = @gconflocaledir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +sysconfdir = @sysconfdir@ +sysconfsubdir = @sysconfsubdir@ +sysgconfdir = @sysgconfdir@ +target_alias = @target_alias@ +INCLUDES = -I$(top_srcdir) -I$(top_builddir) -I$(top_builddir)/gconf \ + $(DEPENDENT_WITH_XML_CFLAGS) \ + -DGCONF_ENABLE_INTERNALS=1 -DG_LOG_DOMAIN=\"GConf-Backends\" + + +backenddir = $(pkglibdir)/$(MAJOR_VERSION) + +@LDAP_SUPPORT_TRUE@EVOLDAP_BACKEND = libgconfbackend-evoldap.la + +backend_LTLIBRARIES = libgconfbackend-xml.la libgconfbackend-oldxml.la $(EVOLDAP_BACKEND) + +noinst_LTLIBRARIES = libgconfbackend-oldxml-noinst.la + +libgconfbackend_oldxml_noinst_la_SOURCES = \ + xml-cache.h \ + xml-cache.c \ + xml-dir.h \ + xml-dir.c \ + xml-entry.h \ + xml-entry.c \ + xml-backend.c + +libgconfbackend_oldxml_noinst_la_LIBADD = $(DEPENDENT_WITH_XML_LIBS) \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ + $(INTLLIBS) + + +libgconfbackend_oldxml_la_SOURCES = + +libgconfbackend_oldxml_la_LDFLAGS = -avoid-version -module -no-undefined +libgconfbackend_oldxml_la_LIBADD = libgconfbackend-oldxml-noinst.la + +libgconfbackend_xml_la_SOURCES = \ + markup-backend.c \ + markup-tree.h \ + markup-tree.c + + +libgconfbackend_xml_la_LDFLAGS = -avoid-version -module -no-undefined +libgconfbackend_xml_la_LIBADD = $(DEPENDENT_LIBS) $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la $(INTLLIBS) + +noinst_PROGRAMS = xml-test + +xml_test_SOURCES = xml-test.c +xml_test_LDADD = \ + $(DEPENDENT_WITH_XML_LIBS) \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ + libgconfbackend-oldxml-noinst.la + + +bin_PROGRAMS = gconf-merge-tree +gconf_merge_tree_SOURCES = gconf-merge-tree.c +gconf_merge_tree_LDADD = $(DEPENDENT_LIBS) $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la + +@LDAP_SUPPORT_TRUE@libgconfbackend_evoldap_la_SOURCES = evoldap-backend.c +@LDAP_SUPPORT_TRUE@libgconfbackend_evoldap_la_LDFLAGS = -avoid-version -module -no-undefined +@LDAP_SUPPORT_TRUE@libgconfbackend_evoldap_la_LIBADD = \ +@LDAP_SUPPORT_TRUE@ $(DEPENDENT_WITH_XML_LIBS) \ +@LDAP_SUPPORT_TRUE@ $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ +@LDAP_SUPPORT_TRUE@ $(INTLLIBS) \ +@LDAP_SUPPORT_TRUE@ $(LDAP_LIBS) + + +@LDAP_SUPPORT_TRUE@backendconfdir = $(sysconfdir)/gconf/2 +@LDAP_SUPPORT_TRUE@backendconf_DATA = evoldap.conf + +@LDAP_SUPPORT_TRUE@schemadir = $(pkgdatadir)/schema +@LDAP_SUPPORT_TRUE@schema_DATA = evoldap.schema + +EXTRA_DIST = \ + README.evoldap \ + evoldap.conf \ + evoldap.schema + +subdir = backends +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +LTLIBRARIES = $(backend_LTLIBRARIES) $(noinst_LTLIBRARIES) + +@LDAP_SUPPORT_TRUE@libgconfbackend_evoldap_la_DEPENDENCIES = \ +@LDAP_SUPPORT_TRUE@ $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la +@LDAP_SUPPORT_FALSE@libgconfbackend_evoldap_la_DEPENDENCIES = +am__libgconfbackend_evoldap_la_SOURCES_DIST = evoldap-backend.c +@LDAP_SUPPORT_TRUE@am_libgconfbackend_evoldap_la_OBJECTS = \ +@LDAP_SUPPORT_TRUE@ evoldap-backend.lo +libgconfbackend_evoldap_la_OBJECTS = \ + $(am_libgconfbackend_evoldap_la_OBJECTS) +libgconfbackend_oldxml_noinst_la_LDFLAGS = +libgconfbackend_oldxml_noinst_la_DEPENDENCIES = \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la +am_libgconfbackend_oldxml_noinst_la_OBJECTS = xml-cache.lo xml-dir.lo \ + xml-entry.lo xml-backend.lo +libgconfbackend_oldxml_noinst_la_OBJECTS = \ + $(am_libgconfbackend_oldxml_noinst_la_OBJECTS) +libgconfbackend_oldxml_la_DEPENDENCIES = \ + libgconfbackend-oldxml-noinst.la +am_libgconfbackend_oldxml_la_OBJECTS = +libgconfbackend_oldxml_la_OBJECTS = \ + $(am_libgconfbackend_oldxml_la_OBJECTS) +libgconfbackend_xml_la_DEPENDENCIES = \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la +am_libgconfbackend_xml_la_OBJECTS = markup-backend.lo markup-tree.lo +libgconfbackend_xml_la_OBJECTS = $(am_libgconfbackend_xml_la_OBJECTS) +bin_PROGRAMS = gconf-merge-tree$(EXEEXT) +noinst_PROGRAMS = xml-test$(EXEEXT) +PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) + +am_gconf_merge_tree_OBJECTS = gconf-merge-tree.$(OBJEXT) +gconf_merge_tree_OBJECTS = $(am_gconf_merge_tree_OBJECTS) +gconf_merge_tree_DEPENDENCIES = \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la +gconf_merge_tree_LDFLAGS = +am_xml_test_OBJECTS = xml-test.$(OBJEXT) +xml_test_OBJECTS = $(am_xml_test_OBJECTS) +xml_test_DEPENDENCIES = \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ + libgconfbackend-oldxml-noinst.la +xml_test_LDFLAGS = + +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/evoldap-backend.Plo \ +@AMDEP_TRUE@ ./$(DEPDIR)/gconf-merge-tree.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/markup-backend.Plo \ +@AMDEP_TRUE@ ./$(DEPDIR)/markup-tree.Plo \ +@AMDEP_TRUE@ ./$(DEPDIR)/xml-backend.Plo \ +@AMDEP_TRUE@ ./$(DEPDIR)/xml-cache.Plo ./$(DEPDIR)/xml-dir.Plo \ +@AMDEP_TRUE@ ./$(DEPDIR)/xml-entry.Plo ./$(DEPDIR)/xml-test.Po +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \ + $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DIST_SOURCES = $(am__libgconfbackend_evoldap_la_SOURCES_DIST) \ + $(libgconfbackend_oldxml_noinst_la_SOURCES) \ + $(libgconfbackend_oldxml_la_SOURCES) \ + $(libgconfbackend_xml_la_SOURCES) $(gconf_merge_tree_SOURCES) \ + $(xml_test_SOURCES) +DATA = $(backendconf_DATA) $(schema_DATA) + +DIST_COMMON = $(srcdir)/Makefile.in Makefile.am +SOURCES = $(libgconfbackend_evoldap_la_SOURCES) $(libgconfbackend_oldxml_noinst_la_SOURCES) $(libgconfbackend_oldxml_la_SOURCES) $(libgconfbackend_xml_la_SOURCES) $(gconf_merge_tree_SOURCES) $(xml_test_SOURCES) + +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu backends/Makefile +Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) +backendLTLIBRARIES_INSTALL = $(INSTALL) +install-backendLTLIBRARIES: $(backend_LTLIBRARIES) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(backenddir) + @list='$(backend_LTLIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " $(LIBTOOL) --mode=install $(backendLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(backenddir)/$$f"; \ + $(LIBTOOL) --mode=install $(backendLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(backenddir)/$$f; \ + else :; fi; \ + done + +uninstall-backendLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(backend_LTLIBRARIES)'; for p in $$list; do \ + p="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(backenddir)/$$p"; \ + $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(backenddir)/$$p; \ + done + +clean-backendLTLIBRARIES: + -test -z "$(backend_LTLIBRARIES)" || rm -f $(backend_LTLIBRARIES) + @list='$(backend_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" = "$$p" && dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" = "$$p" && dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libgconfbackend-evoldap.la: $(libgconfbackend_evoldap_la_OBJECTS) $(libgconfbackend_evoldap_la_DEPENDENCIES) + $(LINK) -rpath $(backenddir) $(libgconfbackend_evoldap_la_LDFLAGS) $(libgconfbackend_evoldap_la_OBJECTS) $(libgconfbackend_evoldap_la_LIBADD) $(LIBS) +libgconfbackend-oldxml-noinst.la: $(libgconfbackend_oldxml_noinst_la_OBJECTS) $(libgconfbackend_oldxml_noinst_la_DEPENDENCIES) + $(LINK) $(libgconfbackend_oldxml_noinst_la_LDFLAGS) $(libgconfbackend_oldxml_noinst_la_OBJECTS) $(libgconfbackend_oldxml_noinst_la_LIBADD) $(LIBS) +libgconfbackend-oldxml.la: $(libgconfbackend_oldxml_la_OBJECTS) $(libgconfbackend_oldxml_la_DEPENDENCIES) + $(LINK) -rpath $(backenddir) $(libgconfbackend_oldxml_la_LDFLAGS) $(libgconfbackend_oldxml_la_OBJECTS) $(libgconfbackend_oldxml_la_LIBADD) $(LIBS) +libgconfbackend-xml.la: $(libgconfbackend_xml_la_OBJECTS) $(libgconfbackend_xml_la_DEPENDENCIES) + $(LINK) -rpath $(backenddir) $(libgconfbackend_xml_la_LDFLAGS) $(libgconfbackend_xml_la_OBJECTS) $(libgconfbackend_xml_la_LIBADD) $(LIBS) +binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(bindir) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + if test -f $$p \ + || test -f $$p1 \ + ; then \ + f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f || exit 1; \ + else :; fi; \ + done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " rm -f $(DESTDIR)$(bindir)/$$f"; \ + rm -f $(DESTDIR)$(bindir)/$$f; \ + done + +clean-binPROGRAMS: + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f $$p $$f"; \ + rm -f $$p $$f ; \ + done + +clean-noinstPROGRAMS: + @list='$(noinst_PROGRAMS)'; for p in $$list; do \ + f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f $$p $$f"; \ + rm -f $$p $$f ; \ + done +gconf-merge-tree$(EXEEXT): $(gconf_merge_tree_OBJECTS) $(gconf_merge_tree_DEPENDENCIES) + @rm -f gconf-merge-tree$(EXEEXT) + $(LINK) $(gconf_merge_tree_LDFLAGS) $(gconf_merge_tree_OBJECTS) $(gconf_merge_tree_LDADD) $(LIBS) +xml-test$(EXEEXT): $(xml_test_OBJECTS) $(xml_test_DEPENDENCIES) + @rm -f xml-test$(EXEEXT) + $(LINK) $(xml_test_LDFLAGS) $(xml_test_OBJECTS) $(xml_test_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) core *.core + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evoldap-backend.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gconf-merge-tree.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/markup-backend.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/markup-tree.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xml-backend.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xml-cache.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xml-dir.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xml-entry.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xml-test.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \ +@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \ +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \ +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ +@am__fastdepCC_TRUE@ fi +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$< + +.c.obj: +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \ +@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \ +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \ +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ +@am__fastdepCC_TRUE@ fi +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi` + +.c.lo: +@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \ +@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \ +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \ +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ +@am__fastdepCC_TRUE@ fi +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool +uninstall-info-am: +backendconfDATA_INSTALL = $(INSTALL_DATA) +install-backendconfDATA: $(backendconf_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(backendconfdir) + @list='$(backendconf_DATA)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " $(backendconfDATA_INSTALL) $$d$$p $(DESTDIR)$(backendconfdir)/$$f"; \ + $(backendconfDATA_INSTALL) $$d$$p $(DESTDIR)$(backendconfdir)/$$f; \ + done + +uninstall-backendconfDATA: + @$(NORMAL_UNINSTALL) + @list='$(backendconf_DATA)'; for p in $$list; do \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " rm -f $(DESTDIR)$(backendconfdir)/$$f"; \ + rm -f $(DESTDIR)$(backendconfdir)/$$f; \ + done +schemaDATA_INSTALL = $(INSTALL_DATA) +install-schemaDATA: $(schema_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(schemadir) + @list='$(schema_DATA)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " $(schemaDATA_INSTALL) $$d$$p $(DESTDIR)$(schemadir)/$$f"; \ + $(schemaDATA_INSTALL) $$d$$p $(DESTDIR)$(schemadir)/$$f; \ + done + +uninstall-schemaDATA: + @$(NORMAL_UNINSTALL) + @list='$(schema_DATA)'; for p in $$list; do \ + f="`echo $$p | sed -e 's|^.*/||'`"; \ + echo " rm -f $(DESTDIR)$(schemadir)/$$f"; \ + rm -f $(DESTDIR)$(schemadir)/$$f; \ + done + +ETAGS = etags +ETAGSFLAGS = + +CTAGS = ctags +CTAGSFLAGS = + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + +top_distdir = .. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ + list='$(DISTFILES)'; for file in $$list; do \ + case $$file in \ + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + esac; \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ + if test -d $$d/$$file; then \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) + +installdirs: + $(mkinstalldirs) $(DESTDIR)$(backenddir) $(DESTDIR)$(bindir) $(DESTDIR)$(backendconfdir) $(DESTDIR)$(schemadir) +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-backendLTLIBRARIES clean-binPROGRAMS clean-generic \ + clean-libtool clean-noinstLTLIBRARIES clean-noinstPROGRAMS \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-libtool distclean-tags + +dvi: dvi-am + +dvi-am: + +info: info-am + +info-am: + +install-data-am: install-backendLTLIBRARIES install-backendconfDATA \ + install-schemaDATA + +install-exec-am: install-binPROGRAMS + +install-info: install-info-am + +install-man: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-backendLTLIBRARIES uninstall-backendconfDATA \ + uninstall-binPROGRAMS uninstall-info-am uninstall-schemaDATA + +.PHONY: CTAGS GTAGS all all-am check check-am clean \ + clean-backendLTLIBRARIES clean-binPROGRAMS clean-generic \ + clean-libtool clean-noinstLTLIBRARIES clean-noinstPROGRAMS \ + ctags distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am info \ + info-am install install-am install-backendLTLIBRARIES \ + install-backendconfDATA install-binPROGRAMS install-data \ + install-data-am install-exec install-exec-am install-info \ + install-info-am install-man install-schemaDATA install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-backendLTLIBRARIES \ + uninstall-backendconfDATA uninstall-binPROGRAMS \ + uninstall-info-am uninstall-schemaDATA + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/backends/README.evoldap b/backends/README.evoldap new file mode 100644 index 0000000..8a34aa1 --- /dev/null +++ b/backends/README.evoldap @@ -0,0 +1,195 @@ +Evolution Data Sources LDAP Backend For GConf +============================================= + + This is a special-purpose backend for GConf which enables default +mail accounts, addressbooks and calendars for Evolution to be +configured using each user's LDAP entry. By setting each user's mail +address, incoming/outgoing mail server addresses and +addressbook/calendar addresses in the user's LDAP entry, Evolution +will be automatically configured to use these addresses. + +Getting it Going +================ + + Once installed, you first need to point the backend at the +appropriate LDAP server. Edit /etc/gconf/2/evoldap.conf: + +--- + + + ldap.blaa.com + + ou=people,dc=blaa,dc=com + +--- + + should be pointed at your LDAP server, should usually +be left blank (it defaults to 389, the standard port for LDAP) and + should point to the location in LDAP where your user entries +are stored. + + You then need to store the mail account and addressbook/calendar +information in your user's LDAP entries. Using the default template +(see below for details on the template) you need to install the LDAP +schemas from in your LDAP server evoldap.schema. + + How you install the custom schema depends entirely on the LDAP +server you're using, but with the openldap server, you can just edit +/etc/openldap/slapd.conf and add + + include /etc/openldap/schema/evoldap.schema + + somewhere near the top of the file. You then install the .schema +file in /etc/openldap/schema and restarted slapd. + + Once the schema is installed, you need to modify the LDAP entries to +add the "evolutionMailAccount", "evolutionAddressbookSource", +"evolutionCalendarSource" and "evolutionTasksSource" objectClasses and +set the cn, mail, evolutionMailSourceURI, evolutionMailTransportURI, +evolutionAddressbookURI, evolutionCalendarURI and evolutionTasksURI +attributes. You can use any method you like to modify the LDAP entries +e.g. a graphical LDAP editor like "gq" or a slapd.replog script with +ldapmodify: + +--- +ldapmodify -x -W -D cn=Manager,dc=blaa,dc=com -h ldap.blaa.com < + + + Mark McLoughlin + markmc@blaa.com + + + + + + imap://markmc@mail.blaa.com/;use_ssl=always + + + smtp://mail.blaa.com + + + + + + + + + + + + + + + + + +] +--- + + Finally, in order to make GConf pull from this configuration source, +you need to add it to the GConf path file in /etc/gconf/2/path by +adding the configuration source address - +"evoldap:readonly:/etc/gconf/2/evoldap.conf" - after the user's +configuration source - e.g. + +--- +# Give users a default storage location, ~/.gconf +xml:readwrite:$(HOME)/.gconf + +# Pull default Evolution account from LDAP +evoldap:readonly:/etc/gconf/2/evoldap.conf +--- + +Getting More Complex +==================== + + Although this default method of setting things up should work for +most people, the configuration file does give you a fair number of +options if e.g. you didn't want to (or couldn't) add the custom +evolutionMailAccount schema to your LDAP server or if you wanted to +have multiple default accounts per user. + + The default template looks like: + +--- +