# Makefile for PCSX ReARMed
# default stuff goes here, so that config can override
-TARGET = pcsx
+TARGET ?= pcsx
CFLAGS += -Wall -ggdb -Iinclude -ffast-math
-LDLIBS += -lpthread
ifndef DEBUG
CFLAGS += -O2 -DNDEBUG
endif
all: config.mak target_ plugins_
+ifndef NO_CONFIG_MAK
ifneq ($(wildcard config.mak),)
config.mak: ./configure
@echo $@ is out-of-date, running configure
@echo "Please run ./configure before running make!"
@exit 1
endif
+else # NO_CONFIG_MAK
+config.mak:
+endif
+
-include Makefile.local
-CC_LINK = $(CC)
+CC_LINK ?= $(CC)
+CC_AS ?= $(CC)
LDFLAGS += $(MAIN_LDFLAGS)
+EXTRA_LDFLAGS ?= -Wl,-Map=$@.map
LDLIBS += $(MAIN_LDLIBS)
ifdef PCNT
CFLAGS += -DPCNT
OBJS += libpcsxcore/new_dynarec/pcsxmem.o
else
libpcsxcore/new_dynarec/emu_if.o: CFLAGS += -DDRC_DISABLE
+frontend/libretro.o: CFLAGS += -DDRC_DISABLE
endif
OBJS += libpcsxcore/new_dynarec/emu_if.o
libpcsxcore/new_dynarec/new_dynarec.o: libpcsxcore/new_dynarec/assem_arm.c \
libpcsxcore/new_dynarec/pcsxmem_inline.c
-libpcsxcore/new_dynarec/new_dynarec.o: CFLAGS += -Wno-all -Wno-pointer-sign
ifdef DRC_DBG
libpcsxcore/new_dynarec/emu_if.o: CFLAGS += -D_FILE_OFFSET_BITS=64
CFLAGS += -DDRC_DBG
ifeq "$(ARCH)" "arm"
OBJS += plugins/dfsound/arm_utils.o
endif
+ifeq "$(HAVE_C64_TOOLS)" "1"
+plugins/dfsound/spu.o: CFLAGS += -DC64X_DSP
+plugins/dfsound/spu.o: plugins/dfsound/spu_c64x.c
+frontend/menu.o: CFLAGS += -DC64X_DSP
+endif
ifneq ($(findstring oss,$(SOUND_DRIVERS)),)
plugins/dfsound/out.o: CFLAGS += -DHAVE_OSS
OBJS += plugins/dfsound/oss.o
OBJS += frontend/libpicofe/linux/in_evdev.o
OBJS += frontend/plat_pandora.o frontend/plat_omap.o
frontend/main.o frontend/menu.o: CFLAGS += -include frontend/pandora/ui_feat.h
+frontend/libpicofe/linux/plat.o: CFLAGS += -DPANDORA
USE_PLUGIN_LIB = 1
USE_FRONTEND = 1
endif
maemo/%.o: maemo/%.c
USE_PLUGIN_LIB = 1
LDFLAGS += $(shell pkg-config --libs hildon-1 libpulse)
-EXTRA_CFLAGS += $(shell pkg-config --cflags hildon-1) -DHAVE_TSLIB
-#EXTRA_CFLAGS += -DMAEMO -DMAEMO_CHANGES -march=armv7-a -O3 -mtune=cortex-a8 -mfpu=neon -funsafe-math-optimizations \
-# -mstructure-size-boundary=32 -falign-functions=32 -falign-loops
-CFLAGS += $(EXTRA_CFLAGS)
+CFLAGS += $(shell pkg-config --cflags hildon-1) -DHAVE_TSLIB
CFLAGS += `pkg-config --cflags glib-2.0 libosso dbus-1 hildon-fm-2`
LDFLAGS += `pkg-config --libs glib-2.0 libosso dbus-1 hildon-fm-2`
endif
ifeq "$(PLATFORM)" "libretro"
OBJS += frontend/libretro.o
CFLAGS += -DFRONTEND_SUPPORTS_RGB565
+
+ifeq ($(MMAP_WIN32),1)
+OBJS += libpcsxcore/memmap_win32.o
+endif
endif
ifeq "$(USE_PLUGIN_LIB)" "1"
@rm $@_
%.o: %.S
- $(CC) $(CFLAGS) -c $^ -o $@
+ $(CC_AS) $(CFLAGS) -c $^ -o $@
target_: $(TARGET)
$(TARGET): $(OBJS)
- $(CC_LINK) -o $@ $^ $(LDFLAGS) $(LDLIBS) -Wl,-Map=$@.map
+ $(CC_LINK) -o $@ $^ $(LDFLAGS) $(LDLIBS) $(EXTRA_LDFLAGS)
clean: $(PLAT_CLEAN) clean_plugins
$(RM) $(TARGET) $(OBJS) $(TARGET).map frontend/revision.h
ifeq "$(PLATFORM)" "pandora"
PND_MAKE ?= $(HOME)/dev/pnd/src/pandora-libraries/testdata/scripts/pnd_make.sh
-rel: pcsx $(PLUGINS) \
+rel: pcsx plugins/dfsound/pcsxr_spu_area3.out $(PLUGINS) \
frontend/pandora/pcsx.sh frontend/pandora/pcsx.pxml.templ frontend/pandora/pcsx.png \
frontend/pandora/picorestore frontend/pandora/skin readme.txt COPYING
rm -rf out