Index: trunk/build.xml
===================================================================
--- trunk/build.xml	(revision 9356)
+++ trunk/build.xml	(revision 9357)
@@ -648,5 +648,5 @@
     <target name="epsg-compile" depends="compile">
         <mkdir dir="build2"/>
-        <javac sourcepath="" srcdir="scripts"
+        <javac sourcepath="" srcdir="scripts" failonerror="true"
             destdir="build2" target="1.7" source="1.7" debug="on" includeantruntime="false" createMissingPackageInfoClass="false" encoding="UTF-8" classpath="build">
         </javac>
@@ -655,5 +655,5 @@
     <target name="epsg" depends="epsg-compile">
         <touch file="${epsg.output}"/>
-        <java classname="BuildProjectionDefinitions">
+        <java classname="BuildProjectionDefinitions" failonerror="true">
             <classpath>
                 <pathelement path="."/>
@@ -661,4 +661,5 @@
                 <pathelement path="build2"/>
             </classpath>
+            <arg value="${basedir}"/>
         </java>
     </target>
Index: trunk/scripts/BuildProjectionDefinitions.java
===================================================================
--- trunk/scripts/BuildProjectionDefinitions.java	(revision 9356)
+++ trunk/scripts/BuildProjectionDefinitions.java	(revision 9357)
@@ -2,4 +2,5 @@
 
 import java.io.BufferedWriter;
+import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
@@ -48,13 +49,13 @@
      */
     public static void main(String[] args) throws IOException {
-        buildList();
+        buildList(args[0]);
     }
 
-    static void buildList() throws IOException {
-        List<ProjectionDefinition> pdJosm = Projections.loadProjectionDefinitions(JOSM_EPSG_FILE);
+    static void buildList(String baseDir) throws IOException {
+        List<ProjectionDefinition> pdJosm = Projections.loadProjectionDefinitions(baseDir + File.separator + JOSM_EPSG_FILE);
         for (ProjectionDefinition pd : pdJosm) {
             epsgJosm.put(pd.code, pd);
         }
-        List<ProjectionDefinition> pdProj4 = Projections.loadProjectionDefinitions(PROJ4_EPSG_FILE);
+        List<ProjectionDefinition> pdProj4 = Projections.loadProjectionDefinitions(baseDir + File.separator + PROJ4_EPSG_FILE);
         for (ProjectionDefinition pd : pdProj4) {
             epsgProj4.put(pd.code, pd);
@@ -62,5 +63,5 @@
 
         try (BufferedWriter out = new BufferedWriter(new OutputStreamWriter(
-                new FileOutputStream(OUTPUT_EPSG_FILE), StandardCharsets.UTF_8))) {
+                new FileOutputStream(baseDir + File.separator + OUTPUT_EPSG_FILE), StandardCharsets.UTF_8))) {
             out.write("## This file is autogenerated, do not edit!\n");
             out.write("## Run ant task \"epsg\" to rebuild.\n");
