dep

Package manager for embedded C libraries
git clone git://git.finwo.net/app/dep
Log | Files | Refs | README | LICENSE

commit 08f40106a1cca73324aa52dd9178b637dd321c7e
parent 162dd1ae9a1702fc5d2689b8f612453f74f08a64
Author: finwo <finwo@pm.me>
Date:   Sun, 29 Jan 2023 18:03:05 +0100

implemented build step support from package.ini

Diffstat:
Mdist/dep | 10+++++++++-
Msrc/command/install/index.sh | 10+++++++++-
2 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/dist/dep b/dist/dep @@ -302,7 +302,9 @@ function cmd_install_dep { origin=$2 # Full install if missing + ISNEW= if [ ! -d "${CMD_INSTALL_PKG_DEST}/${name}" ]; then + ISNEW="yes" # Fetch package.ini for the dependency mkdir -p "${CMD_INSTALL_PKG_DEST}/${name}" @@ -368,7 +370,13 @@ function cmd_install_dep { cmd_install_dep "$depname" "$deplink" done < <(ini_foreach ini_output_section "${CMD_INSTALL_PKG_DEST}/${name}/package.ini" "dependencies.") - # TODO: handle patching/building here + # Handle any build-steps defined in the package.ini + if [ ! -z "$ISNEW" ]; then + while read line; do + buildcmd=${line#*=} + bash -c "cd ${CMD_INSTALL_PKG_DEST}/${name} ; ${buildcmd}" + done < <(ini_foreach ini_output_section "${CMD_INSTALL_PKG_DEST}/${name}/package.ini" "build." | sort --human-numeric-sort) + fi # Build the package's exports while read line; do diff --git a/src/command/install/index.sh b/src/command/install/index.sh @@ -72,7 +72,9 @@ function cmd_install_dep { origin=$2 # Full install if missing + ISNEW= if [ ! -d "${CMD_INSTALL_PKG_DEST}/${name}" ]; then + ISNEW="yes" # Fetch package.ini for the dependency mkdir -p "${CMD_INSTALL_PKG_DEST}/${name}" @@ -138,7 +140,13 @@ function cmd_install_dep { cmd_install_dep "$depname" "$deplink" done < <(ini_foreach ini_output_section "${CMD_INSTALL_PKG_DEST}/${name}/package.ini" "dependencies.") - # TODO: handle patching/building here + # Handle any build-steps defined in the package.ini + if [ ! -z "$ISNEW" ]; then + while read line; do + buildcmd=${line#*=} + bash -c "cd ${CMD_INSTALL_PKG_DEST}/${name} ; ${buildcmd}" + done < <(ini_foreach ini_output_section "${CMD_INSTALL_PKG_DEST}/${name}/package.ini" "build." | sort --human-numeric-sort) + fi # Build the package's exports while read line; do