Subversion Repositories planix.SVN

Rev

Blame | Last modification | View Log | RSS feed

</$objtype/mkfile

TARG=snoopy
PROTOS=\
        aoe\
        aoeata\
        aoecmd\
        aoemask\
        aoemd\
        aoerr\
        arp\
        bootp\
        cec\
        dhcp\
        dns\
        dump\
        eap\
        eap_identity\
        eapol\
        eapol_key\
        ether\
        gre\
        hdlc\
        icmp6\
        icmp\
        il\
        ip6\
        ip\
        ninep\
        ospf\
        ppp\
        ppp_ccp\
        ppp_chap\
        ppp_ipcp\
        ppp_lcp\
        pppoe_disc\
        pppoe_sess\
        rarp\
        rc4keydesc\
        rtcp\
        rtp\
        tcp\
        ttls\
        udp\

POBJS=${PROTOS:%=%.$O}

OFILES= main.$O\
        y.tab.$O\
        protos.$O\
        convM2DNS.$O\
        $POBJS

HFILES=dat.h\
        protos.h\
        y.tab.h\

YFILES=filter.y

BIN=/$objtype/bin
UPDATE=\
        mkfile\
        dat.h\
        main.c\
        ${POBJS:%.$O=%.c}\

CLEANFILES=protos.c protos.h

</sys/src/cmd/mkone

convM2DNS.$O:           /sys/src/cmd/ndb/convM2DNS.c
        $CC $CFLAGS     /sys/src/cmd/ndb/convM2DNS.c

protos.h:D: mkfile
        {
                for(i in $PROTOS)
                        echo extern Proto $i';'
        } >$target

protos.c:D: mkfile
        {
                echo '#include <u.h>'
                echo '#include <libc.h>'
                echo '#include "dat.h"'
                echo '#include "protos.h"'
                echo 'Proto *protos[] ='
                echo '{'
                for(i in $PROTOS)
                        echo '  &'$i','
                echo '  0,'
                echo '};'
        } >$target