summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2020-07-21 08:54:14 -0400
committerSolomon Peachy <pizza@shaftnet.org>2020-07-21 17:22:45 +0000
commita5df94beb5cd7fd87828b9532b4a1a4da13ef774 (patch)
tree6b36c2e23f576ee104331d2de3b58ad39a77ba40
parent688c89cfe13658dc0c36c67235ed968e286d78bf (diff)
downloadrockbox-a5df94beb5cd7fd87828b9532b4a1a4da13ef774.tar.gz
rockbox-a5df94beb5cd7fd87828b9532b4a1a4da13ef774.zip
build: Tweaks to better support non-English as primary language
* get rid of $(LANGUAGE) in top-level makefile (and configure script) * un-hardcode English-as-primary-language in a couple more places * allow DEFAULT_VOICE_LANG to be overriden To actually change the primary from English, one must change: * $english in voice.pl * hardcoded 'english' in rbutil * $ENGLISH in apps/lang/lang.make * DEFAULT_VOICE_LANG in apps/talk.c * configure script (default prompt) Of course, if one wants to change the default UI language, it's simpler to change the default language setting variable at compile time, or perhaps by adding a configuration file with the desired value into the .rockbox directory when the .zip is assembled. Change-Id: If5cf76019d416e838628a2eccd4ec7d6cbaeeb74
-rw-r--r--apps/lang/lang.make7
-rw-r--r--apps/talk.c2
-rwxr-xr-xtools/configure4
3 files changed, 6 insertions, 7 deletions
diff --git a/apps/lang/lang.make b/apps/lang/lang.make
index 08cec5090a..c5db820326 100644
--- a/apps/lang/lang.make
+++ b/apps/lang/lang.make
@@ -11,6 +11,7 @@ LANGS := $(call preprocess, $(APPSDIR)/lang/SOURCES)
11LANGOBJ := $(LANGS:$(ROOTDIR)/%.lang=$(BUILDDIR)/%.lng) 11LANGOBJ := $(LANGS:$(ROOTDIR)/%.lang=$(BUILDDIR)/%.lng)
12VOICEOBJ := $(LANGS:$(ROOTDIR)/%.lang=$(BUILDDIR)/%.vstrings) 12VOICEOBJ := $(LANGS:$(ROOTDIR)/%.lang=$(BUILDDIR)/%.vstrings)
13LANG_O = $(BUILDDIR)/lang/lang_core.o 13LANG_O = $(BUILDDIR)/lang/lang_core.o
14ENGLISH := english
14 15
15CLEANOBJS += $(BUILDDIR)/lang/max_language_size.h $(BUILDDIR)/lang/lang* 16CLEANOBJS += $(BUILDDIR)/lang/max_language_size.h $(BUILDDIR)/lang/lang*
16 17
@@ -36,7 +37,7 @@ $(BUILDDIR)/lang/lang_core.o: $(BUILDDIR)/lang/lang.h $(BUILDDIR)/lang/lang_core
36# instead we pretend that genlang create lang_core.c and that lang.c depends from lang.h 37# instead we pretend that genlang create lang_core.c and that lang.c depends from lang.h
37# it will work fine as long as one never manually removes lang.c and not lang.h, and it will avoid 38# it will work fine as long as one never manually removes lang.c and not lang.h, and it will avoid
38# race conditions such as running genlang twice or worse in parallel with other things! 39# race conditions such as running genlang twice or worse in parallel with other things!
39$(BUILDDIR)/lang/lang.h: $(APPSDIR)/lang/$(LANGUAGE).lang $(BUILDDIR)/apps/features 40$(BUILDDIR)/lang/lang.h: $(APPSDIR)/lang/$(ENGLISH).lang $(BUILDDIR)/apps/features
40 $(call PRINTS,GEN lang.h) 41 $(call PRINTS,GEN lang.h)
41 $(SILENT)for f in `cat $(BUILDDIR)/apps/features`; do feat="$$feat:$$f" ; done; \ 42 $(SILENT)for f in `cat $(BUILDDIR)/apps/features`; do feat="$$feat:$$f" ; done; \
42 perl -s $(TOOLSDIR)/genlang -p=$(BUILDDIR)/lang -t=$(MODELNAME)$$feat $< 43 perl -s $(TOOLSDIR)/genlang -p=$(BUILDDIR)/lang -t=$(MODELNAME)$$feat $<
@@ -49,8 +50,8 @@ $(BUILDDIR)/lang_enum.h: $(BUILDDIR)/lang/lang.h
49$(BUILDDIR)/%.lng $(BUILDDIR)/%.vstrings: $(ROOTDIR)/%.lang $(BUILDDIR)/apps/genlang-features 50$(BUILDDIR)/%.lng $(BUILDDIR)/%.vstrings: $(ROOTDIR)/%.lang $(BUILDDIR)/apps/genlang-features
50 $(call PRINTS,GENLANG $(subst $(ROOTDIR)/,,$<)) 51 $(call PRINTS,GENLANG $(subst $(ROOTDIR)/,,$<))
51 $(SILENT)mkdir -p $(dir $@) 52 $(SILENT)mkdir -p $(dir $@)
52 $(SILENT)$(TOOLSDIR)/genlang -u -e=$(APPSDIR)/lang/english.lang $< > $@.tmp 53 $(SILENT)$(TOOLSDIR)/genlang -u -e=$(APPSDIR)/lang/$(ENGLISH).lang $< > $@.tmp
53 $(SILENT)$(TOOLSDIR)/genlang -e=$(APPSDIR)/lang/english.lang -t=$(MODELNAME):`cat $(BUILDDIR)/apps/genlang-features` -i=$(TARGET_ID) -b=$*.lng -c=$*.vstrings $@.tmp 54 $(SILENT)$(TOOLSDIR)/genlang -e=$(APPSDIR)/lang/$(ENGLISH).lang -t=$(MODELNAME):`cat $(BUILDDIR)/apps/genlang-features` -i=$(TARGET_ID) -b=$*.lng -c=$*.vstrings $@.tmp
54 $(SILENT)rm -f $@.tmp 55 $(SILENT)rm -f $@.tmp
55 56
56$(BUILDDIR)/apps/lang/voicestrings.zip: $(VOICEOBJ) 57$(BUILDDIR)/apps/lang/voicestrings.zip: $(VOICEOBJ)
diff --git a/apps/talk.c b/apps/talk.c
index d38432de7c..3c532d964c 100644
--- a/apps/talk.c
+++ b/apps/talk.c
@@ -82,7 +82,9 @@ const char* const file_thumbnail_ext = ".talk";
82 82
83#define LOADED_MASK 0x80000000 /* MSB */ 83#define LOADED_MASK 0x80000000 /* MSB */
84 84
85#ifndef DEFAULT_VOICE_LANG
85#define DEFAULT_VOICE_LANG "english" 86#define DEFAULT_VOICE_LANG "english"
87#endif
86 88
87/***************** Data types *****************/ 89/***************** Data types *****************/
88 90
diff --git a/tools/configure b/tools/configure
index 96d45a9173..501482ea0e 100755
--- a/tools/configure
+++ b/tools/configure
@@ -4669,9 +4669,6 @@ fi
4669 4669
4670echo "Using source code root directory: $rootdir" 4670echo "Using source code root directory: $rootdir"
4671 4671
4672# this was once possible to change at build-time, but no more:
4673language="english"
4674
4675uname=`uname` 4672uname=`uname`
4676 4673
4677if [ "yes" = "$simulator" ]; then 4674if [ "yes" = "$simulator" ]; then
@@ -5039,7 +5036,6 @@ export MANUFACTURER=${t_manufacturer}
5039export OBJDIR=${pwd} 5036export OBJDIR=${pwd}
5040export BUILDDIR=${pwd} 5037export BUILDDIR=${pwd}
5041export RBCODEC_BLD=${pwd}/lib/rbcodec 5038export RBCODEC_BLD=${pwd}/lib/rbcodec
5042export LANGUAGE=${language}
5043export VOICELANGUAGE=${voicelanguage} 5039export VOICELANGUAGE=${voicelanguage}
5044export MEMORYSIZE=${memory} 5040export MEMORYSIZE=${memory}
5045export BUILDDATE:=\$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d') 5041export BUILDDATE:=\$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d')