From 2b073bc9d50b437c5bfd0c16d17256a1cbe68c83 Mon Sep 17 00:00:00 2001 From: Rahammetoela Toekiman Date: Sun, 14 Apr 2024 12:33:57 -0300 Subject: [PATCH] implement a general library linking function --- lib/linkfunc | 13 +++++++++++++ lib/pkgfunc | 1 + 2 files changed, 14 insertions(+) diff --git a/lib/linkfunc b/lib/linkfunc index 6305915..029e311 100644 --- a/lib/linkfunc +++ b/lib/linkfunc @@ -1,4 +1,17 @@ #!/usr/bin/env bash +function link_lib(){ + while read lib + do + cd $lib + while read libdir + do + mkdir -p $PKG_PREFIX/lib/$libdir + ln -s $(find $lib/$libdir -type f -maxdepth 1) $PKG_PREFIX/lib/$libdir 2> /dev/null + symlinks=$(find $lib/$libdir -type l -maxdepth 1) + [[ -n $symlinks ]] && cp $symlinks $PKG_PREFIX/lib/$libdir + done < <(find . -type d) + done < <(find $PKGS_DIR -name lib -type d); +} function link_bin(){ [ ! -d "$HOME/.local/bin" ] && mkdir -p "$HOME/.local/bin"; [ ! -d "$SUDO_BIN" ] && sudo_run "mkdir -p $SUDO_BIN"; diff --git a/lib/pkgfunc b/lib/pkgfunc index 61be134..8ac7186 100644 --- a/lib/pkgfunc +++ b/lib/pkgfunc @@ -16,6 +16,7 @@ function pkg_install () { PKGS_DIR=${PKG_PATH}/${pkgname}; echo "${pkgversion}" > "${PKGS_DIR}/${pkgname}.version"; link_bin; + link_lib; if [ -f "${PKG_PREFIX}/lib/crackle/${pkgname}" ]; then source "${PKG_PREFIX}/lib/crackle/${pkgname}"; install_${pkgname};