# HG changeset patch # User Olaf Wintermann # Date 1564832803 -7200 # Node ID 686991ae6e2fa78d4e1b9566db494ced5c614e91 # Parent d4363f69fd976b6139a110135d604d088aa9de47 add configureable make variables diff -r d4363f69fd97 -r 686991ae6e2f src/main/java/de/unixwork/uwproj/ConfigVar.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/de/unixwork/uwproj/ConfigVar.java Sat Aug 03 13:46:43 2019 +0200 @@ -0,0 +1,59 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package de.unixwork.uwproj; + +import org.w3c.dom.Element; + +/** + * + * @author olaf + */ +public class ConfigVar { + String name; + String value; + private boolean exec = false; + + public static ConfigVar parse(Element e) { + ConfigVar var = new ConfigVar(); + + String name = e.getAttribute("name"); + if(name == null || name.length() == 0) { + System.err.println("-element: name attribute required"); + return null; + } + var.name = name; + + String value = Xml.getContent(e); + var.value = value == null ? "" : value; + + String type = e.getAttribute("type"); + if(type != null && type.equals("exec")) { + var.exec = true; + } + + return var; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + public boolean isExec() { + return exec; + } +} diff -r d4363f69fd97 -r 686991ae6e2f src/main/java/de/unixwork/uwproj/Main.java --- a/src/main/java/de/unixwork/uwproj/Main.java Sat Aug 03 11:20:29 2019 +0200 +++ b/src/main/java/de/unixwork/uwproj/Main.java Sat Aug 03 13:46:43 2019 +0200 @@ -48,6 +48,8 @@ context.put("dependencies", p.getDependencies()); context.put("options", p.getOptions()); context.put("features", p.getFeatures()); + context.put("project", p); + context.put("vars", p.getVars()); int ret = 1; try { diff -r d4363f69fd97 -r 686991ae6e2f src/main/java/de/unixwork/uwproj/Project.java --- a/src/main/java/de/unixwork/uwproj/Project.java Sat Aug 03 11:20:29 2019 +0200 +++ b/src/main/java/de/unixwork/uwproj/Project.java Sat Aug 03 13:46:43 2019 +0200 @@ -19,6 +19,7 @@ import javax.xml.parsers.ParserConfigurationException; import org.w3c.dom.Document; import org.w3c.dom.Element; +import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; @@ -36,6 +37,9 @@ private List