I'm contemplating a piece of automation to help manage the more complex testbed layers.

A piece of code to recursively scan the code files and pull out the unique dependency chains of nested #if...#endif. Reducing the entire codebase to its preprocessor code and performing some of the minor actions as it goes.

From the chain output its relatively easy to manually or otherwise construct the minimal graphs of tests needed to cover all compile paths.

To work cleanly it would require a standardization of the .h safety wrapper defines used in squid sources. This only applies to headers bundled with squid and does not affect anything else operationally.


**** Proposed wrapper define format ****

#ifndef SQUID_PATH_FILENAME_H
#define SQUID_PATH_FILENAME_H
  ...
#endif /* SQUID_PATH_FILENAME_H */

so that each .h file was wrapped with a define indicating its current location in the sources.

Not new, most files do this already with much variation on exact texts, some do not. Just proposing it be formally adopted.


Amos
--
Please be using
  Current Stable Squid 2.7.STABLE5 or 3.0.STABLE10
  Current Beta Squid 3.1.0.1

Reply via email to