aboutsummaryrefslogtreecommitdiff
path: root/x11-toolkits/gtkmm20
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2018-01-08 17:07:41 +0000
committerJan Beich <jbeich@FreeBSD.org>2018-01-08 17:07:41 +0000
commitc425ccee0112d42e9e9d81692b8ca9257e722e6f (patch)
tree54650eb62191833f652162d58bb5d9bc6d3950a2 /x11-toolkits/gtkmm20
parent1d02ed4ffc9a5ddd2c65b511927245bcd964fcb2 (diff)
downloadports-c425ccee0112d42e9e9d81692b8ca9257e722e6f.tar.gz
ports-c425ccee0112d42e9e9d81692b8ca9257e722e6f.zip
x11-toolkits/gtkmm20: unbreak build with Clang 6 (C++14 by default)
In file included from module.cc:3: ../../glib/glibmm/module.h:30:1: error: no member named 'string' in the global namespace; did you mean '::std::string'? GTKMM_USING_STD(string) ^~~~~~~~~~~~~~~~~~~~~~~ ../../glib/glibmmconfig.h:60:57: note: expanded from macro 'GTKMM_USING_STD' # define GTKMM_USING_STD(Symbol) namespace std { using ::Symbol; } ^~ /usr/include/c++/v1/iosfwd:194:65: note: '::std::string' declared here typedef basic_string<char, char_traits<char>, allocator<char> > string; ^ class.cc:40:5: error: non-constant-expression cannot be narrowed from type 'guint' (aka 'unsigned int') to 'guint16' (aka 'unsigned short') in initializer list [-Wc++11-narrowing] base_query.class_size, ^~~~~~~~~~~~~~~~~~~~~ class.cc:40:5: note: insert an explicit cast to silence this issue base_query.class_size, ^~~~~~~~~~~~~~~~~~~~~ static_cast<guint16>() [...] Reported by: antoine (via bug 224669) Obtained from: upstream (glibmm 2.31.2) Suggested by: tijl (autoreconf)
Notes
Notes: svn path=/head/; revision=458456
Diffstat (limited to 'x11-toolkits/gtkmm20')
-rw-r--r--x11-toolkits/gtkmm20/Makefile5
-rw-r--r--x11-toolkits/gtkmm20/files/patch-gdk__gdkmm__Makefile.in12
-rw-r--r--x11-toolkits/gtkmm20/files/patch-glib_glibmm_class.cc93
-rw-r--r--x11-toolkits/gtkmm20/files/patch-gtk__gtkmm__Makefile.in12
4 files changed, 96 insertions, 26 deletions
diff --git a/x11-toolkits/gtkmm20/Makefile b/x11-toolkits/gtkmm20/Makefile
index e4510db19bfb..47e509344505 100644
--- a/x11-toolkits/gtkmm20/Makefile
+++ b/x11-toolkits/gtkmm20/Makefile
@@ -22,7 +22,7 @@ PORTSCOUT= ignore:1
LIB_DEPENDS= libsigc-1.2.so:devel/libsigc++12
BUILD_DEPENDS= gm4:devel/m4
-USES+= gmake libtool:keepla pathfix pkgconfig
+USES+= autoreconf gmake libtool:keepla pathfix pkgconfig
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
USE_GNOME= gtk20
@@ -39,7 +39,8 @@ post-patch:
${WRKSRC}/glib/glibmm/*.cc ${WRKSRC}/glib/glibmm/*.h \
${WRKSRC}/gtk/gtkmm/textbuffer.cc
.for d in docs examples tests
- @${REINPLACE_CMD} -e '/^SUBDIRS =/s/${d}//' ${WRKSRC}/Makefile.in
+ @${REINPLACE_CMD} -e '/^SUBDIRS[[:space:]]*=/s/${d}//' \
+ ${WRKSRC}/Makefile.am
.endfor
.include <bsd.port.mk>
diff --git a/x11-toolkits/gtkmm20/files/patch-gdk__gdkmm__Makefile.in b/x11-toolkits/gtkmm20/files/patch-gdk__gdkmm__Makefile.in
deleted file mode 100644
index 98009f4ae288..000000000000
--- a/x11-toolkits/gtkmm20/files/patch-gdk__gdkmm__Makefile.in
+++ /dev/null
@@ -1,12 +0,0 @@
---- gdk/gdkmm/Makefile.in.orig Fri Jun 4 02:49:50 2004
-+++ gdk/gdkmm/Makefile.in Fri Apr 22 11:37:45 2005
-@@ -327,8 +327,7 @@
- # libraries at link time to resolve symbols (remember a dll is like an
- # executable).
- @OS_WIN32_TRUE@no_undefined = -no-undefined -Wl,--export-all-symbols
--@OS_WIN32_FALSE@win32_dlls_extra_libs =
--@OS_WIN32_TRUE@win32_dlls_extra_libs = $(sublib_win32_dlls_libs)
-+win32_dlls_extra_libs = $(sublib_win32_dlls_libs)
- common_ldflags = -version-info $(LIBGTKMM_SO_VERSION) $(no_undefined)
- all_includes = -I$(top_builddir)/glib -I$(top_srcdir)/glib \
- -I$(top_builddir)/pango -I$(top_srcdir)/pango \
diff --git a/x11-toolkits/gtkmm20/files/patch-glib_glibmm_class.cc b/x11-toolkits/gtkmm20/files/patch-glib_glibmm_class.cc
new file mode 100644
index 000000000000..5509db5115e4
--- /dev/null
+++ b/x11-toolkits/gtkmm20/files/patch-glib_glibmm_class.cc
@@ -0,0 +1,93 @@
+class.cc:40:5: error: non-constant-expression cannot be narrowed from type 'guint'
+ (aka 'unsigned int') to 'guint16' (aka 'unsigned short') in initializer list
+ [-Wc++11-narrowing]
+ base_query.class_size,
+ ^~~~~~~~~~~~~~~~~~~~~
+class.cc:40:5: note: insert an explicit cast to silence this issue
+ base_query.class_size,
+ ^~~~~~~~~~~~~~~~~~~~~
+ static_cast<guint16>()
+class.cc:46:5: error: non-constant-expression cannot be narrowed from type 'guint'
+ (aka 'unsigned int') to 'guint16' (aka 'unsigned short') in initializer list
+ [-Wc++11-narrowing]
+ base_query.instance_size,
+ ^~~~~~~~~~~~~~~~~~~~~~~~
+class.cc:46:5: note: insert an explicit cast to silence this issue
+ base_query.instance_size,
+ ^~~~~~~~~~~~~~~~~~~~~~~~
+ static_cast<guint16>( )
+class.cc:78:7: error: non-constant-expression cannot be narrowed from type 'guint'
+ (aka 'unsigned int') to 'guint16' (aka 'unsigned short') in initializer list
+ [-Wc++11-narrowing]
+ base_query.class_size,
+ ^~~~~~~~~~~~~~~~~~~~~
+class.cc:78:7: note: insert an explicit cast to silence this issue
+ base_query.class_size,
+ ^~~~~~~~~~~~~~~~~~~~~
+ static_cast<guint16>()
+class.cc:84:7: error: non-constant-expression cannot be narrowed from type 'guint'
+ (aka 'unsigned int') to 'guint16' (aka 'unsigned short') in initializer list
+ [-Wc++11-narrowing]
+ base_query.instance_size,
+ ^~~~~~~~~~~~~~~~~~~~~~~~
+class.cc:84:7: note: insert an explicit cast to silence this issue
+ base_query.instance_size,
+ ^~~~~~~~~~~~~~~~~~~~~~~~
+ static_cast<guint16>( )
+
+https://git.gnome.org/browse/glibmm/commit/?id=926909ed02a2
+
+--- glib/glibmm/class.cc.orig 2002-10-11 18:05:43 UTC
++++ glib/glibmm/class.cc
+@@ -35,15 +35,23 @@ void Class::register_derived_type(GType base_type)
+ GTypeQuery base_query = { 0, 0, 0, 0, };
+ g_type_query(base_type, &base_query);
+
++ //GTypeQuery::class_size is guint but GTypeInfo::class_size is guint16.
++ const guint16 class_size =
++ (guint16)base_query.class_size;
++
++ //GTypeQuery::instance_size is guint but GTypeInfo::instance_size is guint16.
++ const guint16 instance_size =
++ (guint16)base_query.instance_size;
++
+ const GTypeInfo derived_info =
+ {
+- base_query.class_size,
++ class_size,
+ 0, // base_init
+ 0, // base_finalize
+ class_init_func_,
+ 0, // class_finalize
+ 0, // class_data
+- base_query.instance_size,
++ instance_size,
+ 0, // n_preallocs
+ 0, // instance_init
+ 0, // value_table
+@@ -73,15 +81,23 @@ GType Class::clone_custom_type(const char* custom_type
+ GTypeQuery base_query = { 0, 0, 0, 0, };
+ g_type_query(base_type, &base_query);
+
++ //GTypeQuery::class_size is guint but GTypeInfo::class_size is guint16.
++ const guint16 class_size =
++ (guint16)base_query.class_size;
++
++ //GTypeQuery::instance_size is guint but GTypeInfo::instance_size is guint16.
++ const guint16 instance_size =
++ (guint16)base_query.instance_size;
++
+ const GTypeInfo derived_info =
+ {
+- base_query.class_size,
++ class_size,
+ 0, // base_init
+ 0, // base_finalize
+ &Class::custom_class_init_function,
+ 0, // class_finalize
+ this, // class_data
+- base_query.instance_size,
++ instance_size,
+ 0, // n_preallocs
+ 0, // instance_init
+ 0, // value_table
diff --git a/x11-toolkits/gtkmm20/files/patch-gtk__gtkmm__Makefile.in b/x11-toolkits/gtkmm20/files/patch-gtk__gtkmm__Makefile.in
deleted file mode 100644
index 8ad7039bf121..000000000000
--- a/x11-toolkits/gtkmm20/files/patch-gtk__gtkmm__Makefile.in
+++ /dev/null
@@ -1,12 +0,0 @@
---- gtk/gtkmm/Makefile.in.orig Fri Jun 4 02:49:54 2004
-+++ gtk/gtkmm/Makefile.in Fri Apr 22 11:37:23 2005
-@@ -482,8 +482,7 @@
- # libraries at link time to resolve symbols (remember a dll is like an
- # executable).
- @OS_WIN32_TRUE@no_undefined = -no-undefined -Wl,--export-all-symbols
--@OS_WIN32_FALSE@win32_dlls_extra_libs =
--@OS_WIN32_TRUE@win32_dlls_extra_libs = $(sublib_win32_dlls_libs)
-+win32_dlls_extra_libs = $(sublib_win32_dlls_libs)
- common_ldflags = -version-info $(LIBGTKMM_SO_VERSION) $(no_undefined)
- all_includes = -I$(top_builddir)/glib -I$(top_srcdir)/glib \
- -I$(top_builddir)/pango -I$(top_srcdir)/pango \