[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: [PATCH] Re: KSocks on non-linux systems.
From:       Rob Napier <rnapier () employees ! org>
Date:       2001-03-19 20:16:48
[Download RAW message or body]

On Mon, Mar 19, 2001 at 02:48:17PM -0500, Rob Napier wrote:
> On Thu, Mar 15, 2001 at 12:54:01PM -0800, Waldo Bastian wrote:
> > >From George's CVS message for those who run non-linux but don't read kde-cvs 
> >
> > Please:  anyone on non-linux/glibc2 platforms could you check this code and
> > see what needs to be done to make it compile for you?  I am sure that there
> > will be subtle libc and #include differences that need to be addressed.
> 
> Solaris fails because socklen_t doesn't exist. The following patch
> should fix it (compiles on Solaris, but untested; haven't tried to
> compile on Linux).

Ah crude. Doesn't quite work. The problem is on Solaris if XPG4 isn't
defined, then this needs to be int instead of size_t (which is uint,
so it probably "matters"). If I just set it to 'int', though, is this
going to break other platforms? Any AIX testers?

HPUX11 defines socklen_t only if _XOPEN_SOURCE_EXTENDED is set. Is
this set for HPUX builds? I'm betting no. Otherwise these functions
all use 'int' (just like Solaris).

For the moment, I recommend changing "size_t" to "int" (corrected
patch below) and see if that breaks anyone. The downside is that you
won't really know whether you're having trouble unless it breaks at
runtime, since it only throws a warning about signness being screwed
up.

Rob

---

New file kdelibs/acconfig.h:
/* Define to `size_t' if <sys/types.h> doesn't define.  */
#undef socklen_t

Index: configure.in.in
===================================================================
RCS file: /home/projects/kdecvs/cvsroot/kdelibs/kdecore/configure.in.in,v
retrieving revision 1.3
diff -u -3 -p -r1.3 configure.in.in
--- configure.in.in     2001/03/08 22:20:31     1.3
+++ configure.in.in     2001/03/19 19:47:06
@@ -67,4 +67,6 @@ AC_CHECK_HEADERS(netinet/in.h,
  ]
)
 
AC_CHECK_TYPE(socklen_t,int)

dnl AC_OUTPUT(kdecore/kde-config.cpp)
 
>> Visit http://master.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic