| 1 | # Makefile for elle
 | 
|---|
| 2 | 
 | 
|---|
| 3 | CC = exec cc
 | 
|---|
| 4 | CFLAGS = -O -DIGN_JOB_CONTROL -D_POSIX_SOURCE -wa
 | 
|---|
| 5 | LDFLAGS= -i
 | 
|---|
| 6 | 
 | 
|---|
| 7 | all:    elle ellec
 | 
|---|
| 8 | 
 | 
|---|
| 9 | OBJ = eemain.o eecmds.o eesite.o eevini.o eedisp.o eeterm.o eeerr.o  \
 | 
|---|
| 10 |       eeques.o eebuff.o eefile.o eefed.o eeedit.o eebit.o eef1.o \
 | 
|---|
| 11 |       eef2.o eefd.o eehelp.o eekmac.o eef3.o eesrch.o eequer.o \
 | 
|---|
| 12 |       eefill.o eediag.o sbstr.o sbm.o sberr.o sbbcpy.o
 | 
|---|
| 13 | 
 | 
|---|
| 14 | # It probably isn't necessary to make all this stuff all the time, but it
 | 
|---|
| 15 | # is fairly easy and makes the whole process simpler.  If this is not done,
 | 
|---|
| 16 | # the dependencies are very complicated because some of the .c and .h files
 | 
|---|
| 17 | # are made dynamically.
 | 
|---|
| 18 | elle:   ellec $(OBJ) $(FUN_OFILES) elle.h eesite.h
 | 
|---|
| 19 | #       $(CC) $(CFLAGS) -c defprf.c     # depends on the new *.h files
 | 
|---|
| 20 |         $(CC) $(LDFLAGS) -o $@ $(OBJ)
 | 
|---|
| 21 |         install -S 64k $@
 | 
|---|
| 22 | 
 | 
|---|
| 23 | defprf.c:       deffun.e
 | 
|---|
| 24 |         cat deffun.e defprf.e | ellec -Pconf  > defprf.c
 | 
|---|
| 25 | 
 | 
|---|
| 26 | eefdef.h:       deffun.e
 | 
|---|
| 27 |         cat deffun.e defprf.e | ellec -Fconf  > eefdef.h
 | 
|---|
| 28 | 
 | 
|---|
| 29 | eefidx.h:       deffun.e
 | 
|---|
| 30 |         cat deffun.e defprf.e | ellec -FXconf > eefidx.h
 | 
|---|
| 31 | 
 | 
|---|
| 32 | # Don't flush these files if interrupted, dammit!
 | 
|---|
| 33 | .PRECIOUS: ellec deffun.e defprf.e
 | 
|---|
| 34 | 
 | 
|---|
| 35 | # The following files must be recompiled if eefidx.h is changed
 | 
|---|
| 36 | eecmds.o eebuff.o eeerr.o eehelp.o eejust.o eemain.o eeques.o eef1.o: eefidx.h
 | 
|---|
| 37 | 
 | 
|---|
| 38 | # ELLE profile compiler.  
 | 
|---|
| 39 | #       Although eefdef.h and defprf.c are included by ELLEC, they
 | 
|---|
| 40 | #       are not listed as dependencies in order to avoid loops (see
 | 
|---|
| 41 | #       their target entries).  That is OK because their information is not
 | 
|---|
| 42 | #       used when generating the makecf files; it only furnishes default
 | 
|---|
| 43 | #       values needed when an ELLE user compiles a user profile.
 | 
|---|
| 44 | ellec: ellec.c
 | 
|---|
| 45 |         $(CC) $(LDFLAGS) $(CFLAGS) -o $@ ellec.c
 | 
|---|
| 46 |         install -S 8kw $@
 | 
|---|
| 47 | 
 | 
|---|
| 48 | install:        /usr/bin/elle /usr/bin/ellec
 | 
|---|
| 49 | 
 | 
|---|
| 50 | /usr/bin/elle:  elle
 | 
|---|
| 51 |         install -cs -o bin elle $@
 | 
|---|
| 52 | 
 | 
|---|
| 53 | /usr/bin/ellec: ellec
 | 
|---|
| 54 |         install -cs -o bin ellec $@
 | 
|---|
| 55 | 
 | 
|---|
| 56 | clean:  
 | 
|---|
| 57 |         rm -f *.o *.bak core elle ellec
 | 
|---|