#
# DMakefile for UnTAR
#
# The pattern matching and replacing functions in DMake are quite useful...
#

SRC	= Sc.a UnTAR.c GZIO.c Dos.c Locale.c Memory.c
CT	= ÃeÓtina Italiano Norsk Polski Português Russian Srpski Svenska

ASRC	= $(SRC:*.a)
CSRC	= $(SRC:*.c)
OBJ0	= $(SRC:*.?:O0/*.o)
OBJ2	= $(SRC:*.?:O2/*.o)
AOBJ0	= $(SRC:*.a:O0/*.o)
COBJ0	= $(SRC:*.c:O0/*.o)
AOBJ2	= $(SRC:*.a:O2/*.o)
COBJ2	= $(SRC:*.c:O2/*.o)

CDSRC	= /Catalogs/UnTAR.cd
CTSRC	= $(CT:*:/Catalogs/*.ct)
CTOBJ	= $(CT:*:/Catalogs/*/UnTAR.catalog)
CTEMPTY	= /Catalogs/Empty.ct
LIB0	= zlib/z.lib,LIB:asyncioru.lib,LIB:amiga.lib,LIB:sc.lib
LIB2	= zlib/z2.lib,LIB:asyncioru2.lib,LIB:amiga.lib,LIB:sc.lib
CFLAGS	= OPT
LDFLAGS = SC SD NOICONS QUIET STRIPDEBUG
#CFLAGS	=
#LDFLAGS = SC SD NOICONS QUIET ADDSYM
CFLAGS2	= CPU 040

all : Msg.h UnTAR UnTAR_020 catalogs


# Main targets

UnTAR: $(OBJ0)
	SLink TO %(left) FROM %(right) LIB $(LIB0) $(LDFLAGS)

UnTAR_020: $(OBJ2)
	SLink TO %(left) FROM %(right) LIB $(LIB2) $(LDFLAGS)


# Object targets

$(AOBJ0) : $(ASRC)
	BAsm -dRESIDENT=1 -o%(left) %(right)

$(AOBJ2) : $(ASRC)
	BAsm -dRESIDENT=1 -dCPU020=1 -o%(left) %(right)

$(COBJ0) : $(CSRC)
	Sc $(CFLAGS) OBJNAME %(left) %(right)

$(COBJ2) : $(CSRC)
	Sc $(CFLAGS) $(CFLAGS2) OBJNAME %(left) %(right)


# Catalog targets

Msg.h : $(CDSRC)
	FlexCat %(right) %(left)=Cat2h_h.sd

catalogs : $(CTOBJ) $(CTEMPTY)

$(CTOBJ) : $(CTSRC)
	FlexCat $(CDSRC) %(right) CATALOG %(left)

$(CTEMPTY) : $(CDSRC)
	FlexCat %(right) NEWCTFILE %(left)


# Misc targets

clean:
	-Delete QUIET (O0|O2)/#?.o

release:
	-Delete //UnTAR_MH.lha //UnTAR_MH_loc.lha
	Copy UnTAR UnTAR_020 /
	LhA -x a //UnTAR_MH.lha     @UnTAR.files
	LhA -x a //UnTAR_MH_loc.lha @UnTAR.files.loc

betarelease:
	-Delete /ATO/UnTAR_beta.lha
	Copy UnTAR UnTAR_020 /
	LhA -x a /ATO/UnTAR_beta.lha :Sc/ UnTAR.info UnTAR/UnTAR(%|.guide#?|_MH#?) UnTAR/Catalogs/#? UnTAR/Catalogs/#?/#?
