#
#
#
#  Resea (api/Makefile)
#  Mafice <mafice@mflabo.net>
#
#
#

SRC_TOP = ..
include $(SRC_TOP)/dec.mk

DELETE_TARGET = $(wildcard *.bin) $(wildcard *.obj) $(wildcard *.o) $(wildcard *.a)


C_FILES        := $(wildcard *.c)

%.o: %.c
	$(ECHO) "  $*.o"
	$(CC) $(CFLAGS) $< -o $@


default:
	$(ECHO) "supported: x86 x86_64"


$(APILIB): $(C_FILES:.c=.o) $(ASM_OBJ_FILES:.asm=.obj)
	$(MKSLIB)  $(APILIB) $(C_FILES:.c=.o) $(ASM_OBJ_FILES:.asm=.obj)


x86:
	$(MAKE) ASMOBJ_FLAGS="-f elf32 -s" ASM_OBJ_FILES="assembly_x86.asm" CFLAGS="-c -std=c99 -m32 -Os -pipe -fno-stack-protector -mno-red-zone -fno-builtin -Wall -Iinclude" $(APILIB)


x86_64:
	$(MAKE) ASMOBJ_FLAGS="-f elf64 -s" ASM_OBJ_FILES="assembly_x86_64.asm" CFLAGS="-c -std=c99 -m64 -Os -pipe -mcmodel=large -fno-stack-protector -mno-red-zone -fno-builtin -Wall -I$(API_INCLUDE_DIR)" LINKFLAGS="-nostdlib -nodefaultlibs -melf_x86_64" $(APILIB)

clean:
	$(DELETE) $(DELETE_TARGET)


