GenerateFileCopyDestination( Bam.Core.Module module, Bam.Core.TokenizedString referenceFilePath, Bam.Core.TokenizedString subDirectory, Bam.Core.TokenizedString unReferencedRoot) { if (referenceFilePath != null) { if (null != subDirectory) { return(module.CreateTokenizedString("@normalize(@dir($(0))/$(1)/)", referenceFilePath, subDirectory)); } else { return(module.CreateTokenizedString("@normalize(@dir($(0))/)", referenceFilePath)); } } else { if (null != subDirectory) { return(module.CreateTokenizedString("@normalize($(0)/$(1)/)", unReferencedRoot, subDirectory)); } else { return(module.CreateTokenizedString("@normalize($(0)/)", unReferencedRoot)); } } }
GenerateSymbolicLinkCopyDestination( Bam.Core.Module module, Bam.Core.TokenizedString referenceFilePath, Bam.Core.TokenizedString subDirectory) { if (null != subDirectory) { return(module.CreateTokenizedString("@normalize(@dir($(0))/$(1)/)", referenceFilePath, subDirectory)); } else { return(module.CreateTokenizedString("@normalize(@dir($(0))/)", referenceFilePath)); } }
PublishingPath( Bam.Core.Module module, EPublishingType type) { if (this.BuildEnvironment.Platform.Includes(Bam.Core.EPlatform.OSX) && (EPublishingType.WindowedApplication == type)) { return(module.CreateTokenizedString("$(OutputName).app/Contents/MacOS").Parse()); } return(null); }
GenerateDirectoryCopyDestination( Bam.Core.Module module, Bam.Core.TokenizedString referenceFilePath, Bam.Core.TokenizedString subDirectory, Bam.Core.TokenizedString sourcePath) { // Windows XCOPY requires the directory name to be added to the destination, while Posix cp does not if (null != subDirectory) { if (module.BuildEnvironment.Platform.Includes(Bam.Core.EPlatform.Windows)) { return(module.CreateTokenizedString("@normalize(@dir($(0))/$(1)/@ifnotempty($(CopiedFilename),$(CopiedFilename),@filename($(2)))/)", referenceFilePath, subDirectory, sourcePath)); } else { return(module.CreateTokenizedString("@normalize(@dir($(0))/$(1)/@ifnotempty($(CopiedFilename),$(CopiedFilename),))", referenceFilePath, subDirectory)); } } else { if (module.BuildEnvironment.Platform.Includes(Bam.Core.EPlatform.Windows)) { return(module.CreateTokenizedString("@normalize(@dir($(0))/@ifnotempty($(CopiedFilename),$(CopiedFilename),@filename($(1)))/)", referenceFilePath, sourcePath)); } else { return(module.CreateTokenizedString("@normalize(@dir($(0))/@ifnotempty($(CopiedFilename),$(CopiedFilename),))", referenceFilePath)); } } }