Makefile.wiz
author Sam Lantinga <slouken@libsdl.org>
Thu, 07 Dec 2017 16:08:09 -0800
changeset 11730 ac6c607e065c
parent 10204 d7a20c257421
child 12130 24142c5073a4
permissions -rw-r--r--
Enable building the Metal renderer by default, and weak link the Metal framework so the SDL library is safe to use on older Macs
Also generate iOS versions of the Metal shaders
     1 # Makefile to build the pandora SDL library
     2 WIZSDK = /mythtv/media/devel/toolchains/openwiz/arm-openwiz-linux-gnu
     3 
     4 AR	= $(WIZSDK)/bin/arm-openwiz-linux-gnu-ar
     5 RANLIB	= $(WIZSDK)/bin/arm-openwiz-linux-gnu-ranlib
     6 CC = $(WIZSDK)/bin/arm-openwiz-linux-gnu-gcc
     7 CXX = $(WIZSDK)/bin/arm-openwiz-linux-gnu-g++
     8 STRIP = $(WIZSDK)/bin/arm-openwiz-linux-gnu-strip
     9 
    10 CFLAGS  = -Wall -fPIC -I./include -I$(WIZSDK)/include -DWIZ_GLES_LITE
    11 
    12 TARGET_STATIC  = libSDL2.a
    13 TARGET_SHARED  = libSDL2.so
    14 
    15 SOURCES = ./src/*.c ./src/audio/*.c ./src/cpuinfo/*.c ./src/events/*.c \
    16 	./src/file/*.c ./src/stdlib/*.c ./src/thread/*.c ./src/timer/*.c ./src/video/*.c \
    17 	./src/joystick/*.c ./src/haptic/*.c ./src/video/dummy/*.c ./src/audio/disk/*.c \
    18 	./src/audio/dummy/*.c ./src/loadso/dlopen/*.c ./src/audio/dsp/*.c \
    19 	./src/thread/pthread/SDL_systhread.c ./src/thread/pthread/SDL_syssem.c \
    20 	./src/thread/pthread/SDL_sysmutex.c ./src/thread/pthread/SDL_syscond.c \
    21 	./src/joystick/linux/*.c ./src/haptic/linux/*.c ./src/timer/unix/*.c \
    22 	./src/video/pandora/SDL_pandora.o ./src/video/pandora/SDL_pandora_events.o
    23 	
    24 
    25 OBJECTS = $(shell echo $(SOURCES) | sed -e 's,\.c,\.o,g')
    26 
    27 all: config_copy $(TARGET_STATIC) $(TARGET_SHARED)
    28 
    29 $(TARGET_STATIC): $(OBJECTS)
    30 	$(AR) crv $@ $^
    31 	$(RANLIB) $@
    32 
    33 $(TARGET_SHARED):
    34 	$(CC) -shared -Wl,-soname,$(TARGET_SHARED).0 -o $(TARGET_SHARED).0.0.1  $(OBJECTS)
    35 	ln -s $(TARGET_SHARED).0.0.1 $(TARGET_SHARED).0
    36 	ln -s $(TARGET_SHARED).0 $(TARGET_SHARED)
    37 
    38 config_copy:
    39 	cp include/SDL_config_wiz.h include/SDL_config.h
    40 
    41 clean:
    42 	rm -f $(TARGET_STATIC) $(TARGET_SHARED)* $(OBJECTS)
    43 
    44 install:
    45 	mkdir -p $(WIZSDK)/lib
    46 	mkdir -p $(WIZSDK)/include/SDL2
    47 	cp -f $(TARGET_STATIC) $(WIZSDK)/lib
    48 	cp -f $(TARGET_SHARED).0.0.1 $(WIZSDK)/lib
    49 	rm -f $(WIZSDK)/lib/$(TARGET_SHARED).0 $(WIZSDK)/lib/$(TARGET_SHARED)
    50 	ln -s $(WIZSDK)/lib/$(TARGET_SHARED).0.0.1 $(WIZSDK)/lib/$(TARGET_SHARED).0
    51 	ln -s $(WIZSDK)/lib/$(TARGET_SHARED).0 $(WIZSDK)/lib/$(TARGET_SHARED)
    52 
    53 	cp $(TARGET_STATIC) ../../toolchain/libs
    54 	cp $(TARGET_SHARED).0.0.1 ../../toolchain/libs
    55 	rm -f ../../toolchain/libs/$(TARGET_SHARED).0 ../../toolchain/libs/$(TARGET_SHARED)
    56 	ln -s ../../toolchain/libs/$(TARGET_SHARED).0.0.1 ../../toolchain/libs/$(TARGET_SHARED).0
    57 	ln -s ../../toolchain/libs/$(TARGET_SHARED).0 ../../toolchain/libs/$(TARGET_SHARED)
    58 
    59 	cp $(TARGET_SHARED).0.0.1 ../nehe_demos/build/$(TARGET_SHARED).0
    60 	cp -f include/*.h $(WIZSDK)/include/SDL2/
    61 	cp -f include/*.h ../../toolchain/include/SDL2/