firefox3 build fails on alpha - 1 file fixed

Anton Shterenlikht mexas at bristol.ac.uk
Tue Aug 5 08:26:24 UTC 2008


On Mon, Aug 04, 2008 at 09:09:08AM -0400, John Baldwin wrote:
> On Friday 01 August 2008 04:55:27 am Anton Shterenlikht wrote:
> > On Thu, Jul 31, 2008 at 05:42:17PM -0500, Jeremy Messenger wrote:
> > > On Thu, 31 Jul 2008 17:24:43 -0500, Anton Shterenlikht
> > >
> > > <mexas at bristol.ac.uk> wrote:
> > > > On Sun, Jul 13, 2008 at 12:59:29AM +0200, Wilko Bulte wrote:
> > > >> Quoting Jeremy Messenger, who wrote on Sat, Jul 12, 2008 at 05:44:11PM
> > > >> -0500 ..
> > > >>
> > > >> > On Tue, 08 Jul 2008 07:23:52 -0500, Anton Shterenlikht
> > > >> >
> > > >> > <mexas at bristol.ac.uk> wrote:
> > > >> > > A followup. It seems xptcinvoke_freebsd_alpha.cpp is missing. It
> > > >> > > is used in Makefile:
> > > >> >
> > > >> > I think most of us don't have any alpha machine. You might have to
> > > >>
> > > >> create
> > > >>
> > > >> > patch for us. I think, the alpha support has been dropped so it's
> > > >> > pointless for us to work on alpha support.
> > > >>
> > > >> The latest release of FreeBSD supporting the Alpha platform port is
> > > >> RELENG_6.  Anything newer no longer supports Alpha.
> > > >
> > > > I'm happy with RELENG_6 on alpha.
> > > > I'm happy to test firefox3 on alpha, but need to learn about pathes.
> > > >
> > > > In this particular case it seems that (at least) 2 files
> > > > are missing from the distribution:
> > > >
> > > > 	xptcinvoke_freebsd_alpha.cpp
> > > > 	xptcstubs_freebsd_alpha.cpp
> > > >
> > > > (curiously the corresponding *alpha.cpp files are present for osf1,
> > > > linux,
> > > > openvms and openbsd).
> > > >
> > > > I think that whoever created the tar file simply forgot to add the
> > > > freebsd
> > > > files.
> > > >
> > > > I did try to contact mozilla developers directly, but no reply so far.
> > > > I understand that mozilla developers put out the tar file. Perhaps the
> > > > port maintainers could alert the mozilla team about the missing files,
> > > > or maybe even get these 2 files. I'd be very greatful.
> > >
> > > Have you tried 3.0.1 yet? The Makefile.in has changed by Mozilla team:
> > >
> > > ---------------------------------------------------
> > > ######################################################################
> > > #
> > > # Tru64/Alpha
> > > #
> > > ifeq ($(OS_ARCH)$(OS_TEST),OSF1alpha)
> > > CPPSRCS		:= xptcinvoke_osf1_alpha.cpp xptcstubs_osf1_alpha.cpp
> > > ASFILES		:= xptcinvoke_asm_osf1_alpha.s xptcstubs_asm_osf1_alpha.s
> > > endif
> > > #
> > > # Linux/Alpha
> > > #
> > > ifneq (,$(filter Linuxalpha FreeBSDalpha
> > > NetBSDalpha,$(OS_ARCH)$(OS_TEST))) CPPSRCS		:= xptcinvoke_linux_alpha.cpp
> > > xptcstubs_linux_alpha.cpp endif
> > > ---------------------------------------------------
> > >
> > > But I have no idea if it works.
> >
> > I just tried again, and get the same error:
> >
> > gmake[8]: Entering directory
> > `/usr/ports/www/firefox3/work/mozilla/xpcom/reflect /xptcall/src/md/unix'
> > gmake[8]: *** No rule to make target `xptcinvoke_freebsd_alpha.o', needed
> > by `li bxptcmd.a'.  Stop.
> > gmake[8]: Leaving directory
> > `/usr/ports/www/firefox3/work/mozilla/xpcom/reflect/ xptcall/src/md/unix'
> > gmake[7]: *** [libs] Error 2
> >
> > Also my Makefile.in under
> > /usr/ports/www/firefox3/work/mozilla/xpcom/reflect/xptcall/src/md/unix
> >
> > still requires these 2 files:
> >
> > ######################################################################
> > # Alpha
> > ######################################################################
> > #
> >
> > [skip]
> >
> > #
> > # FreeBSD/Alpha
> > #
> > ifeq ($(OS_ARCH)$(OS_TEST),FreeBSDalpha)
> > CPPSRCS         := xptcinvoke_freebsd_alpha.cpp xptcstubs_freebsd_alpha.cpp
> > endif
> >
> > which are missing:
> 
> I would compare the FreeBSD and Linux files in the www/firefox port and see 
> what differences there are and try to apply this differences to the Linux 
> files in www/firefox3 to generate FreeBSD files for www/firefox3.

John, thank you. I did just that and it seems to have worked.
I had only to remove 7 lines and add 2. Now xptctubs compiles fine.

The build now fails at another file (see below), so I won't submit a patch yet.
However, if anybody is interested I can post the corrected
patch-xptcall-alpha here.

By the way patch-xptcall-sparc64 from firefox2 port is not
present in firefox3 port, therefore I assume firefox3 build
also fails on freebsd sparc64.

The new failure point:

gmake[5]: Entering directory `/usr/ports/www/firefox3/work/mozilla/netwerk/cookie/src'
nsCookieService.cpp
c++ -o nsCookieService.o -c  -DMOZILLA_INTERNAL_API -D_IMPL_NS_COM -DEXPORT_XPT_API -DEXPORT_XPTC_API -D_IMPL_NS_COM_OBSOLETE -D_IMPL_NS_GFX -D_IMPL_NS_WIDGET -DIMPL_XREAPI -DIMPL_NS_NET -DIMPL_THEBES  -DOSTYPE=\"FreeBSD6\" -DOSARCH=FreeBSD -DIMPL_NS_NET  -I. -I. -I../../../dist/include/xpcom -I../../../dist/include/string -I../../../dist/include/pref -I../../../dist/include/storage -I../../../dist/include   -I../../../dist/include/necko -I/usr/local/include/nspr   -I/usr/include  -I../../../dist/sdk/include -I/usr/local/include   -fPIC  -I/usr/local/include  -I/usr/local/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-long-long -O -pipe -mcpu=ev6 -mieee -O2 -fno-strict-aliasing -fno-strict-aliasing -fshort-wchar -pipe  -DNDEBUG -DTRIMMED -O -Werror  -I/usr/local/include  -I/usr/local/include -DMOZILLA_CLIENT -include ../../../mozilla-config.h nsCookieService.cpp
../../../dist/include/xpcom/nsTHashtable.h: In static member function `static PRBool nsTHashtable<EntryType>::s_MatchEntry(PLDHashTable*, const PLDHashEntryHdr*, const void*) [with EntryType = nsCookieEntry]':
../../../dist/include/xpcom/nsTHashtable.h:335:   instantiated from `PRBool nsTHashtable<EntryType>::Init(PRUint32) [with EntryType = nsCookieEntry]'
nsCookieService.cpp:418:   instantiated from here
../../../dist/include/xpcom/nsTHashtable.h:368: warning: cast from `const PLDHashEntryHdr*' to `const nsCookieEntry*' increases required alignment of target type
gmake[5]: *** [nsCookieService.o] Error 1

I'm not sure if the problem is with nsCookieService.cpp or nsTHashtable.h

thanks
anton

-- 
Anton Shterenlikht
Room 2.6, Queen's Building
Mech Eng Dept
Bristol University
University Walk, Bristol BS8 1TR, UK
Tel: +44 (0)117 928 8233 
Fax: +44 (0)117 929 4423


More information about the freebsd-alpha mailing list