xref: /aosp_15_r20/external/ethtool/libmnl/doxygen/finalize_manpages.sh (revision 1b481fc3bb1b45d4cf28d1ec12969dc1055f555d)
1#
2# We need to use bash for its associative array facility
3#
4[ "$BASH" ] || exec bash $0
5#
6# (`bash -p` prevents import of functions from the environment).
7#
8set -p
9
10declare -A renamed_page
11
12main(){ set -e; cd man/man3; rm -f _*
13  count_real_pages
14  rename_real_pages
15  make_symlinks
16}
17
18count_real_pages(){ page_count=0
19  for i in $(ls -S)
20  do head -n1 $i | grep -E -q '^\.so' && break
21    page_count=$(($page_count + 1))
22  done
23  first_link=$(($page_count + 1))
24}
25
26rename_real_pages(){ for i in $(ls -S | head -n$page_count)
27  do for j in $(ls -S | tail -n+$first_link)
28    do grep -E -q $i$ $j && break
29    done
30    mv -f $i $j
31    renamed_page[$i]=$j
32  done
33}
34
35make_symlinks(){ for j in $(ls -S | tail -n+$first_link)
36  do ln -sf ${renamed_page[$(cat $j | cut -f2 -d/)]} $j
37  done
38}
39
40main
41