Skip to content

Commit dded8fd

Browse files
committed
Address PR comment
1 parent c45854f commit dded8fd

File tree

3 files changed

+31
-61
lines changed

3 files changed

+31
-61
lines changed

tracer/build/_build/Build.Profiler.Steps.cs

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ async Task DownloadAndExtractVcpkg(AbsolutePath destinationFolder)
390390
var sourceDir = ProfilerDeployDirectory / arch;
391391
EnsureExistingDirectory(MonitoringHomeDirectory / arch);
392392

393-
var files = new[] { "Datadog.Profiler.Native.so" };
393+
var files = new[] { "Datadog.Profiler.Native.so", "libdatadog_profiling.so" };
394394
foreach (var file in files)
395395
{
396396
var source = sourceDir / file;
@@ -426,16 +426,20 @@ async Task DownloadAndExtractVcpkg(AbsolutePath destinationFolder)
426426
.After(CompileProfilerNativeSrc)
427427
.Executes(() =>
428428
{
429-
foreach (var architecture in ArchitecturesForPlatformForProfiler)
429+
var files = new[] { "Datadog.Profiler.Native", "datadog_profiling_ffi" };
430+
foreach (var file in files)
430431
{
431-
var sourceDir = ProfilerDeployDirectory / $"win-{architecture}";
432-
var source = sourceDir / "Datadog.Profiler.Native.dll";
433-
var dest = MonitoringHomeDirectory / $"win-{architecture}";
434-
CopyFileToDirectory(source, dest, FileExistsPolicy.Overwrite);
435-
436-
source = sourceDir / "Datadog.Profiler.Native.pdb";
437-
dest = SymbolsDirectory / $"win-{architecture}" / Path.GetFileName(source);
438-
CopyFile(source, dest, FileExistsPolicy.Overwrite);
432+
foreach (var architecture in ArchitecturesForPlatformForProfiler)
433+
{
434+
var sourceDir = ProfilerDeployDirectory / $"win-{architecture}";
435+
var source = sourceDir / $"{file}.dll";
436+
var dest = MonitoringHomeDirectory / $"win-{architecture}";
437+
CopyFileToDirectory(source, dest, FileExistsPolicy.Overwrite);
438+
439+
source = sourceDir / $"{file}.pdb";
440+
dest = SymbolsDirectory / $"win-{architecture}" / Path.GetFileName(source);
441+
CopyFile(source, dest, FileExistsPolicy.Overwrite);
442+
}
439443
}
440444
});
441445

@@ -953,7 +957,7 @@ void RunCppCheck(string projectName, MSBuildTargetPlatform platform)
953957
.Executes(() =>
954958
{
955959
var (arch, extension) = GetUnixArchitectureAndExtension();
956-
var dest = ProfilerDeployDirectory / arch / $"{FileNames.NativeProfiler}.{extension}";
960+
var files = new[] {$"{FileNames.NativeProfiler}.{extension}", $"libdatadog_profiling.{extension}"};
957961

958962
// If we need to increase this version on arm64 later, that is ok as long
959963
// as it doesn't go above 2.23. Just update the version below. We must
@@ -965,8 +969,14 @@ void RunCppCheck(string projectName, MSBuildTargetPlatform platform)
965969
? new Version(2, 18)
966970
: new Version(2, 17);
967971

968-
ValidateNativeLibraryGlibcCompatibility(dest, expectedGlibcVersion);
972+
foreach (var file in files)
973+
{
974+
var dest = ProfilerDeployDirectory / arch / file;
975+
976+
ValidateNativeLibraryGlibcCompatibility(dest, expectedGlibcVersion);
977+
}
969978
});
979+
970980
enum SanitizerKind
971981
{
972982
None,

tracer/build/_build/Build.Shared.Steps.cs

Lines changed: 8 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -267,50 +267,6 @@ partial class Build
267267
true);
268268
});
269269

270-
Target PublishLibdatadog => _ => _
271-
.Unlisted()
272-
.DependsOn(PublishLibdatadogWindows)
273-
.DependsOn(PublishLibdatadogLinux);
274-
275-
Target PublishLibdatadogWindows => _ => _
276-
.Unlisted()
277-
.OnlyWhenStatic(() => IsWin)
278-
.After(CompileProfilerNativeSrc)
279-
.Executes(() =>
280-
{
281-
const string fileName = "datadog_profiling_ffi";
282-
foreach (var architecture in ArchitecturesForPlatformForProfiler)
283-
{
284-
var sourceDir = ProfilerDeployDirectory / $"win-{architecture}";
285-
var source = sourceDir / $"{fileName}.dll";
286-
var dest = MonitoringHomeDirectory / $"win-{architecture}";
287-
CopyFileToDirectory(source, dest, FileExistsPolicy.Overwrite);
288-
289-
source = sourceDir / $"{fileName}.pdb";
290-
dest = SymbolsDirectory / $"win-{architecture}" / Path.GetFileName(source);
291-
CopyFile(source, dest, FileExistsPolicy.Overwrite);
292-
}
293-
});
294-
295-
Target PublishLibdatadogLinux => _ => _
296-
.Unlisted()
297-
.OnlyWhenStatic(() => IsLinux)
298-
.After(CompileProfilerNativeSrc)
299-
.Executes(() =>
300-
{
301-
var (arch, _) = GetUnixArchitectureAndExtension();
302-
var sourceDir = ProfilerDeployDirectory / arch;
303-
EnsureExistingDirectory(MonitoringHomeDirectory / arch);
304-
305-
var files = new[] { "libdatadog_profiling.so" };
306-
foreach (var file in files)
307-
{
308-
var source = sourceDir / file;
309-
var dest = MonitoringHomeDirectory / arch / file;
310-
CopyFile(source, dest, FileExistsPolicy.Overwrite);
311-
}
312-
});
313-
314270
Target ValidateNativeTracerGlibcCompatibility => _ => _
315271
.Unlisted()
316272
.OnlyWhenStatic(() => IsLinux)
@@ -320,7 +276,7 @@ partial class Build
320276
.Executes(() =>
321277
{
322278
var (arch, extension) = GetUnixArchitectureAndExtension();
323-
var dest = MonitoringHomeDirectory / arch / $"{NativeTracerProject.Name}.{extension}";
279+
var files = new[] {$"{NativeTracerProject.Name}.{extension}", $"libddwaf.{extension}"};
324280

325281
// If we need to increase this version on arm64 later, that is ok as long
326282
// as it doesn't go above 2.23. Just update the version below. We must
@@ -332,7 +288,12 @@ partial class Build
332288
? new Version(2, 18)
333289
: new Version(2, 17);
334290

335-
ValidateNativeLibraryGlibcCompatibility(dest, expectedGlibcVersion);
291+
foreach (var file in files)
292+
{
293+
var dest = MonitoringHomeDirectory / arch / $"{file}";
294+
295+
ValidateNativeLibraryGlibcCompatibility(dest, expectedGlibcVersion);
296+
}
336297
});
337298

338299
void ValidateNativeLibraryGlibcCompatibility(AbsolutePath libraryPath, Version expectedGlibcVersion)
@@ -346,7 +307,7 @@ void ValidateNativeLibraryGlibcCompatibility(AbsolutePath libraryPath, Version e
346307
{
347308
throw new Exception($"Alpine build of {filename} should not have glibc symbols in the binary, but found {glibcVersion}");
348309
}
349-
else if (!IsAlpine && glibcVersion != expectedGlibcVersion)
310+
else if (!IsAlpine && glibcVersion > expectedGlibcVersion)
350311
{
351312
throw new Exception($"{filename} should have a minimum required glibc version of {expectedGlibcVersion} but has {glibcVersion}");
352313
}

tracer/build/_build/Build.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,8 +231,7 @@ void DeleteReparsePoints(string path)
231231
.Description("Builds the Profiler native and managed src, and publishes the profiler home directory")
232232
.After(Clean)
233233
.DependsOn(CompileProfilerNativeSrc)
234-
.DependsOn(PublishProfiler)
235-
.DependsOn(PublishLibdatadog);
234+
.DependsOn(PublishProfiler);
236235

237236
Target BuildNativeLoader => _ => _
238237
.Description("Builds the Native Loader, and publishes to the monitoring home directory")

0 commit comments

Comments
 (0)