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.