JDK1.1.3 + SICStus on Linux 用 spmkrs

#! /bin/sh

# Usage: spmkrs <output file> \
#		[+c <list of C files>] \
#		[+o <list of object files>] \
#		[+l <list of libraries>] \
#		[+r <resources>]

outfile=$1
cfiles=
libraries=
rnames=
rfiles=
rlibs=

shift

# Collect file names

while [ "$1" ] ; do
    if [ "$1" = "+c" ] ; then
        pref=c
    elif [ "$1" = "+o" ] ; then
        pref=o
    elif [ "$1" = "+l" ] ; then
        pref=l
    elif [ "$1" = "+r" ] ; then
        pref=r
    elif [ $pref = c ] ; then
        cfiles="$cfiles $1"
    elif [ $pref = o ] ; then
        ofiles="$ofiles $1"
    elif [ $pref = l ] ; then
        libraries="$libraries $1"
    elif [ $pref = r ] ; then
        case $1 in
# Suffixed resource
            *.s.o | *.so)
                rfile=$1
                ;;
# Unsuffixed resource, prefer *.s.o (i.e. static) if both exist
            *)
                if [ -r $1.s.o ] ; then
                    rfile=$1.s.o
                else
                    rfile=$1.so
                fi
                ;;
        esac
        case $rfile in            
            *.s.o)
                rname=`basename $rfile .s.o`
                rlibs="$rlibs `/usr/local/lib/sicstus3/bin/bin/spxtrlib $rfile`"
                ;;
            *.so)
                rname=`basename $rfile .so`
                ;;
        esac
        if [ $rnames ] ; then
            rnames="$rnames,$rname"
        else
            rnames=$rname
        fi
        rfiles="$rfiles $rfile"
    fi
    shift
done

rtable=`/usr/local/lib/sicstus3/bin/bin/sptmp`.c
prtable=\'$rtable\'
echo "prolog:prepare_resource_table([$rnames],$prtable). " | /usr/local/lib/sicstus3/sicstus -f

# Here C-files, object files and libraries are compiled and liked with
# the runtime kernel to an executable

cc -shared -O3 -fomit-frame-pointer -m486 \
   -malign-loops=2 -malign-jumps=2 -malign-functions=2 \
   /usr/local/lib/sicstus3/bin/bin/runtime.o $rtable $cfiles \
   -I/usr/local/lib/sicstus3/include \
   -I/usr/local/jdk1.1.3/include \
   -I/usr/local/jdk1.1.3/include/genunix \
   $ofiles $rfiles $rlibs $libraries -rdynamic -ldl -lm -o ${outfile}

/bin/rm -f $rtable

Java Native Method Interface に関する設定は、太字になってるところです。