84 lines
2.3 KiB
Makefile
84 lines
2.3 KiB
Makefile
TARGET := libvitaGL
|
|
SOURCES := source source/utils
|
|
SHADERS := shaders
|
|
|
|
ifeq ($(HAVE_SBRK),1)
|
|
SOURCES += source/hacks
|
|
endif
|
|
|
|
CFILES := $(foreach dir,$(SOURCES), $(wildcard $(dir)/*.c))
|
|
ASMFILES := $(foreach dir,$(SOURCES), $(wildcard $(dir)/*.S))
|
|
CGFILES := $(foreach dir,$(SHADERS), $(wildcard $(dir)/*.cg))
|
|
HEADERS := $(CGFILES:.cg=.h)
|
|
OBJS := $(CFILES:.c=.o) $(ASMFILES:.S=.o)
|
|
|
|
PREFIX = arm-vita-eabi
|
|
CC = $(PREFIX)-gcc
|
|
AR = $(PREFIX)-gcc-ar
|
|
CFLAGS = -g -Wl,-q -O2 -ffast-math -mtune=cortex-a9 -mfpu=neon -ftree-vectorize -DSTB_DXT_IMPLEMENTATION
|
|
ASFLAGS = $(CFLAGS)
|
|
|
|
ifeq ($(NO_DEBUG),1)
|
|
CFLAGS += -DSKIP_ERROR_HANDLING
|
|
endif
|
|
|
|
ifeq ($(HAVE_SHARK),1)
|
|
CFLAGS += -DHAVE_SHARK
|
|
endif
|
|
|
|
ifeq ($(HAVE_SHARK),2)
|
|
CFLAGS += -DHAVE_SHARK -DHAVE_SHARK_LOG
|
|
endif
|
|
|
|
all: $(TARGET).a
|
|
|
|
$(TARGET).a: $(OBJS)
|
|
$(AR) -rc $@ $^
|
|
|
|
%_f.h:
|
|
psp2cgc -profile sce_fp_psp2 $(@:_f.h=_f.cg) -Wperf -o $(@:_f.h=_f.gxp)
|
|
bin2c $(@:_f.h=_f.gxp) source/shaders/$(notdir $(@)) $(notdir $(@:_f.h=_f))
|
|
@rm -rf $(@:_f.h=_f.gxp)
|
|
|
|
%_v.h:
|
|
psp2cgc -profile sce_vp_psp2 $(@:_v.h=_v.cg) -Wperf -o $(@:_v.h=_v.gxp)
|
|
bin2c $(@:_v.h=_v.gxp) source/shaders/$(notdir $(@:_v.h=_v.h)) $(notdir $(@:_v.h=_v))
|
|
@rm -rf $(@:_v.h=_v.gxp)
|
|
|
|
shaders: $(HEADERS)
|
|
|
|
clean:
|
|
@rm -rf $(TARGET).a $(TARGET).elf $(OBJS)
|
|
@make -C samples/sample1 clean
|
|
@make -C samples/sample2 clean
|
|
@make -C samples/sample3 clean
|
|
@make -C samples/sample4 clean
|
|
@make -C samples/sample5 clean
|
|
@make -C samples/sample6 clean
|
|
@make -C samples/sample7 clean
|
|
@make -C samples/sample8 clean
|
|
|
|
install: $(TARGET).a
|
|
@mkdir -p $(VITASDK)/$(PREFIX)/lib/
|
|
cp $(TARGET).a $(VITASDK)/$(PREFIX)/lib/
|
|
@mkdir -p $(VITASDK)/$(PREFIX)/include/
|
|
cp source/vitaGL.h $(VITASDK)/$(PREFIX)/include/
|
|
|
|
samples: $(TARGET).a
|
|
@make -C samples/sample1
|
|
cp "samples/sample1/vitaGL-Sample001.vpk" .
|
|
@make -C samples/sample2
|
|
cp "samples/sample2/vitaGL-Sample002.vpk" .
|
|
@make -C samples/sample3
|
|
cp "samples/sample3/vitaGL-Sample003.vpk" .
|
|
@make -C samples/sample4
|
|
cp "samples/sample4/vitaGL-Sample004.vpk" .
|
|
@make -C samples/sample5
|
|
cp "samples/sample5/vitaGL-Sample005.vpk" .
|
|
@make -C samples/sample6
|
|
cp "samples/sample6/vitaGL-Sample006.vpk" .
|
|
@make -C samples/sample7
|
|
cp "samples/sample7/vitaGL-Sample007.vpk" .
|
|
@make -C samples/sample8
|
|
cp "samples/sample8/vitaGL-Sample008.vpk" .
|