On May 2, 2012, at 11:17 AM, Daniel Roßberg wrote:

> Wasn't there a time when BRL-CAD was intended to run on any piece of
> hardware, SGI etc.?
> 
> 2012/5/2 Tom Browder <[email protected]>:
>> 
>> Moving to CMake was a good move in retrospect, and anyone using
>> BRL-CAD has to expect modern practices and improvements.

I don't believe those two to be mutually exclusive.

I still entirely expect BRL-CAD to compile under most any environment we can 
get our hands on.  The main difference is that we don't spend active effort 
maintaining support for environments we don't actively use (such as K&R 
compilers, IRIX, etc) and can't readily and continuously get our hands on.  
That then raises two points: compilation expectations and fallbacks.

Setting compilation expectations is nothing new.  Before, we expected a 
compiler, a command line, various utilities, non-embedded but working hardware, 
etc.  That's all still true.

I'd say it's entirely reasonable these days to expect a relatively modern 
compiler that supports c89, for example, because every system we have a 
compiler on supports it in some fashion or we can get a modern compiler on that 
system.  The difference is merely not taking active steps to *preserve* 
functionality on dead/dying platforms (e.g., K&R compilers, IRIX, Pre-pentium 
CPUs, etc).

As for fallbacks, the onus on our hands is to make sure we build gracefully 
regardless of the environment.  Just because it's not a (relatively modern) 
compiler we don't often use, we should still build with it.  Same for hardware. 
 It's not about popularity.  It's age and access.

If we have to turn off X11 support or OpenGL or even C++ support because we 
don't know how to with a particular unknown compiler, that would be a 
reasonable fallback behavior.  Requiring or assuming a given compiler, assuming 
only popular hardware, requiring some feature that could have been made 
optional, and such would all be wrong.  A compilation failure is always wrong.  
If cmake configuration can complete, the build should complete.

That said, I expect there will be many migration pains and portability bugs to 
sort out over the upcoming years as the new build system encounters 
unpopular-but-modern environments and will need to adapt.  That's all the more 
reason to test for features and functionality, not overly specific symptoms or 
generalized platforms.  All in due time.  :)

Cheers!
Sean


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
BRL-CAD Developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-devel

Reply via email to