7 INSTALLDIR := $(PREFIX)/lib/retroarch/filters/audio
11 ifeq ($(shell uname -s),)
13 else ifneq ($(findstring Darwin,$(shell uname -s)),)
16 ifeq ($(shell uname -p),powerpc)
19 else ifneq ($(findstring MINGW,$(shell uname -s)),)
24 ifeq ($(platform),gcc)
25 extra_rules_gcc := $(shell $(compiler) -dumpmachine)
28 ifneq (,$(findstring armv7,$(extra_rules_gcc)))
29 extra_flags += -mcpu=cortex-a9 -mtune=cortex-a9 -mfpu=neon
33 ifneq (,$(findstring hardfloat,$(extra_rules_gcc)))
34 extra_flags += -mfloat-abi=hard
37 ifeq (release,$(build))
45 ldflags := $(LDFLAGS) -shared -lm -Wl,--version-script=link.T
47 ifeq ($(platform), unix)
49 else ifeq ($(platform), osx)
52 ldflags := -dynamiclib
55 ifeq ($(shell uname -p),arm)
56 MINVERFLAGS = -mmacosx-version-min=10.15 -stdlib=libc++ # macOS (Metal, ARM 64bit)
57 else ifeq ($(HAVE_METAL),1)
58 MINVERFLAGS = -mmacosx-version-min=10.13 -stdlib=libc++ # macOS (Metal, x86 64bit)
59 else ifeq ($(shell uname -p),powerpc)
60 MINVERFLAGS = -mmacosx-version-min=10.5 # macOSX (PowerPC 32-bit)
61 else ifeq ($(shell uname -m),i386)
62 MINVERFLAGS = -mmacosx-version-min=10.6 # macOSX (OpenGL, x86 32bit)
64 MINVERFLAGS = -mmacosx-version-min=10.7 -stdlib=libc++ # macOSX (OpenGL, x86 64bit)
67 # Build for a specific architecture when ARCH is defined as a switch
69 MINVERFLAGS = -mmacosx-version-min=10.15 -stdlib=libc++ # macOS (Metal, ARM 64bit)
70 ARCHFLAGS = -arch arm64
71 else ifeq ($(ARCH),x86_64)
72 ifeq ($(HAVE_METAL),1)
73 MINVERFLAGS = -mmacosx-version-min=10.13 -stdlib=libc++
75 MINVERFLAGS = -mmacosx-version-min=10.7 -stdlib=libc++
77 ARCHFLAGS = -arch x86_64
78 else ifeq ($(ARCH),x86)
79 MINVERFLAGS = -mmacosx-version-min=10.6
81 else ifeq ($(ARCH),ppc)
82 MINVERFLAGS = -mmacosx-version-min=10.5
86 ARCHFLAGS = -target $(LIBRETRO_APPLE_PLATFORM) -isysroot $(LIBRETRO_APPLE_ISYSROOT)
88 extraflags += $(MINVERFLAGS) $(ARCHFLAGS)
89 ldflags += $(MINVERFLAGS) $(ARCHFLAGS)
91 extra_flags += -static-libgcc -static-libstdc++
95 CC := $(compiler) -Wall
96 CXX := $(subst CC,++,$(compiler)) -std=gnu++0x -Wall
97 flags := $(CPPFLAGS) $(CFLAGS) -fPIC $(extra_flags) -I../../include
98 asflags := $(ASFLAGS) -fPIC $(extra_flags)
102 ASMFLAGS := -INEON/asm
103 asflags += -mfpu=neon
106 plugs := $(wildcard *.c)
107 objects := $(plugs:.c=.o)
108 targets := $(objects:.o=.$(DYLIB))
113 $(CC) -c -o $@ $(asflags) $(ASMFLAGS) $<
116 $(CC) -c -o $@ $(flags) $<
119 $(CC) -o $@ $(ldflags) $(flags) $^
131 mkdir -p $(DESTDIR)$(INSTALLDIR)
132 cp -t $(DESTDIR)$(INSTALLDIR) $(targets) *.dsp
135 DESTDIR=/tmp/build $(MAKE) install