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>