###############################################################################
#
#	SMakefile
#
#	Makefile for the `SMake' utility required to build `term'
#
#	Copyright © 1990-1993 by Olaf `Olsen' Barthel & MXM
#		All Rights Reserved
#
###############################################################################

.c.o:
	SC $(CFLAGS) $(GST) $(OPTIONS) OBJNAME=$*.o $*.c

.c.oo:
	SC $(CFLAGS) $(GST) $(OPTIONS) $(OPTIMIZE) OBJNAME=$*.oo $*.c

.asm.o:
	ASM -IASM: $*.asm

MACHINE		= ANY

OPTIMIZE	= OPTIMIZE OPTINLOCAL OPTTIME

AREXXFLAGS	= DEFINE=USE_AREXX
AREXXOBJS	= termARexx.oo termARexxAttributes.oo termARexxCommands.oo termARexxData.o

OPTIONS		= CPU=$(MACHINE) UTILLIB $(AREXXFLAGS)

GST		= GSTIMM GST=term.gst

CFLAGS		= MCCONS STREQ STRMERGE NOSTKCHK IDLEN=65
LFLAGS		= SC SD ND DEFINE __CXM33=__UCXM33 DEFINE __CXD33=__UCXD33 \
		  DEFINE __CXM22=__UCXM22 DEFINE __CXD22=__UCXD22

LIBS		= LIB:amiga.lib LIB:sc.lib LIB:debug.lib

OBJS		= Start.o QuickSort.o CapturePanel.o ClipPanel.o CommandPanel.o \
		  CopyPanel.o CursorPanel.o DatePanel.o DayPanel.o EmulationPanel.o \
		  FastMacroPanel.o HotkeyPanel.o ImportPanel.o MacroPanel.o MiscPanel.o \
		  ModemPanel.o PasswordUserPanel.o PathPanel.o PhonePanel.o PrintPanel.o \
		  RatePanel.o ScreenPanel.o SerialPanel.o SoundPanel.o SpeechPanel.o \
		  TerminalPanel.o TimePanel.o TransferPanel.o TranslationPanel.o UploadPanel.o \
		  termAmigaGuide.o termAux.o termBeep.o termBuffer.oo termCall.o \
		  termCapture.oo termClip.oo termConfig.o termConsole.oo termCRC.o \
		  termCrypt.oo termData.o termDial.o termEmulation.oo termFastMacros.o \
		  termFastMacroWindow.oo termFileBuffer.oo termGadTools.o termHotkeys.o termIdentify.o \
		  termInfo.o termInit.o termKludge.oo termLists.oo termLocale.o \
		  termMain.o termResponse.oo termMarker.o termMisc.o termOldConfig.o \
		  termPacket.o termPhone.o termPrint.o termRaster.oo termReviewBuffer.oo \
		  termSaveWindow.o termScale.oo termScroll.oo termSerial.oo termSound.oo \
		  termSpeech.o termStatusDisplay.o termStatusWindow.o termStringHook.o termStrings.o \
		  termTag.o termTextBuffer.oo termTransfer.o termTranslate.oo termXEM.oo \
		  termXPR.oo

all:		term.gst term

termTag.o:	termTag.asm term.i
		ASM -IASM: termTag.asm

term:		$(OBJS) $(AREXXOBJS)
		SLINK WITH T:term.WITH <<!(T:term.WITH)
			FROM
			$(OBJS)
			$(AREXXOBJS)
			TO
			$@
			LIB
			$(LIBS)
			$(LFLAGS)
		<

term.gst:	PreInclude.c termStrings.h termExtras.h OwnDevUnit.h xproto.h xem.h
		SC NOOBJNAME IDLEN=65 MAKEGST=$@ PreInclude.c

termStrings.o:	termStrings.c termStrings.h
		SC $(CFLAGS) termStrings.c

termGadTools.o:	termGadTools.c
		SC $(CFLAGS) $(OPTIONS) $(OPTIMIZE) termGadTools.c

Start.o:	Start.c
		SC $(CFLAGS) DEFINE=_M$(MACHINE) Start.c
