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.