File: makepkg

package info (click to toggle)
openscenegraph 1.2.0-2
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 26,924 kB
  • ctags: 25,229
  • sloc: cpp: 239,326; ansic: 2,178; sh: 1,990; yacc: 548; perl: 237; makefile: 227; lex: 151
file content (146 lines) | stat: -rw-r--r-- 2,420 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#!/bin/sh

die()
{
    echo >& $1
    exit 1
}

x() 
{ 
    echo $*
    $* 
}

#
# print_pkginfo()
#
# usage:
#
#      print_pkginfo  PACKAGE_NAME PACKAGE_INFO PACKAGE_DESCRIPTION
#

print_pkginfo()
{
    __pstamp=`fgrep $LOGNAME /etc/passwd | cut -f5 -d":"`
    cat <<- EOF
PKG="$1"
NAME="$2"
`[ "$OS" = "SunOS" ] && echo ARCH=sparc`
VERSION=`cd $TOPDIR;gmake -s version;cd $THISDIR`
CATEGORY="application,graphics,opengl"
DESC="$3"
BASEDIR="/opt/"
VENDOR="Producer"
EMAIL="info@andesengineering.com"
PSTAMP=$__pstamp
URL="http://www.andesengineering.com/Producer"
MAXINST="1"
EOF

}

print_prototype()
{
    echo "i pkginfo"
    [ -f depend ] && echo "i depend"

    for d in $*
    do
	d=`echo $d | sed 's/\/opt\///` 
        echo "d none $d ? root sys"
    done

    for d in $*
    do
	for f in `ls -1 $d`
	do 
	     f=$d/$f
	     if [ -f $f ] 
	     then
 		[ -x $f ] && MODE=0555 || MODE=0444
		dest=`echo $f | sed 's/\/opt\///'`
	        echo "f none $dest=$f $MODE root sys"
	     fi
	done
    done

}

make_installable()
{
    PKGNAME=$1
    PKGDIR=$PKGNAME.pkg
    VERSION=`gmake -s version`
    DISTNAME="$PKGNAME"-"$VERSION"-"$OS".shar

    THISDIR=`pwd`
    cd $PKGSUBDIR

    cat << INSTALL_EOF > $DISTNAME

#!/bin/sh
cat <<-	 'LEOF' | uudecode -p | gzip -d -c | tar xvf -
`tar cvf - $PKGDIR | gzip | uuencode .tmpuu`
LEOF

/bin/sh << EOF
echo =========== INSTALLING  $DISTNAME =================
pkgadd -d $PKGNAME.pkg $PKGNAME
rm -rf $PKGDIR
EOF

INSTALL_EOF

    chmod +x $DISTNAME
    cd $THISDIR
}


make_package()
{
    PKGNAME=$1
    PKGDIR=$PKGSUBDIR/$PKGNAME.pkg
    x rm -rf $PKGDIR
    x mkdir  $PKGDIR

    echo Making pkginfo ...
    print_pkginfo "$1" "$2" "$3"  > $PKGDIR/pkginfo

    shift; shift; shift

    echo Making prototype ...

    print_prototype  $*  > $PKGDIR/prototype

#    DISTNAME="$PKGNAME"-"`$TOPDIR/bin/osgversion`"-"$OS"-"local"

    THISDIR=`pwd`
    x cd $PKGDIR
    x pkgmk -d .
    x cd $THISDIR
#    make_installable $PKGNAME $PKGDIR $DISTNAME 
#    x pkgtrans -s $PKGDIR $DISTNAME $PKGNAME
#    x mv "$PKGDIR"/"$DISTNAME" "$PKGDIR"/..
}


OS=$1
TOPDIR=$2
INST_LIBS=$3
INST_INCLUDE=$4

echo INST_LIBS is $INST_LIBS

PKGSUBDIR=dist/PKG

make_package\
	"Producer"\
	"Producer - Run time and development environment"\
	"An OpenGL based library for viewpoint management and parallel rendering"\
	$INST_LIBS $INST_INCLUDE"/Producer"

make_installable "Producer"


exit 0