Hi All,

This time last year CMake's support for XCode wasn't up to OSX users
requirements, so reluctantly I agreed to temporarily allow the old
XCode directory to be maintained while CMake gained full XCode
support.   With OSG-2.4 on the near horizon I'd now like to review the
situation but since I'm not an OSX users I need feedback from OSX
users.

Personally I think its about time we annexed the old hand maintained
XCode directory to touch and moved across entirely to using CMake's
Xcode support,
my reasons are:

  o The hand maintained XCode projects only work for specific version
of XCode as XCode's project forward/backwards compatibility is nothing
short of atrocious.  I've
     recently heard from a long time OSX users that the lastest XCode
project files have broken the build on old OSX/XCode versions so they
can't upgrade.
     I consider this really bad situation to be in for those users and
the OSG project as whole.

  o The hand maintained XCode projects don't have any support for
automatically detecting dependencies and enable/disable modules
accordingly like
     the rest of the platforms that the OSG supports.  This situation
means that key OSG features aren't supported, and OSX users are tied
to a fixed
     set of dependencies.

  o The hand maintianed XCode projects are very easily broken by new
additions/name changes/file removals breaks the build for as long as
it takes
     the XCode projects maintainers (Stephen and Eric) to update the
XCode projects.  I don't often see updates being checked in so I can
only presume
     that alot of the time the OSX build is broken if you use the SVN
or dev versions of the OSG.  It's also just creates work for the
maintainers of
     the old Xcode projects.  Personally I'd rather people spend time
coding better software than maintaining cranky build systems.

  o The lack of consistency in build with the hand maintained XCode
projects means that more OSX will shy away from testing SVN and dev
versions than
     on other platforms, so less testing will be done and as a
consequences less problems caught and fixed before stable release go
out - the upshot is
     stability and quality of OSG under OSX will be worse than it
could and should be.

  o Having multiple XCode project build paths is confusing for end
users and maintainers like myself  - consider when someone reports OSX
build fails
     but don't mention which build path they are using it leaves us
with three possible paths to guess what they are using - gmake/Cmake
built XCode or
     the hand built XCode).

  o Having multiple XCode project build paths creates a larger testing
matrix that must be ran through to make sure OSX works fine - note
this is
     currently three different build paths that need testing.

  o Having multiple XCode project build paths means that you need more
documentation to cover all the options.

  o Hand maintained XCode projects doesn't introduce you to the CMake
build system, and creates a discontinuity in build when you move to a
new
     platform.  If you use CMake on all platforms then transition
learning curve is minimized as at least one part of the build system
is familiar.

Put this all together and I think we'd have to have really good reason
not to migrate to entirely CMake build system.  CMake does support
XCode, and I presume that it has moved forward in its XCode support
since this time last year so we should now be in a better position.

My suggest right now is that we move the hand maintained XCode
projects out of the core OpenSceneGraph distribution and in to its own
deprecated directory.

Thoughts?

Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to