From eeab887dcde5a2c4311318d13c741efccc93eda6 Mon Sep 17 00:00:00 2001 From: "jk7744.park" Date: Sat, 24 Oct 2015 16:00:09 +0900 Subject: [PATCH] tizen 2.4 release --- .gbs.conf | 3 + .gitignore | 12 + COPYING | 339 ++++++++++++++++ ChangeLog.pre-git | 860 ++++++++++++++++++++++++++++++++++++++++ Makefile.am | 19 + autogen.sh | 19 + configure.ac | 23 ++ doc-build/Makefile.am | 12 + doc-build/README | 9 + doc-build/gnome-doc-common.in | 49 +++ doc-build/omf.make | 65 +++ doc-build/xmldocs.make | 101 +++++ doc/usage.txt | 40 ++ gnome-common.doap | 28 ++ macros2/Makefile.am | 13 + macros2/README.cvs-commits | 13 + macros2/gnome-autogen.sh | 437 ++++++++++++++++++++ macros2/gnome-code-coverage.m4 | 164 ++++++++ macros2/gnome-common.m4 | 55 +++ macros2/gnome-compiler-flags.m4 | 177 +++++++++ packaging/gnome-common.changes | 6 + packaging/gnome-common.manifest | 5 + packaging/gnome-common.spec | 46 +++ 23 files changed, 2495 insertions(+) create mode 100644 .gbs.conf create mode 100644 .gitignore create mode 100644 COPYING create mode 100644 ChangeLog.pre-git create mode 100644 Makefile.am create mode 100755 autogen.sh create mode 100644 configure.ac create mode 100644 doc-build/Makefile.am create mode 100644 doc-build/README create mode 100644 doc-build/gnome-doc-common.in create mode 100644 doc-build/omf.make create mode 100644 doc-build/xmldocs.make create mode 100644 doc/usage.txt create mode 100644 gnome-common.doap create mode 100644 macros2/Makefile.am create mode 100644 macros2/README.cvs-commits create mode 100644 macros2/gnome-autogen.sh create mode 100644 macros2/gnome-code-coverage.m4 create mode 100644 macros2/gnome-common.m4 create mode 100644 macros2/gnome-compiler-flags.m4 create mode 100644 packaging/gnome-common.changes create mode 100644 packaging/gnome-common.manifest create mode 100644 packaging/gnome-common.spec diff --git a/.gbs.conf b/.gbs.conf new file mode 100644 index 0000000..fa9fdc5 --- /dev/null +++ b/.gbs.conf @@ -0,0 +1,3 @@ +[general] +upstream_branch = upstream +upstream_tag = ${upstreamversion} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cb76bb7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +ChangeLog +/aclocal.m4 +/autom4te.cache +/config.log +/config.status +/configure +doc-build/gnome-doc-common +/gnome-common.spec +/install-sh +/missing +Makefile +Makefile.in diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/COPYING @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, 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 software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, 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 redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +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 give any other recipients of the Program a copy of this License +along with the Program. + +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 Program or any portion +of it, thus forming a work based on the Program, 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) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +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 Program, 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 Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) 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; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, 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 executable. 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. + +If distribution of executable or 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 counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program 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. + + 5. 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 Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program 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. + + 7. 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 Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program 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 Program. + +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. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program 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. + + 9. The Free Software Foundation may publish revised and/or new versions +of the 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 Program +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 Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, 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 + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "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 PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. 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 PROGRAM 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 PROGRAM (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 PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. 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 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. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/ChangeLog.pre-git b/ChangeLog.pre-git new file mode 100644 index 0000000..03ce5d2 --- /dev/null +++ b/ChangeLog.pre-git @@ -0,0 +1,860 @@ +2009-03-28 Rodney Dawes + + * macros2/gnome-autogen.sh: + Only pass --enable-maintainer-mode when AM_MAINTAINER_MODE is present + + FIxes #577037 + +2008-11-25 Vincent Untz + + * macros2/gnome-common.m4: add -DWNCK_DISABLE_DEPRECATED + -DLIBSOUP_DISABLE_DEPRECATED to DISABLE_DEPRECATED + +2008-09-22 Christian Persch + + === Release 2.24.0 === + + * Makefile.am: + * configure.in: Version 2.24.0. + +2007-12-21 Sven Herzberg + + Reviewed by: Christian Persch + + Abort when the first dependency fails. Fixes bug 469115. + + * macros2/gnome-autogen.sh: don't use the DIE variable anymore and + abort on the first dependency failure + +2007-06-08 Christian Persch + + * macros2/gnome-autogen.sh: Don't print extra newlines when /bin/sh + isn't bash. Bug #130346. + +2007-06-08 Christian Persch + + * macros2/gnome-autogen.sh: Don't print warning about missing + arguments if we're not going to run configure. Bug #445584, patch by + "Cygwin Ports maintainer" (yselkowitz%40users.sourceforge.net). + +2007-06-06 Christian Persch + + * doc-build/gnome-doc-common.in: Add datarootdir substitution. + +2007-04-09 Christian Persch + + * configure.in: Bump version to 2.19.0. + +2007-04-09 Christian Persch + + === Release 2.18.0 === + + * autogen.sh: Use automake 1.9. + * configure.in: Bump version. Dist as .tar.bz2. + +2007-01-29 Mariano Suárez-Alvarez + + Bug 377185 – Hide cmp output in autogen.sh + + * macros2/gnome-autogen.sh: Do not show cmp's output. + +2007-01-29 Christian Persch + + * Add -Wno-portability to automake invocation. Bug #529120, patch by Philip + Van Hoof. + +2007-01-29 Christian Persch + + * macros2/gnome-compiler-flags.m4: + Fix --enable-cxx-warnings checks. Bug #360693. + +2007-01-12 Shaun McCance + + * macros2/gnome-autogen.sh: + - Fix for #377175 by skipping NO-AUTO-GEN directories, by Christian Persch + +2007-01-11 Christian Persch + + * macros2/gnome-autogen.sh: Default to AM 1.9. Bug #323868, patch by + Christian Kirbach. + +2007-01-11 Christian Persch + + * macros2/gnome-common.m4: Define more deprecation symbols. + Bug #343441. + +2006-12-01 Kjartan Maraas + + * macros2/gnome-autogen.sh: Make automake 1.10 work too. + +2006-10-20 Bastien Nocera + + * macros2/gnome-autogen.sh: exit from the check_m4macros function as + soon as we have detected some undefined macros, rather than leaving + the developer wondering what the problem is + +2006-05-10 Kjartan Maraas + + * gnome-common.spec.in: Fix a typo. + +2006-03-10 James Henstridge + + * macros2/gnome-autogen.sh (configure_files): skip directories + called "_darcs", similar to the handling of other VCS metadata + dirs. Fixes bug #321860. + +2005-10-24 James Henstridge + + * macros2/gnome-autogen.sh (configure_files): update find + expression to not exclude ".." from search. Fixes non-srcdir + builds (where $srcdir might be ".."). Fixes bug #319496. + +2005-09-20 Stepan Kasal + + * macros2/gnome-autogen.sh: Prefer newer versions of Automake. + From bug #305641. + +2005-09-20 James Henstridge + + * configure.in: bump version to 2.12.0 + + * macros2/gnome-autogen.sh (configure_files): when searching for + configure.in files, skip directories starting with a dot. This + avoids Bzr, Quilt and Subversion bookkeeping directories among + others. Fixes bug #311951. + +2005-08-17 Stepan Kasal + + * macros2/gnome-autogen.sh (add_to_cm_macrodirs): New function, + prevents duplicates in $cm_macrodirs. + (check_m4macros): Use it. Read the dirlist file, if it is supported + by the version of Automake actually in use. + +2005-08-17 Stepan Kasal + + * macros2/gnome-autogen.sh (version_check): Set $variable_VERSION + to the actual version number of the tool. + +2005-08-17 James Henstridge + + * macros2/gnome-autogen.sh: pass --force to gnome-doc-prepare to + match other tools. Fixes bug #311775. + + * macros2/gnome-autogen.sh: don't use syntax that non-GNU greps + don't understand. Fixes bug #313531. + +2005-08-16 James Henstridge + + * macros2/gnome-autogen.sh: add checks for gnome-common macro + names, and call require_m4macro for the appropriate names. This + can help detect $ACLOCAL_FLAGS problems earlier. Addresses bug + #312125. + +2005-07-25 James Henstridge + + * configure.in: bump release number. + +2005-07-19 Shaun McCance + + * macros2/gnome-autogen.sh: + - Bumped up the default required version of gnome-doc-utils + +2005-07-18 Christian Persch + + * macros2/gnome-autogen.sh: + + When configure.{in,ac} contains GNOME_DOC_INIT, actually call + gnome-doc-prepare. + +2005-03-21 Sven Herzberg + + * macros2/gnome-autogen.sh: added support for the gnome-doc-utils + +2005-03-15 Stepan Kasal + + * macros2/ChangeLog: Removed; the contents merged into the main one. + +2005-02-11 James Henstridge + + * macros2/gnome-autogen.sh: preserve COPYING and INSTALL files over + the "automake --force" call. Fixes bug #161916. + +2005-01-22 Rodney Dawes + + * macros2/gnome-autogen.sh: Fix the (AC|IT)_PROG_INTLTOOL support + for both places where we grep for it + (version_check): If we are checking for automake = 1.4, then make + sure we error out with that error when we find it, and not >= 1.4 + since we don't actually check for >= 1.4 + + Fixes #129903 + +2005-01-03 James Henstridge + + * macros2/gnome-common.m4 (GNOME_COMMON_INIT): add some code to + add the directory given to AC_CONFIG_MACRO_DIR to ACLOCAL_FLAGS. + + * doc-build/xmldocs.make (clean-local-doc): add rule to clean up + copied entities if srcdir!=builddir. + +2004-11-24 Mariano Suárez-Alvarez + + * macros2/gnome-autogen.sh: grep wants basic regexps, not extended + ones: fix the regular expression for INTLTOOL. + +2004-11-24 Rodney Dawes + + * macros2/gnome-autogen.sh: Add support for IT_PROG_INTLTOOL which + deprecates AC_PROG_INTLTOOL + +2004-11-09 Jordi Mallach + + * macros2/gnome-autogen.sh: Workaround automake-1.4 limitations by + just using --force if $REQUIRED_AUTOMAKE_VERSION != 1.4. This avoids + Louie's wrath too. :) + +2004-11-09 Jordi Mallach + + * macros2/gnome-autogen.sh: Call all the bootstrap programs + (libtoolize, intltoolize, gtkdocize, automake) using --force and + --copy consistently. + +2004-10-28 James Henstridge + + * macros2/gnome-autogen.sh: get rid of the code that modified PATH, + ACLOCAL_FLAGS and LD_LIBRARY_PATH based on $GNOME2_PATH, since + this was broken. It could cause configure tests to pass, when the + subsequent build would fail due to path problems. For more + details, see bug #140210. + + * macros2/gnome-autogen.sh: if the directory is read only, skip it. + This helps in cases where a directory from a failed "make distcheck" + is lying around. Should fix bug #136093. + + * macros2/gnome-autogen.sh (m4dir): fix up the AC_CONFIG_MACRO_DIR + check to work with sub-package configure.in's. + +2004-10-27 James Henstridge + + * macros2/gnome-autogen.sh (ACLOCAL): if AC_CONFIG_MACRO_DIR() is + used in configure.ac, pass that directory to aclocal. + Run libtoolize if the configure.ac file calls LT_INIT (the new + name for AC_PROG_LIBTOOL in libtool-2.0). + +2004-10-06 James Henstridge + + * doc-build/omf.make (uninstall-local-omf): use $(DESTDIR) in + uninstall rule. This is needed to allow packages to distcheck + with newer versions of automake. + +2004-09-14 James Henstridge + + * configure.in: bump version number to 2.8.0 + +2004-08-30 James Henstridge + + * macros2/gnome-autogen.sh: fix up error message when a required + M4 file isn't found. Fixes bug #147417. + + * macros2/gnome-autogen.sh: Revert Rodney's changes, since + glib-gettextize has been fixed on the HEAD and 2.4 branches. + +2004-08-16 Kjartan Maraas + + * macros2/gnome-autogen.sh: Add some foo to handle automake-1.9.x too. + +2004-06-10 Rodney Dawes + + * macros2/gnome-autogen.sh: Add code to check for mkinstalldirs in + the shared automake files directory, and copy it in if we are using + AM_GLIB_GNU_GETTEXT + + Fixes #144069 + +2004-05-26 James Henstridge + + * macros2/gnome-common.m4 (GNOME_COMMON_INIT): since caching is + turned off in all recent Autoconfs, it doesn't make sense to use + it. Change implementation to instead make sure ${ACLOCAL_FLAGS} + gets passed to aclocal when called from the makefile. + + * macros2/Makefile.am: alter installation so that it puts the + macros directly into $(datadir)/aclocal instead of + $(datadir)/aclocal/gnome2-macros + + * autogen.sh (REQUIRED_AUTOMAKE_VERSION): use a modern version of + automake. + + * macros2/gnome-compiler-flags.m4: move from compiler-flags.m4 to + reduce chance of collisions; some small cleanups. + + * macros2/gnome-autogen.sh: move from autogen.sh + + * Makefile.am (SUBDIRS): don't build bin/ and macros/ directories. + + * configure.in: don't create makefiles for bin/ and macros/ + directories. + Since we don't actually build the support/ directory (since 2001), + remove the matching parts from the configure script. + +2004-05-13 James Henstridge + + * gnome-common.spec.in: simplify and update spec file. + +2004-05-13 James Henstridge + + * macros2/autogen.sh: Change the order the various tools are called + in to match that of autoconf's autoupdate tool. See bug 138584. + +2004-02-27 Sven Herzberg + + * macros2/autogen.sh: fix #135557 + +2004-02-17 Mark McLoughlin + + * doc-build/xmldocs.make: fix one last occurrence of + not using $(DESTDIR). + +2004-01-31 Malcolm Tredinnick + + * macros2/autogen.sh: Use automake-1.8 if available. Patch from + alexander.winston@comcast.net (Alexander Winston). Bug #132966. + +2004-01-25 Malcolm Tredinnick + + * macros2/autogen.sh: Deprecate the use of GNOME2_DIR and allow the + use of GNOME2_PATH (bug #130516). + +2004-01-02 Malcolm Tredinnick + + * macros2/autogen.sh: Run intltoolize after automake, since + intltoolize wants mkinstalldirs now. + Should fix bugs #130309 and #130366. + +2003-12-13 Malcolm Tredinnick + + * macros2/autogen.sh: Change the use of head to be 'head -n -1', + since the GNU version of head appears to have changed behaviour + between version 5.0 and 5.0.9 somewhere. This should be portable + across all versions now. Fixed bug #128867. + +2003-12-08 Rodney Dawes + + * macros2/autogen.sh: Update automake checks to check incremental + versions in the correct order, Fixes #128691 + +2003-11-19 Malcolm Tredinnick + + * macros2/autogen.sh: Replace use of -or in a find command with -o. + Makes things work for people with less functional versions of + find. Fixes bug #127354 reported by Rolf Sponsel. + +2003-11-03 + + * macros2/gnome-common.m4: Removed ENABLE_WERROR and changed name + to GNOME_MAINTAINER_MODE_DEFINES. + +2003-11-01 Malcolm Tredinnick + + * macros2/autogen.sh: Make version checking work, as pointed out by + Michael H Schimek in bug #125818. + +2003-10-31 + + * macros2/gnome-common.m4: Changed name of new macro to + AM_MAINTAINER_MODE_DEFINES and added definition for ENABLE_WERROR. + +2003-10-31 + + * macros2/gnome-common.m4: New macro to disable deprecated + functions and widgets when maintainer mode is on. + +=== gnome-common 2.4.0 === + +2003-10-02 Malcolm Tredinnick + + * doc-build/Makefile.am: Distribute README in place of the + non-existent ChangeLog. Doh! + + * autogen.sh: Use the GNOME 2 autogen.sh script by default. + * configure.in: Version number bumped. + +2003-08-23 Marco Pesenti Gritti + + * macros2/compiler-flags.m4: Define WARN_CXXFLAGS instead of + overwriting CXXFLAGS (like WARN_FLAGS). + +2003-08-10 Malcolm Tredinnick + + * macros2/autogen.sh: Show the version found for the various build + tools like automake, autoconf, libtool, etc. + Patch from Steve Chaplin (bug #119533). + +2003-08-05 Malcolm Tredinnick + + * macros2/compiler-flags.m4: Continuing to try and get the flags + passed to g++ in GNOME_CXX_WARNINGS correct. Based on our best + attempts, the current set should work for the widest range of + g++ versions (see bug #118987 for the discussion). + +2003-08-03 Malcolm Tredinnick + + * macros2/compiler-flags.m4: Simplify GNOME_CXX_WARNINGS. + Fixes bug #118987. + +2003-07-28 Malcolm Tredinnick + + * macros2/compiler-flags.m4: Default setting in the + GNOME_COMPILE_WARNINGS macro is now "yes". This fixes bug + #118479 (another good bit of debugging from Steve Chaplin). + +2003-07-20 Malcolm Tredinnick + + * macros2/compiler-flags.m4: Remove some redundant options as + suggested by Steve Chaplin in bug #115475. The warnings list looks + simpler now, but is no less functional. + +2003-07-15 Malcolm Tredinnick + + * macros2/autogen.sh: Fix a typo when reporting "forbidden" m4 macros. + +2003-07-04 Frederic Crozat + + * macros2/compiler-flags.m4: don't use -Wsign-promo, it is + C++ only and causes warnings with gcc 3.3 when used on C. + +2003-06-24 Marco Pesenti Gritti + + * macros2/autogen.sh: + + Remove --enable-compile-warnings from the default arguments + passed to configure because it break GNOME_COMPILE_WARNINGS + macro. + +2003-06-20 Malcolm Tredinnick + + * macros2/autogen.sh: Fix some strangeness in the gnome-doc-common test. + +2003-06-19 Gustavo J. A. M. Carneiro + + * macros2/autogen.sh: Inserted missing "cd $dirname" to effectively + process subdirectories, since all it was doing was to process the + toplevel dir multiple times. + + [Editor's note: also reported with patch by Elijah Newren in bug + #115481.] + +2003-05-24 Malcolm Tredinnick + + * MAINTAINERS: Put myself in as maintainer. + + * configure.in: Bump the version number to 2.3.0 + + * configure.in, Makefile.am, macros2/autogen.sh, doc-build/*: + Add in the infrastructure to allow user documentatin to be built + from some common files. This will not affect existing packages. + The changes required to use this are given in doc-build/README. + +2003-05-21 Malcolm Tredinnick + + * macros2/autogen.sh: Ignore {arch} subdirectories. Fixes bug #113327. + +2003-05-04 Malcolm Tredinnick + + * macros2/autogen.sh: + - Make this portable to Bourne-like shells. Fixes the problems + pointed out by Morten Welinder in bug #110177. + - Extend the check_m4macros() function to handle Cygwin + environments. Fixes bug #110947. + +2003-04-10 Ross Burton + + * macros2/autogen.sh: Fix a typo in the glib-gettext checks. + +2003-03-07 Malcolm Tredinnick + + * macros2/autogen.sh: Replace PACKAGE with PKG_NAME, since PKG_NAME + is what is defined by the various applications' autogen.sh. Also, + call autopoint rather than gettextize when appropriate (when + AM_GNU_GETTEXT_VERSION is present). + +2003-02-27 Mark McLoughlin + + * macros2/compiler-flags.m4: fix mixed up order of arguments to + AC_ARG_ENABLE that made --enable-compile-warnings not work + as expected. + +2003-02-26 Frederic Crozat + + * macros2/autogen.sh: set WANT_AUTOCONF_2_5 variable to tell + Mandrake autoconf wrapper we want to check if autoconf 2.5x is here.. + +2003-02-24 James Henstridge + + * macros2/autogen.sh (forbid_m4macro): add function to forbid m4 + macros. Forbid gnome-cxx-check.m4, to try and catch setups where + stale macros are left on the system. + +2003-02-21 James Henstridge + + * macros2/autogen.sh (version_check): if $variable is set, then + assume it is correct and skip the version check. + (autoconf): check for autoconf2.50 first, so we don't trigger + Debian's sometimes broken autoconf version sniffer. + +2003-02-19 James Henstridge + + * macros2/Makefile.am (GNOME2_MACROS): remove check-utmp.m4 (copied + it to libzvt, which is the only thing using it). + + * macros2/gnome-deprecated-macros.m4(GNOME_CHECK_CXX): AC_REQUIRE + does not work within AU_DEFUN, so change to a simple call to + AC_PROG_CXX. + +2003-02-18 James Henstridge + + * macros2/autogen.sh (topdir): check to see if + gnome-deprecated-macros.m4 ended up in aclocal.m4, and warn if so. + + * macros2/gnome-platform.m4: kill this too (with a deprecation warning). + + * macros2/gnome-cxx-check.m4: move to gnome-deprecated-macros.m4 + + * macros2/gnome-pkgconfig.m4: remove, and add a deprecation warning + in its place. + + * macros2/gnome-x-checks.m4: remove, and add an AU_DEFUN in its place + telling people not to use it. + + * macros2/linger.m4: removed outright. + + * macros2/gnome-common.m4: remove GNOME_GTKDOC_CHECK, deprecated in + favour of GTK_DOC_CHECK. + + * macros2/gnome-gettext.m4: remove file (people should be using + gettextize or glib-gettextize). + + * macros2/gnome-deprecated-macros.m4: new file to hold deprecated + macros. + +2003-02-18 Jody Goldberg + + * configure.in: Don't depend on a file that James just deleted + +2003-02-14 Kalpesh Shah + + * macros2/check-utmp.m4: initialize UTMP structure properly. + Fixes Bug#93774. + Patch reviewed by Andersca + +2002-12-12 Jody Goldberg + + * macros2/gnome-common.m4 (GNOME_DEBUG_CHECK): now that autoconf-2.52 + is a prereq for things the build broke on the use of + AC_DEFINE(GNOME_ENABLE_DEBUG) + without the additional arguments. + +2002-09-23 Bastien Nocera + + * macros2/autogen.sh: exit if aclocal, autoheader, automake or + autoconf fails to run without warnings. Usually compilation would + fail afterwards with funky errors. + This is more anal than the version committed to the gnome-2-0 branch. + +2002-08-18 Havoc Pennington + + * macros2/autogen.sh: hardcode aclocal-1.4/automake-1.4 so that users + with both automake 1.6 and 1.4 installed get the right automake. Means + compilation from CVS will now require the latest automake 1.4 + release, or manually creating symlinks called "automake-1.4" and + "aclocal-1.4" + +Mon Aug 12 23:49:41 2002 HideToshi Tajima + + * macros2/autogen.sh: use portable -o instead of GNU-ish -or for + find test. + +2002-08-10 Miles Lane + + * macros2/autogen.sh: fix the "find" test so that the presence of + configure.in is reporteded. Each expression requires its own + -print flag. + +2002-08-10 Sebastian Rittau + + * macros2/autogen.sh: support for configure.ac + +2002-05-10 Chema Celorio + + * macros2/compiler-flags.m4: fix GNOME_COMPILE_WARNINGS to work when + a parameter is passed. The arguments to AC_ARG_ENABLE were swapped. + +2002-04-01 jacob berkman + + * macros2/gnome-x-checks.m4 (GNOME2_X_CHECKS): kill bogus clearing + of LDFLAGS + +2001-12-11 Anders Carlsson + + * configure.in: Up to 1.2.4. + +2001-10-29 jacob berkman + + * macros2/autogen.sh: add check for glib-gettextize + +2001-10-15 Bastien Nocera + + * macros2/Makefile.am, curses.m4: added curses.m4 (copied from + the gnome1 macros. this file is needed to gdialog + +2001-10-02 Darin Adler + + * macros2/autogen.sh: Complete intltool support. + +2001-10-02 Darin Adler + + * macros2/autogen.sh: Add intltool support. + +2001-09-20 Glynn Foster + + * macros2/gnome-x-checks.m4: replaced + GNOME_PKGCONFIG_CHECK_MODULES with PKG_CHECK_MODULES + +2001-09-04 Frank Belew + + * macros2/autogen.sh: change gettext regexp to work with non-gnu grep + +2001-08-18 Darin Adler + + * macros2/autogen.sh: Don't ask people to ignore xml-i18n-tools + messages. + +2001-08-04 Darin Adler + + * macros2/autogen.sh: Update gettext logic to allow anything that + starts with AM and ends with gettext. This makes it work with + AM_GLIB_GNU_GETTEXT, which is what libbonobo is now using. + +2001-08-03 Martin Baulig + + * macros2/gnome-pkgconfig.m4 (GNOME_PKGCONFIG_CHECK_VERSION): Removed. + (GNOME_PKGCONFIG_CHECK_CFLAG): Removed. + (GNOME_PKGCONFIG_ACLOCALFLAGS): Removed. + (GNOME_PKGCONFIG_CHECK_OPTIONAL_MODULES): Removed. + (GNOME_PKGCONFIG_CHECK_MODULES): Removed. + (GNOME_CHECK_PKGCONFIG): Use $PKG_CONFIG --atleast-pkgconfig-version + to check for the pkg-config version. + +2001-08-02 Michael Meeks + + * Version 1.2.3 + +2001-07-26 Darin Adler + + * configure.in: Point to the new home of pkgconfig at + www.freedesktop.org instead of "sourceforce.net" [sic]. + +2001-07-26 Darin Adler + + * doc/usage.txt: Point to the new home of pkgconfig at + www.freedesktop.org. + +2001-07-20 Martin Baulig + + * macros2/gnome-pkgconfig.m4: Require pkg-config 0.8.0. + +2001-07-12 Darin Adler + + * configure.in: Remove AC_ARG_PROGRAM, because AM_INIT_AUTOMAKE + already takes care of that. + +2001-06-29 Laszlo Peter + + * macros2/gnome-pkgconfig.m4 (GNOME_PKGCONFIG_CHECK_VERSION): Fix + the regexp to process all 6 version numbers. + +2001-06-22 Elliot Lee + + * macros2/gnome-gettext.m4: N'sync with the gnome1 version, + bye bye buggies. + +2001-06-13 Martin Baulig + + * macros2/gnome-pkgconfig.m4 (GNOME_CHECK_PKGCONFIG): Require + pkg-config 0.7.0 and fix download URL. + + * macros2/gnome-platform.m4: Require pkgconfig on the GNOME 2.0 + platform. + +2001-06-01 Peter Williams + + * macros2/autogen.sh: s,Gnome,$PKG_NAME,g + +2001-05-22 Darin Adler + + * hack-macros/gnome.m4: Add BUILD_INCLUDED_LIBINTL for + compatibility with the new gettext. + +2001-04-16 Darin Adler + + * gnome-common.spec.in: A cut at updating the spec file now that + the pkgconfig stuff and support stuff has gone away. + +2001-04-14 Martin Baulig + + * gnome-common.pc.in, gnome-common-2.0.pc.in: Removed. + + * configure.in: Set version number to 1.2.2. + (--enable-platform-gnome-2): Removed this command line argument; + this package is now the same for GNOME 1.x and GNOME 2.0. + + * acinclude.m4: Removed. + * acconfig.h: Removed. + + * support/: We don't build this directory anymore; the GNOME 1.x + version of it is in gnome-libs/support and the GNOME 2.0 one is in + libgnomebase/libgnomesupport. + +2001-04-13 Martin Baulig + + * macros2/gnome-pkgconfig.m4 (GNOME_PKGCONFIG_CHECK_OPTIONAL_MODULES): + Set variable `have_' to yes or no depending on whether the + module was found or not; allows you to define automake conditionals + for optional modules. + +2001-03-26 Robin * Slomkowski + + * Makefile.am: added gnome-common.spec.in to EXTRA_DISTS + * configure.in: added gnome-common.spec.in + * gnome-common.spec: removed from repository as it appeared + generic + * gnome-common.spec.in: new spec file using Martin's suggestions + +2001-03-24 Martin Baulig + + * macros2/autogen.sh: Add the xml-i18n-tools stuff here. + +2000-12-01 Martin Baulig + + Released gnome-common 1.2.1. + +2000-12-01 Martin Baulig + + * macros2/compiler-flags.m4: Improved compile warnings check; the + --enable-compile-warnings parameter now takes 5 different + values (no/minimum/yes/maximum/error). AC_SUBST(WARN_CFLAGS). + +2000-11-29 Martin Baulig + + * macros2/gnome.m4, gnome-gnorba-check.m4, gnome-fileutils.m4: Removed. + +2000-11-26 Martin Baulig + + * macros2/gnome-x-checks.m4 (GNOME2_X_CHECKS): Use + GNOME_PKGCONFIG_CHECK_MODULES. + + * macros2/gnome-pkgconfig.m4 (GNOME_PKGCONFIG_CHECK_VERSION): Don't + AC_REQUIRE([GNOME_REQUIRE_PKGCONFIG]). + (GNOME_CHECK_PKGCONFIG): Check for pkg-config >= 0.4.1. + +2000-11-22 Martin Baulig + + * macros2/gnome-pkgconfig.m4: Added GNOME_PKGCONFIG_CHECK_OPTIONAL_MODULES + to check for a list of optional modules. + + * macros2/gnome-platform.m4: Require GNOME_REQUIRE_PKGCONFIG. + +2000-11-22 Martin Baulig + + * macros2/gnome-platform.m4: New file. This defines + GNOME_PLATFORM_GNOME_2. + + * macros2/gnome-pkgconfig.m4: Disable the --extra-flags argument to + pkg-config, this doesn't exist anymore. + +2000-11-22 Martin Baulig + + * macros2/gnome-pkgconfig.m4: New file. This defines + GNOME_CHECK_PKGCONFIG, GNOME_REQUIRE_PKGCONFIG and + GNOME_PKGCONFIG_* macros from pkg-config. + +2000-11-21 Martin Baulig + + * macros2/gnome-support.m4, need-declaration.m4: Removed. + +2000-11-21 Martin Baulig + + * configure.in: Set version number to 1.2.1. + + * configure.in (--enable-platform-gnome-2): New configure + command line argument to enable support for the GNOME 2.x + platform. + (PLATFORM_GNOME_2): New automake conditional. + * Do the GNOME_SUPPORT_CHECKS here if we're on the GNOME 2.x + platform. + + * Makefile.am (SUBDIRS): Conditionally add support for the + GNOME 2.x platform. + + * acinclude.m4: New file. Put stuff from gnome-support.m4 + and need-declaration.m4 here. + +2000-09-30 Martin Baulig + + * macros2/gnome-x-checks.m4: Switch to pkg-config to check for GTK+ 2.0. + Removed all `gnome_cv_passdown_x_*' variables and `USE_DEVGTK'. + + * macros2/gnome-common.m4 (GNOME_COMMON_INIT): Added the always-false + INSIDE_GNOME_COMMON automake conditional. + (GNOME_GTKDOC_CHECK): New macro. + (GNOME_DEBUG_CHECK): New macro. + +Thu Aug 24 02:28:57 2000 George Lebl + + * macros2/gnome-x-checks.m4: use the correct name in AC_PROVIDE + +2000-08-06 Martin Baulig + + * macros2/gnome-x-checks.m4 (GNOME_X_CHECKS): Renamed + to GNOME2_X_CHECKS. + +2000-07-24 Martin Baulig + + * macros2/autogen.sh: Removed some old crap in it. + * macros2/aclocal-include.m4: Removed. + + * macros2/gnome-x-checks.m4: Check for GTK+ 2.0. + +2000-07-24 Martin Baulig + + * macros2/autogen.sh: Make it work with AM_GNOME2_GETTEXT. + * macros2/check-utmp.m4: New file. + +2000-07-24 Martin Baulig + + Synced with gnome-libs/gnome-data. + +2000-06-09 Martin Baulig + + * macros2/gnome-common.m4: We need this here as well. + +2000-05-29 Martin Baulig + + * configure.in: Set version number to 1.2.0. + +2000-05-29 Martin Baulig + + * macros2/Makefile.am: New file. Install this stuff into + `$(datadir)/aclocal/gnome2-macros'. + + * macros2/gnome.m4: New file. Copied from `hack-macros' dir. + + * macros2/autogen.sh: New file. Copied from `macros' dir. + +1998-02-19 Raja R Harinath + + * autogen.sh: New sample file. + * configure.in: Likewise. + * Makefile.am: Likewise. + * README: Likewise. + diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..41d98d2 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,19 @@ +SUBDIRS = macros2 doc-build + +EXTRA_DIST = \ + autogen.sh \ + gnome-common.doap \ + doc/usage.txt \ + ChangeLog.pre-git + +DISTCHECK_CONFIGURE_FLAGS = --disable-silent-rules + +# Build ChangeLog from GIT history +ChangeLog: + $(AM_V_GEN) if test -d $(top_srcdir)/.git; then \ + GIT_DIR="$(top_srcdir)/.git" git log --stat > $@; \ + fi + +dist: ChangeLog + +.PHONY: ChangeLog diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..f984d26 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# Run this to generate all the initial makefiles, etc. + +srcdir=`dirname $0` +test -z "$srcdir" && srcdir=. + +REQUIRED_AUTOMAKE_VERSION=1.9 + +PKG_NAME="Gnome Common Macros" + +(test -f $srcdir/configure.ac \ +## put other tests here +) || { + echo -n "**Error**: Directory "\`$srcdir\'" does not look like the" + echo " top-level $PKG_NAME directory" + exit 1 +} + +. $srcdir/macros2/gnome-autogen.sh diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..3642fd4 --- /dev/null +++ b/configure.ac @@ -0,0 +1,23 @@ +AC_PREREQ(2.54) +AC_INIT([gnome-common], [3.12.0], + [https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-common]) + +AC_CONFIG_SRCDIR([macros2/gnome-autogen.sh]) + +AM_INIT_AUTOMAKE([1.9 foreign no-dist-gzip dist-bzip2]) + +m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([no])]) + +if test -z "$enable_maintainer_mode"; then + enable_maintainer_mode=yes +fi +AM_MAINTAINER_MODE([enable]) + +AC_CONFIG_FILES([ +Makefile +macros2/Makefile +doc-build/Makefile +doc-build/gnome-doc-common +]) + +AC_OUTPUT diff --git a/doc-build/Makefile.am b/doc-build/Makefile.am new file mode 100644 index 0000000..e701f5d --- /dev/null +++ b/doc-build/Makefile.am @@ -0,0 +1,12 @@ +bin_SCRIPTS = gnome-doc-common + +pkgdatadir = $(datadir)/gnome-common/data +pkgdata_DATA = \ + omf.make \ + xmldocs.make + +EXTRA_DIST = \ + omf.make \ + xmldocs.make \ + gnome-doc-common.in \ + README diff --git a/doc-build/README b/doc-build/README new file mode 100644 index 0000000..6b44642 --- /dev/null +++ b/doc-build/README @@ -0,0 +1,9 @@ +To automatically include the standard user documentation build files (omf.make +and xmldocs.make) in you package, set USE_COMMON_DOC_BUILD=yes in autogen.sh +before calling the macros2/autogen.sh script. + +When porting applications across to use this feature, ensure that all of the +references to xmldocs.make are to $(top_srcdir)/xmldocs.make in the appropriate +Makefile.am files. Some modules assume that xmldocs.make is in another +directory (like docs/ or something). + diff --git a/doc-build/gnome-doc-common.in b/doc-build/gnome-doc-common.in new file mode 100644 index 0000000..aede9a5 --- /dev/null +++ b/doc-build/gnome-doc-common.in @@ -0,0 +1,49 @@ +#!/bin/sh + +progname=`echo "$0" | sed 's%^.*/%%'` + +PROGRAM=gnome-doc-common +PACKAGE=@PACKAGE@ +VERSION=@VERSION@ + +prefix=@prefix@ +datarootdir=@datarootdir@ +datadir=@datadir@ + +# options +docdir=. +copy=no + +while test $# -gt 0; do + case "$1" in + --help) + echo "usage: $progname [--version|--help]" 1>&2 + exit 1 ;; + --version) + echo "$PROGRAM ($PACKAGE) $VERSION" + exit 0 ;; + --copy) + copy=yes + shift ;; + -*) + echo "$progname: unrecognised option '$1'" 1>&2 + echo "usage: $progname [--version|--help]" 1>&2 + exit 1 ;; + *) + echo "$progname: too many arguments" 1>&2 + echo "usage: $progname [--version|--help]" 1>&2 + exit 1 ;; + esac +done + +for file in omf.make xmldocs.make; do + rm -f $docdir/$file + if test "$copy" = yes; then + cp -f $datadir/$PACKAGE/data/$file $docdir/ || + exit 1 + else + ln -sf $datadir/$PACKAGE/data/$file $docdir/ || + cp -f $datadir/$PACKAGE/data/$file $docdir/ || + exit 1 + fi +done diff --git a/doc-build/omf.make b/doc-build/omf.make new file mode 100644 index 0000000..35dec24 --- /dev/null +++ b/doc-build/omf.make @@ -0,0 +1,65 @@ +# +# No modifications of this Makefile should be necessary. +# +# This file contains the build instructions for installing OMF files. It is +# generally called from the makefiles for particular formats of documentation. +# +# Note that you must configure your package with --localstatedir=/var +# so that the scrollkeeper-update command below will update the database +# in the standard scrollkeeper directory. +# +# If it is impossible to configure with --localstatedir=/var, then +# modify the definition of scrollkeeper_localstate_dir so that +# it points to the correct location. Note that you must still use +# $(localstatedir) in this or when people build RPMs it will update +# the real database on their system instead of the one under RPM_BUILD_ROOT. +# +# Note: This make file is not incorporated into xmldocs.make because, in +# general, there will be other documents install besides XML documents +# and the makefiles for these formats should also include this file. +# +# About this file: +# This file was derived from scrollkeeper_example2, a package +# illustrating how to install documentation and OMF files for use with +# ScrollKeeper 0.3.x and 0.4.x. For more information, see: +# http://scrollkeeper.sourceforge.net/ +# Version: 0.1.3 (last updated: March 20, 2002) +# + +omf_dest_dir=$(datadir)/omf/@PACKAGE@ +scrollkeeper_localstate_dir = $(localstatedir)/scrollkeeper + +# At some point, it may be wise to change to something like this: +# scrollkeeper_localstate_dir = @SCROLLKEEPER_STATEDIR@ + +omf: omf_timestamp + +omf_timestamp: $(omffile) + -for file in $(omffile); do \ + absfile=$(srcdir)/$$file; \ + test -r $$file && absfile=$$file; \ + scrollkeeper-preinstall $(docdir)/$(docname).xml $$absfile $$file.out; \ + done; \ + touch omf_timestamp + +install-data-hook-omf: + $(mkinstalldirs) $(DESTDIR)$(omf_dest_dir) + for file in $(omffile); do \ + absfile=$(srcdir)/$$file.out; \ + test -r $$file.out && absfile=$$file.out; \ + $(INSTALL_DATA) $$absfile $(DESTDIR)$(omf_dest_dir)/$$file; \ + done + -scrollkeeper-update -p $(DESTDIR)$(scrollkeeper_localstate_dir) -o $(DESTDIR)$(omf_dest_dir) + +uninstall-local-omf: + -for file in $(omffile); do \ + basefile=`basename $$file`; \ + rm -f $(DESTDIR)$(omf_dest_dir)/$$basefile; \ + done + -rmdir $(DESTDIR)$(omf_dest_dir) + -scrollkeeper-update -p $(DESTDIR)$(scrollkeeper_localstate_dir) + +clean-local-omf: + -for file in $(omffile); do \ + rm -f $$file.out; \ + done diff --git a/doc-build/xmldocs.make b/doc-build/xmldocs.make new file mode 100644 index 0000000..b93e3f3 --- /dev/null +++ b/doc-build/xmldocs.make @@ -0,0 +1,101 @@ +# +# No modifications of this Makefile should be necessary. +# +# To use this template: +# 1) Define: figdir, docname, lang, omffile, and entities in +# your Makefile.am file for each document directory, +# although figdir, omffile, and entities may be empty +# 2) Make sure the Makefile in (1) also includes +# "include $(top_srcdir)/xmldocs.make" and +# "dist-hook: app-dist-hook". +# 3) Optionally define 'entities' to hold xml entities which +# you would also like installed +# 4) Figures must go under $(figdir)/ and be in PNG format +# 5) You should only have one document per directory +# 6) Note that the figure directory, $(figdir)/, should not have its +# own Makefile since this Makefile installs those figures. +# +# example Makefile.am: +# figdir = figures +# docname = scrollkeeper-manual +# lang = C +# omffile=scrollkeeper-manual-C.omf +# entities = fdl.xml +# include $(top_srcdir)/xmldocs.make +# dist-hook: app-dist-hook +# +# About this file: +# This file was taken from scrollkeeper_example2, a package illustrating +# how to install documentation and OMF files for use with ScrollKeeper +# 0.3.x and 0.4.x. For more information, see: +# http://scrollkeeper.sourceforge.net/ +# Version: 0.1.2 (last updated: March 20, 2002) +# + + +# ********** Begin of section some packagers may need to modify ********** +# This variable (docdir) specifies where the documents should be installed. +# This default value should work for most packages. +docdir = $(datadir)/gnome/help/$(docname)/$(lang) + +# ********** You should not have to edit below this line ********** +xml_files = $(entities) $(docname).xml + +EXTRA_DIST = $(xml_files) $(omffile) +CLEANFILES = omf_timestamp + +include $(top_srcdir)/omf.make + +all: omf + +$(docname).xml: $(entities) + -ourdir=`pwd`; \ + cd $(srcdir); \ + cp $(entities) $$ourdir + +app-dist-hook: + if test "$(figdir)"; then \ + $(mkinstalldirs) $(distdir)/$(figdir); \ + for file in $(srcdir)/$(figdir)/*.png; do \ + basefile=`echo $$file | sed -e 's,^.*/,,'`; \ + $(INSTALL_DATA) $$file $(distdir)/$(figdir)/$$basefile; \ + done \ + fi + +install-data-local: omf + $(mkinstalldirs) $(DESTDIR)$(docdir) + for file in $(xml_files); do \ + cp $(srcdir)/$$file $(DESTDIR)$(docdir); \ + done + if test "$(figdir)"; then \ + $(mkinstalldirs) $(DESTDIR)$(docdir)/$(figdir); \ + for file in $(srcdir)/$(figdir)/*.png; do \ + basefile=`echo $$file | sed -e 's,^.*/,,'`; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(docdir)/$(figdir)/$$basefile; \ + done \ + fi + +install-data-hook: install-data-hook-omf + +uninstall-local: uninstall-local-doc uninstall-local-omf + +uninstall-local-doc: + -if test "$(figdir)"; then \ + for file in $(srcdir)/$(figdir)/*.png; do \ + basefile=`echo $$file | sed -e 's,^.*/,,'`; \ + rm -f $(DESTDIR)$(docdir)/$(figdir)/$$basefile; \ + done; \ + rmdir $(DESTDIR)$(docdir)/$(figdir); \ + fi + -for file in $(xml_files); do \ + rm -f $(DESTDIR)$(docdir)/$$file; \ + done + -rmdir $(DESTDIR)$(docdir) + +clean-local: clean-local-doc clean-local-omf + +# for non-srcdir builds, remove the copied entities. +clean-local-doc: + if test $(srcdir) != .; then \ + rm -f $(entities); \ + fi diff --git a/doc/usage.txt b/doc/usage.txt new file mode 100644 index 0000000..d2294e5 --- /dev/null +++ b/doc/usage.txt @@ -0,0 +1,40 @@ +This module contains various files needed to bootstrap Gnome 2 modules +built from CVS. It contains the following components: + 1. A common "autogen.sh" script that can be used to configure a + source directory checked out from CVS. + 2. Some commonly used macros (quite a small set these days -- macros + should be packaged with their respective modules). + 3. Some files used to build user documentation. + +To make use of the common autogen script, create a stub autogen.sh +script in your module that looks something like this: + +---- Cut Here ---- +#!/bin/sh +srcdir=`dirname $0` +[ -z "$srcdir" ] && srcdir=. + +PKG_NAME=mypackage +REQUIRED_AUTOMAKE_VERSION=1.7 + +if [ ! -f "$srcdir/somefile-that-is-only-in-mypackage" ]; then + echo "$srcdir doesn't look like source directory for $PKG_NAME" >&2 + exit 1 +fi + +. gnome-autogen.sh +---- Cut Here ---- + +Then put the following in your configure.ac or configure.in file: + GNOME_COMMON_INIT + +This macro is equivalent to the following two lines (which you can use +instead if you don't want to depend on gnome-common macros): + AC_SUBST([ACLOCAL_AMFLAGS], ["\${ACLOCAL_FLAGS}"]) + +Or if you are using the AC_CONFIG_MACRO_DIR macro: + AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \${ACLOCAL_FLAGS}"]) + +This will make sure that autoconf macros will be found when you +rebuild the package without rerunning autogen.sh. + diff --git a/gnome-common.doap b/gnome-common.doap new file mode 100644 index 0000000..0fe010a --- /dev/null +++ b/gnome-common.doap @@ -0,0 +1,28 @@ + + + Common files + A module that is required only when building GNOME from the repository. + + + + + + + Christian Persch + + chpe + + + + + David King + + + davidk + + + diff --git a/macros2/Makefile.am b/macros2/Makefile.am new file mode 100644 index 0000000..07781be --- /dev/null +++ b/macros2/Makefile.am @@ -0,0 +1,13 @@ +## Please update this variable if any new macros are created + +GNOME2_MACROS = \ + gnome-common.m4 \ + gnome-compiler-flags.m4 \ + gnome-code-coverage.m4 + +EXTRA_DIST = $(GNOME2_MACROS) gnome-autogen.sh + +aclocaldir = $(datadir)/aclocal +aclocal_DATA = $(GNOME2_MACROS) + +bin_SCRIPTS = gnome-autogen.sh diff --git a/macros2/README.cvs-commits b/macros2/README.cvs-commits new file mode 100644 index 0000000..88e3d58 --- /dev/null +++ b/macros2/README.cvs-commits @@ -0,0 +1,13 @@ +This directory is *shared* between a lot of modules in GNOME CVS - +which means that every change you're doing here immediately affects +a very large number of modules. + +Please, do *ALWAYS ASK FIRST* on gnome-hackers@gnome.org before you +commit anything to this directory. If unsure, feel free to send me +a patch and I'll commit it for you it it's ok. + +Thanks for your understanding, + +August 1st, 2001 +Martin Baulig + diff --git a/macros2/gnome-autogen.sh b/macros2/gnome-autogen.sh new file mode 100644 index 0000000..d361c8e --- /dev/null +++ b/macros2/gnome-autogen.sh @@ -0,0 +1,437 @@ +#!/bin/sh +# Run this to generate all the initial makefiles, etc. + +#name of package +test "$PKG_NAME" || PKG_NAME=Package +test "$srcdir" || srcdir=. + +# default version requirements ... +test "$REQUIRED_AUTOMAKE_VERSION" || REQUIRED_AUTOMAKE_VERSION=1.11.2 +test "$REQUIRED_AUTORECONF_VERSION" || REQUIRED_AUTORECONF_VERSION=2.53 +test "$REQUIRED_GLIB_GETTEXT_VERSION" || REQUIRED_GLIB_GETTEXT_VERSION=2.2.0 +test "$REQUIRED_INTLTOOL_VERSION" || REQUIRED_INTLTOOL_VERSION=0.25 +test "$REQUIRED_PKG_CONFIG_VERSION" || REQUIRED_PKG_CONFIG_VERSION=0.14.0 +test "$REQUIRED_GTK_DOC_VERSION" || REQUIRED_GTK_DOC_VERSION=1.0 +test "$REQUIRED_DOC_COMMON_VERSION" || REQUIRED_DOC_COMMON_VERSION=2.3.0 +test "$REQUIRED_GNOME_DOC_UTILS_VERSION" || REQUIRED_GNOME_DOC_UTILS_VERSION=0.4.2 + +# a list of required m4 macros. Package can set an initial value +test "$REQUIRED_M4MACROS" || REQUIRED_M4MACROS= +test "$FORBIDDEN_M4MACROS" || FORBIDDEN_M4MACROS= + +# Not all echo versions allow -n, so we check what is possible. This test is +# based on the one in autoconf. +ECHO_C= +ECHO_N= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ;; + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac + +# some terminal codes ... +if tty 1>/dev/null 2>&1; then + boldface="`tput bold 2>/dev/null`" + normal="`tput sgr0 2>/dev/null`" +else + boldface= + normal= +fi +printbold() { + echo $ECHO_N "$boldface" $ECHO_C + echo "$@" + echo $ECHO_N "$normal" $ECHO_C +} +printerr() { + echo "$@" >&2 +} + +# Usage: +# compare_versions MIN_VERSION ACTUAL_VERSION +# returns true if ACTUAL_VERSION >= MIN_VERSION +compare_versions() { + ch_min_version=$1 + ch_actual_version=$2 + ch_status=0 + IFS="${IFS= }"; ch_save_IFS="$IFS"; IFS="." + set $ch_actual_version + for ch_min in $ch_min_version; do + ch_cur=`echo $1 | sed 's/[^0-9].*$//'`; shift # remove letter suffixes + if [ -z "$ch_min" ]; then break; fi + if [ -z "$ch_cur" ]; then ch_status=1; break; fi + if [ $ch_cur -gt $ch_min ]; then break; fi + if [ $ch_cur -lt $ch_min ]; then ch_status=1; break; fi + done + IFS="$ch_save_IFS" + return $ch_status +} + +# Usage: +# version_check PACKAGE VARIABLE CHECKPROGS MIN_VERSION SOURCE +# checks to see if the package is available +version_check() { + vc_package=$1 + vc_variable=$2 + vc_checkprogs=$3 + vc_min_version=$4 + vc_source=$5 + vc_status=1 + + vc_checkprog=`eval echo "\\$$vc_variable"` + if [ -n "$vc_checkprog" ]; then + printbold "using $vc_checkprog for $vc_package" + return 0 + fi + + printbold "checking for $vc_package >= $vc_min_version..." + for vc_checkprog in $vc_checkprogs; do + echo $ECHO_N " testing $vc_checkprog... " $ECHO_C + if $vc_checkprog --version < /dev/null > /dev/null 2>&1; then + vc_actual_version=`$vc_checkprog --version | head -n 1 | \ + sed 's/^.*[ ]\([0-9.]*[a-z]*\).*$/\1/'` + if compare_versions $vc_min_version $vc_actual_version; then + echo "found $vc_actual_version" + # set variables + eval "$vc_variable=$vc_checkprog; \ + ${vc_variable}_VERSION=$vc_actual_version" + vc_status=0 + break + else + echo "too old (found version $vc_actual_version)" + fi + else + echo "not found." + fi + done + if [ "$vc_status" != 0 ]; then + printerr "***Error***: You must have $vc_package >= $vc_min_version installed" + printerr " to build $PKG_NAME. Download the appropriate package for" + printerr " from your distribution or get the source tarball at" + printerr " $vc_source" + printerr + exit $vc_status + fi + return $vc_status +} + +# Usage: +# require_m4macro filename.m4 +# adds filename.m4 to the list of required macros +require_m4macro() { + case "$REQUIRED_M4MACROS" in + $1\ * | *\ $1\ * | *\ $1) ;; + *) REQUIRED_M4MACROS="$REQUIRED_M4MACROS $1" ;; + esac +} + +forbid_m4macro() { + case "$FORBIDDEN_M4MACROS" in + $1\ * | *\ $1\ * | *\ $1) ;; + *) FORBIDDEN_M4MACROS="$FORBIDDEN_M4MACROS $1" ;; + esac +} + +# Usage: +# add_to_cm_macrodirs dirname +# Adds the dir to $cm_macrodirs, if it's not there yet. +add_to_cm_macrodirs() { + case $cm_macrodirs in + "$1 "* | *" $1 "* | *" $1") ;; + *) cm_macrodirs="$cm_macrodirs $1";; + esac +} + +# Usage: +# print_m4macros_error +# Prints an error message saying that autoconf macros were misused +print_m4macros_error() { + printerr "***Error***: some autoconf macros required to build $PKG_NAME" + printerr " were not found in your aclocal path, or some forbidden" + printerr " macros were found. Perhaps you need to adjust your" + printerr " ACLOCAL_PATH?" + printerr +} + +# Usage: +# check_m4macros +# Checks that all the requested macro files are in the aclocal macro path +# Uses REQUIRED_M4MACROS and ACLOCAL_PATH variables. +check_m4macros() { + # construct list of macro directories + cm_macrodirs=`aclocal --print-ac-dir` + # aclocal also searches a version specific dir, eg. /usr/share/aclocal-1.9 + # but it contains only Automake's own macros, so we can ignore it. + + # Read the dirlist file + if [ -s $cm_macrodirs/dirlist ]; then + cm_dirlist=`sed 's/[ ]*#.*//;/^$/d' $cm_macrodirs/dirlist` + if [ -n "$cm_dirlist" ] ; then + for cm_dir in $cm_dirlist; do + if [ -d $cm_dir ]; then + add_to_cm_macrodirs $cm_dir + fi + done + fi + fi + + # Parse $ACLOCAL_PATH + IFS="${IFS= }"; save_IFS="$IFS"; IFS=":" + for dir in ${ACLOCAL_PATH}; do + add_to_cm_macrodirs "$dir" + done + IFS="$save_IFS" + + cm_status=0 + if [ -n "$REQUIRED_M4MACROS" ]; then + printbold "Checking for required M4 macros..." + # check that each macro file is in one of the macro dirs + for cm_macro in $REQUIRED_M4MACROS; do + cm_macrofound=false + for cm_dir in $cm_macrodirs; do + if [ -f "$cm_dir/$cm_macro" ]; then + cm_macrofound=true + break + fi + # The macro dir in Cygwin environments may contain a file + # called dirlist containing other directories to look in. + if [ -f "$cm_dir/dirlist" ]; then + for cm_otherdir in `cat $cm_dir/dirlist`; do + if [ -f "$cm_otherdir/$cm_macro" ]; then + cm_macrofound=true + break + fi + done + fi + done + if $cm_macrofound; then + : + else + printerr " $cm_macro not found" + cm_status=1 + fi + done + fi + if [ "$cm_status" != 0 ]; then + print_m4macros_error + exit $cm_status + fi + if [ -n "$FORBIDDEN_M4MACROS" ]; then + printbold "Checking for forbidden M4 macros..." + # check that each macro file is in one of the macro dirs + for cm_macro in $FORBIDDEN_M4MACROS; do + cm_macrofound=false + for cm_dir in $cm_macrodirs; do + if [ -f "$cm_dir/$cm_macro" ]; then + cm_macrofound=true + break + fi + done + if $cm_macrofound; then + printerr " $cm_macro found (should be cleared from macros dir)" + cm_status=1 + fi + done + fi + if [ "$cm_status" != 0 ]; then + print_m4macros_error + exit $cm_status + fi +} + +# try to catch the case where the macros2/ directory hasn't been cleared out. +forbid_m4macro gnome-cxx-check.m4 + +want_glib_gettext=false +want_intltool=false +want_pkg_config=false +want_gtk_doc=false +want_gnome_doc_utils=false +want_maintainer_mode=false + +version_check automake AUTOMAKE automake $REQUIRED_AUTOMAKE_VERSION \ + "http://ftp.gnu.org/pub/gnu/automake/automake-$REQUIRED_AUTOMAKE_VERSION.tar.xz" + +version_check autoreconf AUTORECONF autoreconf $REQUIRED_AUTORECONF_VERSION \ + "http://ftp.gnu.org/pub/gnu/autoconf/autoconf-$REQUIRED_AUTORECONF_VERSION.tar.xz" + +find_configure_files() { + configure_ac= + if test -f "$1/configure.ac"; then + configure_ac="$1/configure.ac" + elif test -f "$1/configure.in"; then + configure_ac="$1/configure.in" + fi + if test "x$configure_ac" != x; then + echo "$configure_ac" + autoconf -t 'AC_CONFIG_SUBDIRS:$1' "$configure_ac" | while read dir; do + find_configure_files "$1/$dir" + done + fi +} + +configure_files="`find_configure_files $srcdir`" + +for configure_ac in $configure_files; do + dirname=`dirname $configure_ac` + if [ -f $dirname/NO-AUTO-GEN ]; then + echo skipping $dirname -- flagged as no auto-gen + continue + fi + if grep "^AM_GLIB_GNU_GETTEXT" $configure_ac >/dev/null; then + want_glib_gettext=true + fi + if grep "^AC_PROG_INTLTOOL" $configure_ac >/dev/null || + grep "^IT_PROG_INTLTOOL" $configure_ac >/dev/null; then + want_intltool=true + fi + if grep "^PKG_CHECK_MODULES" $configure_ac >/dev/null; then + want_pkg_config=true + fi + if grep "^GTK_DOC_CHECK" $configure_ac >/dev/null; then + want_gtk_doc=true + fi + if grep "^GNOME_DOC_INIT" $configure_ac >/dev/null; then + want_gnome_doc_utils=true + fi + + # check that AM_MAINTAINER_MODE is used + if grep "^AM_MAINTAINER_MODE" $configure_ac >/dev/null; then + want_maintainer_mode=true + fi + + if grep "^YELP_HELP_INIT" $configure_ac >/dev/null; then + require_m4macro yelp.m4 + fi + + if grep "^APPDATA_XML" $configure_ac >/dev/null; then + require_m4macro appdata-xml.m4 + fi + + # check to make sure gnome-common macros can be found ... + if grep "^GNOME_COMMON_INIT" $configure_ac >/dev/null || + grep "^GNOME_DEBUG_CHECK" $configure_ac >/dev/null || + grep "^GNOME_MAINTAINER_MODE_DEFINES" $configure_ac >/dev/null; then + require_m4macro gnome-common.m4 + fi + if grep "^GNOME_COMPILE_WARNINGS" $configure_ac >/dev/null || + grep "^GNOME_CXX_WARNINGS" $configure_ac >/dev/null; then + require_m4macro gnome-compiler-flags.m4 + fi + if grep "^GNOME_CODE_COVERAGE" $configure_ac >/dev/null; then + require_m4macro gnome-code-coverage.m4 + fi +done + +if $want_glib_gettext; then + version_check glib-gettext GLIB_GETTEXTIZE glib-gettextize $REQUIRED_GLIB_GETTEXT_VERSION \ + "ftp://ftp.gtk.org/pub/gtk/v2.2/glib-$REQUIRED_GLIB_GETTEXT_VERSION.tar.gz" + require_m4macro glib-gettext.m4 +fi + +if $want_intltool; then + version_check intltool INTLTOOLIZE intltoolize $REQUIRED_INTLTOOL_VERSION \ + "http://ftp.gnome.org/pub/GNOME/sources/intltool/" + require_m4macro intltool.m4 +fi + +if $want_pkg_config; then + version_check pkg-config PKG_CONFIG pkg-config $REQUIRED_PKG_CONFIG_VERSION \ + "'http://www.freedesktop.org/software/pkgconfig/releases/pkgconfig-$REQUIRED_PKG_CONFIG_VERSION.tar.gz" + require_m4macro pkg.m4 +fi + +if $want_gtk_doc; then + version_check gtk-doc GTKDOCIZE gtkdocize $REQUIRED_GTK_DOC_VERSION \ + "http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/" + require_m4macro gtk-doc.m4 +fi + +if $want_gnome_doc_utils; then + version_check gnome-doc-utils GNOME_DOC_PREPARE gnome-doc-prepare $REQUIRED_GNOME_DOC_UTILS_VERSION \ + "http://ftp.gnome.org/pub/GNOME/sources/gnome-doc-utils/" +fi + +if [ "x$USE_COMMON_DOC_BUILD" = "xyes" ]; then + version_check gnome-common DOC_COMMON gnome-doc-common \ + $REQUIRED_DOC_COMMON_VERSION " " +fi + +check_m4macros + +if [ "$#" = 0 -a "x$NOCONFIGURE" = "x" ]; then + printerr "**Warning**: I am going to run \`configure' with no arguments." + printerr "If you wish to pass any to it, please specify them on the" + printerr \`$0\'" command line." + printerr +fi + +topdir=`pwd` +for configure_ac in $configure_files; do + dirname=`dirname $configure_ac` + basename=`basename $configure_ac` + if [ -f $dirname/NO-AUTO-GEN ]; then + echo skipping $dirname -- flagged as no auto-gen + elif [ ! -w $dirname ]; then + echo skipping $dirname -- directory is read only + else + printbold "Processing $configure_ac" + cd $dirname + + # if the AC_CONFIG_MACRO_DIR() macro is used, create that directory + # This is a automake bug fixed in automake 1.13.2 + # See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13514 + m4dir=`autoconf --trace 'AC_CONFIG_MACRO_DIR:$1'` + if [ -n "$m4dir" ]; then + mkdir -p $m4dir + fi + + if grep "^AM_GLIB_GNU_GETTEXT" $basename >/dev/null; then + printbold "Running $GLIB_GETTEXTIZE... Ignore non-fatal messages." + echo "no" | $GLIB_GETTEXTIZE --force --copy || exit 1 + fi + + if grep "^GTK_DOC_CHECK" $basename >/dev/null; then + printbold "Running $GTKDOCIZE..." + $GTKDOCIZE --copy || exit 1 + fi + + if [ "x$USE_COMMON_DOC_BUILD" = "xyes" ]; then + printbold "Running gnome-doc-common..." + gnome-doc-common --copy || exit 1 + fi + if grep "^GNOME_DOC_INIT" $basename >/dev/null; then + printbold "Running $GNOME_DOC_PREPARE..." + $GNOME_DOC_PREPARE --force --copy || exit 1 + fi + + if grep "^AC_PROG_INTLTOOL" $basename >/dev/null || + grep "^IT_PROG_INTLTOOL" $basename >/dev/null; then + printbold "Running $INTLTOOLIZE..." + $INTLTOOLIZE --force --copy --automake || exit 1 + fi + + # Now that all the macros are sorted, run autoreconf ... + printbold "Running autoreconf..." + autoreconf --verbose --force --install -Wno-portability || exit 1 + + cd "$topdir" + fi +done + +conf_flags="" + +if $want_maintainer_mode; then + conf_flags="--enable-maintainer-mode" +fi + +if test x$NOCONFIGURE = x; then + printbold Running $srcdir/configure $conf_flags "$@" ... + $srcdir/configure $conf_flags "$@" \ + && echo Now type \`make\' to compile $PKG_NAME || exit 1 +else + echo Skipping configure process. +fi diff --git a/macros2/gnome-code-coverage.m4 b/macros2/gnome-code-coverage.m4 new file mode 100644 index 0000000..62375e6 --- /dev/null +++ b/macros2/gnome-code-coverage.m4 @@ -0,0 +1,164 @@ +dnl GNOME_CODE_COVERAGE +dnl +dnl Defines CODE_COVERAGE_CFLAGS and CODE_COVERAGE_LDFLAGS which should be +dnl included in the CFLAGS and LIBS/LDFLAGS variables of every build target +dnl (program or library) which should be built with code coverage support. +dnl Also defines GNOME_CODE_COVERAGE_RULES which should be substituted in your +dnl Makefile; and $enable_code_coverage which can be used in subsequent +dnl configure output. +dnl +dnl Note that all optimisation flags in CFLAGS must be disabled when code +dnl coverage is enabled. +dnl +dnl Derived from Makefile.decl in GLib, originally licenced under LGPLv2.1+. +dnl This file is licenced under LGPLv2.1+. +dnl +dnl Usage example: +dnl configure.ac: +dnl GNOME_CODE_COVERAGE +dnl +dnl Makefile.am: +dnl @GNOME_CODE_COVERAGE_RULES@ +dnl my_program_LIBS = … $(CODE_COVERAGE_LDFLAGS) … +dnl my_program_CFLAGS = … $(CODE_COVERAGE_CFLAGS) … +dnl +dnl This results in a “check-code-coverage” rule being added to any Makefile.am +dnl which includes “@GNOME_CODE_COVERAGE_RULES@” (assuming the module has been +dnl configured with --enable-code-coverage). Running `make check-code-coverage` +dnl in that directory will run the module’s test suite (`make check`) and build +dnl a code coverage report detailing the code which was touched, then print the +dnl URI for the report. + +AC_DEFUN([GNOME_CODE_COVERAGE],[ + dnl Check for --enable-code-coverage + AC_MSG_CHECKING([whether to build with code coverage support]) + AC_ARG_ENABLE([code-coverage], AS_HELP_STRING([--enable-code-coverage], [Whether to enable code coverage support]),, enable_code_coverage=no) + AM_CONDITIONAL([CODE_COVERAGE_ENABLED], [test x$enable_code_coverage = xyes]) + AC_SUBST([CODE_COVERAGE_ENABLED], [$enable_code_coverage]) + AC_MSG_RESULT($enable_code_coverage) + + AS_IF([ test "$enable_code_coverage" = "yes" ], [ + dnl Check if gcc is being used + AS_IF([ test "$GCC" = "no" ], [ + AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage]) + ]) + + # List of supported lcov versions. + lcov_version_list="1.6 1.7 1.8 1.9 1.10" + + AC_CHECK_PROG([LCOV], [lcov], [lcov]) + AC_CHECK_PROG([GENHTML], [genhtml], [genhtml]) + + AS_IF([ test "$LCOV" ], [ + AC_CACHE_CHECK([for lcov version], gnome_cv_lcov_version, [ + gnome_cv_lcov_version=invalid + lcov_version=`$LCOV -v 2>/dev/null | $SED -e 's/^.* //'` + for lcov_check_version in $lcov_version_list; do + if test "$lcov_version" = "$lcov_check_version"; then + gnome_cv_lcov_version="$lcov_check_version (ok)" + fi + done + ]) + ], [ + lcov_msg="To enable code coverage reporting you must have one of the following lcov versions installed: $lcov_version_list" + AC_MSG_ERROR([$lcov_msg]) + ]) + + case $gnome_cv_lcov_version in + ""|invalid[)] + lcov_msg="You must have one of the following versions of lcov: $lcov_version_list (found: $lcov_version)." + AC_MSG_ERROR([$lcov_msg]) + LCOV="exit 0;" + ;; + esac + + AS_IF([ test -z "$GENHTML" ], [ + AC_MSG_ERROR([Could not find genhtml from the lcov package]) + ]) + + dnl Build the code coverage flags + CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" + CODE_COVERAGE_LDFLAGS="-lgcov" + + AC_SUBST([CODE_COVERAGE_CFLAGS]) + AC_SUBST([CODE_COVERAGE_LDFLAGS]) + ]) + +GNOME_CODE_COVERAGE_RULES=' +# Code coverage +# +# Optional: +# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting. +# (Default: $(top_builddir)) +# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated +# by lcov for code coverage. (Default: +# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info) +# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage +# reports to be created. (Default: +# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage) +# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the lcov instance. +# (Default: empty) +# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml +# instance. (Default: empty) +# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore +# +# The generated report will be titled using the $(PACKAGE_NAME) and +# $(PACKAGE_VERSION). In order to add the current git hash to the title, +# use the git-version-gen script, available online. + +# Optional variables +CODE_COVERAGE_DIRECTORY ?= $(top_builddir) +CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info +CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage +CODE_COVERAGE_LCOV_OPTIONS ?= +CODE_COVERAGE_GENHTML_OPTIONS ?= +CODE_COVERAGE_IGNORE_PATTERN ?= + +code_coverage_quiet = $(code_coverage_quiet_$(V)) +code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY)) +code_coverage_quiet_0 = --quiet + +# Use recursive makes in order to ignore errors during check +check-code-coverage: +ifeq ($(CODE_COVERAGE_ENABLED),yes) + -$(MAKE) $(AM_MAKEFLAGS) -k check + $(MAKE) $(AM_MAKEFLAGS) code-coverage-capture +else + @echo "Need to reconfigure with --enable-code-coverage" +endif + +# Capture code coverage data +code-coverage-capture: code-coverage-capture-hook +ifeq ($(CODE_COVERAGE_ENABLED),yes) + $(LCOV) $(code_coverage_quiet) --directory $(CODE_COVERAGE_DIRECTORY) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_OPTIONS) + $(LCOV) $(code_coverage_quiet) --directory $(CODE_COVERAGE_DIRECTORY) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" + -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp + LANG=C $(GENHTML) $(code_coverage_quiet) --prefix $(CODE_COVERAGE_DIRECTORY) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) + @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" +else + @echo "Need to reconfigure with --enable-code-coverage" +endif + +# Hook rule executed before code-coverage-capture, overridable by the user +code-coverage-capture-hook: + +ifeq ($(CODE_COVERAGE_ENABLED),yes) +clean: code-coverage-clean +code-coverage-clean: + -$(LCOV) --directory $(top_builddir) -z + -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) + -find . -name "*.gcda" -o -name "*.gcov" -delete +endif + +GITIGNOREFILES ?= +GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY) + +DISTCHECK_CONFIGURE_FLAGS ?= +DISTCHECK_CONFIGURE_FLAGS += --disable-code-coverage + +.PHONY: check-code-coverage code-coverage-capture code-coverage-capture-hook code-coverage-clean +' + + AC_SUBST([GNOME_CODE_COVERAGE_RULES]) + m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([GNOME_CODE_COVERAGE_RULES])]) +]) diff --git a/macros2/gnome-common.m4 b/macros2/gnome-common.m4 new file mode 100644 index 0000000..dac50c4 --- /dev/null +++ b/macros2/gnome-common.m4 @@ -0,0 +1,55 @@ +# gnome-common.m4 +# +# serial 3 +# + +dnl GNOME_COMMON_INIT + +AU_DEFUN([GNOME_COMMON_INIT], +[ + dnl this macro should come after AC_CONFIG_MACRO_DIR + AC_BEFORE([AC_CONFIG_MACRO_DIR], [$0]) + + dnl ensure that when the Automake generated makefile calls aclocal, + dnl it honours the $ACLOCAL_FLAGS environment variable + ACLOCAL_AMFLAGS="\${ACLOCAL_FLAGS}" + if test -n "$ac_macro_dir"; then + ACLOCAL_AMFLAGS="-I $ac_macro_dir $ACLOCAL_AMFLAGS" + fi + + AC_SUBST([ACLOCAL_AMFLAGS]) +], +[[$0: This macro is deprecated. You should set put "ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}" +in your top-level Makefile.am, instead, where "m4" is the macro directory set +with AC_CONFIG_MACRO_DIR() in your configure.ac]]) + +AC_DEFUN([GNOME_DEBUG_CHECK], +[ + AC_ARG_ENABLE([debug], + AC_HELP_STRING([--enable-debug], + [turn on debugging]),, + [enable_debug=no]) + + if test x$enable_debug = xyes ; then + AC_DEFINE(GNOME_ENABLE_DEBUG, 1, + [Enable additional debugging at the expense of performance and size]) + fi +]) + +dnl GNOME_MAINTAINER_MODE_DEFINES () +dnl define DISABLE_DEPRECATED +dnl +AC_DEFUN([GNOME_MAINTAINER_MODE_DEFINES], +[ + AC_REQUIRE([AM_MAINTAINER_MODE]) + + DISABLE_DEPRECATED="" + if test $USE_MAINTAINER_MODE = yes; then + DOMAINS="GCONF BONOBO BONOBO_UI GNOME LIBGLADE GNOME_VFS WNCK LIBSOUP" + for DOMAIN in $DOMAINS; do + DISABLE_DEPRECATED="$DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_SINGLE_INCLUDES" + done + fi + + AC_SUBST(DISABLE_DEPRECATED) +]) diff --git a/macros2/gnome-compiler-flags.m4 b/macros2/gnome-compiler-flags.m4 new file mode 100644 index 0000000..cd1a0f5 --- /dev/null +++ b/macros2/gnome-compiler-flags.m4 @@ -0,0 +1,177 @@ +# gnome-compiler-flags.m4 +# +# serial 2 +# + +dnl GNOME_COMPILE_WARNINGS +dnl Turn on many useful compiler warnings and substitute the result into +dnl WARN_CFLAGS +dnl For now, only works on GCC +dnl Pass the default value of the --enable-compile-warnings configure option as +dnl the first argument to the macro, defaulting to 'yes'. +dnl Additional warning/error flags can be passed as an optional second argument. +dnl +dnl For example: GNOME_COMPILE_WARNINGS([maximum],[-Werror=some-flag -Wfoobar]) +AC_DEFUN([GNOME_COMPILE_WARNINGS],[ + dnl ****************************** + dnl More compiler warnings + dnl ****************************** + + AC_ARG_ENABLE(compile-warnings, + AS_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], + [Turn on compiler warnings]),, + [enable_compile_warnings="m4_default([$1],[yes])"]) + + if test "x$GCC" != xyes; then + enable_compile_warnings=no + fi + + warning_flags= + realsave_CFLAGS="$CFLAGS" + + dnl These are warning flags that aren't marked as fatal. Can be + dnl overridden on a per-project basis with -Wno-foo. + base_warn_flags=" \ + -Wall \ + -Wstrict-prototypes \ + -Wnested-externs \ + " + + dnl These compiler flags typically indicate very broken or suspicious + dnl code. Some of them such as implicit-function-declaration are + dnl just not default because gcc compiles a lot of legacy code. + dnl We choose to make this set into explicit errors. + base_error_flags=" \ + -Werror=missing-prototypes \ + -Werror=implicit-function-declaration \ + -Werror=pointer-arith \ + -Werror=init-self \ + -Werror=format-security \ + -Werror=format=2 \ + -Werror=missing-include-dirs \ + " + + dnl Additional warning or error flags provided by the module author to + dnl allow stricter standards to be imposed on a per-module basis. + dnl The author can pass -W or -Werror flags here as they see fit. + additional_flags="m4_default([$2],[])" + + case "$enable_compile_warnings" in + no) + warning_flags= + ;; + minimum) + warning_flags="-Wall" + ;; + yes|maximum|error) + warning_flags="$base_warn_flags $base_error_flags $additional_flags" + ;; + *) + AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) + ;; + esac + + if test "$enable_compile_warnings" = "error" ; then + warning_flags="$warning_flags -Werror" + fi + + dnl Check whether GCC supports the warning options + for option in $warning_flags; do + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $option" + AC_MSG_CHECKING([whether gcc understands $option]) + AC_TRY_COMPILE([], [], + has_option=yes, + has_option=no,) + CFLAGS="$save_CFLAGS" + AC_MSG_RESULT([$has_option]) + if test $has_option = yes; then + tested_warning_flags="$tested_warning_flags $option" + fi + unset has_option + unset save_CFLAGS + done + unset option + CFLAGS="$realsave_CFLAGS" + AC_MSG_CHECKING(what warning flags to pass to the C compiler) + AC_MSG_RESULT($tested_warning_flags) + + AC_ARG_ENABLE(iso-c, + AS_HELP_STRING([--enable-iso-c], + [Try to warn if code is not ISO C ]),, + [enable_iso_c=no]) + + AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) + complCFLAGS= + if test "x$enable_iso_c" != "xno"; then + if test "x$GCC" = "xyes"; then + case " $CFLAGS " in + *[\ \ ]-ansi[\ \ ]*) ;; + *) complCFLAGS="$complCFLAGS -ansi" ;; + esac + case " $CFLAGS " in + *[\ \ ]-pedantic[\ \ ]*) ;; + *) complCFLAGS="$complCFLAGS -pedantic" ;; + esac + fi + fi + AC_MSG_RESULT($complCFLAGS) + + WARN_CFLAGS="$tested_warning_flags $complCFLAGS" + AC_SUBST(WARN_CFLAGS) +]) + +dnl For C++, do basically the same thing. + +AC_DEFUN([GNOME_CXX_WARNINGS],[ + AC_ARG_ENABLE(cxx-warnings, + AS_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] + [Turn on compiler warnings.]),, + [enable_cxx_warnings="m4_default([$1],[minimum])"]) + + AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) + warnCXXFLAGS= + if test "x$GXX" != xyes; then + enable_cxx_warnings=no + fi + if test "x$enable_cxx_warnings" != "xno"; then + if test "x$GXX" = "xyes"; then + case " $CXXFLAGS " in + *[\ \ ]-Wall[\ \ ]*) ;; + *) warnCXXFLAGS="-Wall -Wno-unused" ;; + esac + + ## -W is not all that useful. And it cannot be controlled + ## with individual -Wno-xxx flags, unlike -Wall + if test "x$enable_cxx_warnings" = "xyes"; then + warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" + fi + fi + fi + AC_MSG_RESULT($warnCXXFLAGS) + + AC_ARG_ENABLE(iso-cxx, + AS_HELP_STRING([--enable-iso-cxx], + [Try to warn if code is not ISO C++ ]),, + [enable_iso_cxx=no]) + + AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) + complCXXFLAGS= + if test "x$enable_iso_cxx" != "xno"; then + if test "x$GXX" = "xyes"; then + case " $CXXFLAGS " in + *[\ \ ]-ansi[\ \ ]*) ;; + *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; + esac + + case " $CXXFLAGS " in + *[\ \ ]-pedantic[\ \ ]*) ;; + *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; + esac + fi + fi + AC_MSG_RESULT($complCXXFLAGS) + + WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" + AC_SUBST(WARN_CXXFLAGS) +]) diff --git a/packaging/gnome-common.changes b/packaging/gnome-common.changes new file mode 100644 index 0000000..2f627ab --- /dev/null +++ b/packaging/gnome-common.changes @@ -0,0 +1,6 @@ +* Fri Feb 01 2013 Anas Nashif upstream/3.7.4@55bd975 +- update to 3.7.2 + +* Mon Jan 14 2013 Anas Nashif upstream/3.6.0@095b592 +- Update to 3.6 + diff --git a/packaging/gnome-common.manifest b/packaging/gnome-common.manifest new file mode 100644 index 0000000..017d22d --- /dev/null +++ b/packaging/gnome-common.manifest @@ -0,0 +1,5 @@ + + + + + diff --git a/packaging/gnome-common.spec b/packaging/gnome-common.spec new file mode 100644 index 0000000..4875346 --- /dev/null +++ b/packaging/gnome-common.spec @@ -0,0 +1,46 @@ +Name: gnome-common +Version: 3.12.0 +BuildRequires: pkg-config +Summary: Common Files to Build GNOME +License: GPL-2.0+ +Group: Platform Development/Utilities +Release: 0 +Source: http://download.gnome.org/sources/gnome-common/3.12/%{name}-%{version}.tar.xz +#X-Vcs-Url: git://git.gnome.org/gnome-common +Source1001: gnome-common.manifest +Url: http://www.gnome.org/ +BuildArch: noarch +Requires: autoconf +Requires: automake +Requires: gettext-tools +Requires: glib2-devel +Requires: intltool +Requires: libtool +Requires: pkg-config + +%description +Gnome-common includes files used by to build GNOME and GNOME applications. + +%prep +%setup -q +cp %{SOURCE1001} . + +%build +%autogen +%configure +%__make %{?_smp_mflags} + +%install +%make_install + +%files +%manifest %{name}.manifest +%defattr (-, root, root) +%license COPYING +%{_bindir}/gnome-autogen.sh +%{_bindir}/gnome-doc-common +%dir %{_datadir}/aclocal +%{_datadir}/aclocal/gnome-common.m4 +%{_datadir}/aclocal/gnome-compiler-flags.m4 +%{_datadir}/aclocal/gnome-code-coverage.m4 +%{_datadir}/gnome-common/ -- 2.7.4