Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Aug 2006 18:45:51 -0500 (CDT)
From:      Stephen Montgomery-Smith <stephen@math.missouri.edu>
To:        Sean McNeil <sean@mcneil.com>
Cc:        openoffice@freebsd.org
Subject:   Re: 2.0 fails to compile on amd64
Message-ID:  <20060819184411.B69059@math.missouri.edu>
In-Reply-To: <1156026962.30100.3.camel@triton.mcneil.com>
References:  <1156012505.63467.0.camel@triton.mcneil.com>  <44E77A34.3080606@math.missouri.edu> <1156021188.1452.11.camel@triton.mcneil.com> <44E77E2A.2080808@math.missouri.edu> <1156022154.2020.4.camel@triton.mcneil.com> <1156026025.24431.7.camel@triton.mcneil.com> <1156026962.30100.3.camel@triton.mcneil.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sat, 19 Aug 2006, Sean McNeil wrote:

> On Sat, 2006-08-19 at 15:20 -0700, Sean McNeil wrote:
>> On Sat, 2006-08-19 at 14:15 -0700, Sean McNeil wrote:
>>> On Sat, 2006-08-19 at 16:10 -0500, Stephen Montgomery-Smith wrote:
>>>> Sean McNeil wrote:
>>>>> On Sat, 2006-08-19 at 15:53 -0500, Stephen Montgomery-Smith wrote:
>>>>>
>>>>>> Sean McNeil wrote:
>>>>>>
>>>>>>> I get the following error:
>>>>>>>
>>>>>>> In file included from conditn.c:37:
>>>>>>> system.h:542: error: conflicting types for 'gethostbyname_r'
>>>>>>> /usr/include/netdb.h:228: error: previous declaration of
>>>>>>> 'gethostbyname_r' was here
>>>>>>> dmake:  Error code 1, while making '../../unxfbsdx.pro/obj/conditn.obj'
>>>>>>> '---* tg_merge.mk *---'
>>>>>>>
>>>>>>> ERROR: Error 65280 occurred while
>>>>>>> making /usr/ports/editors/openoffice.org-2.0/work/OOD680_m1/sal/osl/unx
>>>>>>> dmake:  Error code 1, while making 'build_instsetoo_native'
>>>>>>> '---* *---'
>>>>>>> *** Error code 255
>>>>>>
>>>>>> The problem you have (which by the way will only occur with a very
>>>>>> recent version of FreeBSD 6.1) was fixed in Openoffice 2.0.3, but when
>>>>>> 2.0.4.m1 was ported (probably yesterday or today) the porter forgot to
>>>>>> carry across the fix.  My plan is to wait until the porter realizes this
>>>>>> and fixes it.  The problem is unrelated to amd64.
>>>>>
>>>>>
>>>>> OK, thanks.  The fix would appear to be fairly obvious in that includes
>>>>> of netdb.h should not be done in system.h when the replacement
>>>>> gethostbyname_r is used.  I see that there is a direct include and it is
>>>>> included again when NETBSD or SCO is defined.  Seems to me the first
>>>>> instance should just be removed.
>>>>>
>>>>> 2.0.4.m1.. is that a development release?  Shouldn't it have been update
>>>>> only for -devel?
>>>>
>>>> Well the 2.0.3 did have these particular problems fixed (and if you want
>>>> to fix it yourself you should really try to look at the openoffice port
>>>> of a few days ago, because there are similar problems with other *_r
>>>> functions), but it had some other problem which ended with a kind of
>>>> "spinlock" error.  My impression is that this was a very difficult
>>>> problem to figure out, and so my guess is that the porter jumped at the
>>>> chance when a later version came out, in hope of fixing this.
>>>>
>>>> My impression is that OO is a really hard port to maintain.  When it
>>>> works, it works really well, and I do a "make package" as well as "make
>>>> install" so that it is easy for me to reinstall at a later date when the
>>>> OO port is going through a season of not working.  If you are in need of
>>>> a working OO right now try to get a package from somewhere.  I could
>>>> even give you mine if you like.
>>>
>>> Thanks for the offer, but I already have OO installed.  I installed it
>>> previous to the recent update by maho in cvs just 8 hours ago.
>>> portupgrade is what brought the issue to my attention.  The version I
>>> have installed is working without problems.
>>>
>>> It is a shame that people update ports to fix issues with -CURRENT and
>>> break functionality for everyone else that tracks the stable builds.
>>
>> I did some poking around and found that it is actually the fault of an
>> MFC that happened about 4 weeks ago:
>>
>> netdb.h Revision 1.38.2.2
>>
>> This added the prototypes that were put in the main branch about 4
>> months ago sd
>>
>> netdb.h Revision 1.41
>>
>> __FreeBSD_version hasn't been bumped, so the best I could come up with
>> is:
>
> Oops! Another misread on my part.  The reldate was bumped when this was
> done.  The proper test should be for 601103 and that would solve this
> issue:
>
> --- sal/osl/unx/socket.c.orig	Sat Aug 19 14:35:34 2006
> +++ sal/osl/unx/socket.c	Sat Aug 19 14:35:51 2006
> @@ -813,7 +813,7 @@
> 	const char *name, struct hostent *result,
> 	char *buffer, int buflen, int *h_errnop)
> {
> -#if defined(LINUX) || (defined(FREEBSD) && (__FreeBSD_version >= 700015))
> +#if defined(LINUX) || (defined(FREEBSD) && (__FreeBSD_version >= 601103))
> 	struct hostent *__result; /* will be the same as result */
> 	int __error;
> 	__error = gethostbyname_r (name, result, buffer, buflen,
> --- sal/osl/unx/system.h.orig	Sat Aug 19 14:35:01 2006
> +++ sal/osl/unx/system.h	Sat Aug 19 14:35:13 2006
> @@ -537,7 +537,7 @@
> struct tm *localtime_r(const time_t *timep, struct tm *buffer);
> struct tm *gmtime_r(const time_t *timep, struct tm *buffer);
> #endif /* !defined FREEBSD || (__FreeBSD_version < 500112) */
> -#if !defined(FREEBSD) || (__FreeBSD_version < 700015)
> +#if !defined(FREEBSD) || (__FreeBSD_version < 601103)
> struct hostent *gethostbyname_r(const char *name, struct hostent *result,
> 								char *buffer, int buflen, int *h_errnop);
> #endif /* !defined(FREEBSD) || (__FreeBSD_version < 700015) */
> --- sal/osl/unx/system.c.orig	Sat Aug 19 14:38:03 2006
> +++ sal/osl/unx/system.c	Sat Aug 19 14:38:39 2006
> @@ -343,7 +343,7 @@
> }
> #endif /* defined SCO */
>
> -#if !defined(FREEBSD) || (__FreeBSD_version < 700015)
> +#if !defined(FREEBSD) || (__FreeBSD_version < 601103)
>
> extern int h_errno;
>
>
>
>


You need to make a similar change in
moz/unxfbsdi.pro/misc/build/mozilla/nsprpub/pr/src/misc/prnetdb.c

I'm trying it now to see if it will compile all the way through.




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