コード例 #1
0
 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));
         }
     }
 }
コード例 #2
0
 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));
     }
 }
コード例 #3
0
 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);
 }
コード例 #4
0
 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));
         }
     }
 }