From 8ebbe99328248d45f3937c4f15f936d5d36f4a58 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 18 Feb 2008 12:17:34 +0000 Subject: FS#8482 take two. Make the language files built first, so that the largest size can be used as buffer size for languages. Work to this also contributed by Jonas Haggqvist. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16343 a1c6a512-1295-4272-9138-f99709370657 --- tools/buildzip.pl | 35 ++--------------------------------- tools/configure | 16 +++++++++++++--- tools/make.inc | 10 +++++++++- tools/makesrc.inc | 4 ++-- 4 files changed, 26 insertions(+), 39 deletions(-) (limited to 'tools') diff --git a/tools/buildzip.pl b/tools/buildzip.pl index 4c21ae819f..4faa38ac54 100755 --- a/tools/buildzip.pl +++ b/tools/buildzip.pl @@ -154,30 +154,6 @@ sub filesize { return $size; } -sub buildlangs { - my ($outputlang)=@_; - my $dir = "$ROOT/apps/lang"; - opendir(DIR, $dir); - my @files = grep { /\.lang$/ } readdir(DIR); - closedir(DIR); - - # Exclude some bad languages (uncomment and adjust in case of release - # and/or End Times) - # @files = grep(!/(afrikaans|hindi|slovenscina|turkce)\.lang/, @files); - - # Exclude more languages on the player which won't work on charcell display - if ($archos =~ /^"?player:/ ) { - @files = grep(!/(chinese-simp|chinese-trad|hindi|japanese|korean|thai)\.lang/, @files); - } - - for(@files) { - my $output = $_; - $output =~ s/(.*)\.lang/$1.lng/; - print "$ROOT/tools/genlang -e=$dir/english.lang -t=$archos -i=$target_id -b=$outputlang/$output $dir/$_\n" if($verbose); - system ("$ROOT/tools/genlang -e=$dir/english.lang -t=$archos -i=$target_id -b=$outputlang/$output $dir/$_ >/dev/null 2>&1"); - } -} - sub buildzip { my ($zip, $image, $fonts)=@_; @@ -413,15 +389,8 @@ STOP # and the info file system("cp rockbox-info.txt .rockbox/"); - # now copy the file made for reading on the unit: - #if($notplayer) { - # `cp $webroot/docs/Help-JBR.txt .rockbox/docs/`; - #} - #else { - # `cp $webroot/docs/Help-Stu.txt .rockbox/docs/`; - #} - - buildlangs(".rockbox/langs"); + # copy the already built lng files + `cp apps/lang/*lng .rockbox/langs/` } diff --git a/tools/configure b/tools/configure index 49773e1a6f..e1ca5be190 100755 --- a/tools/configure +++ b/tools/configure @@ -1785,6 +1785,11 @@ else voicetoolset="voicefont wavtrim" fi +if test "$apps" = "apps"; then + # only when we build "real" apps we build the .lng files + buildlangs="langs" +fi + sed > Makefile \ -e "s,@ROOTDIR@,${rootdir},g" \ -e "s,@DEBUG@,${debug},g" \ @@ -1842,6 +1847,7 @@ sed > Makefile \ -e "s,@TTS_ENGINE@,${TTS_ENGINE},g" \ -e "s,@TTS_OPTS@,${TTS_OPTS},g" \ -e "s,@VOICETOOLSET@,${voicetoolset},g" \ + -e "s,@LANGS@,${buildlangs},g" \ < $(DEPFILE); \ + done | sed -e "s:[^[:space:]]*lang.h:$(OBJDIR)/lang.o:" \ + -e "s:[^[:space:]]*sysfont.h:$(BUILDDIR)/sysfont.h:" \ + -e "s:[^[:space:]]*max_language_size.h:$(BUILDDIR)/max_language_size.h:" \ + > $(DEPFILE); \ echo "oo" > /dev/null ) tags: diff --git a/tools/makesrc.inc b/tools/makesrc.inc index 78d97f3283..846df8cb9e 100644 --- a/tools/makesrc.inc +++ b/tools/makesrc.inc @@ -10,5 +10,5 @@ # to make this do right when used on Mac OS X. SRC := $(shell cat SOURCES | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) \ -$(TARGET) $(DEFINES) $(EXTRA_DEFINES) -E -P -include "config.h" - | \ -grep -v "^\#") +$(TARGET) $(DEFINES) $(EXTRA_DEFINES) -E -P -include "config.h" - 2>/dev/null \ +| grep -v "^\#") -- cgit v1.2.3