With my mods over the last couple of week I believe I have almost
fulfilled the requirements for demonstrating strict standards
compilation and testing for the BRL-CAD trunk.  Basically my mods so
far have been:

1.  Fixed some old and crufty hangovers for some obscure corners of source code.

2.  Determined the 7  functions that seem to be the remaining show
stoppers (4 are C99 and 3 are POSIX):

C99:

realpath
gethostname
strcasecmp
strncasecmp

POSIX:

fdopen (POSIX.1-1990)
fileno (POSIX)
posix_memalign (POSIX.1d)


[The C99 functions now have working bu_* versions (thanks for the
help, Sean, in filling in the FIXMEs).  I have no-action replacements
for the other 3 if wanted.]

3.  Added reliable CMake code to test for those 7 functions.  Note
that the CMake try_compile and try_run functions are the ones I
believe should be used for rigorous function testing in order to
properly control the compiler setting for consistency.

Given the above, I am in the final stages of satisfying two standards
with the trunk as it is (using gcc on Debian):

  C99
  POSIX 200112L

I see the changes Cliff just made to CMake and I don't really
understand.  IMHO, the goal should be the strict use during
debug--otherwise I don't see how we ever advance.  Those standards
have been around for over 10 years!  To quote Bjarne Stroustrup (from
the 4th edition of "The C++ Programming Language" [C++11]), page vi:
"if you stick to older styles [standards], you will be writing
lower-quality and worse-performing code.

Best regards,

-Tom

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk
_______________________________________________
BRL-CAD Developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-devel

Reply via email to