It is rough going, for a few reasons. Now, don’t get me wrong, NTP is highly portable. Grab the software from the the
project page and odds are that it will “just work”. The first problem is getting it to work with our internal
build system. This is my first port of a major package to Solaris, and is pretty much done in my spare time. As such, I thought I
would try to make it a learning experience and do it right, instead of doing it good enough
So, I started looking at other packages to see how their Makefiles and directories were structured. I discovered a lot, but
there is very little (read:no) documentation about the proper way to make a Makefile for our build system, except to say
“go look at some of these packages, they are good examples.”
Well, it turns out that the Solaris builds have a different approach than NTP does. It is probably due to
historical reasons, and has to due with the need to build crossplatform. Anyway, it has been slow going.
The other big problem I have had is that by default, Solaris builds with strict compiler checking turned on.
This has meant that many things that were warnings become errors. I dutifully find each one, figure out why
the warning exists and correct it, and resubmit the fix to the NTP project. This is good timing because
the NTP project team recently decided to drop support for K and R C, and require ANSI-C. So, I have been finding
most of the incompatibilites. The bad thing is that the ANSI-C requirement will not go into effect until
the next NTP release, so sometimes my fixes cannot be incorporated until then.
Anyway, I hope that we can get NTP version 4 into Solaris soon. With the launch of OpenSolaris,
perhaps I can get some help on it as well.