summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--.gitmodules6
-rw-r--r--.prev-version1
-rw-r--r--Makefile-maint2
-rw-r--r--Makefile.am16
-rw-r--r--NEWS138
-rw-r--r--README-maint132
-rw-r--r--TODO56
-rwxr-xr-xbootstrap.sh8
-rw-r--r--cfg.mk38
-rw-r--r--configure.ac2
m---------gnulib0
12 files changed, 154 insertions, 247 deletions
diff --git a/.gitignore b/.gitignore
index f19b30a..b72b35b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -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
diff --git a/NEWS b/NEWS
index 424f2ff..6b3f5ae 100644
--- a/NEWS
+++ b/NEWS
@@ -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.
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..5d540de
--- /dev/null
+++ b/TODO
@@ -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
diff --git a/cfg.mk b/cfg.mk
new file mode 100644
index 0000000..488fe9e
--- /dev/null
+++ b/cfg.mk
@@ -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