From: Jinkun Jang Date: Tue, 12 Mar 2013 16:46:53 +0000 (+0900) Subject: Tizen 2.1 base X-Git-Tag: 2.1b_release^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fheads%2Ftizen_2.1;p=platform%2Fcore%2Fbase%2Fgconf-dbus.git Tizen 2.1 base --- 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: + +--- +