gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
m2compile moved to com.quemaster.ant.m2 package
[pub/donny/ant-tasks.git] / com / quemaster / ant / m2 / m2compile.java
diff --git a/com/quemaster/ant/m2/m2compile.java b/com/quemaster/ant/m2/m2compile.java
new file mode 100644 (file)
index 0000000..6d43534
--- /dev/null
@@ -0,0 +1,51 @@
+package com.quemaster.ant.m2;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.Task;
+
+import java.io.*;
+
+public class m2compile extends Task {
+    private String module="program";
+    private File dir=null;
+
+    
+    // needs to recognize whether it's linux or not
+    
+    // needs to check wheter the compilation is needed
+    // based on the timestamps of the exe and mod
+    
+    // The method executing the task
+    public void execute() throws BuildException {
+       int exit = -1;
+       try{
+               ProcessBuilder pb = new ProcessBuilder(
+                               "wine", "xc", "=make", "=all", module);
+               pb.directory(dir);
+               pb.inheritIO();
+               
+               Process p = pb.start();
+               p.waitFor();
+               exit = p.exitValue();
+               
+       }catch (Exception ex) {
+               throw new BuildException(ex);
+       }
+        if (exit != 0) 
+               throw new BuildException("compilation ended with code "+exit);
+    }
+    
+    public void setModule(String msg) {
+        this.module = msg;
+    }
+    
+    public void setDir(File msg) {
+        this.dir = msg;
+    }
+    
+    public static void main(String[] args){
+               m2compile m = new m2compile();
+               
+               m.execute();
+    }
+}
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner