home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / ash02emx.zip / Makefile < prev    next >
Makefile  |  1993-10-04  |  2KB  |  60 lines

  1. #    Makefile,v 1.7 1993/08/09 04:58:18 mycroft Exp
  2.  
  3. PROG=    sh
  4. SRCS=    builtins.c cd.c dirent.c bltin/echo.c error.c eval.c exec.c expand.c \
  5.     input.c jobs.c mail.c main.c memalloc.c miscbltin.c \
  6.     mystring.c nodes.c options.c parser.c redir.c show.c \
  7.     syntax.c trap.c output.c var.c bltin/test.c
  8.  
  9. OBJ1 =    init.o
  10. OBJ2 =    builtins.o cd.o dirent.o bltin/echo.o error.o eval.o exec.o expand.o \
  11.     input.o jobs.o mail.o main.o memalloc.o miscbltin.o \
  12.     mystring.o nodes.o options.o parser.o redir.o show.o \
  13.     syntax.o trap.o output.o var.o bltin/test.o
  14.  
  15. OBJS =    $(OBJ1) $(OBJ2)
  16.  
  17. CFLAGS = -O2 -fomit-frame-pointer -m486 -DSHELL -I/usr/include/bsd -I.
  18. LDFLAGS = -s -lbsd
  19.  
  20. CLEANFILES =\
  21.     builtins.c builtins.h init.c mkinit mknodes mksyntax \
  22.     nodes.c nodes.h syntax.c syntax.h token.def
  23.  
  24. all:    $(OBJS)
  25.     $(CC) -o $(PROG) $(OBJS) $(LDFLAGS)
  26.  
  27. install: all
  28.     install sh /bin/ash
  29.     install -m 644 sh.1 /usr/man/man1/ash.1
  30.  
  31. parser.o: token.def
  32. token.def: mktokens
  33.     sh ./mktokens
  34.  
  35. builtins.h builtins.c: mkbuiltins builtins
  36.     sh ./mkbuiltins
  37.  
  38. init.c: mkinit $(SRCS)
  39.     ./mkinit '${CC} -c $(CFLAGS) init.c' $(SRCS)
  40.     touch init.c
  41.  
  42. mkinit: mkinit.c
  43.     $(CC) $(CFLAGS) $(LDFLAGS) mkinit.c -o $@ $(LDADD)
  44.  
  45. nodes.c nodes.h: mknodes nodetypes nodes.c.pat
  46.     ./mknodes nodetypes nodes.c.pat
  47.  
  48. mknodes: mknodes.c
  49.     $(CC) $(CFLAGS) $(LDFLAGS) mknodes.c -o $@ $(LDADD)
  50.  
  51. syntax.c syntax.h: mksyntax
  52.     ./mksyntax
  53.  
  54. mksyntax: mksyntax.c parser.h
  55.     $(CC) $(CFLAGS) $(LDFLAGS) mksyntax.c -o $@ $(LDADD)
  56.  
  57. clean:
  58.     rm -f core $(CLEANFILES) $(PROG) $(OBJS)
  59.  
  60.