diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | .gitmodules | 6 | ||||
-rw-r--r-- | .prev-version | 1 | ||||
-rw-r--r-- | Makefile-maint | 2 | ||||
-rw-r--r-- | Makefile.am | 16 | ||||
-rw-r--r-- | NEWS | 138 | ||||
-rw-r--r-- | README-maint | 132 | ||||
-rw-r--r-- | TODO | 56 | ||||
-rwxr-xr-x | bootstrap.sh | 8 | ||||
-rw-r--r-- | cfg.mk | 38 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
m--------- | gnulib | 0 |
12 files changed, 154 insertions, 247 deletions
@@ -10,6 +10,7 @@ # files generated by Autoconf and Automake /AUTHORS /ChangeLog +/GNUmakefile /INSTALL /Makefile /Makefile.in @@ -20,3 +21,4 @@ /config.log /config.status /configure +/maint.mk diff --git a/.gitmodules b/.gitmodules index aeb3870..f02810f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,9 @@ +# autoconf-archive/.gitmodules + [submodule "m4"] path = m4 url = ssh://git.sv.gnu.org/srv/git/autoconf-archive.git + +[submodule "gnulib"] + path = gnulib + url = git://git.savannah.gnu.org/gnulib.git diff --git a/.prev-version b/.prev-version new file mode 100644 index 0000000..63546be --- /dev/null +++ b/.prev-version @@ -0,0 +1 @@ +2009.07.20 diff --git a/Makefile-maint b/Makefile-maint index ad68927..9da8927 100644 --- a/Makefile-maint +++ b/Makefile-maint @@ -30,7 +30,7 @@ $(htmldir)/%.html : $(stagedir)/%.html @install -D /dev/null $@ update-gnulib: - gnulib-tool --m4-base build-aux --source-base build-aux --import git-version-gen gitlog-to-changelog gnupload + gnulib/gnulib-tool --m4-base build-aux --source-base build-aux --import git-version-gen gitlog-to-changelog gnupload maintainer-makefile announce-gen autoreconf: autoreconf --install -Wall diff --git a/Makefile.am b/Makefile.am index 8805360..ca7f018 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,11 +1,9 @@ -# Install the Autoconf Archive +# Build and install the Autoconf Archive. # # Copyright (c) 2009 by Peter Simons <simons@cryp.to> # Licensed under the terms of the GNU General Public License. dist_pkgdata_DATA = AUTHORS COPYING README -CLEANFILES = $(DIST_ARCHIVES) -MAINTAINERCLEANFILES = missing install-sh configure Makefile.in aclocal.m4 aclocaldir = $(datadir)/aclocal dist_aclocal_DATA = $(M4SOURCE) @@ -15,5 +13,17 @@ dist_html_DATA = $(HTMLFILE) EXTRA_DIST = build-aux/git-version-gen +# maintainer rules + dist-hook: echo $(VERSION) > $(distdir)/.tarball-version + +clean-local: + @rm -rf $(srcdir)/stage $(srcdir)/macro.pyc + @rm -f $(DIST_ARCHIVES) + +maintainer-clean-local: + @rm -rf $(srcdir)/build-aux + @rm -f configure Makefile.in aclocal.m4 AUTHORS ChangeLog + @rm -f INSTALL config.log config.status configure maint.mk + @rm -f autoconf-archive-*.*.*.tar.* GNUmakefile @@ -1,136 +1,6 @@ - History of the Autoconf Archive - =============================== +#+TITLE: Autoconf Archive NEWS -*- mode:org;fill-column:79; -*- +#+STARTUP: showall -2009-04-26: +* Noteworthy changes in release 2009.07.20 (2009-07-21) [alpha] - Moved the entire project to Savannah: http://www.nongnu.org/autoconf-archive/ - - Obsolete macros were deleted from the archive. The release tarballs - will no longer contain them, but the download URLs will continue to - work for the foreseeable future. For every deleted macros, there is - also a stub HTML page the features an appropriate link into the Git - repository. - - The last-modified-date section was removed from all m4 files. The - information is redundant: the GIT repository contains that - information (and much more). Originally, the idea behind that - timestamp was that users should always be able to infer the macros - "version", i.e. even from a generated configure script. In practice, - however, that didn't work well. For one, those timestamps have a - tendency to be plain wrong. Secondly, even if the timestamp was - correct, it's presence still didn't tell you that the macro you're - seeing is actually identical with the one in the Autoconf Archive. - After 9 years of trouble with that bit, I conclude that keeping - unique version information inside of the file that's supposed to be - versioned just isn't a good idea. - - The "copyleft" section has been renamed to "license" for greater - accuracy. Some licenses, like all-permissive, are not really - copylefts. - - The cross-reference graphs have been removed from the HTML pages. - These dot-graphs were useful a while ago, when the archive was - comparatively small, but with the current number 500+ macros, those - graphs tended to be far too large to be useful. - - Ensured that all files to refer to this project consistently as - "Autoconf Archive". - - Fixed some charset issues in the generated HTML files. Now, all - pages are written in plain ASCII, and special characters are encoded - as HTML entities. - - Added an by-license index page. - -2008-04-12: - - The markup format distributed by the Autoconf Archive has changed to - accomodate the aclocal utility distributed with Automake. Further - details are available in the GIT repository: - - http://git.cryp.to/autoconf-archive?a=commit;h=76c7d0ad8925ab22e3bb50c8b27b333f31303c74 - -2007-08-22: - - The macro documentation shipped in the release tarball now features - cross-references. - -2007-07-29: - - This release is the first one to be distributed under the terms of - the updated General Public License, version 3. - -2007-02-18: - - The Autoconf Archive provides a public GIT repository that can be - cloned as follows: - - git clone http://git.cryp.to/autoconf-archive - - A web front-end is available under the same URL. - - As a new feature, the web front-end allows every macro to link - directly into the repository for its own history. - -2006-10-23: - - The Autoconf Archive switched to a new distribution format. Unlike - the previous one, the new format has no visible markup and looks - pretty much like formatted text. The m4 files now link to their home - page. Also new is that the copyright licenses are spelled out. - -2005-02-14: - - The Autoconf Archive repository has moved from gnu.org to - <http://autoconf-archive.cryp.to/>, mostly because running on my own - infrastructure is far more convenient than depending on Savannah. - - This release is the first one to have an out-of-the-box installation - procedure using Autoconf/Automake. - - To travel back in time, go to: - - http://web.archive.org/web/20050215104509/http://autoconf-archive.cryp.to/ - -2005-01-28: - - The Free Software Foundation recommends the all-permissive license - for Autoconf Macros. In an heroic effort, Tom Howard has contacted - each and every macro author in an attempt to get their permission to - re-license their work under the less restrictive license. More than - 50 positive responses are received. - -2005-01-21: - - Moved all macros into a flat hierarchy. Previous releases determined - a macro's category by the name of the directory it was in. This - convention no longer necessary. Having the files in a flat hierarchy - works vastly better with the aclocal(1) utility than the previous - layout. - - This release also marks the departure from free-style version - numbers. All version information is expressed as an ISO 8601 date. A - macro's version is the date of its last modification in the Archive. - -2001-07-14: - - The Autoconf Archive repository has moved from cryp.to to - <http://www.gnu.org/software/ac-archive/>. This change brings mostly - public access to the CVS repository at Savannah. The move also - allows the project to dub itself the "GNU Autoconf Archive". - - To travel back in time, go to: - - http://web.archive.org/web/20010715000147/www.gnu.org/software/ac-archive/ - -2001-05-19: - - Moved from research.cys.de to <http://cryp.to/autoconf-archive/>. - - To travel back in time, go to: - - http://web.archive.org/web/20010119114000/http://research.cys.de/ - -2000-06-15: - - First version on-line at <http://research.cys.de/autoconf-archive/>. + The archive has moved to Savannah: http://www.nongnu.org/autoconf-archive/ diff --git a/README-maint b/README-maint index 28d8b69..0eeb5b7 100644 --- a/README-maint +++ b/README-maint @@ -1,120 +1,36 @@ -#+TITLE: Autoconf Archive -*- mode: org; coding: utf-8; fill-column: 79; -*- -#+STARTUP: hidestars odd showall +#+TITLE: Autoconf Archive README-maint -*- mode:org;fill-column:79; -*- +#+STARTUP: showall -* Maintainer's Guide +* How to set up the 'maint' branch. -*** How to check-out the 'maint' branch. + Ensure that the following packages are installed in your system: - : git clone ssh://git.sv.gnu.org/srv/git/autoconf-archive - : cd autoconf-archive - : git checkout -b maint origin/maint - : git submodule update -i + - Autoconf, Automake, and GNU Make. - : cvs -z3 -d:ext:cvs.savannah.nongnu.org:/web/autoconf-archive co -d html autoconf-archive + - Git (1.6.x.x or later) -*** How to build the web site. + - Python (2.6 or later) - The build system depends on the following external packages: + Python 2.6 is needed for textwrap.TextWrapper break_on_hypens option only. + This is being worked on decrease python version requirements. - - Git (1.6.x.x or later) + Now run the following commands: - - Python (2.6 or later) + : git clone ssh://git.sv.gnu.org/srv/git/autoconf-archive + : cd autoconf-archive + : git checkout -b maint origin/maint + : git submodule update -i + : cvs -z3 -d:ext:cvs.savannah.nongnu.org:/web/autoconf-archive co -d html autoconf-archive + : ./bootstrap.sh + : ./configure - Python 2.6 is needed for textwrap.TextWrapper break_on_hypens option only. - This is being worked on decrease python version requirements. +* How to build the web site. - Run =make -f Makefile-maint= to update the files html/*. + Run "make website". -*** How to build release tarballs. +* How to build release tarballs. - The release tarballs are created by Automake. The process depends on the - following packages to be installed: - - - Gnulib: git://git.savannah.gnu.org/gnulib.git - - - Automake and Autoconf - - - GNU Make - - Running =make -f Makefile-maint bootstrap= sets up and configures the - Autotools build. Once that's accomplished, run =make distcheck=. - - The tarballs can be uploaded to Savannah as follows: - - : build-aux/gnupload --to dl.sv.nongnu.org:/releases/autoconf-archive -- autoconf-archive-${version}.tar.{gz,bz2} - - -* THINGS TO DO - -*** TODO Document our new mailing lists. - -***** autoconf-archive-maintainers -***** autoconf-archive-commits -***** autoconf-archive-announce - -*** TODO Figure out how to handle quoting in Markdown output - - Macro descriptions frequently contain words like "numeric_limits<T>", but - in Markdown this is a literal HTML tag. The initial '<' character would - need to be quoted. - - In indented blocks of text, however, use of the '<' character does not need - to be quoted. - -*** TODO Decide how to handle non-ASCII content in m4 files - - Several macros contain non-ASCII characters, for example: - - : $ grep@ Ludo m4/*.m4 - : m4/_ac_c_ifdef.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> - : m4/ac_cxx_compiler_vendor.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> - : m4/ac_cxx_cppflags_std_lang.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> - : m4/ac_cxx_cxxflags_std_lang.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> - : m4/ac_cxx_ldflags_std_lang.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> - : m4/ac_libtoolize_cflags.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> - - The encoding currently in use is "latin1", but the m4 files don't expose - that information. The situation can be improved as follows: - - 1) Add machine-readable charset declarations (i.e. for Emacs) to all m4 - files. (Or just to those that actually use non-ASCII?) - - 2) Encode all files in UTF-8, like everyone else seems to do. (But add - charset declarations anyway?) - - 3) Restrict m4 files to ASCII. - - Pure ASCII is my favorite. - -*** TODO Improve submission guide lines on the web site - -***** New submissions should use an AX_ prefix. - - Other prefixes are fine, too, but use of AX_ inside of the Autoconf - Archive is encouraged. The AC_ prefix should definitely be avoided, - because it's reserved for the GNU Autoconf distribution. - -***** Patch submissions should put the original authors on Cc. - - Everyone is welcome to submit patches, bug reports, or suggestions to the - Autoconf Archive. If you do, please add the original authors to - carbon-copy list in the patch tracker. You don't have to, if you don't - want to look their addresses up, but it's considered good practice to - give the other authors a heads up when the macro is being changed. - -***** If possible, submit patches with Git. - - Give a usage example for git format-patch. - - If you have an account Savannah, simply request access to the Autoconf - Archive's repository so that you can use git push. - -*** TODO Customize quoting function - - String templates can be registered with a quoting function that adapts the - generated output for a target format, i.e. HTML. - -*** TODO Figure out how to generate the AUTHORS file - - The file should contain the people who committed to Git and the people who - are listed in m4 file copyright lines. + Run "make </dev/null alpha". Other possible release types are "beta" and + "major". Unfortunately, one of the tests performed during that procedure + doesn't terminate until it receives an EOF on standard input. I have no idea + why, but redirecting from /dev/null remedies the problem. @@ -0,0 +1,56 @@ +#+TITLE: Autoconf Archive TODO -*- mode:org;coding:utf-8;fill-column:79; -*- + +* TODO Document our new mailing lists. + +* TODO Decide how to handle non-ASCII content in m4 files + + Several macros contain non-ASCII characters, for example: + + : $ grep@ Ludo m4/*.m4 + : m4/_ac_c_ifdef.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> + : m4/ac_cxx_compiler_vendor.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> + : m4/ac_cxx_cppflags_std_lang.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> + : m4/ac_cxx_cxxflags_std_lang.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> + : m4/ac_cxx_ldflags_std_lang.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> + : m4/ac_libtoolize_cflags.m4:# Copyright (c) 2008 Ludovic Courtès <ludo@chbouib.org> + + The encoding currently in use is "latin1", but the m4 files don't expose + that information. The situation can be improved as follows: + + 1) Add machine-readable charset declarations (i.e. for Emacs) to all m4 + files. (Or just to those that actually use non-ASCII?) + + 2) Encode all files in UTF-8, like everyone else seems to do. (But add + charset declarations anyway?) + + 3) Restrict m4 files to ASCII. + + Pure ASCII is my favorite. + +* TODO Figure out how to generate the AUTHORS file + + The file should contain the people who committed to Git and the people who + are listed in m4 file copyright lines. + +* TODO Improve submission guide lines on the web site + +** New submissions should use an AX_ prefix. + + Other prefixes are fine, too, but use of AX_ inside of the Autoconf Archive + is encouraged. The AC_ prefix should definitely be avoided, because it's + reserved for the GNU Autoconf distribution. + +** Patch submissions should put the original authors on Cc. + + Everyone is welcome to submit patches, bug reports, or suggestions to the + Autoconf Archive. If you do, please add the original authors to carbon-copy + list in the patch tracker. You don't have to, if you don't want to look + their addresses up, but it's considered good practice to give the other + authors a heads up when the macro is being changed. + +** If possible, submit patches with Git. + + Give a usage example for git format-patch. + + If you have an account Savannah, simply request access to the Autoconf + Archive's repository so that you can use git push. diff --git a/bootstrap.sh b/bootstrap.sh new file mode 100755 index 0000000..83e5abb --- /dev/null +++ b/bootstrap.sh @@ -0,0 +1,8 @@ +#! /bin/sh + +set -eu + +gnulib/gnulib-tool --m4-base build-aux --source-base build-aux --import git-version-gen gitlog-to-changelog gnupload maintainer-makefile announce-gen +echo TODO >AUTHORS +(cd m4 && ../build-aux/gitlog-to-changelog -- master >../ChangeLog) +autoreconf --install -Wall @@ -0,0 +1,38 @@ +# autoconf-archive/cfg.mk + +# settings required by the maintainer-makefile module + +gnu_rel_host = savannah.nongnu.org +old_NEWS_hash = 5ad7b87198d89e04d76b99221591c076 +gpg_key_ID = 99089D72 +url_dir_list = http://download.savannah.nongnu.org/releases/autoconf-archive + +# maintainer targets + +M4DIR := $(srcdir)/m4 +HTMLDIR := $(srcdir)/html +STAGEDIR := $(srcdir)/stage + +M4_FILES := $(wildcard $(M4DIR)/*.m4) +MACROS := $(patsubst $(M4DIR)/%.m4,%, $(M4_FILES)) +CANON_M4_FILES := $(patsubst %,$(STAGEDIR)/%.m4,$(MACROS)) +RAW_HTML_FILES := $(patsubst %,$(STAGEDIR)/%.html,$(MACROS)) +HTML_FILES := $(patsubst %,$(HTMLDIR)/%.html,$(MACROS)) + +.PHONY: website +ALL_RECURSIVE_TARGETS += website +website: $(HTML_FILES) + +$(STAGEDIR)/%.html : $(M4DIR)/%.m4 $(STAGEDIR)/.dirCreated $(srcdir)/macro.py $(srcdir)/macro2html.py + @$(srcdir)/macro2html.py --input-encoding=latin-1 --output-encoding=latin-1 --output-dir=$(STAGEDIR) --output-suffix=.html $< + +$(HTMLDIR)/%.html : $(STAGEDIR)/%.html + @echo publish $* + @tidy -quiet -ascii --indent yes --indent-spaces 1 --tidy-mark no -wrap 80 --hide-comments yes $< >$@ + +%/.dirCreated: + @$(install_sh) -D /dev/null $@ + +taint-distcheck: + +my-distcheck: diff --git a/configure.ac b/configure.ac index 3d5cb26..3f735d2 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ dnl configure the Autoconf Archive AC_INIT([autoconf-archive], m4_esyscmd([build-aux/git-version-gen .tarball-version]), [autoconf-archive-maintainers@nongnu.org]) AC_CONFIG_AUX_DIR([build-aux]) -AM_INIT_AUTOMAKE([-Wall gnu dist-bzip2]) +AM_INIT_AUTOMAKE([-Wall gnu dist-bzip2 dist-xz]) AC_CONFIG_SRCDIR([m4/ax_have_epoll.m4]) AC_COPYRIGHT([dnl Copyright (c) 2009 by Peter Simons <simons@cryp.to> diff --git a/gnulib b/gnulib new file mode 160000 +Subproject 70329ae7cac412244aa8b7aab14583bdfa7b9a6 |