Bug 51190

Summary: Solaris fails to compile xjdxgen.c
Product: [Applications] kiten Reporter: David F. Newman <david>
Component: generalAssignee: Jason Katz-Brown <jasonkb>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Solaris   
Latest Commit: Version Fixed In:

Description David F. Newman 2002-11-25 20:15:16 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc 2.95.3 
OS:          Solaris

A change commited with version 1.8 of xjdxgen.c causes the build of this file to fail on Solaris.

Here was the change:
-uint32_t dbyte;
-uint32_t  *jindex;
-uint32_t indptr,llone;
+u_int32_t dbyte;
+u_int32_t  *jindex;
+u_int32_t indptr,llone;

Solaris doesn't seem to have u_int32_t, however, it does have uint32_t and when the change is reverted Solaris can compile this file.  

The comment on the commit isn't informative enough to know why the change was made so I can only assume there is a platform out there that requires it.  So the solution would be something along the lines of configure testing for the existance of u_int32_t and uint32_t and setting HAVE_U_INT32_T and HAVE_UINT32_T.
Comment 1 Anne-Marie Mahfouf 2005-01-28 22:14:48 UTC
Tested by Mats Röjestål who successfully compiled the kdeedu module from cvs HEAD on Solaris 10_x86.
I changed "#include <sys/types>"  to "#include <inttypes.h>" which is a more
portable and conforming to standard.
With thanks to Mats.