Rewrite Makefile
Sweeping changes; the old Makefile was rudimentary and buggy. NB: makedepend is optional. You don't need to run it.
This commit is contained in:
parent
00a2baa9ca
commit
0d0d0afbfd
75
src/Makefile
75
src/Makefile
|
@ -1,39 +1,26 @@
|
|||
# $Revision: 1.12 $
|
||||
PREFIX = $$HOME/.local
|
||||
BINDIR = $(PREFIX)/bin
|
||||
DATADIR = $(PREFIX)/share
|
||||
|
||||
ELK_INCLUDE_DIR = $(PREFIX)/include
|
||||
ELK_LIB_DIR = $(PREFIX)/lib
|
||||
|
||||
CTAGS = ctags -t -w
|
||||
INSTALL = install
|
||||
MAKEDEPEND = makedepend
|
||||
|
||||
### You need a C compiler that compiles ANSI C code.
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -pedantic -O
|
||||
|
||||
### If you need additional linker flags add them here.
|
||||
LDFLAGS =
|
||||
|
||||
### The directory where the Elk installation resides on your system.
|
||||
ELKDIR = /usr/elk
|
||||
|
||||
### Additional libraries. You may want to insert the output of the
|
||||
### shell-script $(ELKDIR)/lib/ldflags here.
|
||||
LIBS = -lm
|
||||
|
||||
### The makedepend program (it's usually installed with the X11 binaries).
|
||||
MAKEDEP = makedepend
|
||||
CFLAGS = -Wall -pedantic -O -I $(ELK_INCLUDE_DIR)
|
||||
LDFLAGS = -L $(ELK_LIB_DIR) -lm -lelk
|
||||
|
||||
### The directory under which you will install the Scheme files.
|
||||
DIR = /usr/local/lib/unroff
|
||||
DEFAULT_DIR = $(DATADIR)/unroff
|
||||
SCMDIR = $(DATADIR)/unroff/scm
|
||||
|
||||
### The default output format.
|
||||
FORMAT = html
|
||||
DEFAULT_FORMAT = html
|
||||
|
||||
|
||||
|
||||
|
||||
### End of configurable variables.
|
||||
### -------------------------------------------------------------------------
|
||||
|
||||
SHELL = /bin/sh
|
||||
INCLUDE = -I$(ELKDIR)/include
|
||||
ELK = $(ELKDIR)/lib/module.o
|
||||
DEFS = -DDEFAULT_DIR=\"$(DIR)\" -DDEFAULT_FORMAT=\"$(FORMAT)\"
|
||||
CTAGS = ctags -t -w
|
||||
INCLUDE = -I $(ELK_INCLUDE_DIR)
|
||||
DEFS = -D DEFAULT_DIR=\"$(DEFAULT_DIR)\" -D DEFAULT_FORMAT=\"$(DEFAULT_FORMAT)\"
|
||||
|
||||
SOURCES = \
|
||||
args.c\
|
||||
|
@ -67,27 +54,37 @@ OBJECTS = \
|
|||
stream.o\
|
||||
subst.o\
|
||||
table.o\
|
||||
unroff.o\
|
||||
$(ELK)
|
||||
unroff.o
|
||||
|
||||
ALL = unroff
|
||||
all: unroff
|
||||
|
||||
all: $(ALL)
|
||||
unroff: $(OBJECTS)
|
||||
$(CC) $(LDFLAGS) -o $@ $(OBJECTS)
|
||||
|
||||
.c.o:
|
||||
$(CC) $(CFLAGS) $(INCLUDE) $(DEFS) -c $<
|
||||
|
||||
install: unroff
|
||||
$(INSTALL) unroff $(BINDIR)/unroff
|
||||
mkdir -p $(SCMDIR)
|
||||
mkdir -p $(SCMDIR)/html
|
||||
mkdir -p $(SCMDIR)/misc
|
||||
$(INSTALL) -m 644 ../scm/html/common.scm $(SCMDIR)/html/common.scm
|
||||
$(INSTALL) -m 644 ../scm/html/m.scm $(SCMDIR)/html/m.scm
|
||||
$(INSTALL) -m 644 ../scm/html/man.scm $(SCMDIR)/html/man.scm
|
||||
$(INSTALL) -m 644 ../scm/html/ms.scm $(SCMDIR)/html/ms.scm
|
||||
$(INSTALL) -m 644 ../scm/misc/hyper.scm $(SCMDIR)/misc/hyper.scm
|
||||
$(INSTALL) -m 644 ../scm/troff.scm $(SCMDIR)/troff.scm
|
||||
|
||||
clean:
|
||||
rm -f *.o $(ALL)
|
||||
rm -f $(OBJECTS) unroff
|
||||
|
||||
tags ctags: $(SOURCES)
|
||||
$(CTAGS) $(SOURCES)
|
||||
|
||||
unroff: $(OBJECTS)
|
||||
$(CC) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBS)
|
||||
|
||||
depend: Makefile $(SOURCES)
|
||||
$(MAKEDEP) $(INCLUDE) $(SOURCES)
|
||||
$(MAKEDEPEND) $(INCLUDE) $(SOURCES)
|
||||
|
||||
.PHONY: all clean ctags depend install tags
|
||||
|
||||
# DO NOT DELETE THIS LINE -- make depend depends on it.
|
||||
|
|
Loading…
Reference in New Issue