aboutsummaryrefslogtreecommitdiff
path: root/src/cpt
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpt')
-rwxr-xr-xsrc/cpt65
1 files changed, 49 insertions, 16 deletions
diff --git a/src/cpt b/src/cpt
index 4ddb4df..7905d9c 100755
--- a/src/cpt
+++ b/src/cpt
@@ -1,5 +1,52 @@
#!/bin/sh -ef
+bi() {
+ # Build and install function for cpt.
+ #
+ # shellcheck disable=2317
+ parser_definition() {
+ setup REST help:usage -- "usage: ${0##*/} bi [-dfSty] [--root ROOT] [pkg...]"
+ msg -- '' 'Options:'
+ flag CPT_TEST -t --test export:1 init:@export -- "Run tests (if they exist)"
+ flag CPT_DEBUG -d --debug export:1 init:@export -- "Keep the build directories after operation"
+ flag CPT_NOSTRIP -S --nostrip export:1 init:@export -- "Don't strip debug information from the binaries" \
+ "(might want to add '-g' to your '\$CFLAGS')"
+ global_options
+ }
+
+ eval "$(getoptions parser_definition parse "$0")"
+ parse "$@"
+ eval set -- "$REST"
+ cpt-build "$@"
+
+ # When building multiple packages, cpt will already ask to install
+ # the packages, so no need for this here.
+ [ "$2" ] || cpt-install "$@"
+}
+
+cbi() {
+ # Checksum, build and install.
+ #
+ # shellcheck disable=2317
+ parser_definition() {
+ setup REST help:usage -- "usage: ${0##*/} cbi [-dfSsty] [--root ROOT] [pkg...]"
+ msg -- '' 'Options:'
+ flag CPT_TEST -t --test export:1 init:@export -- "Run tests (if they exist)"
+ flag CPT_DEBUG -d --debug export:1 init:@export -- "Keep the build directories after operation"
+ flag CPT_NOSTRIP -S --nostrip export:1 init:@export -- "Don't strip debug information from the binaries" \
+ "(might want to add '-g' to your '\$CFLAGS')"
+ flag sha -s -- "Generate checksums using the depracated sha256 algorithm"
+ global_options
+ }
+
+ eval "$(getoptions parser_definition parse "$0")"
+ parse "$@"
+ eval set -- "$REST"
+
+ cpt-checksum "$@"; cpt-build "$@"
+ [ "$2" ] || cpt-install "$@"
+}
+
if [ -f ./cpt-lib ]; then . ./cpt-lib; else . cpt-lib; fi
# If none of the tools below are specified, we will reenable glob
@@ -11,7 +58,7 @@ case "$arg" in
log "Carbs Packaging Tool"
set --
for path in $(SEARCH_PATH=$PATH pkg_find cpt-* all -x); do
- set -- "${path#*/cpt-}" "$@"
+ set -- "${path##*/cpt-}" "$@"
max=$((${#1} > max ? ${#1} : max))
done
@@ -35,21 +82,7 @@ case "$arg" in
r|remove) arg=remove ;;
s|search) arg=search ;;
u|update) arg=update ;;
- bi)
- # Build and install function for cpt.
- cpt-build "$@"
-
- # When building multiple packages, cpt will already ask to install
- # the packages, so no need for this here.
- [ "$2" ] || cpt-install "$@"
- exit
- ;;
- cbi)
- # Checksum, build and install.
- cpt-checksum "$@"; cpt-build "$@"
- [ "$2" ] || cpt-install "$@"
- exit
- ;;
+ bi|cbi) "$arg" "$@"; exit "$?" ;;
*) glob=1 ;;
esac