#
#   Makefile for C68 LD command
#
#   Choose the appropriate set up to suit your system
#
#------------------------------------------------------------
#  ... for compiling with C68 on QDOS
CC = cc
CFLAGS = -Qerror=5 -Qwarn=5 -maxerr=5 -O
LDFLAGS= -bufp120k -bufl50k -m
LDLIBS=
# CFLAGS = -Qerror=5 -Qwarn=5 -maxerr=5 -DLIBDEBUG -O
# LDLIBS=  -ldebug
I = ${P}INCLUDE_
S = _
O = o
#------------------------------------------------------------
#   .. for compiling with MINIX-68K
# CC = cc68
# CFLAGS = -Werror=5 -Qwarn=6 -maxerr=5 -D_MINIX -I../ -O
# LDFLAGS = 
# LDLIBS=
# I = /usr/include/
# S = .
# O = o
#------------------------------------------------------------
#   .. for compiling with MINIX-PC
# CC = cc
# CFLAGS = -F -D_MINIX -I../
# LDFLAGS = -i
# LDLIBS=
# I = /usr/include/
# S = .
# O = s
#------------------------------------------------------------
#   .. for compiling with MINIX-386 and GNU C
# CC = gcc
# CFLAGS = -D_MINIX -I../ -I/usr/include -I../include -O
# LDFLAGS = 
# LDLIBS=
# I = /usr/include/
# S = .
# O = o
#------------------------------------------------------------
#   .. for compiling with MINIX-386 and Bruce Evans BCC
# CC = bcc
# CFLAGS = -D_MINIX -I../ -O
# LDFLAGS = 
# LDLIBS=
# I = /usr/include/
# S = .
# O = o
#------------------------------------------------------------
#   .. for compiling with MINIX-386 and c386
# CC = gcc
# CFLAGS = -Qerror=5 -Qwarn=6 -Qmaxerr=5 -D_MINIX -I../ -O
# LDFLAGS = 
# LDLIBS=
# I = /usr/include/
# S = .
# O = o
#------------------------------------------------------------
#   .. for compiling with LINUX-386
# CC = gcc
# CFLAGS = -D_MINIX -I../ -O
# LDFLAGS = 
# LDLIBS=
# I = /usr/include/
# S = .
# O = o
#------------------------------------------------------------
#   .. for compiling with UNIX SVR4
# CC = cc
# CFLAGS = -c -D_MINIX -DSYSV -I../include
# LDFLAGS = 
# LDLIBS=
# I = /usr/include/
# S = .
# O = o
# LINTFLAGS = -m -x
#------------------------------------------------------------

LD = ld 
RM = rm
CP = cp

OBJS =  ldmain$S$O   ldmsgs$S$O   ldparams$S$O ldlist$S$O \
        ldqdos$S$O   ldrll$S$O    ldsroff$S$O  ldutils$S$O

LOBJ =  ldmain$Sln   ldmsgs$Sln   ldparams$Sln  ldlist$Sln \
        ldqdos$Sln   ldrll$Sln   ldsroff$Sln  ldutils$Sln

.SUFFIXES : $Sx $Ss $Sasm $So $Srel $Shdr $Sh

all :   ${OBJS}
    ${CC} ${LDFLAGS} -o ld ${OBJS} ${LDLIBS}

$Sc$Sln:
    lint ${CFLAGS} -x ${DEFINES} $< >>ld$Slint 2>&1

$Shdr$Sh :
    packhdr $*_hdr $*_h
 
lint :	lint2 ${LOBJ}
    lint ${LOBJ} ${LINTFLAGS} >>ld$Slint 2>&1

clean:
    ${RM} -f *$S$O *$Si *$Ss *$Sln

clobber: clean
    ${RM} -f ld

#--------------------------------------------------------------------------
#	The following is for copying files from a 720K DOS floppy to MINIX-PC

to_minixpc:
	dosread b sroff.h     > sroff.h
	dosread b ld.h        > ld.h
	dosread b ldconfig.h  > ldconfig.h
	dosread b lddata.c    > lddata.c
	dosread b ldlist.c    > ldlist.c
	dosread b ldmain.c    > ldmain.c
	dosread b ldmsgs.c    > ldmsgs.c
	dosread b ldparams.c  > ldparams.c
	dosread b ldqdos.c    > ldqdos.c
	dosread b ldrll.c     > ldrll.c
	dosread b ldsroff.c   > ldsroff.c
	dosread b ldutils.c   > ldutils.c

#	The following is for copying files to a 720K DOS floppy from MINIX-PC

from_minixpc:
	doswrite b src/sroff.h     < sroff.h
	doswrite b src/ld.h        < ld.h
	doswrite b src/ldconfig.h  < ldconfig.h
	doswrite b src/lddata.c    < lddata.c
	doswrite b src/ldlist.c    < ldlist.c
	doswrite b src/ldmain.c    < ldmain.c
	doswrite b src/ldmsgs.c    < ldmsgs.c
	doswrite b src/ldparams.c  < ldparams.c
	doswrite b src/ldqdos.c    < ldqdos.c
	doswrite b src/ldrll.c     < ldrll.c
	doswrite b src/ldsroff.c   < ldsroff.c
	doswrite b src/ldutils.c   < ldutils.c
	doswrite b src/Makefile	   < Makefile

#---------------------- Header file dependencies --------------------------


ld$Sh  :   ${I}stdlib$Sh   ${I}stdio$Sh    ${I}fcntl$Sh    ${I}string$Sh \
           ${I}ctype$Sh    ${I}errno$Sh    ${I}qdos$Sh
    touch ld$Sh

${OBJS} :  ld$Sh ldconfig$Sh
${LOBJ} :  ld$Sh ldconfig$Sh

ldsroff$S$O : sroff$Sh

