X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fgpu_neon%2FMakefile;h=2d942f836122f510bf17d9c5df951ff32490ae89;hp=6332308ae15292316fd1353dbc0709862467a705;hb=5d834c089ea695dba7643cba8686ce2ac06d8db4;hpb=56f08d8331df07ee6b17dfdba0ca2b5f0b1058c8 diff --git a/plugins/gpu_neon/Makefile b/plugins/gpu_neon/Makefile index 6332308a..2d942f83 100644 --- a/plugins/gpu_neon/Makefile +++ b/plugins/gpu_neon/Makefile @@ -1,29 +1,59 @@ CC = $(CROSS_COMPILE)gcc +CXX = $(CROSS_COMPILE)g++ +CC_ = $(CC) ARCH = $(shell $(CC) -v 2>&1 | grep -i 'target:' | awk '{print $$2}' | awk -F '-' '{print $$1}') CFLAGS += -ggdb -Wall -fPIC -O2 +CFLAGS += -fno-strict-aliasing +ifdef MAEMO +CFLAGS += -DMAEMO +endif -TARGET = gpu_neon.so -LDFLAGS += -shared -Wl,-soname,$(TARGET) SRC += gpu.c ifeq "$(ARCH)" "arm" +ARM_CORTEXA8 ?= 1 +ifeq "$(ARM_CORTEXA8)" "1" CFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -SRC += vout_fb.c ../../frontend/arm_utils.s +SRC += ../../frontend/cspace_neon.s else +CFLAGS += -mcpu=arm926ej-s -mtune=arm926ej-s +SRC += ../../frontend/cspace.c +endif +SRC += vout_fb.c +EXT = so +endif +ifeq "$(ARCH)" "x86_64" CFLAGS += `sdl-config --cflags` -m32 LDFLAGS += `sdl-config --libs` SRC += vout_sdl.c +EXT = so.x86 endif -ifndef PEOPS + +HAVE_NEON = $(shell $(CC_) -E -dD $(CFLAGS) gpu.h | grep -q '__ARM_NEON__ 1' && echo 1) + +TARGETS = gpu_neon.$(EXT) gpu_peops.$(EXT) gpu_unai.$(EXT) + +gpu_neon.$(EXT): SRC += psx_gpu_if.c +gpu_neon.$(EXT): CFLAGS += -DTEXTURE_CACHE_4BPP -DTEXTURE_CACHE_8BPP +ifeq "$(HAVE_NEON)" "1" +gpu_neon.$(EXT): SRC += psx_gpu/psx_gpu_arm_neon.S +gpu_neon.$(EXT): CFLAGS += -DNEON_BUILD else -SRC += peops.c +gpu_neon.$(EXT): CFLAGS += -fno-strict-aliasing +endif +gpu_peops.$(EXT): SRC += peops_if.c +gpu_peops.$(EXT): CFLAGS += -fno-strict-aliasing +gpu_unai.$(EXT): SRC += unai_if.cpp +gpu_unai.$(EXT): CC_ = $(CXX) +ifeq "$(ARCH)" "arm" +gpu_unai.$(EXT): SRC += ../gpu_unai/gpu_arm.s endif -all: $(TARGET) +all: $(TARGETS) -$(TARGET): $(SRC) - $(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS) +$(TARGETS): $(SRC) + $(CC_) -o $@ $(SRC) $(CFLAGS) $(LDFLAGS) -shared -Wl,-soname,$@ clean: - $(RM) $(TARGET) + $(RM) $(TARGETS)