On Mon, 11 Nov 1996 mch@gladstone.uoregon.edu wrote:
> Okie I am trying to put in the auction.c code and I am having trouble
> with the Makefile I added the auction.c in the main part but then I also
> added the lines:
> 
> auction.o: auction.c conf.h sysdep.h structs.h utils.h comm.h
> interpreter.h \
>         handler.h db.h
>         $(CC) -c $(CFLAGS) auction.c
I've answered this question a billion times over, so perhaps this
should go in the FAQ somewhere.  Anyway, here's the format and
here's what EVERYONE does wrong (so it's not just you):
  file.o: file.c headers.h
  (TAB)$(CC) -c $(CFLAGS) file.c
Note the (TAB).  You cannot use spaces, it must be a TAB character.
Don't ask me why, it just has to be.  You shouldn't TAB before the
continuation of your dependencies list.  Therefore, this should look 
like:
  auction.o: auction.c conf.h sysdep.h structs.h utils.h comm.h \
    interpreter.h handler.h db.h
  	$(CC) -c $(CFLAGS) auction.c
BTW, my favorite way of adding these lines is:
  % gcc -MM <c file> >> Makefile
Then go down to the bottom of the Makefile, press ENTER, TAB, type
out "$(CC) -c $(CFLAGS) <filename>" and press ENTER again.  Maybe a
script would work...
  #!/bin/sh
  gcc -MM $1 >> Makefile
  echo "	\$(CC) -c \$(CFLAGS) $1" >> Makefile
A brief test shows that that works quite nicely.  So instead of
having to type out those lines you can do "add_file auction.c".
Of course, you'll need to manually add it to the OBJS list since
I can't think of a way for the script to do that.
--
Daniel Koepke
dkoepke@california.com
Forgive me father, for I am sin.
+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
+-----------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/18/00 PST