summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Legler <alex@a3li.li>2013-08-14 13:47:59 +0200
committerAlex Legler <alex@a3li.li>2013-08-14 13:47:59 +0200
commitb01f1a87e61421abba2ecba3c8e0336a2b5f7044 (patch)
treeb93c36e793ffe4a7205a5671261382c51f101521 /eselect-ruby
parentruby.eselect: modeline magic (diff)
downloadruby-scripts-b01f1a87e61421abba2ecba3c8e0336a2b5f7044.tar.gz
ruby-scripts-b01f1a87e61421abba2ecba3c8e0336a2b5f7044.tar.bz2
ruby-scripts-b01f1a87e61421abba2ecba3c8e0336a2b5f7044.zip
ruby.eselect: Rework manpage handling
Ruby >= 1.9 has erb, irb, and ri manpages in addition to the ruby.1, support these. Also, set links compression-agnostically (does that word even exist?), fixing bug 480004.
Diffstat (limited to 'eselect-ruby')
-rw-r--r--eselect-ruby/ruby.eselect21
1 files changed, 10 insertions, 11 deletions
diff --git a/eselect-ruby/ruby.eselect b/eselect-ruby/ruby.eselect
index ad4fa7c..34063a8 100644
--- a/eselect-ruby/ruby.eselect
+++ b/eselect-ruby/ruby.eselect
@@ -42,21 +42,20 @@ check_target() {
remove_symlinks() {
rm -f ${EROOT}${bindir}/{ruby,gem,irb,erb,ri,rdoc,testrb} && \
- rm -f ${EROOT}${man1dir}/ruby.{1,1.gz,1.bz2,1.lzma}
+ rm -f ${EROOT}${man1dir}/{ruby,irb,erb,ri}.1*
}
-create_man_symlinks() {
+create_man_links() {
local version=${1}
- for m in ${EROOT}${man1dir}/ruby${version}.{1,1.gz,1.bz2,1.lzma}
- do
- if [[ -e ${m} ]] ; then
- break
- fi
+ for manpage in "ruby" "irb" "erb" "ri" ; do
+ for m in ${EROOT}${man1dir}/${manpage}${version}.1* ; do
+ if [[ -e ${m} ]]; then
+ echo ".so ${manpage}${version}.1" > ${EROOT}${man1dir}/${manpage}.1 || \
+ write_error_msg "Could not set up manpage link for ${manpage}.1"
+ fi
+ done
done
-
- ln -s "${m}" "${m/ruby${version}/ruby}" || \
- write_error_msg "Could not set man symlink"
}
create_symlinks() {
@@ -82,7 +81,7 @@ create_symlinks() {
echo
fi
- [[ $(portageq envvar FEATURES) =~ noman ]] || create_man_symlinks ${version}
+ [[ $(portageq envvar FEATURES) =~ noman ]] || create_man_links ${version}
write_list_start "Successfully switched to profile:"
write_kv_list_entry "${target}" ""