summaryrefslogtreecommitdiff
path: root/tools/make-pixbuf-csource.pl
diff options
context:
space:
mode:
authorJoão Valverde <joao.valverde@tecnico.ulisboa.pt>2015-10-17 13:47:17 +0100
committerAnders Broman <a.broman58@gmail.com>2015-11-12 07:14:32 +0000
commit2d7b0fc7d046154a393c9a1e5f4b2e9b5fee3738 (patch)
tree8b14d373b97ea9162a46e8b61f42919f2a6c5514 /tools/make-pixbuf-csource.pl
parent1ab019f409f2855d3b51717a237cc482242887e9 (diff)
downloadwireshark-2d7b0fc7d046154a393c9a1e5f4b2e9b5fee3738.tar.gz
[GTK] Replace deprecated gdk_pixbuf_new_from_inline()
Use GResource instead, if available. Add autotools and cmake compile time checks for build requirements (GIO >= 2.32 and GDK-Pixbuf >= 2.26). Merge all the various static pixbuf csource header files into a single pixbuf-csource.h header with external linkage through use of the tools/make-pixbuf-csource.pl script. Fix inline pixbuf build target for some image paths (broken for GTK in gb4a4de7). Add missing 'expert_ok.png' file to distribution (GTK only). Minor improvements to style/structure of ui/gtk/Makefile.am. Bug: 10750 Change-Id: I031296b666ee8b92730400dfa6f71f9ee4304863 Reviewed-on: https://code.wireshark.org/review/10992 Petri-Dish: Anders Broman <a.broman58@gmail.com> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'tools/make-pixbuf-csource.pl')
-rw-r--r--tools/make-pixbuf-csource.pl71
1 files changed, 71 insertions, 0 deletions
diff --git a/tools/make-pixbuf-csource.pl b/tools/make-pixbuf-csource.pl
new file mode 100644
index 0000000000..25d041d21f
--- /dev/null
+++ b/tools/make-pixbuf-csource.pl
@@ -0,0 +1,71 @@
+#!/usr/bin/env perl
+
+# Simple script to create extern pixbuf csource. Receives list of
+# tuples (varname, path) separated with spaces.
+
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+
+use strict;
+
+my $target = shift;
+
+open(my $fout, ">", $target . ".c");
+open(my $fin, "-|", "gdk-pixbuf-csource", "--extern", "--raw", "--build-list", @ARGV);
+select($fout);
+
+print << "HEADER";
+/* This file was automatically generated. DO NOT EDIT. */
+
+#include <glib.h>
+HEADER
+
+while (<$fin>) {
+ s/ *$//;
+ print "\n" if (/^\/\*/);
+ print if ($_ ne "\n");
+}
+
+close($fout);
+close($fin);
+
+open(my $fout, ">", $target . ".h");
+select($fout);
+
+print << "HEADER";
+/* This file was automatically generated. DO NOT EDIT. */
+
+#ifndef __PIXBUF_CSOURCE_HEADER__
+#define __PIXBUF_CSOURCE_HEADER__
+
+#include <glib.h>
+
+HEADER
+
+while (my $var = shift @ARGV) {
+ print "extern const guint8 ${var}[];\n";
+ shift @ARGV;
+}
+
+print << "TRAILER";
+
+#endif /*__PIXBUF_CSOURCE_HEADER__*/
+TRAILER
+
+close($fout);