#
# $Source: DH1:network/parnet/Sana2/Sources/makefile,v $
# $State: Exp $
# $Revision: 37.2 $
# $Date: 93/12/17 22:10:11 $
# $Author: S.A.Pechler $
#
# Amiga SANA-II Example Spar device driver SAS/C make file.
#
# Based on Sana-II Example SLIP device driver make file, which is
# (C) Copyright 1992 Commodore-Amiga, Inc.
#
#

MODNAME             = spar.device

VERSION             = 37
REVISION            = 2

LD_FILE             = $(MODNAME)
LD_DEBUG            = spardebug.device

#Lattice C flags
#C_COMPILER          = LC
#C_COMPILER_OPTS     = -b0 -. -ms -me -O -v -rr -cfistqmcu -d1 -o
#C_COMPILER_DEB      = -DDEBUG $(C_COMPILER_OPTS)

#SAS/C Flags
C_COMPILER          = SC
C_COMPILER_OPTS     = PARMS=REG NMINC DATA=FARONLY OPT OPTINLOCAL STREQ\
                      STRMERGE UNSCHAR NOSTKCHK NOVERSION

#libcode utillib saveds
C_COMPILER_DEBUG    = DEF=DEBUG=1 DBG=L PARMS=REG NMINC DATA=FARONLY\
                      STRMERGE UNSCHAR NOSTKCHK NOVERSION

ASSEMBLER           = asm
ASSEMBLER_OPTS      = -. -d -O -iinclude: -o

#Blink flags
#LINKER              = Blink
#LINKER_OPTS_DEBUG   = SC SD BATCH NOICONS ADDSYM MAP $(MODNAME).map PLAIN SWIDTH 16
#LINKER_OPTS         = SC SD ND BATCH NOICONS

#Slink flags
LINKER              = Slink
LINKER_OPTS         = BATCH LIBVERSION $(VERSION) LIBREVISION $(REVISION)\
                      SMALLCODE SMALLDATA NODEBUG NOICONS QUIET
LINKER_OPTS_DEBUG   = BATCH SMALLCODE SMALLDATA LIBVERSION $(VERSION) LIBREVISION $(REVISION)\
                      NODEBUG MAP $(MODNAME).map F,H,L,S,X PLAIN SWIDTH 16 NOICONS QUIET

C_SOURCES           = device_funcs.c spar_funcs.c sana2_funcs.c

ASM_SOURCES         = spar_device.asm endcode.asm

OBJECTS             = spar_device.o device_funcs.o spar_funcs.o sana2_funcs.o endcode.o

DEBUG_OBJECTS       = spar_device.o device_funcs.d spar_funcs.d sana2_funcs.d endcode.o

LIBS                = LIB:amiga.lib LIB:scnb.lib

##############################################################################
# Build the load file...
#
$(LD_FILE):	$(OBJECTS)
		$(LINKER) <with <
FROM $(OBJECTS) TO $(LD_FILE) LIB $(LIBS) $(LINKER_OPTS)
<

##############################################################################
# Default rules...
#
.c.o:
    $(C_COMPILER) $(C_COMPILER_OPTS) $*.c

.asm.o:
    $(ASSEMBLER) $(ASSEMBLER_OPTS)$*.o $*.asm 

##############################################################################
# All dependencies...
#
spar_device.o	: spar_device.asm spar_device.i spar_rev.i
device_funcs.o	: device_funcs.c spar_device.h device_protos.h
spar_funcs.o	: spar_funcs.c spar_device.h device_protos.h
sana2_funcs.o	: sana2_funcs.c spar_device.h device_protos.h
endcode.o	: endcode.asm

##############################################################################
# Build the debug load file...
#
$(LD_DEBUG):
debug:		$(DEBUG_OBJECTS)
		$(LINKER) <with <
FROM $(DEBUG_OBJECTS) TO $(LD_DEBUG) LIB $(LIBS) $(LINKER_OPTS_DEBUG)
<
##############################################################################
# Debug rules...
#
.c.d:
    $(C_COMPILER) $(C_COMPILER_DEBUG) OBJNAME=$*.d $*.c

.asm.d:
    $(ASSEMBLER) $(ASSEMBLER_OPTS)$*.d $*.asm 

##############################################################################
# Debug dependencies...
#
syslog.o : syslog.c syslog_private.h
device_funcs.d	: device_funcs.c spar_device.h device_protos.h
spar_funcs.d	: spar_funcs.c spar_device.h device_protos.h
sana2_funcs.d	: sana2_funcs.c spar_device.h device_protos.h

#############################################################################
# Bump services.library revision
#
version:
    -BumpRev $(VERSION) $(MODNAME)_rev

##############################################################################
# Delete all object files
#
clean:
    -Delete $(OBJECTS)
    -Delete $(DEBUG_OBJECTS)
    -Delete $(LD_FILE).map
