gtk2/gtk/makegtkalias.pl
2004-08-09 18:45:48 +00:00

83 lines
1.5 KiB
Perl
Executable File

#!/usr/bin/perl -w
my $preamble = <<EOF;
/* Generated by makegtkalias.pl */
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)
#ifdef GTK_ENABLE_BROKEN
#define WAS_BROKEN
#endif
#define GTK_ENABLE_BROKEN
#define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API
#ifdef GTK_DISABLE_DEPRECATED
#define WAS_NO_DEPR
#endif
#undef GTK_DISABLE_DEPRECATED
#ifdef G_DISABLE_DEPRECATED
#define WAS_NO_G_DEPR
#endif
#undef G_DISABLE_DEPRECATED
#include "gtk.h"
#include "gtkfilesystem.h"
#include "gtkfilesystemunix.h"
#include "gtkhsv.h"
#include "gtkinternals.h"
#include "gtkpathbar.h"
#include "gtktextdisplay.h"
#include "gtktextlayout.h"
#include "gtktextsegment.h"
#include "gtktexttypes.h"
#include "gtktreedatalist.h"
#include "gtkthemes.h"
#include "gtkwindow-decorate.h"
EOF
my $postamble = <<EOF;
#ifndef WAS_BROKEN
#undef GTK_ENABLE_BROKEN
#else
#undef WAS_BROKEN
#endif
#ifdef WAS_NO_DEPR
#define GTK_DISABLE_DEPRECATED
#undef WAS_NO_DEPR
#endif
#ifdef WAS_NO_G_DEPR
#define G_DISABLE_DEPRECATED
#undef WAS_NO_G_DEPR
#endif
#endif /* __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) */
EOF
print $preamble;
while (<>) {
my $str = $_;
chomp($str);
# ignore empty lines
if ("$str" eq "") {
next;
}
my $alias = $str."__internal_alias";
print "extern __typeof ($str) $alias __attribute((visibility(\"hidden\"))); \n";
print "extern __typeof ($str) $str __attribute((alias(\"$alias\"), visibility(\"default\"))); \n";
print "#define $str $alias \n";
print "\n";
}
print $postamble;