Solaris/KDE4 on Solaris10 Status
April 21, 2011 Status
Work on the KDE4.6.0/Solaris 10 project restarted again, though currently effort is being put toward getting as many qtwebkit and qt patches to the tree since there's rumor of another release of qt upcoming.
Using Sun Studio 12, not 12.1 or 12.2 (unless necessary)
I have reverted many changes that were done to try and use Solaris 10 tool chain which have some serious issues. I am not opposed to trying to do this with the basic Solaris tools, but both options should be available. KDE4.4.1 worked with all the original FOSS software (gettext/iconv/mit-kerberos5/openldap/cyrus-sasl).
Qt-4.7.2 now builds out of the repo on Solaris10/SS12. Working towards getting the rest of the builds working for KDEgdm-consolidation.
Qt-4.7.2 fails on an internal compiler bug with Solaris 10/SS12.2 so that is a stopper for right now.
exiv2-0.20 - One sticky issue has cropped up which has to do with Templates with SS12 and the exiv2-0.20. This builds from the repo if using Sun Studio 12.1. I've written in some code to base-exiv2.spec which resets the compiler to sexp (how cbe recognizes SunStudio12.1) to effect a hands-off build.
curl-7.3.21 is fixed, back to depending on FOSSmit-kerberos5, some library magic and taking care of the GSS_DLLIMP define error that existed there.
boost-1.46.1 - upgraded from 1.45. Needless to say, I was amazed that the upgrade went so smoothly. Had to tweak a couple of patches and that was it. Need to run the verification test. Also, the download fails to unroll with gtar, and I've used Solaris tar to unroll and reroll the tar ball.
akonadi-1.4.95 - add a patch for S10 to inline a fake mkdtemp function and modify for support of boost-1.46.1
avahi-0.6.22 - small fixups on directory permissions missed in the big prefix move, and use the correct patchprefix variable.
redland-1.0.8 - add small LDFLAGS add for -L|-R/usr/sfw/lib and -l gssapi_krb5
strigi-0.7.2 - modify base-strigi.spec to build using Sun Studio 12.1 (sexp), since it uses exiv2 includes....
libdbusmenu-qt-0.6.4 - add a patch for S10 to deal with the lack of function mkdtemp. created a patch for S10 to inline comparable functionality.
nss-mdns-0.10 - convert to spec file, nss.h from FreeBSD.
KDElibs-4.6.1 - Ok, I cheated. I used opencsw to pull down docbook and the dtd's and needed a little magic in the base-kde-libs.spec file. One small patch added for S10/SS12 (works fine without on S10/SS12.1), and will look at adding the docbook xml 4.5 module into the normal place on Solaris 10 so we don't have to use more external modules.
KDEpimlibs-4.6.1 - FindBooost.cmake in /opt/dtbld/share/cmake-2.6/Modules has to be updated since that version of FindBoost.cmake only supports boost <= 1.38.0. Manually add 1.45, 1.46 and 1.46.1 to the recognized versions (since you must add the major, then the major-minor version). Additionally, have to fix include/kde-common.spec to set the Boost_Include_DIR to use the new boost-1_46_1 directory. This should probably not be hard coded, but set if not set by a variable in Makefile.config Hajma (Pavel) also pointed out that we probably need to fix /opt/kde4/share/cmake-2.8/Modules/FindBoost.cmake since it only recognizes up to 1.44.
KDEbase-workspace-4.6.1 - Problems with xrandr in kcontrol/randr/randroutput.cpp (and other modules). I suspect some isolation between xrandr-1.2 and xrandr-1.3 is not done, since the problem continues
FOSSintltool - update a patch
FOSSgnome-doc-utils - spec generated from ideas from JDS spec
FOSSdocbook-dtd - this includes a custom download of the docbook 4.3-4.5 sgml and xml dtd's, so I didn't have to work too hard to managed the separate downloads and work around some pkgbuild issues. This is a custom addition to Solaris 10. It appears to work because:
FOSSgtk-doc - built without any issues, which means the docbook-dtd requirement for 4.3 works as expected.
FOSSlibpng14 - used JDS spec as example, add requirements for FOSSesound (a bit unexpected) and fixed the base-esound.spec %patchprefix variable.
Reducing the amount of clutter in the CXX flags - Steve Clamage of Sun/Oracle C++ Studio Forum has commented repeatedly about the KDE4 project's use of default flags that don't need to be there, or can cause problems. We now have a flag that can be put in the Makefile.config file called "CLAMAGE_CXXFLAG_CLAIMS=YES" which will enable the infrastructure to build with the "reduced" set of flags. STDCXX and BOOST are two packages that have their own set of "diffs" that include these kinds of flags. STDCXX is in testing with reduced flags, and BOOST will be next. If you don't set the CLAMAGE_CXXFLAG_CLAIMS flag, you get the standard behavior.