X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Tools%2FJava%2FSource%2FGenBuild%2Forg%2Ftianocore%2Fbuild%2FGenBuildTask.java;h=8be1d62cc0f765de9032d86091bf4a37885c13a8;hp=389b8f12b1006d3751c74da1d7b0177f6d855097;hb=700279a971c1f603a72a45455be4b4f842ce39d9;hpb=b69bb9ba72ebb7341bce97eec1a499d8258a3272 diff --git a/Tools/Java/Source/GenBuild/org/tianocore/build/GenBuildTask.java b/Tools/Java/Source/GenBuild/org/tianocore/build/GenBuildTask.java index 389b8f12b1..8be1d62cc0 100644 --- a/Tools/Java/Source/GenBuild/org/tianocore/build/GenBuildTask.java +++ b/Tools/Java/Source/GenBuild/org/tianocore/build/GenBuildTask.java @@ -26,14 +26,11 @@ import java.util.Vector; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.BuildListener; +import org.apache.tools.ant.Location; import org.apache.tools.ant.Project; import org.apache.tools.ant.taskdefs.Ant; import org.apache.tools.ant.taskdefs.Property; import org.apache.xmlbeans.XmlObject; - -import org.tianocore.common.definitions.ToolDefinitions; -import org.tianocore.common.exception.EdkException; -import org.tianocore.common.logger.EdkLog; import org.tianocore.build.autogen.AutoGen; import org.tianocore.build.exception.AutoGenException; import org.tianocore.build.exception.GenBuildException; @@ -48,6 +45,9 @@ import org.tianocore.build.id.ModuleIdentification; import org.tianocore.build.id.PackageIdentification; import org.tianocore.build.id.PlatformIdentification; import org.tianocore.build.tools.ModuleItem; +import org.tianocore.common.definitions.ToolDefinitions; +import org.tianocore.common.exception.EdkException; +import org.tianocore.common.logger.EdkLog; /**

@@ -151,6 +151,10 @@ public class GenBuildTask extends Ant { BuildException buildException = new BuildException(e.getMessage()); buildException.setStackTrace(e.getStackTrace()); throw buildException; + } catch (Exception e) { + BuildException buildException = new BuildException(e.getMessage()); + buildException.setStackTrace(e.getStackTrace()); + throw buildException; } } @@ -197,7 +201,7 @@ public class GenBuildTask extends Ant { moduleId.setMsaFile(msaFile); } - String[] producedLibraryClasses = saq.getLibraryClasses("ALWAYS_PRODUCED",null); + String[] producedLibraryClasses = saq.getLibraryClasses("ALWAYS_PRODUCED", null, null); if (producedLibraryClasses.length == 0) { moduleId.setLibrary(false); } else { @@ -226,9 +230,9 @@ public class GenBuildTask extends Ant { } Set archSet = new LinkedHashSet(); - - if ( getProject().getProperty("ARCH") != null) { - String[] fpdArchList = getProject().getProperty("ARCH").split(" "); + String archString = getProject().getProperty("ARCH"); + if (archString != null) { + String[] fpdArchList = archString.split(" "); for (int i = 0; i < fpdArchList.length; i++) { if (archListSupByToolChain.contains(fpdArchList[i])) { @@ -253,6 +257,10 @@ public class GenBuildTask extends Ant { } } + if (archList.length == 0) { + EdkLog.log(this, EdkLog.EDK_WARNING, "Warning: " + "[" + archString + "] is not supported for " + moduleId + " in this build!\n"); + } + for (int k = 0; k < archList.length; k++) { getProject().setProperty("ARCH", archList[k]); @@ -421,8 +429,11 @@ public class GenBuildTask extends Ant { getProject().setProperty("FILE_GUID", moduleId.getGuid()); getProject().setProperty("VERSION", moduleId.getVersion()); getProject().setProperty("MODULE_TYPE", moduleId.getModuleType()); - getProject().setProperty("MODULE_DIR", moduleId.getMsaFile().getParent().replaceAll("(\\\\)", "/")); - getProject().setProperty("MODULE_RELATIVE_DIR", moduleId.getModuleRelativePath().replaceAll("(\\\\)", "/")); + File msaFile = moduleId.getMsaFile(); + String msaFileName = msaFile.getName(); + getProject().setProperty("MODULE_DIR", msaFile.getParent().replaceAll("(\\\\)", "/")); + getProject().setProperty("MODULE_RELATIVE_DIR", moduleId.getModuleRelativePath().replaceAll("(\\\\)", "/") + + File.separatorChar + msaFileName.substring(0, msaFileName.lastIndexOf('.'))); // // SUBSYSTEM