#!/usr/bin/perl -w
+my $do_def = 0;
+
+if (($#ARGV >= 0) && ($ARGV[0] eq "-def")) {
+ shift;
+ $do_def = 1;
+}
+
print <<EOF;
/* Generated by makegdkpixbufalias.pl */
#ifdef G_HAVE_GNUC_VISIBILITY
-#ifdef GDK_PIXBUF_DISABLE_DEPRECATED
-#define WAS_NO_DEPR
-#endif
-#undef GDK_PIXBUF_DISABLE_DEPRECATED
+EOF
+
+if ($do_def) {
+ print <<EOF
+#undef IN_FILE
+#define IN_FILE defined
-#ifdef G_DISABLE_DEPRECATED
-#define WAS_NO_G_DEPR
-#endif
-#undef G_DISABLE_DEPRECATED
+#undef IN_HEADER
+#define IN_HEADER(x) 1
-#include "gdk-pixbuf.h"
-#include "gdk-pixdata.h"
+EOF
+}
+else {
+ print <<EOF
+#define IN_FILE(x) 1
+#define IN_HEADER defined
EOF
+}
+
+my $in_comment = 0;
+my $in_skipped_section = 0;
while (<>) {
next;
}
- if ($_ =~ /^\#ifdef\s+INCLUDE_VARIABLES/)
+ if ($_ =~ /^\#ifdef\s+INCLUDE_VARIABLES|INCLUDE_INTERNAL_SYMBOLS|ALL_FILES/)
{
$in_skipped_section = 1;
}
next;
}
- if ($_ =~ /^\#ifdef\s+G/)
+ if ($_ =~ /^\#ifn?def\s+G/)
+ {
+ print $_;
+
+ next;
+ }
+
+ if ($_ =~ /^\#if.*(IN_FILE|IN_HEADER|IN_FILE)/)
{
print $_;
$attributes = "$attributes $word" unless $word eq "PRIVATE";
}
- print <<EOF
+ if (!$do_def) {
+ print <<EOF
extern __typeof ($str) $alias __attribute((visibility("hidden")))$attributes;
-extern __typeof ($str) $str __attribute((alias("$alias"), visibility("default")));
\#define $str $alias
EOF
+ }
+ else {
+ print <<EOF
+\#undef $str
+extern __typeof ($str) $str __attribute((alias("$alias"), visibility("default")));
+
+EOF
+ }
}
print <<EOF;
-#ifdef WAS_NO_DEPR
-#define GDK_PIXBUF_DISABLE_DEPRECATED
-#undef WAS_NO_DEPR
-#endif
-
-#ifdef WAS_NO_G_DEPR
-#define G_DISABLE_DEPRECATED
-#undef WAS_NO_G_DEPR
-#endif
-
#endif /* G_HAVE_GNUC_VISIBILITY */
-
#endif /* DISABLE_VISIBILITY */
EOF