# Makefile for less.
# MS-DOS version (Borland C/C++ 4.02)

#### Start of system configuration section. ####

CC = bcc
LIBDIR = \bc\lib

CFLAGS = -A- -mm -O2 -w- -1- -2- -a -d -Z
LDFLAGS = -mm
LIBS =
EXT = .EXE

#### End of system configuration section. ####

# This rule allows us to supply the necessary -D options
# in addition to whatever the user asks for.
.c.obj:
	$(CC) -c -I. $(CPPFLAGS) $(CFLAGS) $<

OBJ = \
	main.obj screen.obj brac.obj ch.obj charset.obj cmdbuf.obj \
	command.obj cvt.obj decode.obj edit.obj filename.obj forwback.obj \
	help.obj ifile.obj input.obj jump.obj line.obj linenum.obj \
	lsystem.obj mark.obj optfunc.obj option.obj opttbl.obj os.obj \
	output.obj pattern.obj position.obj prompt.obj search.obj signal.obj \
	tags.obj ttyin.obj version.obj

all: less$(EXT) lesskey$(EXT)

# This is really horrible, but the command line is too long for 
# MS-DOS if we try to link $(OBJ).
less$(EXT): $(OBJ)
	ren lesskey.obj lesskey.obo
	$(CC) $(LDFLAGS) -e$@ *.obj $(LIBS)
	ren lesskey.obo lesskey.obj

lesskey$(EXT): lesskey.obj version.obj
	$(CC) $(LDFLAGS) -e$@ lesskey.obj version.obj $(LIBS)

defines.h: defines.ds
	-del defines.h
	-copy defines.ds defines.h

$(OBJ): less.h defines.h

clean:
	-del *.obj 
	-del less.exe
	-del lesskey.exe

