#
# Make a Python interpreter.
#

ifdef SFP_CORE
SFP       = "SFP-Core"
SFP_BASE  = 0x00027000
SFP_LEN   = 0x02000000
SFP_SPECS = sfp-core-specs
else
SFP       = "SFP-101"
SFP_BASE  = 0x00018000
SFP_LEN   = 0x00400000
SFP_SPECS = sfp-101-specs
endif

PYTHONHOME = python/lib/python2.3
PYTHON_PY  = $(wildcard $(python/lib/python2.3/*))
PYTHON_LIB = ../rtems/libpython.a
PYTHON_SRC = ../python-cvs/dist/src
PYTHON_INC = -I $(PYTHON_SRC)/RTEMS -I $(PYTHON_SRC)/Include

#RTEMS_BASE = /local/tools/sdk-3
RTEMS_BASE = /opt/rtems

MRB_LIB = $(RTEMS_BASE)/lib/mrb/
MRB_INC = $(RTEMS_BASE)/include/mrb

C_INC = $(RTEMS_BASE)/m68k-rtems/lib/include

CFLAGS = $(PYTHON_INC) -I $(MRB_INC) -I $(C_INC) -g -m5200 -pipe -O3 -Wall -Winline -fno-builtin

all: example.bin

example.bin: example
	m68k-rtems-objcopy --output-target=srec example example.srec
	srec2bin --input-file=example.srec --output-file=example.bin --clean \
		--base=$(SFP_BASE) --length=$(SFP_LEN) --product=$(SFP)

example: example.o python-lib.o
	m68k-rtems-gcc -g -m5200 -B$(MRB_LIB) -specs $(SFP_SPECS) -qrtems \
		-o example example.o python-lib.o $(PYTHON_LIB) -lm -lc

example.o: example.c
	m68k-rtems-gcc $(CFLAGS) -c example.c

python-lib.o: python-lib.tar
	m68k-rtems-ld -r -o python-lib.o -b binary python-lib.tar

python-lib.tar: $(PYTHON_PY)
	tar cf python-lib.tar python

clean:
	rm -rf *~ example.bin example.o example example.srec \
		python-lib.o python-lib.tar python
