Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 Mar 2002 18:33:06 -0500
From:      Alan Eldridge <alane@geeksrus.net>
To:        ports@freebsd.org, kde@freebsd.org
Cc:        dwcjr@freebsd.org
Subject:   Re: [kde-freebsd] kde breakage under -current
Message-ID:  <20020305233306.GA93224@wwweasel.geeksrus.net>
In-Reply-To: <20020305232627.GA46401@leviathan.inethouston.net>
References:  <20020305232627.GA46401@leviathan.inethouston.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 05, 2002 at 05:26:27PM -0600, David W. Chapman Jr. wrote:
>When I try to build kdelibs2 I get the following under recent 
>-current builds
>
>,.deps/kextsock.pp -c kextsock.cpp  -fPIC -DPIC -o .libs/kextsock.o
>kextsock.cpp: In method `struct kde_addrinfo * 
>KExtendedSocketLookup::results()'
>:
>kextsock.cpp:294: implicit declaration of function `int __htons(...)'
>kextsock.cpp:353: implicit declaration of function `int __htonl(...)'

Yes. Recent changes to netinet/in.h have made it require the inclusion
of arpa/inet.h. As well, arpa/inet.h must include netinet/in.h. IOW, each
of these files must #include the other in order to work correctly.

As you  might guess, this is a less than desirable situation. A #includes
B and B #includes A is a very bad arrangement. However, unless both files
are overhauled, that is what will have to happen.

To say that this sucks is an understatement. I already have an open PR
on the arpa/inet.h problem. Now that the reverse dependency has been
made to occur, I have written portmgr@ requesting a referral to a
mainline developer who can handle this mess in an expedient manner.

In the meantime, you need to find every occurence of either of those
files being included, and make sure the other is included as
well. netinet/in.h needs to come first. 

Since the problem is a large one, and any change will not happen
without a reasonable amount of deliberation, I suggest you submit a PR
with a patch for kdelibs source tree.

-- 
Alan Eldridge
"Dave's not here, man."

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020305233306.GA93224>