Skip to content

Commit dcb1a58

Browse files
authored
Add code to strip the binaries (#12)
1 parent ed69f18 commit dcb1a58

2 files changed

Lines changed: 11 additions & 4 deletions

File tree

‎build/BuildLinuxTask.cs‎

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public override void Run(BuildContext context)
1515
context.ReplaceTextInFiles("freetype/meson.build", "meson.override_dependency('freetype2', freetype_dep)", "");
1616

1717
// Build
18-
context.StartProcessWithDocker("meson", workingDirectory: "freetype", args: "setup -Ddefault_library=shared -Dbzip2=disabled --force-fallback-for=libpng,harfbuzz,zlib builddir");
18+
context.StartProcessWithDocker("meson", workingDirectory: "freetype", args: "setup --buildtype=release -Db_ndebug=true -Ddefault_library=shared -Dbzip2=disabled --force-fallback-for=libpng,harfbuzz,zlib builddir");
1919
context.StartProcessWithDocker("meson", workingDirectory: "freetype", args: "compile -C builddir");
2020

2121
foreach (var filePath in Directory.GetFiles("freetype/builddir"))
@@ -24,7 +24,13 @@ public override void Run(BuildContext context)
2424
File.GetAttributes(filePath).HasFlag(FileAttributes.ReparsePoint))
2525
continue;
2626

27-
context.CopyFile(filePath, $"{context.ArtifactsDir}/libfreetype.so");
27+
var artifactPath = $"{context.ArtifactsDir}/libfreetype.so";
28+
context.CopyFile(filePath, artifactPath);
29+
30+
var stripArguments = new ProcessArgumentBuilder();
31+
stripArguments.Append("--strip-unneeded");
32+
stripArguments.AppendQuoted(artifactPath);
33+
context.StartProcessWithDocker("strip", workingDirectory: "", args: stripArguments);
2834
return;
2935
}
3036

‎build/BuildMacOSTask.cs‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public override void Run(BuildContext context)
1616
// Build
1717
var buildDir = "freetype/build";
1818
context.CreateDirectory(buildDir);
19-
context.StartProcess("cmake", new ProcessSettings { WorkingDirectory = buildDir, Arguments = "../ -DBUILD_SHARED_LIBS=true -DCMAKE_OSX_DEPLOYMENT_TARGET=10.5 -DFT_DISABLE_BROTLI=TRUE -DFT_DISABLE_HARFBUZZ=TRUE -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=\"x86_64;arm64\"" });
19+
context.StartProcess("cmake", new ProcessSettings { WorkingDirectory = buildDir, Arguments = "../ -DBUILD_SHARED_LIBS=true -DCMAKE_OSX_DEPLOYMENT_TARGET=10.5 -DFT_DISABLE_BROTLI=TRUE -DFT_DISABLE_HARFBUZZ=TRUE -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=\"x86_64;arm64\" -DCMAKE_SHARED_LINKER_FLAGS=-Wl,-x" });
2020
context.StartProcess("make", new ProcessSettings { WorkingDirectory = buildDir });
2121

2222
foreach (var filePath in Directory.GetFiles("freetype/build"))
@@ -25,7 +25,8 @@ public override void Run(BuildContext context)
2525
File.GetAttributes(filePath).HasFlag(FileAttributes.ReparsePoint))
2626
continue;
2727

28-
context.CopyFile(filePath, $"{context.ArtifactsDir}/libfreetype.dylib");
28+
var artifactPath = $"{context.ArtifactsDir}/libfreetype.dylib";
29+
context.CopyFile(filePath, artifactPath);
2930
return;
3031
}
3132

0 commit comments

Comments
 (0)