# Makefile to build the pandora SDL library
WIZSDK = /mythtv/media/devel/toolchains/openwiz/arm-openwiz-linux-gnu

AR	= $(WIZSDK)/bin/arm-openwiz-linux-gnu-ar
RANLIB	= $(WIZSDK)/bin/arm-openwiz-linux-gnu-ranlib
CC = $(WIZSDK)/bin/arm-openwiz-linux-gnu-gcc
CXX = $(WIZSDK)/bin/arm-openwiz-linux-gnu-g++
STRIP = $(WIZSDK)/bin/arm-openwiz-linux-gnu-strip

CFLAGS  = -Wall -fPIC -I./include -I$(WIZSDK)/include -DWIZ_GLES_LITE

TARGET_STATIC  = libSDL13.a
TARGET_SHARED  = libSDL13.so

SOURCES = ./src/*.c ./src/audio/*.c ./src/cdrom/*.c ./src/cpuinfo/*.c ./src/events/*.c \
	./src/file/*.c ./src/stdlib/*.c ./src/thread/*.c ./src/timer/*.c ./src/video/*.c \
	./src/joystick/*.c ./src/haptic/*.c ./src/video/dummy/*.c ./src/audio/disk/*.c \
	./src/audio/dummy/*.c ./src/loadso/dlopen/*.c ./src/audio/dsp/*.c ./src/audio/dma/*.c \
	./src/thread/pthread/SDL_systhread.c ./src/thread/pthread/SDL_syssem.c \
	./src/thread/pthread/SDL_sysmutex.c ./src/thread/pthread/SDL_syscond.c \
	./src/joystick/linux/*.c ./src/haptic/linux/*.c ./src/timer/unix/*.c ./src/cdrom/dummy/*.c \
	./src/video/pandora/SDL_pandora.o ./src/video/pandora/SDL_pandora_events.o
	

OBJECTS = $(shell echo $(SOURCES) | sed -e 's,\.c,\.o,g')

all: config_copy $(TARGET_STATIC) $(TARGET_SHARED)

$(TARGET_STATIC): $(OBJECTS)
	$(AR) crv $@ $^
	$(RANLIB) $@

$(TARGET_SHARED):
	$(CC) -shared -Wl,-soname,$(TARGET_SHARED).0 -o $(TARGET_SHARED).0.0.1  $(OBJECTS)
	ln -s $(TARGET_SHARED).0.0.1 $(TARGET_SHARED).0
	ln -s $(TARGET_SHARED).0 $(TARGET_SHARED)

config_copy:
	cp include/SDL_config_wiz.h include/SDL_config.h

clean:
	rm -f $(TARGET_STATIC) $(TARGET_SHARED)* $(OBJECTS)

install:
	mkdir -p $(WIZSDK)/lib
	mkdir -p $(WIZSDK)/include/SDL13
	cp -f $(TARGET_STATIC) $(WIZSDK)/lib
	cp -f $(TARGET_SHARED).0.0.1 $(WIZSDK)/lib
	rm -f $(WIZSDK)/lib/$(TARGET_SHARED).0 $(WIZSDK)/lib/$(TARGET_SHARED)
	ln -s $(WIZSDK)/lib/$(TARGET_SHARED).0.0.1 $(WIZSDK)/lib/$(TARGET_SHARED).0
	ln -s $(WIZSDK)/lib/$(TARGET_SHARED).0 $(WIZSDK)/lib/$(TARGET_SHARED)

	cp $(TARGET_STATIC) ../../toolchain/libs
	cp $(TARGET_SHARED).0.0.1 ../../toolchain/libs
	rm -f ../../toolchain/libs/$(TARGET_SHARED).0 ../../toolchain/libs/$(TARGET_SHARED)
	ln -s ../../toolchain/libs/$(TARGET_SHARED).0.0.1 ../../toolchain/libs/$(TARGET_SHARED).0
	ln -s ../../toolchain/libs/$(TARGET_SHARED).0 ../../toolchain/libs/$(TARGET_SHARED)

	cp $(TARGET_SHARED).0.0.1 ../nehe_demos/build/$(TARGET_SHARED).0
	cp -f include/*.h $(WIZSDK)/include/SDL13/
	cp -f include/*.h ../../toolchain/include/SDL13/
