]> git.evergreen-ils.org Git - Evergreen.git/blob - build/i18n/Makefile
Add a PROJECT parameter for variable locale support.
[Evergreen.git] / build / i18n / Makefile
1 POOUTDIR=po
2 POINDIR=po
3 PROJECT=locale
4 LOCALE=fr-CA
5 DTDDIR=../../Open-ILS/web/opac/locale
6 PROPSDIR=../../Open-ILS/xul/staff_client/chrome/locale
7 FMIDLSRC=../../Open-ILS/examples/fm_IDL.xml
8 FMIDLOUT=fm_IDL.pot
9 FMIDLENT=fm_IDL.xml
10 FMIDLENTITY=fm_IDL.xml.ent
11 FMIDLPO=fm_IDL.po
12 SQLSRC=../../Open-ILS/src/sql/Pg/950.data.seed-values.sql
13 SQLOUT=db.seed.pot
14 SQLPO=db.seed.po
15 PROGRESS=--progress none
16
17 # This Makefile can be used to generate and update PO files for Evergreen,
18 # as well as generate updated SQL, fieldmapper IDL, DTD and JavaScript
19 # property files from the PO.
20 #
21 # Usage:
22 #
23 # To create a new set of untranslated PO files for locale ll-LL:
24 #   make LOCALE=ll-LL newpo
25 #
26 # To create a new set of POT files from the en-US source:
27 #   make LOCALE=ll-LL newpot
28 #
29 # To update a set of translated PO files with new or changed en-US strings:
30 #   make LOCALE=ll-LL updatepo
31 #
32 # To create a new set of project files (DTDs, JavaScript message catalogs):
33 #   make LOCALE=ll-LL updatepo
34
35 # Generate PO files from all POT files in POOUTDIR for locale LOCALE
36 newpo: 
37         @pot2po $(PROGRESS) -i $(POOUTDIR) -o $(POOUTDIR)/$(LOCALE) 
38         @echo "Generated new PO files for locale $(LOCALE)"
39
40 # Generate a new set of POT files and entityized fieldmapper IDL
41 newpot: dtds2pot fmidl2pot fmidl2fmidlent props2pot sql2pot
42         @echo "Generated new POT files"
43
44 # Generate DTD, JavaScript message catalogs, fieldmapper IDL,
45 # and SQL insert files from PO for locale LOCALE
46 newproject: po2dtds po2props po2sql fmidlpo2entity
47         @echo "Generated project files for locale $(LOCALE)"
48
49 # Update PO files with new and changed strings from POT files
50 updatepo: 
51         @pot2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(POOUTDIR) -t $(POOUTDIR)/$(LOCALE) 2>&1
52         @echo "Updated PO files for locale $(LOCALE)"
53
54 dtds2po:
55         @moz2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(DTDDIR)/en-US/ 2>&1
56
57 props2po:
58         @moz2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(PROPSDIR)/en-US/ 2>&1
59
60 dtds2pot:
61         @moz2po -P $(PROGRESS) -o $(POOUTDIR) -i $(DTDDIR)/en-US/ 2>&1
62
63 props2pot:
64         @moz2po -P $(PROGRESS) -o $(POOUTDIR) -i $(PROPSDIR)/en-US/ 2>&1
65
66 po2dtds:
67         @po2moz $(PROGRESS) -o $(PROJECT)/$(LOCALE) -t $(DTDDIR)/en-US/ -i $(POINDIR)/$(LOCALE) 2>&1
68
69 po2props:
70         @po2moz $(PROGRESS) -o $(PROJECT)/$(LOCALE) -t $(PROPSDIR)/en-US/ -i $(POINDIR)/$(LOCALE) 2>&1
71
72 sql2pot:
73         @scripts/db-seed-i18n.py --pot $(SQLSRC) --output $(POOUTDIR)/$(SQLOUT)
74
75 po2sql:
76         scripts/db-seed-i18n.py --sql $(POINDIR)/$(LOCALE)/$(SQLPO) --locale $(LOCALE) --output $(PROJECT)/$(LOCALE)/$(SQLOUT)
77
78 # Generate a fieldmapper IDL file that uses entities instead of hard-coded strings
79 fmidl2fmidlent:
80         @scripts/fieldmapper.py --convert $(FMIDLSRC) --output $(POOUTDIR)/$(FMIDLENT)
81
82 # Generate a POT file for translating the entity values
83 fmidl2pot:
84         @scripts/fieldmapper.py --pot $(FMIDLSRC) --output $(POOUTDIR)/$(FMIDLOUT)
85
86 # Generate a set of entity declarations from a PO file
87 fmidlpo2entity:
88         @scripts/fieldmapper.py --entity $(POINDIR)/$(FMIDLOUT) --output $(PROJECT)/$(LOCALE)/$(FMIDLENTITY)