X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=Makefile;h=3f4b87df9f7ca0fe1a2eb9c82a182ed95ce83430;hp=5b2bef7c0067f1ddc470f0c2da43d16aa0cb3e20;hb=be516ebe45e48044b599e9d9f9f2d296c3f3ee62;hpb=7010034e5499a82f96f9fb45e7be31789a3f63b9 diff --git a/Makefile b/Makefile index 5b2bef7c..3f4b87df 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,8 @@ # 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 @@ -13,6 +12,7 @@ CXXFLAGS += $(CFLAGS) all: config.mak target_ plugins_ +ifndef NO_CONFIG_MAK ifneq ($(wildcard config.mak),) config.mak: ./configure @echo $@ is out-of-date, running configure @@ -23,17 +23,23 @@ config.mak: @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 endif # core -OBJS += libpcsxcore/cdriso.o libpcsxcore/cdrom.o libpcsxcore/cheat.o libpcsxcore/debug.o \ +OBJS += libpcsxcore/cdriso.o libpcsxcore/cdrom.o libpcsxcore/cheat.o libpcsxcore/database.o libpcsxcore/debug.o \ libpcsxcore/decode_xa.o libpcsxcore/disr3000a.o libpcsxcore/mdec.o \ libpcsxcore/misc.o libpcsxcore/plugins.o libpcsxcore/ppf.o libpcsxcore/psxbios.o \ libpcsxcore/psxcommon.o libpcsxcore/psxcounters.o libpcsxcore/psxdma.o libpcsxcore/psxhle.o \ @@ -50,15 +56,21 @@ libpcsxcore/psxbios.o: CFLAGS += -Wno-nonnull # dynarec ifeq "$(USE_DYNAREC)" "1" -OBJS += libpcsxcore/new_dynarec/new_dynarec.o libpcsxcore/new_dynarec/linkage_arm.o +OBJS += libpcsxcore/new_dynarec/new_dynarec.o OBJS += libpcsxcore/new_dynarec/pcsxmem.o + ifeq "$(ARCH)" "arm" + OBJS += libpcsxcore/new_dynarec/linkage_arm.o + else ifeq "$(ARCH)" "aarch64" + OBJS += libpcsxcore/new_dynarec/linkage_arm64.o + else + $(error no dynarec support for architecture $(ARCH)) + endif else -libpcsxcore/new_dynarec/emu_if.o: CFLAGS += -DDRC_DISABLE +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 @@ -76,6 +88,11 @@ plugins/dfsound/spu.o: plugins/dfsound/adsr.c plugins/dfsound/reverb.c \ 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 @@ -119,8 +136,27 @@ plugins/gpu_unai/gpulib_if.o: CFLAGS += -DREARMED -O3 CC_LINK = $(CXX) endif +ifeq "$(BUILTIN_GPU)" "senquack" +OBJS += plugins/gpu_senquack/gpulib_if.o +ifeq "$(ARCH)" "arm" +OBJS += plugins/gpu_senquack/gpu_arm.o +endif +plugins/gpu_senquack/gpulib_if.o: CFLAGS += -DREARMED -O3 +CC_LINK = $(CXX) +endif + # cdrcimg OBJS += plugins/cdrcimg/cdrcimg.o +ifeq "$(CHD_SUPPORT)" "1" +OBJS += libchdr/src/libchdr_bitstream.o +OBJS += libchdr/src/libchdr_cdrom.o +OBJS += libchdr/src/libchdr_chd.o +OBJS += libchdr/src/libchdr_flac.o +OBJS += libchdr/src/libchdr_huffman.o +OBJS += libchdr/deps/lzma-19.00/src/Alloc.o libchdr/deps/lzma-19.00/src/Bra86.o libchdr/deps/lzma-19.00/src/BraIA64.o libchdr/deps/lzma-19.00/src/CpuArch.o libchdr/deps/lzma-19.00/src/Delta.o +OBJS += libchdr/deps/lzma-19.00/src/LzFind.o libchdr/deps/lzma-19.00/src/Lzma86Dec.o libchdr/deps/lzma-19.00/src/LzmaDec.o libchdr/deps/lzma-19.00/src/LzmaEnc.o libchdr/deps/lzma-19.00/src/Sort.o +CFLAGS += -DHAVE_CHD -D_7ZIP_ST -Ilibchdr/include/libchdr -Ilibchdr/include/dr_libs -Ilibchdr/include -Ilibchdr/deps/lzma-19.00/include +endif # dfinput OBJS += plugins/dfinput/main.o plugins/dfinput/pad.o plugins/dfinput/guncon.o @@ -158,6 +194,7 @@ OBJS += frontend/libpicofe/linux/fbdev.o frontend/libpicofe/linux/xenv.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 @@ -182,12 +219,17 @@ 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" OBJS += frontend/plugin_lib.o OBJS += frontend/libpicofe/linux/plat.o OBJS += frontend/libpicofe/readpng.o frontend/libpicofe/fonts.o +frontend/libpicofe/linux/plat.o: CFLAGS += -DNO_HOME_DIR ifeq "$(HAVE_NEON)" "1" OBJS += frontend/libpicofe/arm/neon_scale2x.o OBJS += frontend/libpicofe/arm/neon_eagle2x.o @@ -228,13 +270,13 @@ frontend/revision.h: FORCE @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 @@ -256,6 +298,12 @@ endif .PHONY: all clean target_ plugins_ clean_plugins FORCE +ifneq "$(PLATFORM)" "pandora" +ifdef CPATH +$(warning warning: CPATH is defined) +endif +endif + # ----------- release ----------- VER ?= $(shell git describe HEAD) @@ -276,7 +324,7 @@ endif 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