Bug 596097

Summary: gcc doesn't build against xulrunner-devel-1.9.2
Product: Red Hat Enterprise Linux 5 Reporter: Siddhesh Poyarekar <spoyarek>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: CLOSED ERRATA QA Contact: qe-baseos-tools-bugs
Severity: medium Docs Contact:
Priority: low    
Version: 5.5CC: atu, dbhole, jakub, mnewsome, pmuller, stransky
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: gcc-4.1.2-49.el5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 548783 Environment:
Last Closed: 2011-01-13 23:58:26 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 548783    
Bug Blocks:    

Description Siddhesh Poyarekar 2010-05-26 10:12:32 UTC
+++ This bug was initially created as a clone of Bug #548783 +++

gcc (including 4.5) doesn't build against xulrunner-devel-1.9.2:

In file included from /usr/include/xulrunner-sdk-1.9.2/nsAString.h:43,
                 from /usr/include/xulrunner-sdk-1.9.2/nsSubstring.h:40,
                 from /usr/include/xulrunner-sdk-1.9.2/nsString.h:44,
                 from /usr/include/xulrunner-sdk-1.9.2/nsIPluginInstance.h:26,
                 from ../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:65:
/usr/include/xulrunner-sdk-1.9.2/nsStringFwd.h:49:2: error: #error Internal string headers are not available from external-linkage code.
In file included from /usr/include/xulrunner-sdk-1.9.2/nsAString.h:64,
                 from /usr/include/xulrunner-sdk-1.9.2/nsSubstring.h:40,
                 from /usr/include/xulrunner-sdk-1.9.2/nsString.h:44,
                 from /usr/include/xulrunner-sdk-1.9.2/nsIPluginInstance.h:26,
                 from ../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:65:
/usr/include/xulrunner-sdk-1.9.2/nsTSubstring.h:40:2: error: #error Cannot use internal string classes without MOZILLA_INTERNAL_API defined. Use the frozen header nsStringAPI.h instead.
In file included from /usr/include/xulrunner-sdk-1.9.2/nsAString.h:69,
                 from /usr/include/xulrunner-sdk-1.9.2/nsSubstring.h:40,
                 from /usr/include/xulrunner-sdk-1.9.2/nsString.h:44,
                 from /usr/include/xulrunner-sdk-1.9.2/nsIPluginInstance.h:26,
                 from ../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:65:
/usr/include/xulrunner-sdk-1.9.2/nsTSubstring.h:40:2: error: #error Cannot use internal string classes without MOZILLA_INTERNAL_API defined. Use the frozen header nsStringAPI.h instead.
In file included from /usr/include/xulrunner-sdk-1.9.2/nsReadableUtils.h:51,
                 from /usr/include/xulrunner-sdk-1.9.2/nsString.h:52,
                 from /usr/include/xulrunner-sdk-1.9.2/nsIPluginInstance.h:26,
                 from ../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:65:
/usr/include/xulrunner-sdk-1.9.2/nsTArray.h:46:15: error: new: No such file or directory
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:66:35: error: nsIPluginInstancePeer.h: No such file or directory
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:67:31: error: nsIPluginTagInfo2.h: No such file or directory
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:149: error: 'NS_IPLUGINTAGINFO2_IID' was not declared in this scope
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:207: error: ISO C++ forbids declaration of 'nsIPluginTagInfo2' with no type
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:207: error: expected ';' before '*' token
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc: In function 'gchar* plugin_get_documentbase(NPP_t*)':
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:877: error: 'nsIPluginInstancePeer' was not declared in this scope
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:877: error: 'peer' was not declared in this scope
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:879: error: 'nsIPluginTagInfo2' was not declared in this scope
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:879: error: 'pluginTagInfo2' was not declared in this scope
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:891: error: 'class nsIPluginInstance' has no member named 'GetPeer'
../../../../../../libjava/classpath/native/plugin/gcjwebplugin.cc:898: error: 'union info_union' has no member named 'info_field'

Google found http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=8353f4e67ec1 changes to IcedTea plugin, perhaps those might be usable to some extent.  This is a blocker for gcc in f13..

--- Additional comment from aph on 2009-12-18 12:18:13 EST ---

I believe the plan is to remove gcjwebplugin entirely.

As far as I am aware it's simply a matter of removing 

--enable-plugin

from the specfile

Deepak, please confirm.

--- Additional comment from dbhole on 2009-12-21 22:03:02 EST ---

Created an attachment (id=379759)
Patch to remove gcjwebplugin from the gcc rpm

(In reply to comment #1)
> I believe the plan is to remove gcjwebplugin entirely.
> 
> As far as I am aware it's simply a matter of removing 
> 
> --enable-plugin
> 
> from the specfile
> 
> Deepak, please confirm.  

In addition to that, references to gcjwebplugin.so need to be removed as well.

Attached patch fixes this bug.

--- Additional comment from jakub on 2009-12-22 06:33:40 EST ---

I'll do that (conditionally for now, as the same gcc.spec is used for RHEL6/F12/F13 and for RHEL6/F12 we can and probably should still build it).

That said, do you have any plans for upstream GCC 4.5?  Should gcjwebplugin be removed there, or just error out during configury that --enable-plugin must not be used with xulrunner 1.9.2 and above, or something else?

--- Additional comment from dbhole on 2009-12-22 12:52:09 EST ---

The plugin should be removed from upstream as well, IMO. It is no longer actively maintained. The plugin in IcedTea is where all upstream development now happens.

--- Additional comment from fedora-triage-list on 2010-03-15 09:37:21 EDT ---


This bug appears to have been reported against 'rawhide' during the Fedora 13 development cycle.
Changing version to '13'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 5 Jakub Jelinek 2010-09-27 06:34:07 UTC
In gcc-4.1.2-49.el5

Comment 9 errata-xmlrpc 2011-01-13 23:58:26 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-0025.html