Revision d8c225007498a68d1a1c9f3229d0dbc11b98f0cf authored by Gabriel Baraldi on 11 February 2023, 11:07:34 UTC, committed by GitHub on 11 February 2023, 11:07:34 UTC
* Run dsymutil on pkgimgs for apple platforms +
LLD bump to get dsymutil from the jll
1 parent 6cbcee9
Raw File
fixup-libstdc++.sh
#!/bin/sh
# This file is a part of Julia. License is MIT: https://julialang.org/license

# Run as: fixup-libstdc++.sh <libdir> <private_libdir>

if [ "$#" -ne 2 ]; then
    echo "Usage: $0 <libdir> <private_libdir>"
    exit 1
fi

libdir="$1"
private_libdir="$2"

if [ ! -f "$private_libdir/libjulia-internal.so" ] && \
   [ ! -f "$private_libdir/libjulia-internal-debug.so" ]; then
    echo "ERROR: Could not open $private_libdir/libjulia-internal.so" >&2
    exit 2
fi

find_shlib ()
{
    if [ -f "$1" ]; then
        ldd "$1" | grep $2 | cut -d' ' -f3 | xargs
    fi
}

# Discover libstdc++ location and name
if [ -f "$private_libdir/libjulia-internal.so" ]; then
    LIBSTD=$(find_shlib "$private_libdir/libjulia-internal.so" "libstdc++.so")
elif [ -f "$private_libdir/libjulia-internal-debug.so" ]; then
    LIBSTD=$(find_shlib "$private_libdir/libjulia-internal-debug.so" "libstdc++.so")
fi
LIBSTD_NAME=$(basename $LIBSTD)
LIBSTD_DIR=$(dirname $LIBSTD)

if [ ! -f "$private_libdir/$LIBSTD_NAME" ] && [ -f "$LIBSTD_DIR/$LIBSTD_NAME" ]; then
    cp -v "$LIBSTD_DIR/$LIBSTD_NAME" "$private_libdir"
    chmod 755 "$private_libdir/$LIBSTD_NAME"
fi
back to top