#!/bin/sh
##
##  fmn.sh -- find a modules (structure) name
##
##  Extracted from the Configure script by
##  Ralf S. Engelschall <rse@apache.org> for use with 
##  Apache's Autoconf-style Interface (APACI).
##
#
# This script falls under the Apache License.
# See http://www.apache.org/docs/LICENSE


#   input: the modules source file
modfile=$1

#   the part from the Configure script
tmpfile=/tmp/fmn.tmp.$$
rm -f $tmpfile
modname=''
ext=`echo $modfile | sed 's/^.*\.//'`
modbase=`echo $modfile | sed 's/\.[^.]*$//'`
if [ x$ext = x$modfile ]; then ext=o; modbase=$modfile; modfile=$modbase.o; fi
if [ x$ext = x ] ; then ext=o; modbase=$modfile; fi
if [ x$ext = xc ] ; then ext=o; fi
if [ -r $modbase.module ] ; then
    cat $modbase.module >$tmpfile
else
    if [ -f $modbase.c ] ; then
        modname=`egrep '^module .*;' $modbase.c | head -1 |\
                sed 's/^module.*[ 	][ 	]*//' | \
                sed 's/[ 	]*;[ 	]*$//'`
        if grep "MODULE-DEFINITION-" $modbase.c >/dev/null; then
            cat $modbase.c | \
            sed '1,/MODULE-DEFINITION-START/d;/MODULE-DEFINITION-END/,$d' >$tmpfile
        fi
    fi
fi              
if [ -r $tmpfile ] ; then
    modname=`grep "Name:" $tmpfile | sed 's/^.*Name:[ 	]*//'`
fi
if [ "x$modname" = "x" ] ; then
    modname=`echo $modbase | sed 's/^.*\///' | \
        sed 's/^mod_//' | sed 's/^lib//' | sed 's/$/_module/'`
fi
rm -f $tmpfile

#   output: the name of the module structure symbol
echo "$modname"

