source: osm/applications/editors/josm/i18n/build.xml@ 14019

Last change on this file since 14019 was 13998, checked in by skela, 17 years ago

applications/editors/josm/i18n/build.xml:
Remove the dependence on gettext-ant-tasks, because it does not appear
to be possible to specify a mapping between "he" and "iw_IL" nor to
have msgfmt spit out statistics.

Resurrect the pre-r13964 exec task for invoking "find", but also invoke
"sort" to generate a (hopefully) deterministic list of file names, to
reduce the number of merge conflicts in po/*.po.

File size: 5.5 KB
Line 
1<project name="JOSM i18n" default="build" basedir=".">
2
3 <!-- compilation properties -->
4 <property name="josm.build.dir" value="../core"/>
5 <property name="josm.presets" value="${josm.build.dir}/presets/presets.xml"/>
6 <property name="josm.style" value="${josm.build.dir}/styles/standard/elemstyles.xml"/>
7 <property name="plugin.dir" value="../plugins"/>
8 <property name="validator.tagfile" value="${plugin.dir}/validator/tagchecker.cfg"/>
9 <property name="wms.srcfile" value="${plugin.dir}/wmsplugin/sources.cfg"/>
10 <property name="surveyor.srcfile" value="${plugin.dir}/surveyor/resources/surveyor.xml"/>
11 <property name="i18n.build.dir" value="build"/>
12 <property name="i18n.install.dir" value="${josm.build.dir}/lib"/>
13 <property name="i18n.name" value="josm-translation"/>
14 <property name="i18n.jar" value="${i18n.install.dir}/${i18n.name}.jar"/>
15
16 <property name="ant.build.javac.target" value="1.5"/>
17
18 <target name="trans_.java">
19 <mkdir dir="${i18n.build.dir}"/>
20 <exec executable="perl" output="${i18n.build.dir}/trans_presets.java">
21 <arg line="convpreset.pl ${josm.presets}"/>
22 </exec>
23 <exec executable="perl" output="${i18n.build.dir}/trans_style.java">
24 <arg line="convstyle.pl ${josm.style}"/>
25 </exec>
26 <exec executable="perl" output="${i18n.build.dir}/trans_validator.java">
27 <arg line="convvalidator.pl ${validator.tagfile}"/>
28 </exec>
29 <exec executable="perl" output="${i18n.build.dir}/trans_wms.java">
30 <arg line="convwms.pl ${wms.srcfile}"/>
31 </exec>
32 <exec executable="perl" output="${i18n.build.dir}/trans_surveyor.java">
33 <arg line="convsurveyor.pl ${surveyor.srcfile}"/>
34 </exec>
35 </target>
36
37 <target name="java_sourcefiles.txt" depends="trans_.java">
38 <exec executable="find" osfamily="unix"
39 output="${i18n.build.dir}/java_sources.txt">
40 <arg value="${josm.build.dir}/src" />
41 <arg value="${plugin.dir}"/>
42 <arg value="${i18n.build.dir}"/>
43 <arg value="-name"/>
44 <arg value="*.java"/>
45 </exec>
46 <exec executable="sort" osfamily="unix"
47 output="${i18n.build.dir}/java_sourcefiles.txt">
48 <arg value="${i18n.build.dir}/java_sources.txt"/>
49 </exec>
50 <delete file="${i18n.build.dir}/java_sources.txt"/>
51 </target>
52
53 <target name="po/josm.pot"
54 description="Extracts message keys from the source code"
55 depends="java_sourcefiles.txt">
56 <exec executable="xgettext">
57 <arg line="-ktr -ktrn:1,2 -ktrc -kmarktr -Ljava --from-code=UTF-8 -opo/josm.pot -f${i18n.build.dir}/java_sourcefiles.txt"/>
58 </exec>
59 </target>
60
61 <target name="build" depends="po/josm.pot">
62 <copy file="i18n.properties" todir="build/org/openstreetmap/josm" />
63
64 <ant target="build-lang"><property name="language" value="bg"/></ant>
65 <ant target="build-lang"><property name="language" value="cs"/></ant>
66 <ant target="build-lang"><property name="language" value="da"/></ant>
67 <ant target="build-lang"><property name="language" value="de"/></ant>
68 <ant target="build-lang"><property name="language" value="el"/></ant>
69 <ant target="build-lang"><property name="language" value="en_GB"/></ant>
70 <ant target="build-lang"><property name="language" value="es"/></ant>
71 <ant target="build-lang"><property name="language" value="fi"/></ant>
72 <ant target="build-lang"><property name="language" value="fr"/></ant>
73 <ant target="build-lang"><property name="language" value="he"/><property name="jlanguage" value="iw_IL"/></ant>
74 <ant target="build-lang"><property name="language" value="ja"/></ant>
75 <ant target="build-lang"><property name="language" value="it"/></ant>
76 <ant target="build-lang"><property name="language" value="nl"/></ant>
77 <ant target="build-lang"><property name="language" value="pl"/></ant>
78 <ant target="build-lang"><property name="language" value="ro"/></ant>
79 <ant target="build-lang"><property name="language" value="ru"/></ant>
80 <ant target="build-lang"><property name="language" value="sk"/></ant>
81 <ant target="build-lang"><property name="language" value="sl"/></ant>
82 <ant target="build-lang"><property name="language" value="sv"/></ant>
83 <ant target="build-lang"><property name="language" value="tr"/></ant>
84
85 <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
86 <env key="LANG" value="C"/>
87 <arg value="info"/>
88 <arg value="--xml"/>
89 <arg value="po"/>
90 </exec>
91 <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
92 <delete file="REVISION"/>
93
94 <jar destfile="${i18n.jar}" basedir="build"
95 excludes="trans_*.java java_sourcefiles.txt">
96 <manifest>
97 <attribute name="Extension-Name" value="JOSM Translation into various languages" />
98 <attribute name="Translation-Version" value="${version.entry.commit.revision}"/>
99 <attribute name="Translation-Date" value="${version.entry.commit.date}"/>
100 </manifest>
101 </jar>
102
103 </target>
104
105 <target name="build-lang">
106 <property name="jlanguage" value="${language}"/>
107 <exec executable="msgmerge">
108 <arg line="-U po/${language}.po po/josm.pot"/>
109 </exec>
110
111 <exec executable="msgfmt">
112 <arg line="--verbose --java2 -dbuild -rorg.openstreetmap.josm.i18n.Translation -l${jlanguage} po/${language}.po"/>
113 </exec>
114 </target>
115
116 <target name="clean">
117 <delete dir="${i18n.build.dir}" />
118 <delete file="po/josm.pot"/>
119 <delete>
120 <fileset dir="po" includes="*.po~" defaultexcludes="false"/>
121 </delete>
122 </target>
123
124</project>
Note: See TracBrowser for help on using the repository browser.