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

  • No labels