Differences between revisions 6 and 7
Revision 6 as of 2008-05-08 03:25:59
Size: 1702
Editor: EricLemings
Comment:
Revision 7 as of 2009-09-20 23:03:01
Size: 1708
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 57: Line 57:
 * [http://svn.apache.org/viewvc/stdcxx/branches/autotools/ Subversion branch]
 * [http://people.apache.org/~elemings/autotools/distcheck.out.1 Sample output from `make distcheck` target]
 * [http://people.apache.org/~elemings/autotools/ Sample distributions]
 * [[http://svn.apache.org/viewvc/stdcxx/branches/autotools/|Subversion branch]]
 * [[http://people.apache.org/~elemings/autotools/distcheck.out.1|Sample output from `make distcheck` target]]
 * [[http://people.apache.org/~elemings/autotools/|Sample distributions]]

Plan

The scope of this work is split into two overall parts:

  • Autoconf m4 configuration checks
  • All other distribution and maintenance files

There is still lots of cleanup to be done but no show-stoppers.

Configuration Checks

Porting the configuration checks into Autoconf macros comprise the bulk of the work. The work required for the macros can be organized as follows:

  1. C
    • 1.1. Standard C Language
      • 1.1.1. Preprocessing Symbols (e.g. __func__)

        1.1.2. Intrinsic Types (e.g. long long)

      1.2. Standard C Library
      • 1.2.1. Header Files (e.g. <wchar.h>)

        • 1.2.1.1. Constants (e.g. WEOF)

          1.2.1.2. Type Definitions (e.g. wint_t)

          1.2.1.3. Functions (e.g. fwprintf)

      1.3. Non-Standard Features
  2. C++
    • 2.1. Standard C++ Language 2.2. Standard C++ Library 2.3. Non-Standard Features
  3. Environment
    • 3.1. Computer Architecture (e.g. atomic operations) 3.2. Operating System (e.g. version info, POSIX conformance, multithreading) 3.3. External Software (e.g. optional libraries, diagnostic tools)

The current plan is to tackle everything in Section 2.1 before moving on to the rest.

Most of the proof-of-concept work for the remaining stages has also been prototyped. Its just a matter of cleaning up the prototypes and integrating the new infrastructure into the baseline, more or less.

Prototype

AutoTools (last edited 2009-09-20 23:03:01 by localhost)