hai,
i am sending a copy of the makefile which was written for the linux 
platform.when i try to run the same on windows NT using the "nmake" option 
of VC++, i am getting an error as "don't know how to make 
Cebuf-lib/asn-len.o".when i run the same in linux, it is creating the 
respective object files and the corresponding libraries.i am indicating the 
lines with a * where i am struck at.

those who have an idea of the makefiles , please help me in this regard.
also if possible pl. provide me with the websites that give information on 
how to convert linux makefiles to windows 95/98/NT.
also pl. provide me with the equivalent of "test -d"(whether it is a 
directory or not in linux) in windows or DOS and also the equivalent of 
"ln"(link in linux)for win/DOS.
************************************************************************
DEPENDENCIES    =

TOP             = ..

ASN1_SRC_DIR    = $(TOP)/asn1specs

COMPILERDIR     = $(TOP)/compiler
ASN1C           = $(COMPILERDIR)/asn1c
USEFUL_TYPES    = $(ASN1_SRC_DIR)/asn-useful.asn1

CPPFLAGS        += -I$(TOP) -Iinc $(bufFLAGS) $(compilerFLAGS)

HFILES.d = \
        inc/asn-any.h           \
        inc/asn-bits.h          \
        inc/asn-bool.h          \
        inc/asn-config.h        \
        inc/asn-enum.h          \
        inc/asn-incl.h          \
        inc/asn-int.h           \
        inc/asn-len.h           \
        inc/asn-list.h          \
        inc/asn-null.h          \
        inc/asn-octs.h          \
        inc/asn-oid.h           \
        inc/asn-real.h          \
        inc/asn-tag.h           \
        inc/exp-buf.h           \
        inc/gen-buf.h           \
        inc/hash.h              \
        inc/min-buf.h           \
        inc/nibble-alloc.h      \
        inc/print.h             \
        inc/sbuf.h              \
        inc/str-stk.h           \
        \
        inc/tbl-dec.h           \
        inc/tbl-enc.h           \
        inc/tbl-free.h          \
        inc/tbl-gen.h           \
        inc/tbl-dbg.h           \
        inc/tbl-gen-c-hdr.h     \
        inc/tbl-incl.h          \
        inc/tbl-print.h         \
        inc/tbl-util.h

HFILES = \
        $(HFILES.d)             \
        inc/asn-useful.h        \
        inc/tbl.h

HFILES.shared = \
        $(TOP)/asn1c.h          \
        $(TOP)/config.h         \
        $(TOP)/policy.h

CFILES.d = \
        src/asn-len.c           \
        src/asn-tag.c           \
        src/asn-int.c           \
        src/asn-bool.c          \
        src/asn-bits.c          \
        src/asn-octs.c          \
        src/asn-oid.c           \
        src/asn-real.c          \
        src/asn-null.c          \
        src/asn-list.c          \
        src/asn-enum.c          \
        src/str-stk.c           \
        src/nibble-alloc.c      \
        src/print.c             \
        src/asn-any.c           \
        src/hash.c              \
        src/exp-buf.c           \
        src/sbuf.c              \
        \
        src/tbl-dec.c           \
        src/tbl-enc.c           \
        src/tbl-free.c          \
        src/tbl-gen.c           \
        src/tbl-dbg.c           \
        src/tbl-print.c         \
        src/tbl-util.c

CFILES = \
        $(CFILES.d)             \
        src/asn-useful.c        \
        src/tbl.c

OFILES = \
        $b/asn-len.o            \
        $b/asn-tag.o            \
        $b/asn-int.o            \
        $b/asn-bool.o           \
        $b/asn-bits.o           \
        $b/asn-octs.o           \
        $b/asn-oid.o            \
        $b/asn-real.o           \
        $b/asn-null.o           \
        $b/asn-list.o           \
        $b/asn-useful.o         \
        $b/asn-enum.o           \
        $b/str-stk.o            \
        $b/nibble-alloc.o       \
        $b/print.o              \
        $b/asn-any.o            \
        $b/hash.o               \
        $b/exp-buf.o            \
        $b/sbuf.o               \
        \
        $b/tbl.o                \
        $b/tbl-dec.o            \
        $b/tbl-enc.o            \
        $b/tbl-free.o           \
        $b/tbl-gen.o            \
        $b/tbl-dbg.o            \
        $b/tbl-print.o          \
        $b/tbl-util.o

DISTFILES = \
        README          \
        makefile        \
        $(HFILES.d)     \
        $(CFILES.d)     \
        boot/asn-useful.h       \
        boot/asn-useful.c       \
        tbl.h.patch     \
        boot/tbl.h      \
        boot/tbl.c

EXPORTLIBS      = libasn1cebuf.a libasn1cmbuf.a libasn1csbuf.a libasn1ctbl.a
compilerLIB     = libasn1cCebuf.a

LIBS    = \
        $(EXPORTLIBS)   \
        $(compilerLIB)

MAKEFLAGS.ebuf  = bufFLAGS=-DUSE_EXP_BUF b=ebuf ebuf
MAKEFLAGS.Cebuf = bufFLAGS=-DUSE_EXP_BUF b=Cebuf Cebuf
MAKEFLAGS.mbuf  = bufFLAGS=-DUSE_MIN_BUF b=mbuf mbuf
MAKEFLAGS.sbuf  = bufFLAGS=-DUSE_SBUF b=sbuf sbuf
MAKEFLAGS.tbl   = bufFLAGS="-DUSE_GEN_BUF -DTTBL" b=tbl tbl

#-------------------------------------------------------------------------------

.PHONY: ebuf Cebuf mbuf sbuf tbl

default::       ebuf-lib mbuf-lib sbuf-lib tbl-lib
                @echo "C ASN.1 libraries made"

all::           default Cebuf-lib

b = dummy

$b::            $(CFILES)

$b::
*               test -d $@ || mkdir $@
                $(RM) $@/*.c
*               ln $(CFILES) $@

.PHONY: ofiles lib
.PHONY: ebuf-lib Cebuf-lib mbuf-lib sbuf-lib tbl-lib

ofiles:         $(OFILES)

lib:            libasn1c$b.a

*ebuf-lib:
                $(MAKE) $(MAKEFLAGS.ebuf) ofiles lib

*Cebuf-lib:
                $(MAKE) $(MAKEFLAGS.Cebuf) ofiles lib

*mbuf-lib:
                $(MAKE) $(MAKEFLAGS.mbuf) ofiles lib

*sbuf-lib:
                $(MAKE) $(MAKEFLAGS.sbuf) ofiles lib

*tbl-lib:
                $(MAKE) $(MAKEFLAGS.tbl) ofiles lib

libasn1cebuf.a  \
libasn1cCebuf.a \
libasn1cmbuf.a  \
libasn1csbuf.a  \
libasn1ctbl.a:  $(OFILES)
                $(AR) rv $@ $?
                $(RANLIB) $@

inc/asn-useful.h        \
src/asn-useful.c::
                $(RM) inc/asn-useful.h src/asn-useful.c
                if [ -f $(ASN1C) ]; then\
                  $(MAKE) stamp-useful;\
                else\
                  $(RM) asn-useful.h asn-useful.c;\
                  ln boot/asn-useful.h boot/asn-useful.c .;\
                fi
                ln asn-useful.h inc
                ln asn-useful.c src

stamp-useful:   $(ASN1C) $(USEFUL_TYPES) makefile
                -mv asn-useful.h asn-useful.h.prev
                -mv asn-useful.c asn-useful.c.prev
                $(ASN1C) -c -l 50 $(USEFUL_TYPES)
# the dates in the two files will differ, so the files really differ if diff 
prints more than 4 lines of output:
                @if [ -f asn-useful.h.prev ]; then\
                  if [ `diff asn-useful.h.prev asn-useful.h | wc -l` -gt 4 ]; then\
                    $(RM) asn-useful.h.prev;\
                  else\
                    echo "asn-useful.h hasn't changed";\
                    mv asn-useful.h.prev asn-useful.h;\
                  fi;\
                fi
                @if [ -f asn-useful.c.prev ]; then\
                  if [ `diff asn-useful.c.prev asn-useful.c | wc -l` -gt 4 ]; then\
                    $(RM) asn-useful.c.prev;\
                  else\
                    echo "asn-useful.c hasn't changed";\
                    mv asn-useful.c.prev asn-useful.c;\
                  fi;\
                fi
                date > $@

boot/asn-useful.h       \
boot/asn-useful.c:      stamp-useful
                $(RM) boot/asn-useful.h boot/asn-useful.c
                cp -p asn-useful.h asn-useful.c boot

inc/tbl.h       \
src/tbl.c::
                $(RM) inc/tbl.h src/tbl.c
                if [ -f $(ASN1C) ]; then\
                  $(MAKE) stamp-tbl;\
                else\
                  $(RM) tbl.h tbl.c;\
                  ln boot/tbl.h boot/tbl.c .;\
                fi
                ln tbl.h inc
                ln tbl.c src

stamp-tbl:      $(ASN1C) $(USEFUL_TYPES) $(ASN1_SRC_DIR)/tbl.asn1 makefile
                -mv tbl.h tbl.h.prev
                -mv tbl.c tbl.c.prev
                $(ASN1C) -u $(USEFUL_TYPES) $(ASN1_SRC_DIR)/tbl.asn1
                $(PATCH) < tbl.h.patch
                echo '#if TTBL' > tbl.c.tmp
                cat tbl.c >> tbl.c.tmp
                echo '#endif /* TTBL */' >> tbl.c.tmp
                mv tbl.c.tmp tbl.c
# the dates in the two files will differ, so the files really differ if diff 
prints more than 4 lines of output:
                @if [ -f tbl.h.prev ]; then\
                  if [ `diff tbl.h.prev tbl.h | wc -l` -gt 4 ]; then\
                    $(RM) tbl.h.prev;\
                  else\
                    echo "tbl.h hasn't changed";\
                    mv tbl.h.prev tbl.h;\
                  fi;\
                fi
                @if [ -f tbl.c.prev ]; then\
                  if [ `diff tbl.c.prev tbl.c | wc -l` -gt 4 ]; then\
                    $(RM) tbl.c.prev;\
                  else\
                    echo "tbl.c hasn't changed";\
                    mv tbl.c.prev tbl.c;\
                  fi;\
                fi
                date > $@

boot/tbl.h      \
boot/tbl.c:     stamp-tbl
                $(RM) boot/tbl.h boot/tbl.c
                cp -p tbl.h tbl.c boot

install-sh:
                ln $(TOP)/install-sh $@

$(incdir)/asn1c/c $(libdir):
                $(TOP)/mkinstalldirs $@

install::       $(HFILES) ebuf-lib mbuf-lib sbuf-lib tbl-lib install-sh 
$(incdir)/asn1c/c $(libdir)

install::
                for h in $(HFILES) $(HFILES.shared); do $(INSTALL_DATA) $$h 
$(incdir)/asn1c/c/; done
                for l in $(EXPORTLIBS); do $(INSTALL_DATA) $$l $(libexecdir)/; 
$(RANLIB) 
-t $(libexecdir)/$$l; done

clean::
                $(RM) *.o *~ *.prev .emacs* core
                $(RM) stamp-useful stamp-tbl
                $(RM) asn-useful.h inc/asn-useful.h
                $(RM) asn-useful.c src/asn-useful.c
                $(RM) tbl.h inc/tbl.h
                $(RM) tbl.c src/tbl.c
                $(RM) -r ebuf Cebuf mbuf sbuf tbl
                $(RM) $(compilerLIB)

clobber::
                $(RM) $(LIBS)
                $(RM) install-sh

depend::        inc/asn-useful.h src/asn-useful.c
depend::        inc/tbl.h src/tbl.c

depend::
                if [ x"$(DEPENDENCIES)" = x ]; then\
                  $(MAKE) $(MAKEFLAGS.ebuf) DEPENDENCIES=deps.ebuf depend;\
                  $(MAKE) $(MAKEFLAGS.Cebuf) DEPENDENCIES=deps.Cebuf depend;\
                  $(MAKE) $(MAKEFLAGS.mbuf) DEPENDENCIES=deps.mbuf depend;\
                  $(MAKE) $(MAKEFLAGS.sbuf) DEPENDENCIES=deps.sbuf depend;\
                  $(MAKE) $(MAKEFLAGS.tbl) DEPENDENCIES=deps.tbl depend;\
                  cp /dev/null dependencies;\
                  for dir in ebuf Cebuf mbuf sbuf tbl; do\
                    < deps.$$dir sed -e "s/^src/$$dir/;s/^[a-z-]*\.o:/$$dir\/&/" >> 
dependencies;\
                    $(RM) deps.$$dir;\
                  done;\
                fi

include ../maketail


************************************************************************
thanks in advance,
bye
ravi chandra






_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.

Reply via email to