SCOPTS = RESOPT NOSTKCHK STRINGMERGE UCHAR NOCHKABORT OPT OPTSIZE \
	OPTINLOCAL NOICONS MEMSIZE=HUGE DATA=FO
SLOPTS = NOICONS SMALLCODE SMALLDATA STRIPDEBUG \
	LIB LIB:SDI_ASM_STD_functions.lib LIB:scnb.lib

# NOTE: remove STRIPDEBUG, when DEBUG versions of libraries should have
#       line debug information, for normal version debug is striped always

FILES= All.c checksum.c fault.c fib.c hook.c hook_fh.c hook_mem.c \
	objects.c open.c password.c progress.c query.c sublibs.c tags.c \
	util.c xbuf.c xpkmaster.c xpkmaster.h xpk_strings.c xpk_strings.h

ODIR = //xpk_Binary/

Main: XPK4 XPKDEBUG

All: Main XPK XPKDEBUG4

XPK:	   $(ODIR)xpkmaster.libraryN4
XPKDEBUG:  $(ODIR)xpkmaster.libraryDEBUG
XPK4:	   $(ODIR)xpkmaster.library
XPKDEBUG4: $(ODIR)xpkmaster.libraryDEBUG4

# ******* object files *******

$(ODIR)debug.o: debug.c
	sc $(SCOPTS) $? OBJNAME=$@

$(ODIR)libdata.o: libdata.a
	Sprachen:Phoenix/Bin/PhxAss $? TO $@

$(ODIR)All.o: $(FILES)
	sc $(SCOPTS) PARM=R All.c OBJNAME=$@

$(ODIR)All_d.o: $(FILES)
	sc $(SCOPTS) DEBUG=LINE NOOPT All.c DEFINE=DEBUG OBJNAME=$@

$(ODIR)All_4.o: $(FILES)
	sc $(SCOPTS) PARM=R DEFINE=SUPPORT_A4 All.c OBJNAME=$@

$(ODIR)All_4d.o: $(FILES)
	sc $(SCOPTS) DEBUG=LINE NOOPT All.c DEFINE=SUPPORT_A4 DEFINE=DEBUG \
	OBJNAME=$@

# ******* libraries creation *******

$(ODIR)xpkmaster.libraryN4: $(ODIR)libdata.o $(ODIR)All.o
	slink FROM $(ODIR)libdata.o $(ODIR)All.o $(SLOPTS) STRIPDEBUG TO $@

$(ODIR)xpkmaster.library: $(ODIR)libdata.o $(ODIR)All_4.o
	slink FROM $(ODIR)libdata.o $(ODIR)All_4.o $(SLOPTS) STRIPDEBUG TO $@

$(ODIR)xpkmaster.libraryDEBUG: $(ODIR)libdata.o $(ODIR)All_d.o \
			       $(ODIR)debug.o
	slink FROM $(ODIR)libdata.o $(ODIR)All_d.o $(ODIR)debug.o \
	$(SLOPTS) LIB:debug.lib LIB:ddebug.lib LIB:amiga.lib TO $@

$(ODIR)xpkmaster.libraryDEBUG4: $(ODIR)libdata.o $(ODIR)All_4d.o \
				$(ODIR)debug.o
	slink FROM $(ODIR)libdata.o $(ODIR)All_4d.o $(ODIR)debug.o \
	$(SLOPTS) LIB:debug.lib LIB:ddebug.lib LIB:amiga.lib TO $@

