
SHELL   =       /bin/sh
MAKE    =       make

##############################################################################


#-I/ade/ppc-amigaos/include/
#-Iinclude:
# -I/ade/include
G_IPATH         =       -I../include/
G_DEFINES       =       -D$(CODETYPE) -DROMEMUL
G_OPTFLAGS      =       -O2 -fomit-frame-pointer -fverbose-asm -mno-prototype -mcpu=604 -mregnames -Wformat -Wunused -Wuninitialized -Wconversion -Wstrict-prototypes -Werror-implicit-function-declaration


IPATH           =       IDIR=PowerUP:NewKernel/include IDIR=include:
DEFINES         =       DEFINE=$(CODETYPE)
OPTFLAGS        =       OPTIMIZE OPTIMIZESCHEDULE OPTIMIZEGLOBAL
CFLAGS          =       STRINGMERGE NOSTACKCHECK PARMS=REGISTER DATA=FARONLY CODE=NEAR DEFINE=$(CODETYPE)
LINK            =       slink


APATH           =       -i/include/
AFLAGS          =       -M4000

##############################################################################

INCLUDE         =       ../include
PINCLUDE        =       $(INCLUDE)/private/quark/
RINCLUDE        =       $(INCLUDE)/public/quark/

##############################################################################

all:    .copy

.PHONY: all     \
	release \
	update  \
	startup


##############################################################################


.copy:  .copy-exec              \
	.copy-cybergfx


PATCH:
	cp -r include_h/* include
	patch -d include -p1 <include.diffs
	cp -r include_h/* includenew
	patch -E -d includenew -p1 <includenew.diffs
	-grep 'Only in' <includenew.diffs | sed -e s/'Only in '/'rm '/g -e s/include_h/includenew/g -e "s/: /\//g" | sh
	-grep 'Only in' <includenew.diffs | grep -v '\.' | sed -e s/'Only in '/'rm -r '/g -e s/include_h/includenew/g -e "s/: /\//g" | sh
	find ./ -iname \*.orig -exec rm {} \;



CREATEPROTO:
	./genproto.sh ./include/fd ./includegcc/proto

#
# Keep the order as includenew/ overloads
# the normal includes
#
CREATEINCLUDE:
	./geninclude.sh ./include ./includegcc
	./geninclude.sh ./include3rd ./includegcc
	./geninclude.sh ./includenew ./includegcc
	copy includenew/emul includegcc/emul

CREATEINCLUDENEW:
	./geninclude.sh ./includenew ./includegcc
	copy includenew/emul includegcc/emul

CREATEINCLUDE3RD:
	./geninclude.sh ./include3rd ./includegcc

CREATEINLINE:
	./geninline.sh ./include/fd ./include/clib ./includegcc/ppcinline
	./geninline.sh ./include3rd/fd ./include3rd/clib ./includegcc/ppcinline
	./geninline.sh ./includenew/fd ./includenew/clib ./includegcc/ppcinline


CREATEINLINENEW:
	./geninline.sh ./includenew/fd ./includenew/clib ./includegcc/ppcinline
	./geninline.sh ./includenew/powerup/fd ./includenew/powerup/clib ./includegcc/ppcinline

CREATEINLINE3RD:
	./geninline.sh ./include3rd/fd ./include3rd/clib ./includegcc/ppcinline

CREATESTUBS:
	rm -rf /t/amigalib
	mkdir /t/amigalib
	./genstubs.sh ./include/fd ./include /t/amigalib
	./mergelibs /t/amigalib ../lib/libamigastubs.a
	rm -rf /t/amigalib
	./genstubs.sh ./include3rd/fd ./include3rd ../lib
	./genstubs.sh ./includenew/fd ./includenew ../lib

CREATESTUBSNEW:
	./genstubs.sh ./includenew/fd ./includenew ../lib

CREATESTUBS3RD:
	./genstubs.sh ./include3rd/fd ./include3rd ../lib

