diff options
author | George Sherwood | 2008-10-21 15:29:13 -0500 |
---|---|---|
committer | George Sherwood | 2008-10-21 15:29:13 -0500 |
commit | 3f8edd3fc622e2a98f201f14a0529e3a3bfd4138 (patch) | |
tree | 074b1bd595198a9d54ad1d6d893e60a8fd423f38 /libcompat | |
parent | 619db77afefec7bbb038d49a46bd6a16bb6fd889 (diff) |
Added grimoire files from z-rejected.
Diffstat (limited to 'libcompat')
-rwxr-xr-x | libcompat | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/libcompat b/libcompat new file mode 100755 index 0000000..b654e6e --- /dev/null +++ b/libcompat @@ -0,0 +1,67 @@ +# ignore sub_depends if not supported by sorcery +declare -f sub_depends &> /dev/null || +{ + function sub_depends() { + : + } + + function depends() { + [[ $1 == "-sub" ]] && shift 2 + real_depends "$@" + } + + function optional_depends() { + [[ $1 == "-sub" ]] && shift 2 + real_optional_depends "$@" + } +} + +# ignore force_depends if not supported by sorcery +declare -f force_depends &> /dev/null || +function force_depends() { + : +} + +#------------------------------------------------------------------------- +## Grimoire gaze depends alternative +## Uses gaze depends if the internal sorcery function isn't available +#------------------------------------------------------------------------- +declare -f show_up_depends &> /dev/null || +function show_up_depends() { + gaze -q depends --fast "$@" +} + +# fall back to optional_depends if suggest_depends isn't implemented +# OR fall back to true - this is needed to avoid some circular dependencies +# see #13244 for an example +if declare -f suggest_depends &> /dev/null; then + function suggest_depends_2() { + suggest_depends "$@" + } +else + function suggest_depends() { + optional_depends "$@" + } + + function suggest_depends_2() { + true + } +fi + +# fall back to depends if runtime_depends isn't implemented +declare -f runtime_depends &> /dev/null || +function runtime_depends() { + depends "$@" +} + +declare -f is_depends_enabled &>/dev/null || +function is_depends_enabled() { + local dep_status + if [[ $3 ]] ; then + dep_status=$DEPENDS_STATUS + else + dep_status=$(hash_get uncommitted_hash $1) + [[ $dep_status ]] || dep_status=$DEPENDS_STATUS + fi + grep -q "^[[:space:]]*$1:$2:on" $dep_status +} |