Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 172325 - dev-java/swt-3.2.2 - build of Mozilla component fails on amd64
Summary: dev-java/swt-3.2.2 - build of Mozilla component fails on amd64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High normal
Assignee: Java team
URL:
Whiteboard:
Keywords:
: 179915 (view as bug list)
Depends on:
Blocks: 179815
  Show dependency tree
 
Reported: 2007-03-26 18:30 UTC by Pierre Y.
Modified: 2007-05-28 21:56 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
swt-3.2.2.ebuild (swt-3.2.2.ebuild,5.75 KB, text/plain)
2007-04-12 04:41 UTC, Alexandre Rostovtsev (RETIRED)
Details
converted x86 firefox patch for amd64 (11_amd64_firefox.patch,16.27 KB, patch)
2007-05-26 07:00 UTC, Vlastimil Babka (Caster) (RETIRED)
Details | Diff
amd64 firefox patch converted from x86 (11_amd64_firefox.patch,17.13 KB, patch)
2007-05-27 09:51 UTC, Vlastimil Babka (Caster) (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pierre Y. 2007-03-26 18:30:49 UTC
* Building the Mozilla component
g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom.cpp
g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom_custom.cpp
g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom_structs.cpp
Dans le fichier inclus à partir de xpcom_structs.h:29Dans le fichier inclus à partir de xpcom_structs.h:29,
          à partir de xpcom_structs.cpp:30:
xpcom.h:18:25: erreur: nsEmbedAPI.h : Aucun fichier ou répertoire de ce type
,
          à partir de xpcom.cpp:30:
xpcom.h:18:25: erreur: nsEmbedAPI.h : Aucun fichier ou répertoire de ce type
Dans le fichier inclus à partir de xpcom_structs.h:29,
          à partir de xpcom_custom.cpp:13:
xpcom.h:18:25: erreur: nsEmbedAPI.h : Aucun fichier ou répertoire de ce type
make: *** [xpcom_structs.o] Erreur 1
make: *** Attente des tâches non terminées....
xpcom.cpp: In function ‘jint Java_org_eclipse_swt_internal_mozilla_XPCOM_NS_1InitEmbedding(JNIEnv*, _jclass*, jlong, jlong)’:
xpcom.cpp:94: erreur: ‘NS_InitEmbedding’ was not declared in this scope
xpcom.cpp: In function ‘jint Java_org_eclipse_swt_internal_mozilla_XPCOM_NS_1TermEmbedding(JNIEnv*, _jclass*)’:
xpcom.cpp:122: erreur: ‘NS_TermEmbedding’ was not declared in this scope
make: *** [xpcom_custom.o] Erreur 1
make: *** [xpcom.o] Erreur 1

!!! ERROR: dev-java/swt-3.2.2 failed.
Call stack:
  ebuild.sh, line 1614:   Called dyn_compile
  ebuild.sh, line 971:   Called qa_call 'src_compile'
  environment, line 4749:   Called src_compile
  swt-3.2.2.ebuild, line 161:   Called die

!!! Failed to build Mozilla support
!!! If you need support, post the topmost build error, and the call stack if relevant.
!!! A complete build log is located at '/var/tmp/portage/dev-java/swt-3.2.2/temp/build.log'.

!!! When you file a bug report, please include the following information:
GENTOO_VM=blackdown-jdk-1.4.2  CLASSPATH="" JAVA_HOME="/opt/blackdown-jdk-1.4.2.03"
JAVACFLAGS="-source 1.4 -target 1.4" COMPILER=""
and of course, the output of emerge --info
Comment 1 Pierre Y. 2007-03-26 18:31:28 UTC
# emerge --info
Portage 2.1.2.2 (default-linux/amd64/2006.1/desktop, gcc-4.1.2, glibc-2.5-r1, 2.6.20-gentoo-r3 x86_64)
=================================================================
System uname: 2.6.20-gentoo-r3 x86_64 Intel(R) Pentium(R) D CPU 3.00GHz
Gentoo Base System version 1.12.9
Timestamp of tree: Mon, 26 Mar 2007 17:50:01 +0000
dev-java/java-config: 1.3.7, 2.0.31-r5
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.15-r1
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.20-r2
ACCEPT_KEYWORDS="amd64 x86 ~amd64 ~x86"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/php/apache1-php5/ext-active/ /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo"
CXXFLAGS="-march=nocona -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.club-internet.fr/pub/mirrors/gentoo http://distfiles.gentoo.org"
LANG="fr_FR.UTF-8"
LC_ALL="fr_FR.UTF-8"
LINGUAS="fr en us"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/portage/local/layman/java-experimental"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X alsa amd64 apache2 arts avi bash-completion berkdb bitmap-fonts cairo cdr cli cracklib crypt cups dbus dlloader dri dvd dvdr eds emboss encode esd exif fam firefox flac fortran galago gdbm gif gnome gphoto2 gpm gstreamer gtk gtk2 hal iconv ipv6 isdnlog java jpeg kde ldap libg++ mad midi mikmod mono mp3 mpeg musepack mysql mysqli ncurses nls nptl nptlonly nsplugin ogg opengl oss pam pcre pdflib perl png ppds pppd python qt3 qt4 quicktime readline reflection ruby samba sdl seamonkey session spell spl ssl svg tcpd tiff truetype truetype-fonts type1-fonts udev unicode usb vorbis xine xinetd xml xorg xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" CAMERAS="canon ptp2" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="fr en us" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa fbdev"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-03-26 18:54:08 UTC
Reopen with error messages in English; set your locales to C when reporting bugs.
Comment 3 Pierre Y. 2007-03-26 19:07:27 UTC
I hope I'm right now.

# export LC_ALL=C

# emerge --update swt

...

 * Building the Mozilla component
g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom.cpp
g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom_custom.cpp
g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom_structs.cpp
In file included from xpcom_structs.h:29,
                 from xpcom.cpp:30:
xpcom.h:18:25: error: nsEmbedAPI.h: No such file or directory
In file included from xpcom_structs.h:29,
                 from xpcom_custom.cpp:13:
xpcom.h:18:25: error: nsEmbedAPI.h: No such file or directory
xpcom.cpp: In function 'jint Java_org_eclipse_swt_internal_mozilla_XPCOM_NS_1InitEmbedding(JNIEnv*, _jclass*, jlong, jlong)':
xpcom.cpp:94: error: 'NS_InitEmbedding' was not declared in this scope
xpcom.cpp: In function 'jint Java_org_eclipse_swt_internal_mozilla_XPCOM_NS_1TermEmbedding(JNIEnv*, _jclass*)':
xpcom.cpp:122: error: 'NS_TermEmbedding' was not declared in this scope
In file included from xpcom_structs.h:29,
                 from xpcom_structs.cpp:30:
xpcom.h:18:25: error: nsEmbedAPI.h: No such file or directory
make: *** [xpcom.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [xpcom_custom.o] Error 1
make: *** [xpcom_structs.o] Error 1

!!! ERROR: dev-java/swt-3.2.2 failed.
Call stack:
  ebuild.sh, line 1614:   Called dyn_compile
  ebuild.sh, line 971:   Called qa_call 'src_compile'
  environment, line 4749:   Called src_compile
  swt-3.2.2.ebuild, line 161:   Called die

!!! Failed to build Mozilla support
!!! If you need support, post the topmost build error, and the call stack if relevant.
!!! A complete build log is located at '/var/tmp/portage/dev-java/swt-3.2.2/temp/build.log'.

!!! When you file a bug report, please include the following information:
GENTOO_VM=blackdown-jdk-1.4.2  CLASSPATH="" JAVA_HOME="/opt/blackdown-jdk-1.4.2.03"
JAVACFLAGS="-source 1.4 -target 1.4" COMPILER=""
and of course, the output of emerge --info
Comment 4 Pierre Y. 2007-03-26 19:22:38 UTC
# find /usr -iname "nsEmbedAPI.h"
/usr/lib64/mozilla-firefox/include/embed_base/nsEmbedAPI.h
/usr/lib64/mozilla-thunderbird/include/embed_base/nsEmbedAPI.h
/usr/lib64/seamonkey/include/embed_base/nsEmbedAPI.h

Givent the error message, it seems that the gcc command line miss one of these mozilla include :

g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c xpcom_structs.cpp

FYI I have these Java VM installed :

# eselect java-vm list
Available Java Virtual Machines:
  [1]   blackdown-jdk-1.4.2 
  [2]   sun-jdk-1.5 
  [3]   sun-jdk-1.6  system-vm

Hope this helps.
Comment 5 Petteri Räty (RETIRED) gentoo-dev 2007-03-26 20:17:17 UTC
(In reply to comment #4)
> 
> g++ -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1
> -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor
> -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include
> -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64
> -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom
> -I/usr/lib64/seamonkey/include/string -I/usr/include/nspr   -c
> xpcom_structs.cpp
> 

What version of seamonkey do you have installed? If it's not the latest, does updating to the latest version fix the issue for you.
Comment 6 Pierre Y. 2007-03-27 06:24:16 UTC
> What version of seamonkey do you have installed? If it's not the latest, does
> updating to the latest version fix the issue for you.

I think I already have the latest seamonkey.

$ eix seamonkey
[I] www-client/seamonkey
     Available versions:  1.0.7 (~)1.0.8 1.1.1
     Installed versions:  1.1.1(11:01:00 02.03.2007)(crypt -debug gnome ipv6 java ldap -mozdevelop -moznocompose -moznoirc -moznomail -moznopango -moznoroaming -postgres -xforms -xinerama -xprint)
Comment 7 Alexandre Rostovtsev (RETIRED) gentoo-dev 2007-04-12 03:24:14 UTC
I am getting the exact same error with USE="seamonkey -xulrunner".

On the other hand, with USE="xulrunner -seamonkey", the error becomes slightly different:
[...]
g++ -o xpcom17_profile.o -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64  -c xpcom_profile.cpp
g++ -o xpcom18_profile.o -march=nocona -O2 -pipe -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/blackdown-jdk-1.4.2.03/include -I/opt/blackdown-jdk-1.4.2.03/include/linux -DSWT_PTR_SIZE_64  -c xpcom_profile.cpp
In file included from xpcom_profile_structs.h:29,
                 from xpcom_profile.cpp:30:
xpcom_profile.h:17:22: error: nsCOMPtr.h: No such file or directory
xpcom_profile.h:18:41: error: nsProfileDirServiceProvider.h: No such file or directory
[...]

This is on an ~amd64 system, seamonkey-1.1.1, xulrunner-1.8.0.4
Comment 8 Alexandre Rostovtsev (RETIRED) gentoo-dev 2007-04-12 04:41:25 UTC
Created attachment 116026 [details]
swt-3.2.2.ebuild

OK, so here is why the build failures is happening.

Problem 1: have a look at make_linux.mak; you will see that GECKO_CFLAGS are not applied when building xpcom_profile.cpp, which causes failure.

Problem 2: xpcom_profile.h #includes nsProfileDirServiceProvider.h, which is not in pkgconfig cflags for *any* xulrunner or seamonkey package. It's there in the gecko include tree though; so we need to add it manually, or the build fails.

Problem 3: xpcom.h #includes nsEmbedAPI.h; nsEmbedAPI.h is not in the pkgconfig cflags for *any* seamonkey-1.1 package.  So again we need to add it manually or the seamonkey build fails. (Note that current xulrunner's pkgconfig handles this fine, but adding the extra include won't hurt, especially since future of xulrunner might become like seamonkey and firefox.)

I am attaching an ebuild that fixes these problems.
Comment 9 Pierre Y. 2007-04-12 06:58:54 UTC
> I am attaching an ebuild that fixes these problems.

Tested here on my ~amd64/~x86 box. Works nicely ;-)

MANY THANKS !
Comment 10 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-04-12 08:50:43 UTC
not fixed until in tree
Comment 11 Vladimir G. Ivanovic 2007-04-22 23:23:43 UTC
(In reply to comment #9)
> > I am attaching an ebuild that fixes these problems.
> 
> Tested here on my ~amd64/~x86 box. Works nicely ;-)
> 
> MANY THANKS !
> 

Works for me as well on ~amd64.
Comment 12 Petteri Räty (RETIRED) gentoo-dev 2007-04-27 21:55:52 UTC
welp:
https://bugs.gentoo.org/show_bug.cgi?id=169456#c2

Did you just keyword without testing or is this something caused by recent version bumps in mozilla based browsers?
Comment 13 Petteri Räty (RETIRED) gentoo-dev 2007-04-27 22:43:21 UTC
(In reply to comment #8)
> Created an attachment (id=116026) [edit]
> swt-3.2.2.ebuild
> 

The other way to solve this is to fix the firefox patch that we are using to apply on amd64. As you can see here:
http://overlays.gentoo.org/proj/java/browser/other/swt-patches/swt-3.2.2-gentoo-patches
The patch is not applied on amd64. I asked for testing on amd64 in bug 169456 and there they said it works fine.
Comment 14 Alexandre Rostovtsev (RETIRED) gentoo-dev 2007-04-27 23:53:23 UTC
(In reply to comment #13)
> The other way to solve this is to fix the firefox patch that we are using to
> apply on amd64. As you can see here:

So there is a patch...

I have no idea about the java part, but make_linux.mak, xpcom_profile.h, and the nsEmbedAPI stuff need to be fixed on every architecture. (However, adding /usr/$(get_libdir)/${gecko}/include/embed_base to the includes may be easier than patching away all usage of the nsEmbedAPI api.)

Otherwise there is no way swt mozilla component can possibly compile.
Comment 15 Petteri Räty (RETIRED) gentoo-dev 2007-04-28 08:51:49 UTC
(In reply to comment #14)
> 
> I have no idea about the java part, but make_linux.mak, xpcom_profile.h, and
> the nsEmbedAPI stuff need to be fixed on every architecture. (However, adding
> /usr/$(get_libdir)/${gecko}/include/embed_base to the includes may be easier
> than patching away all usage of the nsEmbedAPI api.)
> 

Actually I think the patch changes the code so that it doesn't need the headers that are not reachable.
Comment 16 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-05-26 07:00:27 UTC
Created attachment 120346 [details, diff]
converted x86 firefox patch for amd64

This is a blindly updated x86 patch for amd64 sources. Can anyone test it? (no changes to ebuild as proposed by the previous attachment). I have no amd64.
Comment 17 Alistair Bush (RETIRED) gentoo-dev 2007-05-27 04:04:37 UTC
Sadly doesn't seem to work

 * Building the Mozilla component
g++ -march=k8 -pipe -O2 -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/sun-jdk-1.6.0.02_alpha02/include -I/opt/sun-jdk-1.6.0.02_alpha02/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/xulrunner/include -I/usr/lib64/xulrunner/include/xpcom -I/usr/lib64/xulrunner/include/string -I/usr/include/nspr   -c xpcom.cpp
g++ -march=k8 -pipe -O2 -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/sun-jdk-1.6.0.02_alpha02/include -I/opt/sun-jdk-1.6.0.02_alpha02/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/xulrunner/include -I/usr/lib64/xulrunner/include/xpcom -I/usr/lib64/xulrunner/include/string -I/usr/include/nspr   -c xpcom_custom.cpp
xpcom.cpp: In function 'jint Java_org_eclipse_swt_internal_mozilla_XPCOM_NS_1InitEmbedding(JNIEnv*, _jclass*, jlong, jlong)':
xpcom.cpp:94: error: 'NS_InitEmbedding' was not declared in this scope
g++ -march=k8 -pipe -O2 -DSWT_VERSION=3236  -DXPCOM_GLUE=1 -DMOZILLA_STRICT_API=1 -fno-rtti -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. -I/opt/sun-jdk-1.6.0.02_alpha02/include -I/opt/sun-jdk-1.6.0.02_alpha02/include/linux -DSWT_PTR_SIZE_64 -I/usr/lib64/xulrunner/include -I/usr/lib64/xulrunner/include/xpcom -I/usr/lib64/xulrunner/include/string -I/usr/include/nspr   -c xpcom_structs.cpp
make: *** [xpcom.o] Error 1



Comment 18 Jakub Moc (RETIRED) gentoo-dev 2007-05-27 07:29:28 UTC
*** Bug 179915 has been marked as a duplicate of this bug. ***
Comment 19 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-05-27 09:51:09 UTC
Created attachment 120424 [details, diff]
amd64 firefox patch converted from x86

Looks like I forgot to repair one rejected hunk, let's try this one :)
Comment 20 Vladimir G. Ivanovic 2007-05-27 16:36:45 UTC
(In reply to comment #19)
> Created an attachment (id=120424) [edit]
> amd64 firefox patch converted from x86
> 
> Looks like I forgot to repair one rejected hunk, let's try this one :)
> 

Thanks. This worked for me.
Comment 21 Peter Avramucz 2007-05-27 18:09:46 UTC
Works for me on ~amd64 with xulrunner -seamonkey.
Comment 22 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-05-27 18:40:08 UTC
Thanks for the testing. But did you test only compiling or running it too? I want to be sure before I add this patch to the ebuild in portage and proceed with stabilization. 
The simple testcase is here: https://overlays.gentoo.org/svn/proj/java/testcases/dev-java/swt/
test with both USE="seamonkey -xulrunner" and USE="xulrunner -seamonkey" (if you set both, xulrunner is used)
Comment 23 Vladimir G. Ivanovic 2007-05-28 03:42:47 UTC
(In reply to comment #22)
> Thanks for the testing. But did you test only compiling or running it too? I
> want to be sure before I add this patch to the ebuild in portage and proceed
> with stabilization. 
> The simple testcase is here:
> https://overlays.gentoo.org/svn/proj/java/testcases/dev-java/swt/
> test with both USE="seamonkey -xulrunner" and USE="xulrunner -seamonkey" (if
> you set both, xulrunner is used)
> 

Here's what I did (let me know if I'd done something wrong):

with USE="seamonkey -xulrunner":
1. ebuild `equery which =dev-java/swt-3.2.2-r1` unpack
2. patch -p1 </tmp/patch-from-comment-#19>
3. ebuild `equery which =dev-java/swt-3.2.2-r1` merge
4. sh runtest.sh seamonkey ==>
<8 errors in the terminal window like: "ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.">
and then a bare browser window came up (without the ususal seamonkey buttons) that was visiting http://www.eclipse.org/.

with USE="xulrunner -seamonkey"
(I had to emerge xulrunner first)
Steps 1,2 3 as above
4. sh runtest.sh/sh runtest.sh seamonkey/sh runstest.sh xulrunner =>
scarlatti tmp # sh runtest.sh 
Exception in thread "main" java.lang.InternalError
        at java.util.zip.Inflater.init(Native Method)
        at java.util.zip.Inflater.<init>(Inflater.java:75)
        at java.util.zip.ZipFile.getInflater(ZipFile.java:375)
        at java.util.zip.ZipFile.getInputStream(ZipFile.java:320)
        at java.util.zip.ZipFile.getInputStream(ZipFile.java:286)
        at java.util.jar.JarFile.hasClassPathAttribute(JarFile.java:467)
        at java.util.jar.JavaUtilJarAccessImpl.jarFileHasClassPathAttribute(JavaUtilJarAccessImpl.java:15)
        at sun.misc.URLClassPath$JarLoader.getClassPath(URLClassPath.java:809)
        at sun.misc.URLClassPath.getLoader(URLClassPath.java:293)
        at sun.misc.URLClassPath.getResource(URLClassPath.java:160)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:192)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
scarlatti tmp # sh runtest.sh seamonkey
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
ERROR: ld.so: object '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.
Exception in thread "main" org.eclipse.swt.SWTError: XPCOM error -1041039359
        at org.eclipse.swt.browser.Browser.error(Unknown Source)
        at org.eclipse.swt.browser.Browser.<init>(Unknown Source)
        at Snippet128.main(Snippet128.java:58)
scarlatti tmp # sh runtest.sh xulrunner
Exception in thread "main" java.lang.InternalError
        at java.util.zip.Inflater.init(Native Method)
        at java.util.zip.Inflater.<init>(Inflater.java:75)
        at java.util.zip.ZipFile.getInflater(ZipFile.java:375)
        at java.util.zip.ZipFile.getInputStream(ZipFile.java:320)
        at java.util.zip.ZipFile.getInputStream(ZipFile.java:286)
        at java.util.jar.JarFile.hasClassPathAttribute(JarFile.java:467)
        at java.util.jar.JavaUtilJarAccessImpl.jarFileHasClassPathAttribute(JavaUtilJarAccessImpl.java:15)
        at sun.misc.URLClassPath$JarLoader.getClassPath(URLClassPath.java:809)
        at sun.misc.URLClassPath.getLoader(URLClassPath.java:293)
        at sun.misc.URLClassPath.getResource(URLClassPath.java:160)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:192)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)


Comment 24 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-05-28 19:45:04 UTC
(In reply to comment #23)
> 4. sh runtest.sh seamonkey ==>
> <8 errors in the terminal window like: "ERROR: ld.so: object
> '/usr/lib/seamonkey/libxul.so' from LD_PRELOAD cannot be preloaded: ignored.">
> and then a bare browser window came up (without the ususal seamonkey buttons)
> that was visiting http://www.eclipse.org/.

Suppose the errors come from using preload, but at least it worked in the end huh.
 
> scarlatti tmp # sh runtest.sh xulrunner
> Exception in thread "main" java.lang.InternalError
>         at java.util.zip.Inflater.init(Native Method)
>         at java.util.zip.Inflater.<init>(Inflater.java:75)
>         at java.util.zip.ZipFile.getInflater(ZipFile.java:375)
>         at java.util.zip.ZipFile.getInputStream(ZipFile.java:320)
>         at java.util.zip.ZipFile.getInputStream(ZipFile.java:286)
>         at java.util.jar.JarFile.hasClassPathAttribute(JarFile.java:467)
>         at
> java.util.jar.JavaUtilJarAccessImpl.jarFileHasClassPathAttribute(JavaUtilJarAccessImpl.java:15)
>         at sun.misc.URLClassPath$JarLoader.getClassPath(URLClassPath.java:809)
>         at sun.misc.URLClassPath.getLoader(URLClassPath.java:293)
>         at sun.misc.URLClassPath.getResource(URLClassPath.java:160)
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:192)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
> 

Weird, this looks like if the swt.jar file is corrupted. Can you check it (it's just renamed zip file). Did you run out of disk space or what?

Anyway, ali_bush tested it and worked for him on amd64, so I've put the amd64 patch in patchset and used it in swt-3.2.2 and 3.2.2-r1. Should be fixed in few hours as it hits your mirrors.
Comment 25 Vladimir G. Ivanovic 2007-05-28 21:56:00 UTC
(In reply to comment #24)

OK, I'll give the it a whirl. I'll reopen if I have a problem.