Redone gcc 3.4 build fix. Previous aproach just made gcc quiet
and resulted in lost symbols for Gtk::wrap methods. Reported by: pointyhat via kris
This commit is contained in:
parent
306a3a6dec
commit
3710c9da14
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=119202
6 changed files with 94 additions and 42 deletions
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
PORTNAME= gtkmm
|
PORTNAME= gtkmm
|
||||||
PORTVERSION= 1.2.8
|
PORTVERSION= 1.2.8
|
||||||
PORTREVISION= 2
|
PORTREVISION= 3
|
||||||
CATEGORIES= x11-toolkits
|
CATEGORIES= x11-toolkits
|
||||||
MASTER_SITES= ${MASTER_SITE_GNOME}
|
MASTER_SITES= ${MASTER_SITE_GNOME}
|
||||||
MASTER_SITE_SUBDIR= sources/gtkmm/1.2
|
MASTER_SITE_SUBDIR= sources/gtkmm/1.2
|
||||||
|
|
|
@ -1,25 +1,40 @@
|
||||||
--- src/gtk--/base.h.orig Tue Nov 14 21:23:11 2000
|
--- src/gtk--/base.h.orig Tue Nov 14 21:23:11 2000
|
||||||
+++ src/gtk--/base.h Sun Sep 5 06:11:48 2004
|
+++ src/gtk--/base.h Wed Oct 13 05:01:59 2004
|
||||||
@@ -454,6 +454,13 @@
|
@@ -99,12 +99,10 @@
|
||||||
pointer operator -> () const { return &operator*(); }
|
|
||||||
};
|
|
||||||
|
|
||||||
+namespace Gtk {
|
/* Translating API */
|
||||||
+
|
|
||||||
+template <class impl, class interf>
|
-/*
|
||||||
+interf* wrap(impl*);
|
// used to give error on unwrapped types; connect Gtk-- crew
|
||||||
+
|
-template <class C> struct NotWrapped;
|
||||||
+}
|
+template <class C> struct NotWrapped {typedef void Type;};
|
||||||
+
|
// hook for C => C++ translation
|
||||||
// this iterator variation returns interf (wrapped from impl)
|
template <class C> struct Wrap {typedef typename NotWrapped<C>::Type CppType;};
|
||||||
// Equivelency G_List_Cpp_Iterator<GtkWidget,Gtk_Widget>
|
-*/
|
||||||
// => list<Gtk_Widget*>::iterator
|
|
||||||
@@ -482,7 +489,7 @@
|
class Object;
|
||||||
value_type operator*() const
|
class ObjectClass;
|
||||||
|
@@ -118,19 +116,19 @@
|
||||||
|
|
||||||
|
// Request a specific wrapper for an object.
|
||||||
|
template <class Cpp>
|
||||||
|
-Cpp* wrap_new(typename Cpp::BaseObjectType* o)
|
||||||
|
+inline Cpp* wrap_new(typename Cpp::BaseObjectType* o)
|
||||||
{
|
{
|
||||||
if (node && node->data)
|
return (typename Cpp::CppClassType::wrap_new(o));
|
||||||
- return Gtk::wrap(static_cast<impl*>((*node).data));
|
|
||||||
+ return Gtk::wrap<impl, interf>(static_cast<impl*>((*node).data));
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// interface to gtk--
|
||||||
|
-/*
|
||||||
|
+
|
||||||
|
template <class C>
|
||||||
|
-typename Wrap<C>::CppType* wrap(C* o)
|
||||||
|
+inline typename Wrap<C>::CppType* wrap(C* o)
|
||||||
|
{
|
||||||
|
return dynamic_cast<typename Wrap<C>::CppType*>(wrap_auto((GtkObject*)(o)));
|
||||||
|
}
|
||||||
|
-*/
|
||||||
|
+
|
||||||
|
|
||||||
|
/********************************************************************/
|
||||||
|
|
||||||
|
|
11
x11-toolkits/gtk--/files/patch-src::gtkmmproc::stage1.m4
Normal file
11
x11-toolkits/gtk--/files/patch-src::gtkmmproc::stage1.m4
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
--- src/gtkmmproc/stage1.m4.orig Thu Feb 15 04:42:47 2001
|
||||||
|
+++ src/gtkmmproc/stage1.m4 Wed Oct 13 02:35:02 2004
|
||||||
|
@@ -198,7 +198,7 @@
|
||||||
|
class __CPPNAME__;
|
||||||
|
class __CPPNAME__`'_Class;
|
||||||
|
}
|
||||||
|
-namespace Gtk { __NAMESPACE__::__CPPNAME__ *wrap (__CNAME__ *o); }
|
||||||
|
+namespace Gtk { template<> struct Wrap<__CNAME__> { typedef __CPPNAME__ CppType; }; }
|
||||||
|
dnl
|
||||||
|
dnl
|
||||||
|
GTKMM_SECTION(PRIVATE)
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
PORTNAME= gtkmm
|
PORTNAME= gtkmm
|
||||||
PORTVERSION= 1.2.8
|
PORTVERSION= 1.2.8
|
||||||
PORTREVISION= 2
|
PORTREVISION= 3
|
||||||
CATEGORIES= x11-toolkits
|
CATEGORIES= x11-toolkits
|
||||||
MASTER_SITES= ${MASTER_SITE_GNOME}
|
MASTER_SITES= ${MASTER_SITE_GNOME}
|
||||||
MASTER_SITE_SUBDIR= sources/gtkmm/1.2
|
MASTER_SITE_SUBDIR= sources/gtkmm/1.2
|
||||||
|
|
|
@ -1,25 +1,40 @@
|
||||||
--- src/gtk--/base.h.orig Tue Nov 14 21:23:11 2000
|
--- src/gtk--/base.h.orig Tue Nov 14 21:23:11 2000
|
||||||
+++ src/gtk--/base.h Sun Sep 5 06:11:48 2004
|
+++ src/gtk--/base.h Wed Oct 13 05:01:59 2004
|
||||||
@@ -454,6 +454,13 @@
|
@@ -99,12 +99,10 @@
|
||||||
pointer operator -> () const { return &operator*(); }
|
|
||||||
};
|
|
||||||
|
|
||||||
+namespace Gtk {
|
/* Translating API */
|
||||||
+
|
|
||||||
+template <class impl, class interf>
|
-/*
|
||||||
+interf* wrap(impl*);
|
// used to give error on unwrapped types; connect Gtk-- crew
|
||||||
+
|
-template <class C> struct NotWrapped;
|
||||||
+}
|
+template <class C> struct NotWrapped {typedef void Type;};
|
||||||
+
|
// hook for C => C++ translation
|
||||||
// this iterator variation returns interf (wrapped from impl)
|
template <class C> struct Wrap {typedef typename NotWrapped<C>::Type CppType;};
|
||||||
// Equivelency G_List_Cpp_Iterator<GtkWidget,Gtk_Widget>
|
-*/
|
||||||
// => list<Gtk_Widget*>::iterator
|
|
||||||
@@ -482,7 +489,7 @@
|
class Object;
|
||||||
value_type operator*() const
|
class ObjectClass;
|
||||||
|
@@ -118,19 +116,19 @@
|
||||||
|
|
||||||
|
// Request a specific wrapper for an object.
|
||||||
|
template <class Cpp>
|
||||||
|
-Cpp* wrap_new(typename Cpp::BaseObjectType* o)
|
||||||
|
+inline Cpp* wrap_new(typename Cpp::BaseObjectType* o)
|
||||||
{
|
{
|
||||||
if (node && node->data)
|
return (typename Cpp::CppClassType::wrap_new(o));
|
||||||
- return Gtk::wrap(static_cast<impl*>((*node).data));
|
|
||||||
+ return Gtk::wrap<impl, interf>(static_cast<impl*>((*node).data));
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// interface to gtk--
|
||||||
|
-/*
|
||||||
|
+
|
||||||
|
template <class C>
|
||||||
|
-typename Wrap<C>::CppType* wrap(C* o)
|
||||||
|
+inline typename Wrap<C>::CppType* wrap(C* o)
|
||||||
|
{
|
||||||
|
return dynamic_cast<typename Wrap<C>::CppType*>(wrap_auto((GtkObject*)(o)));
|
||||||
|
}
|
||||||
|
-*/
|
||||||
|
+
|
||||||
|
|
||||||
|
/********************************************************************/
|
||||||
|
|
||||||
|
|
11
x11-toolkits/gtkmm12/files/patch-src::gtkmmproc::stage1.m4
Normal file
11
x11-toolkits/gtkmm12/files/patch-src::gtkmmproc::stage1.m4
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
--- src/gtkmmproc/stage1.m4.orig Thu Feb 15 04:42:47 2001
|
||||||
|
+++ src/gtkmmproc/stage1.m4 Wed Oct 13 02:35:02 2004
|
||||||
|
@@ -198,7 +198,7 @@
|
||||||
|
class __CPPNAME__;
|
||||||
|
class __CPPNAME__`'_Class;
|
||||||
|
}
|
||||||
|
-namespace Gtk { __NAMESPACE__::__CPPNAME__ *wrap (__CNAME__ *o); }
|
||||||
|
+namespace Gtk { template<> struct Wrap<__CNAME__> { typedef __CPPNAME__ CppType; }; }
|
||||||
|
dnl
|
||||||
|
dnl
|
||||||
|
GTKMM_SECTION(PRIVATE)
|
Loading…
Reference in a new issue