[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug-gv] [PATCH] avoid make distcheck failing because of gv-i18n.h
From: |
Bernhard R. Link |
Subject: |
[bug-gv] [PATCH] avoid make distcheck failing because of gv-i18n.h |
Date: |
Sun, 13 Feb 2011 20:20:10 +0100 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
Make distcheck fails because a gv-i18n.h file is left over
after building and dist-cleaning.
To avoid this remove gv-i18n.h from BUILT_SOURCES (it does not
really make sense to add it to EXTRA_DIST and there), and make
sure it is not so easily rebuilt, but not looking at the nls/
directory timestamp but instead having a list of languages in
a nls/LANGUAGES file.
---
gv/src/Makefile.am | 6 +++---
gv/src/gv-i18n.pl | 31 ++++++++++++-------------------
gv/src/nls/LANGUAGES | 6 ++++++
3 files changed, 21 insertions(+), 22 deletions(-)
create mode 100644 gv/src/nls/LANGUAGES
diff --git a/gv/src/Makefile.am b/gv/src/Makefile.am
index 9b6c370..cb63fcf 100644
--- a/gv/src/Makefile.am
+++ b/gv/src/Makefile.am
@@ -146,7 +146,7 @@ gv_SOURCES = Aaa.c \
types.h \
gv-update-userconfig.in
-BUILT_SOURCES = gv_spartan.h gv_widgetless.h gv_intern_res_unix.h gv_class.h
gv-i18n.h
+BUILT_SOURCES = gv_spartan.h gv_widgetless.h gv_intern_res_unix.h gv_class.h
# Additional rules for generating styles
@@ -211,8 +211,8 @@ gv_class.h : gv_class.ad
@echo "creating gv_class.h"
@sh $(srcdir)/ad2c gv_class.ad > gv_class.h
-gv-i18n.h: $(srcdir)/nls $(srcdir)/nls/*
- perl $(srcdir)/gv-i18n.pl $(srcdir) > gv-i18n.h
+gv-i18n.h: $(srcdir)/nls/LANGUAGES $(srcdir)/nls/*.dat
+ perl $(srcdir)/gv-i18n.pl $(srcdir) > gv-i18n.h || { rm gv-i18n.h ;
exit 1 ; }
gv_class.ad : $(srcdir)/gv_font_res.dat $(srcdir)/gv_font_res-I18N_mb.dat
$(srcdir)/gv_layout_res.dat gv_make_res.dat $(srcdir)/gv_misc_res.dat
$(srcdir)/gv_user_res.dat gv_intern_res_unix.dat
@echo "creating gv_class.ad"
diff --git a/gv/src/gv-i18n.pl b/gv/src/gv-i18n.pl
index ed6f36c..28358c4 100644
--- a/gv/src/gv-i18n.pl
+++ b/gv/src/gv-i18n.pl
@@ -3,42 +3,35 @@
$src = ".";
$src = $ARGV[0] if @ARGV == 1;
address@hidden = <$src/nls/*>;
+open(LANGUAGES, '<', "$src/nls/LANGUAGES");
+s!#.*!! for (@languages);
-s!^$src/nls/!!g for (@languages);
-
address@hidden = reverse sort @languages;
address@hidden = <LANGUAGES>;
%lang2 = ();
-
for $lang (@languages)
{
- next if $lang !~ m/((\.dat))$/;
+ chomp($lang);
+ next if $lang =~ m/ -> /;
+ next if $lang =~ m/^$/;
$lang2 = $lang;
$lang2 =~ s/[^a-zA-Z_0-9]/_/g;
- print "static String gv_nls_${lang2} [] = {\n";
- system "$src/ad2c $src/nls/$lang";
+ print "static String gv_nls_${lang2}_dat [] = {\n";
+ (system "$src/ad2c '$src/nls/$lang'.dat") == 0 or die "failed to process
$src/nls/${lang}.dat" ;
print "0};\n\n";
}
print "static String* getI18N(char* locale)\n{\n";
for $lang (@languages)
{
- next if $lang !~ m/((\.dat)|(\.lnk))$/;
+ next if $lang =~ m/^$/;
$lang2 = $lang;
- if ($lang =~ /\.lnk$/ )
- {
- open($file, "<", "$src/nls/$lang") or die "Cannot read file $lang";
- $lang2 = <$file>;
- chomp $lang2;
- close($lang);
- }
+ $lang2 =~ s/^.* -> //g;
$lang2 =~ s/[^a-zA-Z_0-9]/_/g;
$lang3 = $lang;
- $lang3 =~ s/\.lnk$//g;
- $lang3 =~ s/\.dat$//g;
- print " if (!strcmp(locale, \"$lang3\")) return gv_nls_$lang2;\n";
+ $lang3 =~ s/ -> .*$//g;
+ print " if (!strcmp(locale, \"$lang3\")) return gv_nls_${lang2}_dat;\n";
}
print " return 0;\n}\n";
diff --git a/gv/src/nls/LANGUAGES b/gv/src/nls/LANGUAGES
new file mode 100644
index 0000000..b316b7e
--- /dev/null
+++ b/gv/src/nls/LANGUAGES
@@ -0,0 +1,6 @@
+noint:de
+ko_KR.UTF-8
+ja_JP.UTF-8
+it.UTF-8
+fr.UTF-8
+de.UTF-8
--
1.5.6.5
- [bug-gv] [PATCH] avoid make distcheck failing because of gv-i18n.h,
Bernhard R. Link <=