summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2008-02-18 12:17:34 +0000
committerDaniel Stenberg <daniel@haxx.se>2008-02-18 12:17:34 +0000
commit8ebbe99328248d45f3937c4f15f936d5d36f4a58 (patch)
tree58dfa9555171528528912a8cb6109d351ea767eb /apps
parent43141cbfdb247b7e64bc3d3d5732f43732d59da0 (diff)
downloadrockbox-8ebbe99328248d45f3937c4f15f936d5d36f4a58.tar.gz
rockbox-8ebbe99328248d45f3937c4f15f936d5d36f4a58.zip
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
Diffstat (limited to 'apps')
-rw-r--r--apps/FILES1
-rw-r--r--apps/lang/Makefile37
-rw-r--r--apps/lang/SOURCES35
-rw-r--r--apps/language.h12
4 files changed, 82 insertions, 3 deletions
diff --git a/apps/FILES b/apps/FILES
index 36e3924158..956b12a04c 100644
--- a/apps/FILES
+++ b/apps/FILES
@@ -41,6 +41,7 @@ codecs/Tremor/*
41eqs/*.cfg 41eqs/*.cfg
42gui/*.[ch] 42gui/*.[ch]
43keymaps/*.[ch] 43keymaps/*.[ch]
44lang/SOURCES
44lang/*.lang 45lang/*.lang
45menus/*.[ch] 46menus/*.[ch]
46metadata/*.[ch] 47metadata/*.[ch]
diff --git a/apps/lang/Makefile b/apps/lang/Makefile
index e69de29bb2..bcaaa692a0 100644
--- a/apps/lang/Makefile
+++ b/apps/lang/Makefile
@@ -0,0 +1,37 @@
1# __________ __ ___.
2# Open \______ \ ____ ____ | | _\_ |__ _______ ___
3# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
6# \/ \/ \/ \/ \/
7# $Id: $
8#
9
10# the header we generate
11HEADER = $(BUILDDIR)/max_language_size.h
12
13# This sets up 'SRC' based on the files mentioned in SOURCES
14include $(TOOLSDIR)/makesrc.inc
15SOURCES=$(SRC)
16
17# OUTP is the list of files to depend upon
18OUTP = $(patsubst %.lang,$(OBJDIR)/%.lng, $(SOURCES))
19
20# the generated file with features specified genlang-style
21FEATS=$(BUILDDIR)/apps/genlang-features
22
23ifndef V
24SILENT=@
25endif
26PRINTS=$(SILENT)$(call info,$(1))
27
28all: $(HEADER)
29
30# generic rule for creating .lng from .lang
31$(OBJDIR)/%.lng : %.lang $(FEATS)
32 $(call PRINTS,GENLANG $<)
33 $(SILENT)$(TOOLSDIR)/genlang -e=$(APPSDIR)/lang/english.lang -t=$(MODELNAME)`cat $(FEATS)` -i=$(TARGET_ID) -b=$@ $<
34
35$(HEADER): $(OUTP)
36 $(call PRINTS,Make $(HEADER))
37 echo "#define MAX_LANGUAGE_SIZE `du -b $(OBJDIR)/* |sort -n |tail -n 1 |cut -f 1`" > $(HEADER)
diff --git a/apps/lang/SOURCES b/apps/lang/SOURCES
index e69de29bb2..af546460a2 100644
--- a/apps/lang/SOURCES
+++ b/apps/lang/SOURCES
@@ -0,0 +1,35 @@
1#ifdef HAVE_LCD_BITMAP /* Not for the Player */
2*.lang
3#else
4afrikaans.lang
5bulgarian.lang
6catala.lang
7czech.lang
8dansk.lang
9deutsch.lang
10eesti.lang
11english.lang
12espanol.lang
13esperanto.lang
14finnish.lang
15francais.lang
16galego.lang
17greek.lang
18hebrew.lang
19islenska.lang
20italiano.lang
21magyar.lang
22nederlands.lang
23norsk.lang
24norsk-nynorsk.lang
25polski.lang
26portugues-brasileiro.lang
27portugues.lang
28romaneste.lang
29russian.lang
30slovenscina.lang
31svenska.lang
32tagalog.lang
33turkce.lang
34wallisertitsch.lang
35#endif /* HAVE_LCD_BITMAP */
diff --git a/apps/language.h b/apps/language.h
index d8f899b573..14c8084a83 100644
--- a/apps/language.h
+++ b/apps/language.h
@@ -1,3 +1,5 @@
1#ifndef __LANGUAGE_H
2#define __LANGUAGE_H
1/*************************************************************************** 3/***************************************************************************
2 * __________ __ ___. 4 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___ 5 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
@@ -7,7 +9,7 @@
7 * \/ \/ \/ \/ \/ 9 * \/ \/ \/ \/ \/
8 * $Id$ 10 * $Id$
9 * 11 *
10 * Copyright (C) 2002 Daniel Stenberg 12 * Copyright (C) 2002, 2008 Daniel Stenberg
11 * 13 *
12 * All files in this archive are subject to the GNU General Public License. 14 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement. 15 * See the file COPYING in the source tree root for full license agreement.
@@ -17,8 +19,10 @@
17 * 19 *
18 ****************************************************************************/ 20 ****************************************************************************/
19 21
20/* size of the buffer used for loadable, translated strings */ 22/* The following header is generated by the build system and only defines
21#define MAX_LANGUAGE_SIZE 23500 23 MAX_LANGUAGE_SIZE to be the size of the largest currently available
24 language! */
25#include "max_language_size.h"
22 26
23/* both these must match the two initial bytes in the binary lang file */ 27/* both these must match the two initial bytes in the binary lang file */
24#define LANGUAGE_COOKIE 0x1a 28#define LANGUAGE_COOKIE 0x1a
@@ -29,3 +33,5 @@ void lang_init(void);
29 33
30/* load a given language file */ 34/* load a given language file */
31int lang_load(const char *filename); 35int lang_load(const char *filename);
36
37#endif