Mail Archives: cygwin/1999/03/14/12:23:05
Greetings,
I have set MAKE_MODE=UNIX and made certain that I still have tabs
and not spaces in my makefile. Still, make will not recognize the majority
of the makefile.
I did make --dry-run and I obtained
./xsum Notice README cds.c data.c defines.h defs.h equiv.c error.c exec.c
expr.c f2c.1 f2c.1t f2c.h format.c format.h formatdata.c ftypes.h gram.c
gram.dcl gram.exec gram.expr gram.head gram.io init.c intr.c io.c iob.h
lex.c machdefs.h main.c malloc.c mem.c memset.c misc.c names.c names.h
niceprintf.c niceprintf.h output.c output.h p1defs.h p1output.c parse.h
parse_args.c pccdefs.h pread.c proc.c put.c putpcc.c sysdep.c sysdep.h
tokens usignal.h vax.c version.c xsum.c >xsum1.out
cmp xsum0.out xsum1.out
&& mv xsum1.out xsum.out
gcc -c -O main.c
gcc -c -O init.c
gcc -c -O
gram.c
grep -n . <tokens | sed "s/\([^:]*\):\(.*\)/#define \2 \1/"
>tokdefs.h
gcc -c -O lex.c
gcc -c -O proc.c
gcc -c -O equiv.c
gcc -c -O
data.c
gcc -c -O format.c
gcc -c -O expr.c
gcc -c -O exec.c
gcc -c -O
intr.c
gcc -c -O io.c
gcc -c -O misc.c
gcc -c -O error.c
gcc -c -O
mem.c
gcc -c -O names.c
gcc -c -O output.c
gcc -c -O p1output.c
gcc -c -O
pread.c
gcc -c -O put.c
gcc -c -O putpcc.c
gcc -c -O vax.c
gcc -c -O
formatdata.c
gcc -c -O parse_args.c
gcc -c -O niceprintf.c
gcc -c -O
cds.c
gcc -c -O sysdep.c
gcc -c -O version.c
gcc main.o init.o gram.o
lex.o proc.o equiv.o data.o format.o expr.o exec.o intr.o io.o misc.o
error.o mem.o names.o output.o p1output.o pread.o put.o putpcc.o vax.o
formatdata.o parse_args.o niceprintf.o cds.o sysdep.o version.o -o f2c
but the makefile is
# Makefile for f2c, a Fortran 77 to C converter
.SUFFIXES: .c .o
CC = gcc
CFLAGS = -O
SHELL = //D/cygnus/cygwin-b20/H-i586-cygwin32/bin/sh
YACC = yacc
YFLAGS =
.c.o:
$(CC) -c $(CFLAGS) $*.c
OBJECTSd = main.o init.o gram.o lex.o proc.o equiv.o data.o format.o \
expr.o exec.o intr.o io.o misc.o error.o mem.o names.o \
output.o p1output.o pread.o put.o putpcc.o vax.o formatdata.o \
parse_args.o niceprintf.o cds.o sysdep.o version.o
MALLOC =
# To use the malloc whose source accompanies the f2c source, add malloc.o
# to the right-hand side of the "MALLOC =" line above, so it becomes
# MALLOC = malloc.o
# This gives faster execution on some systems, but some other systems do
# not tolerate replacement of the system's malloc.
OBJECTS = $(OBJECTSd) $(MALLOC)
all: xsum.out f2c
f2c: $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) -o f2c
# The following used to be a rule for gram.c rather than gram1.c, but
# there are too many broken variants of yacc around, so now we
# distribute a correctly function gram.c (derived with a Unix variant
# of the yacc from plan9).
gram1.c: gram.head gram.dcl gram.expr gram.exec gram.io defs.h tokdefs.h
( sed <tokdefs.h "s/#define/%token/" ;\
cat gram.head gram.dcl gram.expr gram.exec gram.io ) >gram.in
$(YACC) $(YFLAGS) gram.in
@echo "(There should be 4 shift/reduce conflicts.)"
sed 's/^# line.*/\/* & *\//' y.tab.c >gram.c
rm -f gram.in y.tab.c
$(OBJECTSd): defs.h ftypes.h defines.h machdefs.h sysdep.h
tokdefs.h: tokens
grep -n . <tokens | sed "s/\([^:]*\):\(.*\)/#define \2 \1/" >tokdefs.h
cds.o: sysdep.h
exec.o: p1defs.h names.h
expr.o: output.h niceprintf.h names.h
format.o: p1defs.h format.h output.h niceprintf.h names.h iob.h
formatdata.o: format.h output.h niceprintf.h names.h
gram.o: p1defs.h
init.o: output.h niceprintf.h iob.h
intr.o: names.h
io.o: names.h iob.h
lex.o : tokdefs.h p1defs.h
main.o: parse.h usignal.h
mem.o: iob.h
names.o: iob.h names.h output.h niceprintf.h
niceprintf.o: defs.h names.h output.h niceprintf.h
output.o: output.h niceprintf.h names.h
p1output.o: p1defs.h output.h niceprintf.h names.h
parse_args.o: parse.h
proc.o: tokdefs.h names.h niceprintf.h output.h p1defs.h
put.o: names.h pccdefs.h p1defs.h
putpcc.o: names.h
vax.o: defs.h output.h pccdefs.h
output.h: niceprintf.h
put.o putpcc.o: pccdefs.h
f2c.t: f2c.1t
troff -man f2c.1t >f2c.t
#f2c.1: f2c.1t
# nroff -man f2c.1t | col -b | uniq >f2c.1
clean:
rm -f *.o f2c tokdefs.h f2c.t
veryclean: clean
rm -f xsum
b = Notice README cds.c data.c defines.h defs.h equiv.c error.c \
exec.c expr.c f2c.1 f2c.1t f2c.h format.c format.h formatdata.c \
ftypes.h gram.c gram.dcl gram.exec gram.expr gram.head gram.io \
init.c intr.c io.c iob.h lex.c machdefs.h main.c \
malloc.c mem.c memset.c misc.c names.c names.h niceprintf.c \
niceprintf.h output.c output.h p1defs.h p1output.c \
parse.h parse_args.c pccdefs.h pread.c proc.c put.c putpcc.c \
sysdep.c sysdep.h tokens usignal.h vax.c version.c xsum.c
xsum: xsum.c
$(CC) $(CFLAGS) -o xsum xsum.c
#Check validity of transmitted source...
xsum.out: xsum $b
./xsum $b >xsum1.out
cmp xsum0.out xsum1.out && mv xsum1.out xsum.out
#On non-Unix systems that end lines with carriage-return/newline pairs,
#use "make xsumr.out" rather than "make xsum.out". The -r flag ignores
#carriage-return characters.
xsumr.out: xsum $b
./xsum -r $b >xsum1.out
cmp xsum0.out xsum1.out && mv xsum1.out xsumr.out
Two questions:
(i) Why won't make recognize the first part of the makefile?
(ii) Where do I get yacc? Has anybody done this yet?
Thank you,
David M. Drukker
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
- Raw text -