@@ -314,36 +314,6 @@ jobs:
314314 name : test-results-manylinux
315315 path : test/OpenCvSharp.Tests/bin/Release/net10.0/test-results.trx
316316
317- - name : Verify portable dependency set (full)
318- run : |
319- so=${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.so
320- # libX11, libdrm: highgui X11 backend; libgtk-3, libgdk-3, libglib-2, etc.: GTK3 highgui backend.
321- # All are standard on any Linux desktop/server with graphics support.
322- allowed='^(lib(stdc\+\+|gcc_s|m|c|pthread|dl|rt|atomic|X11|drm|gtk-3|gdk-3|glib-2|gobject-2|gdk_pixbuf-2|gio-2|cairo|pango-1|harfbuzz|atk-1|fontconfig|freetype|xcb|Xext|Xrender|Xfixes|Xinerama|Xi|Xrandr|Xcomposite|Xcursor|xkbcommon)([\.|-].*)?)$|^ld-linux-[a-z0-9_-]+\.so\.'
323- echo "=== DT_NEEDED entries (full) ==="
324- readelf -d "$so" | awk '/NEEDED/ {gsub(/\[|\]/, "", $5); print $5}'
325- bad=$(readelf -d "$so" | awk '/NEEDED/ {gsub(/\[|\]/, "", $5); print $5}' | grep -Ev "$allowed" || true)
326- if [ -n "$bad" ]; then
327- echo "ERROR: unexpected dynamic dependencies:"
328- echo "$bad"
329- exit 1
330- fi
331- echo "OK: dependency set is portable"
332-
333- - name : Verify portable dependency set (slim)
334- run : |
335- so=${GITHUB_WORKSPACE}/nuget-slim/libOpenCvSharpExtern.so
336- allowed='^(lib(stdc\+\+|gcc_s|m|c|pthread|dl|rt|atomic)(\.so.*)?)$|^ld-linux-[a-z0-9_-]+\.so\.'
337- echo "=== DT_NEEDED entries (slim) ==="
338- readelf -d "$so" | awk '/NEEDED/ {gsub(/\[|\]/, "", $5); print $5}'
339- bad=$(readelf -d "$so" | awk '/NEEDED/ {gsub(/\[|\]/, "", $5); print $5}' | grep -Ev "$allowed" || true)
340- if [ -n "$bad" ]; then
341- echo "ERROR: unexpected dynamic dependencies:"
342- echo "$bad"
343- exit 1
344- fi
345- echo "OK: dependency set is portable"
346-
347317 # ---------------------------------------------------------------------------
348318 # Create NuGet packages from the manylinux-built binaries.
349319 # Only runs on push to main.
0 commit comments