Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
[patch] Add BSDs to _ldconfig
- X-seq: zsh-workers 42240
- From: Matthew Martin <phy1729@xxxxxxxxx>
- To: zsh-workers@xxxxxxx
- Subject: [patch] Add BSDs to _ldconfig
- Date: Sat, 6 Jan 2018 22:35:36 -0600
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:mail-followup-to:mime-version :content-disposition:user-agent; bh=NZHMT/eJa0l333eRItUpsCmieir5f16hUUu4dsSGFPI=; b=dAlYj5jRzSL4jtziWhdu32BhIpKGAdC38LMHgnuUlzxLNc1UsKt6Z8TdpOciQQYcrz SKz8bDk34XbJTasWx2ZbtKzamlxEDAzLzHfQ61WBwuZFql48n0TONIGbdOHz+f0rFjL9 F5QL7Nzadks7wS6GjW8PnLpnTzGztv80H/JX6YFmaDfAHxueQmTN67Bzu/4QGQPdOVE0 /pCdt9/Ov5qIxlgdNh7yNaDC3093f78g6y0WJMrhoF76NJwvJfSLcLymvUiyrgINN+wL 9oog9Pv2OnQfEzhFlV6ElDIDgtUPsfoSK6EundiMAov1nHZ+K4NbkY06LpWdv/EMaduV wgGw==
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- List-unsubscribe: <mailto:zsh-workers-unsubscribe@zsh.org>
- Mail-followup-to: zsh-workers@xxxxxxx
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
Move _ldconfig to Unix and add [DFNO]BSD to the mix. Thanks to Dana for
review.
- Matthew Martin
diff --git a/Completion/Linux/Command/_ldconfig b/Completion/Linux/Command/_ldconfig
deleted file mode 100644
index 5f4802f91..000000000
--- a/Completion/Linux/Command/_ldconfig
+++ /dev/null
@@ -1,35 +0,0 @@
-#compdef ldconfig ldconfig.real
-
-local ret=1
-local -a context line state state_descr
-local -A opt_args
-
-_arguments -s -S : \
- '(x -v --verbose)'{-v,--verbose}'[output verbosely]' \
- '(x)*: :->files' \
- + x \
- '(: -)'{-\?,--help}'[display help information]' \
- '(: -)'{-p,--print-cache}'[display libraries in current cache]' \
- '(: -)--usage[display brief usage information]' \
- '(: -)'{-V,--version}'[display version information]' \
- + l \
- '(x o)-l[manually link individual libraries (library mode)]' \
- + o \
- '(x l -c --format)'{-c+,--format=}'[specify cache format]:cache format:(old new compat)' \
- '(x l)-C+[specify cache file to use instead of /etc/ld.so.cache]:cache file:_files' \
- '(x l)-f+[specify configuration file to use instead of /etc/ld.so.conf]:configuration file:_files' \
- '(x l -i --ignore-aux-cache)'{-i,--ignore-aux-cache}'[ignore auxiliary cache file]' \
- '(x l -N)-n[process only directories specified on command line (implies -N)]' \
- '(x l)-N[do not rebuild cache]' \
- '(x l)-r+[specify root directory]:root directory:_directories' \
- '(x l)-X[do not update symbolic links]' \
-&& ret=0
-
-[[ $state == files ]] &&
-if [[ -n ${opt_args[(I)l--l]} ]]; then
- _object_files && ret=0
-else
- _directories && ret=0
-fi
-
-return ret
diff --git a/Completion/Unix/Command/_ldconfig b/Completion/Unix/Command/_ldconfig
new file mode 100644
index 000000000..d9f0b5eac
--- /dev/null
+++ b/Completion/Unix/Command/_ldconfig
@@ -0,0 +1,82 @@
+#compdef ldconfig ldconfig.real
+
+local ret=1
+local -a args context line state state_descr
+local -A opt_args
+
+case $OSTYPE in
+ linux*)
+ args=(
+ '(x -v --verbose)'{-v,--verbose}'[output verbosely]' \
+ + x \
+ '(: -)'{-\?,--help}'[display help information]'
+ '(: -)'{-p,--print-cache}'[display libraries in current cache]'
+ '(: -)--usage[display brief usage information]'
+ '(: -)'{-V,--version}'[display version information]'
+ + l
+ '(x o)-l[manually link individual libraries (library mode)]'
+ + o
+ '(x l -c --format)'{-c+,--format=}'[specify cache format]:cache format:(old new compat)'
+ '(x l)-C+[specify cache file to use instead of /etc/ld.so.cache]:cache file:_files'
+ '(x l)-f+[specify configuration file to use instead of /etc/ld.so.conf]:configuration file:_files'
+ '(x l -i --ignore-aux-cache)'{-i,--ignore-aux-cache}'[ignore auxiliary cache file]'
+ '(x l -N)-n[process only directories specified on command line (implies -N)]'
+ '(x l)-N[do not rebuild cache]'
+ '(x l)-r+[specify root directory]:root directory:_directories'
+ '(x l)-X[do not update symbolic links]'
+ )
+ ;;
+ *bsd*|dragonfly*)
+ args=(
+ '(-U)-m[merge into the existing hints file]'
+ '(: -)-r[list the current contents of the hints file]'
+ );|
+ dragonfly*|freebsd*|openbsd*)
+ args+=(
+ '(-U)-R[rescan previously configured directories]'
+ );|
+ dragonfly*|freebsd*)
+ args+=(
+ '(-aout)-elf[generate hints for elf format shared libraries]'
+ '-f+[specify hints file]:hints file:_files'
+ '-i[run in insecure mode]'
+ );|
+ freebsd*|netbsd*|openbsd*)
+ args+=(
+ '-v[switch on verbose mode]'
+ );|
+ freebsd*|openbsd*)
+ args+=(
+ '-s[do not scan /usr/lib for shared libraries]'
+ '-v[switch on verbose mode]'
+ );|
+ freebsd*)
+ args+=(
+ '-32[generate hints for 32-bit ABI shared libraries]'
+ '(-elf)-aout[generate hints for a.out format shared libraries]'
+ );|
+ netbsd*)
+ args+=(
+ '(-s)-c[do not scan directories in /etc/ls.so.conf]'
+ '(-s)-S[do not scan /usr/lib for shared libraries]'
+ '-s[do not scan /usr/lib or directories in /etc/ld.so.conf for shared libraries]'
+ );|
+ openbsd*)
+ args+=(
+ '(-m)-U[unconfigure specified directories or inaccessable directories if none specified]'
+ );|
+esac
+
+_arguments -s -S : \
+ '(x)*: :->files' \
+ $args \
+&& ret=0
+
+[[ $state == files ]] &&
+if [[ -n ${opt_args[(I)l--l]} ]]; then
+ _object_files && ret=0
+else
+ _directories && ret=0
+fi
+
+return ret
Messages sorted by:
Reverse Date,
Date,
Thread,
Author