CompileAgainstPublicly <DependentModule>( CModule affectedSource, params CModule[] additionalSources) where DependentModule : CModule, new() { var dependent = Bam.Core.Graph.Instance.FindReferencedModule <DependentModule>(); if (null == dependent) { return; } this.DependsOn(dependent); var sources = new CModule[additionalSources.Length + 1]; sources[0] = affectedSource; if (additionalSources.Length > 0) { additionalSources.CopyTo(sources, 1); } foreach (var source in sources) { if (null == source) { continue; } source.UsePublicPatches(dependent); } this.UsePublicPatches(dependent); }
CompileAndLinkAgainst <DependentModule>( CModule affectedSource, params CModule[] additionalSources) where DependentModule : CModule, new() { var dependent = Bam.Core.Graph.Instance.FindReferencedModule <DependentModule>(); if (null == dependent) { return; } this.addLinkDependency(dependent); this.addRuntimeDependency(dependent); var sources = new CModule[additionalSources.Length + 1]; sources[0] = affectedSource; if (additionalSources.Length > 0) { additionalSources.CopyTo(sources, 1); } foreach (var source in sources) { if (null == source) { continue; } source.UsePublicPatches(dependent); } this.LinkAllForwardedDependenciesFromLibraries(dependent); this.UsePublicPatchesPrivately(dependent); }
CompilePubliclyAndLinkAgainst <DependentModule>( CModule affectedSource, params CModule[] additionalSources) where DependentModule : CModule, new() { var dependent = Bam.Core.Graph.Instance.FindReferencedModule <DependentModule>(); if (null == dependent) { return; } if (dependent is C.DynamicLibrary || dependent is C.Cxx.DynamicLibrary) { this.forwardedDeps.AddUnique(dependent); } this.CompileAndLinkAgainst <DependentModule>(affectedSource, additionalSources); this.UsePublicPatches(dependent); }