File: install_module

package info (click to toggle)
pike7 7.0.361-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 14,876 kB
  • ctags: 12,334
  • sloc: ansic: 142,667; makefile: 1,526; sh: 1,035; lisp: 290; sed: 34; perl: 3
file content (51 lines) | stat: -rwxr-xr-x 745 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/bin/sh

# install_module <from> <to>


FROM="$1"
TO="$2"

DIR="$TO"
while :
do
  DIR=`echo $DIR | sed -e 's@/[^/]*$@@'`
  case "$DIR" in
    *.pmod)
      if [ -d "$DIR" ]; then
         break
      else
         :
      fi


      if [ -f "$DIR" ]; then
        mv "$DIR" "$DIR-foo"
        mkdir $DIR
        mv "$DIR-foo" "$DIR/module.pmod"
        break
      fi

      BASE=`echo $DIR | sed -e 's/\.[^.]*$//'`

      if [ -f "$BASE.so" ]; then
        mkdir "$DIR"
        mv "$BASE.so" "$DIR/module.so"
        break
      fi

    ;;
    *) break ;;
  esac

done

BASE=`echo $TO | sed -e 's/\.[^.]*$//'`

if [ -d "$BASE.pmod" ]; then
  EXT=`echo $TO | sed -e 's@(\.[^.]$)@\1@/'`
  TO="$BASE.pmod/module.$EXT"
fi


exec cp "$FROM" "$TO"