[comp.unix.xenix] Compiling mush 6.4 on SCO XENIX-286 -- Makefile included

meyer@mimsy.UUCP (John R. Meyer) (04/04/89)

Hello --

	Since the makefile.xenix that is included with the mush 6.4
distribution is not quite correct, here is a make file that has
worked on my SCO XENIX 2.2.1 system (IBM PC-AT).  Those of you in
the mush mailing list got this over the weekend.  Basically, you
need to add a -Mt option to CFLAGS or you will get a message from
the linker saying that your data segment exceeds 64K.  To handle
the larger number of segments, you need to give the -SEG option to
the linker as well in LFLAGS.


----- cut here -----
#
# makefile for Xenix machines.  See "MODEL" below for your xenix type.
# some .c files may require the -LARGE compiler flag.  Examples below.
# This makefile assumes an 80386 machine.  If you have an 80286, see
# notes below.  This makefile was built for SCO/microsoft xenix --if you
# are running some other kind of xenix, you might need to change the
# CFLAGS and LDFLAGS options.
#
HDRS= mush.h config.h-dist strings.h bindings.h options.h
SRCS1= main.c init.c misc.c execute.c
SRCS2= signals.c msgs.c pick.c viewopts.c
SRCS3= sort.c expr.c folders.c dates.c help.c
SRCS4= loop.c bind.c options.c
SRCS5= commands.c setopts.c hdrs.c
SRCS6= mail.c print.c
SRCS7= curses.c curs_io.c
SRCS8= file.c strings.c
SRCS9= lock.c macros.c addrs.c
OBJS= main.o init.o misc.o mail.o hdrs.o execute.o commands.o print.o file.o \
      signals.o setopts.o msgs.o pick.o sort.o expr.o strings.o \
      folders.o dates.o loop.o help.o viewopts.o bind.o curses.o curs_io.o \
      lock.o macros.o options.o addrs.o
HELP_FILES= README README-6.0 README-6.1 README-6.2 README-6.3 README-6.4 \
	mush.1 Mailrc Gnurc cmd_help sample.mushrc
MAKES= makefile.sys.v makefile.xenix makefile.bsd

# Memory model.  Use -M3e for 80386 machines.
# Use -Mle for 80286 machines.
MODEL= -M2le

#
# 80286 xenix may use this LDFLAGS define:
LDFLAGS= -X -lx -M2le -Mt32 -F 8000 -SEG 256
#LDFLAGS= -X -lx -M3

CFLAGS= $(MODEL) -Mt32 -O -LARGE -DSYSV -DCURSES -DREGCMP -DUSG
LIBES= -lcurses -ltermlib

mush: $(OBJS)
	@echo loading...
	@cc $(LDFLAGS) $(OBJS) $(LIBES) -o mush

# For 80286 machines, use these two lines...
misc.o:	misc.c
	cc $(CFLAGS) -c misc.c

bind.o:	bind.c
	cc $(CFLAGS) -c bind.c

shar:
	shar ${HELP_FILES} ${MAKES} ${HDRS}>hdr.shr
	shar ${SRCS1} > src1.shr
	shar ${SRCS2} > src2.shr
	shar ${SRCS3} > src3.shr
	shar ${SRCS4} > src4.shr
	shar ${SRCS5} > src5.shr
	shar ${SRCS6} > src6.shr
	shar ${SRCS7} > src7.shr
	shar ${SRCS8} > src8.shr
	shar ${SRCS9} > src9.shr

tar:
	tar fcv MUSH ${MAKES} ${HDRS} ${HELP_FILES} ${SRCS1} \
	${SRCS2} ${SRCS3} ${SRCS4} ${SRCS5} ${SRCS6} ${SRCS7} \
	${SRCS8} ${SRCS9}

clean:
	rm -f *.o core mush

----- cut here -----


If any XENIX-286 users out there have any problems with this, please
let me know.

						John


-- 
John R. Meyer				Domain: meyer@mimsy.umd.edu
10208-C Ashbrooke Ct.			Path:   uunet.uu.net!mimsy!meyer
Oakton, VA 22124 USA			Phone:  (703) 644-3944 (O)
Disclaimer:  The views expressed are my own.	(703) 281-5157 (H)