[oe-commits] Philip Balister : openjade: fix build with GCC 4.6

git version control git at git.openembedded.org
Thu Aug 25 00:40:03 UTC 2011


Module: openembedded.git
Branch: master
Commit: 9e9d8ef5eaf8371e44190de73129a1b1a9e791da
URL:    http://git.openembedded.org/?p=openembedded.git&a=commit;h=9e9d8ef5eaf8371e44190de73129a1b1a9e791da

Author: Philip Balister <philip at balister.org>
Date:   Wed Aug 24 20:36:17 2011 -0400

openjade: fix build with GCC 4.6

Copied from oe-core 5e58a44ee5d5be814614cdcc147d1ce67a9a401d
Thanks to Joshua Lock.

Commit message from oe core:

    In GCC 4.6 the compiler no longer allows objects of const-qualified type to
    be default initialized unless the type has a user-declared default
    constructor.

    Patch from Gentoo bugzilla: http://bugs.gentoo.org/show_bug.cgi?id=358021

Signed-off-by: Philip Balister <philip at balister.org>

---

 .../user-declared-default-constructor.patch        |   92 ++++++++++++++++++++
 recipes/openjade/openjade_1.3.2.bb                 |    3 +-
 2 files changed, 94 insertions(+), 1 deletions(-)

diff --git a/recipes/openjade/openjade-1.3.2/user-declared-default-constructor.patch b/recipes/openjade/openjade-1.3.2/user-declared-default-constructor.patch
new file mode 100644
index 0000000..073af46
--- /dev/null
+++ b/recipes/openjade/openjade-1.3.2/user-declared-default-constructor.patch
@@ -0,0 +1,92 @@
+In GCC 4.6 the compiler no longer allows objects of const-qualified type to
+be default initialized unless the type has a user-declared default
+constructor.
+
+Patch from Gentoo bugzilla: http://bugs.gentoo.org/show_bug.cgi?id=358021
+
+Gentoo Bugzilla description follows:
+"If a class or struct has no user-defined default constructor, C++ doesn't
+allow you to default construct a const instance of it.
+
+https://bugs.gentoo.org/358021
+http://clang.llvm.org/compatibility.html#default_init_const
+http://gcc.gnu.org/PR44499"
+
+Upstream-Status: Pending
+
+Signed-off-by: Scott Garman <scott.a.garman at intel.com>
+
+--- a/jade/TeXFOTBuilder.cxx
++++ b/jade/TeXFOTBuilder.cxx
+@@ -88,6 +88,8 @@ public:
+       value.convertString(nic_.placement);
+       }
+     ExtensionFlowObj *copy() const { return new PageFloatFlowObj(*this); }
++  public:
++    PageFloatFlowObj() {}
+   private:
+     PageFloatNIC nic_;
+     StringC name_;
+@@ -101,6 +103,8 @@ public:
+       fotb.endPageFootnote();
+     }
+     ExtensionFlowObj *copy() const { return new PageFootnoteFlowObj(*this); }
++  public:
++    PageFootnoteFlowObj() {}
+   private:
+   };
+   //////////////////////////////////////////////////////////////////////
+--- a/jade/TransformFOTBuilder.cxx
++++ b/jade/TransformFOTBuilder.cxx
+@@ -41,6 +41,7 @@ public:
+   };
+   class EntityRefFlowObj : public TransformExtensionFlowObj {
+   public:
++    EntityRefFlowObj() {}
+     void atomic(TransformFOTBuilder &fotb, const NodePtr &) const {
+       fotb.entityRef(name_);
+     }
+@@ -56,6 +57,7 @@ public:
+   };
+   class ProcessingInstructionFlowObj : public TransformExtensionFlowObj {
+   public:
++    ProcessingInstructionFlowObj() {}
+     void atomic(TransformFOTBuilder &fotb, const NodePtr &) const {
+       fotb.processingInstruction(data_);
+     }
+@@ -98,6 +100,8 @@ public:
+       }
+     }
+     ExtensionFlowObj *copy() const { return new EmptyElementFlowObj(*this); }
++  public:
++    EmptyElementFlowObj() {}
+   private:
+     ElementNIC nic_;
+   };
+@@ -133,6 +137,8 @@ public:
+       }
+     }
+     ExtensionFlowObj *copy() const { return new ElementFlowObj(*this); }
++  public:
++    ElementFlowObj() {}
+   private:
+     ElementNIC nic_;
+   };
+@@ -150,6 +156,8 @@ public:
+       value.convertString(systemId_);
+     }
+     ExtensionFlowObj *copy() const { return new EntityFlowObj(*this); }
++  public:
++    EntityFlowObj() {}
+   private:
+     StringC systemId_;
+   };
+@@ -174,6 +182,8 @@ public:
+       }
+     }
+     ExtensionFlowObj *copy() const { return new DocumentTypeFlowObj(*this); }
++  public:
++    DocumentTypeFlowObj() {}
+   private:
+     DocumentTypeNIC nic_;
+   };
diff --git a/recipes/openjade/openjade_1.3.2.bb b/recipes/openjade/openjade_1.3.2.bb
index afd333a..3a653b9 100644
--- a/recipes/openjade/openjade_1.3.2.bb
+++ b/recipes/openjade/openjade_1.3.2.bb
@@ -5,11 +5,12 @@ DESCRIPTION = "OpenJade is a suite of tools for validating, \
 processing, and applying DSSSL (Document Style Semantics and \
 Specification Language) stylesheets to SGML and XML documents."
 LICENSE = "BSD"
-PR = "r5"
+PR = "r6"
 SRC_URI = "${SOURCEFORGE_MIRROR}/openjade/openjade-${PV}.tar.gz \
 	   file://configure.patch \
 	   file://autoconf.patch \
 	   file://makefile.patch \
+	   file://user-declared-default-constructor.patch \
           "
 SRC_URI_append_virtclass-native = " file://oj-native-libosp-fix.patch"
 





More information about the Openembedded-commits mailing list