incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Black <>
Subject Re: Nightly testing failures on AIX 5.3
Date Fri, 08 Dec 2006 23:58:03 GMT
Greetings all.

Attached is a different solution to (and Changelog for) the core issue 
observed, that of the incorrect RPATH value for the test suite on AIX 
5.3.  Rather than defining directory specific LDFLAGS variables, this 
patch defines a new variable (RPATH), and appends it to the LDFLAGS 
variable in each directory's makefile, along with the relevant directory 

Martin and I spent probably an hour or so this morning discussing 
different ways to generate the proposed sectional setup. 
The conclusion that was reached was that generating these files would be 
an extremely verbose process.  In addition, the fatal flaw is the 
inability to remove or combine flags.  An example is if a pair of flags 
defined in different files (such as and are mutually exclusive.  Another example is the MSVC 
runtime library options, which vary on two or three build mode options.

The basic layout of the sectional makefile would likely have been as 
The 'core' contains variables that are used in all builds 
with a given compiler on a given platform.  This is mostly the same as 
the existing
In addition to this makefiles, a generated makefile would exist for each 
  build type attribute, and would be named like 
The attributes are debug/optimized, archive/shared, 
nothread/posix/solaris/dec, and narrow/wide.  These variables would 
contain the (narrow) set of variables which do vary.  These variables 
would be SUFFIX (only for archive/shared), CXXFLAGS, CPPFLAGS, LDFLAGS, 
  and ARFLAGS.

Within the .config files, these changing variables would be named like 
VARIABLE.mode (ie: CXXFLAGS.debug and LDFLAGS.shared, taking the place 
of the existing DEBUG_CXXFLAGS and SHARED_LDFLAGS variables respectively).

A similar set of files would exist in each major subdirectory.  The 
variables within the .config files would be named like VARIABLE.dir (for 
the in each directory) and VARIABLE.dir.mode (for the in each directory).

Another concept that was discussed was the possibility of creating a 
compiler driver.  This driver would handle translating a set of gcc 
style compiler switches into switches understood by each compiler, along 
with such things as template repository locations and rpath control 

--Andrew Black

View raw message