Skip to content

Commit efb9383

Browse files
committed
release: v0.16.0
1 parent 4b02187 commit efb9383

2 files changed

Lines changed: 42 additions & 0 deletions

File tree

TablePro.xcodeproj/project.pbxproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1664,6 +1664,7 @@
16641664
DYLIB_CURRENT_VERSION = 1;
16651665
GENERATE_INFOPLIST_FILE = YES;
16661666
INFOPLIST_FILE = "";
1667+
DYLIB_INSTALL_NAME_BASE = "@rpath";
16671668
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
16681669
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
16691670
MACOSX_DEPLOYMENT_TARGET = 14.0;
@@ -1689,6 +1690,7 @@
16891690
DYLIB_CURRENT_VERSION = 1;
16901691
GENERATE_INFOPLIST_FILE = YES;
16911692
INFOPLIST_FILE = "";
1693+
DYLIB_INSTALL_NAME_BASE = "@rpath";
16921694
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
16931695
LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks";
16941696
MACOSX_DEPLOYMENT_TARGET = 14.0;

scripts/build-release.sh

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,46 @@ build_for_arch() {
424424
[ -d "$nested" ] && rm -rf "$nested"
425425
done
426426

427+
# Strip plugin binaries — removes debug symbols, code coverage (__LLVM_COV),
428+
# and dead LINKEDIT metadata that bloat the bundle (e.g., OracleDriver 43MB → ~15MB)
429+
echo "🔪 Stripping plugin binaries..."
430+
PLUGINS_DIR="$BUILD_DIR/$OUTPUT_NAME/Contents/PlugIns"
431+
if [ -d "$PLUGINS_DIR" ]; then
432+
for plugin in "$PLUGINS_DIR"/*.tableplugin; do
433+
[ -d "$plugin" ] || continue
434+
local plugin_name
435+
plugin_name=$(basename "$plugin" .tableplugin)
436+
local plugin_binary="$plugin/Contents/MacOS/$plugin_name"
437+
if [ -f "$plugin_binary" ]; then
438+
local before
439+
before=$(ls -lh "$plugin_binary" | awk '{print $5}')
440+
strip -x "$plugin_binary"
441+
local after
442+
after=$(ls -lh "$plugin_binary" | awk '{print $5}')
443+
echo " $plugin_name: $before$after"
444+
fi
445+
done
446+
echo "✅ Plugin binaries stripped"
447+
fi
448+
449+
# Strip main binary
450+
local main_binary="$BUILD_DIR/$OUTPUT_NAME/Contents/MacOS/TablePro"
451+
if [ -f "$main_binary" ]; then
452+
local before
453+
before=$(ls -lh "$main_binary" | awk '{print $5}')
454+
strip -x "$main_binary"
455+
local after
456+
after=$(ls -lh "$main_binary" | awk '{print $5}')
457+
echo "🔪 Main binary: $before$after"
458+
fi
459+
460+
# Strip PluginKit framework
461+
local pluginkit_binary="$BUILD_DIR/$OUTPUT_NAME/Contents/Frameworks/TableProPluginKit.framework/Versions/A/TableProPluginKit"
462+
if [ -f "$pluginkit_binary" ]; then
463+
strip -x "$pluginkit_binary"
464+
echo " TableProPluginKit framework stripped"
465+
fi
466+
427467
# Bundle non-system dynamic libraries (libpq, OpenSSL, etc.)
428468
bundle_dylibs "$BUILD_DIR/$OUTPUT_NAME"
429469

0 commit comments

Comments
 (0)