diff options
author | Allan McRae <allan@archlinux.org> | 2015-02-01 22:32:51 +1000 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2015-02-12 14:00:57 +1000 |
commit | adc6ca1f2c08bb01a29f5247bfa5ee3bd30ee727 (patch) | |
tree | 87348647a322bbf8bcd2e696be8eed4dc4a57689 | |
parent | 00da25a5ea3413e128c455fd711cf46692df6159 (diff) |
libmakepkg: make package checking functions extendable
To add a new package check, drop a file in libmakepkg/lint and add the
function to the "lint_functions" array.
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | scripts/libmakepkg/lint_package.sh.in | 11 | ||||
-rw-r--r-- | scripts/libmakepkg/lint_package/build_references.sh.in | 2 | ||||
-rw-r--r-- | scripts/libmakepkg/lint_package/missing_backup.sh.in | 2 |
3 files changed, 13 insertions, 2 deletions
diff --git a/scripts/libmakepkg/lint_package.sh.in b/scripts/libmakepkg/lint_package.sh.in index c2d3e322..e5e23bbd 100644 --- a/scripts/libmakepkg/lint_package.sh.in +++ b/scripts/libmakepkg/lint_package.sh.in @@ -25,14 +25,21 @@ LIBRARY=${LIBRARY:-'@libmakepkgdir@'} source "$LIBRARY/util/message.sh" + +declare -a lint_package_functions + for lib in "$LIBRARY/lint_package/"*.sh; do source "$lib" done +readonly -a lint_package_functions + + lint_package() { cd_safe "$pkgdir" msg "$(gettext "Checking for packaging issue...")" - warn_missing_backup - warn_build_references + for func in ${lint_package_functions[@]}; do + $func + done } diff --git a/scripts/libmakepkg/lint_package/build_references.sh.in b/scripts/libmakepkg/lint_package/build_references.sh.in index f6de2900..6b03e484 100644 --- a/scripts/libmakepkg/lint_package/build_references.sh.in +++ b/scripts/libmakepkg/lint_package/build_references.sh.in @@ -26,6 +26,8 @@ LIBRARY=${LIBRARY:-'@libmakepkgdir@'} source "$LIBRARY/util/message.sh" +lint_package_functions+=('warn_build_references') + warn_build_references() { if find "${pkgdir}" -type f -print0 | xargs -0 grep -q -I "${srcdir}" ; then warning "$(gettext "Package contains reference to %s")" "\$srcdir" diff --git a/scripts/libmakepkg/lint_package/missing_backup.sh.in b/scripts/libmakepkg/lint_package/missing_backup.sh.in index d1008749..64d5a64a 100644 --- a/scripts/libmakepkg/lint_package/missing_backup.sh.in +++ b/scripts/libmakepkg/lint_package/missing_backup.sh.in @@ -26,6 +26,8 @@ LIBRARY=${LIBRARY:-'@libmakepkgdir@'} source "$LIBRARY/util/message.sh" +lint_package_functions+=('warn_missing_backup') + warn_missing_backup() { local file for file in "${backup[@]}"; do |