mirror of
https://github.com/DerKoun/bsnes-hd.git
synced 2024-06-01 02:48:08 -04:00
44 lines
2 KiB
Makefile
44 lines
2 KiB
Makefile
name := bsnes_hd_beta_libretro
|
|
local := false
|
|
openmp := true
|
|
flags += -Wno-narrowing -Wno-multichar -g -fPIC
|
|
|
|
ifeq ($(platform), ios-arm64)
|
|
flags += -fPIC -miphoneos-version-min=11.0 -Wno-error=implicit-function-declaration -DHAVE_POSIX_MEMALIGN
|
|
options += -dynamiclib
|
|
else ifeq ($(platform), tvos-arm64)
|
|
flags += -fPIC -mtvos-version-min=11.0 -Wno-error=implicit-function-declaration -DHAVE_POSIX_MEMALIGN
|
|
options += -dynamiclib
|
|
else ifeq ($(platform), libnx)
|
|
flags += -march=armv8-a+crc -mtune=cortex-a57 -mtp=soft -mcpu=cortex-a57+crc+fp+simd -DHAVE_POSIX_MEMALIGN
|
|
flags += -O2 -ftree-vectorize -ffast-math -funsafe-math-optimizations -fPIE -I$(PORTLIBS)/include/ -I$(LIBNX)/include/ -ffunction-sections -fdata-sections -ftls-model=local-exec
|
|
flags += -D__SWITCH__=1 -D__aarch64__=1 -DSWITCH -DHAVE_LIBNX
|
|
name = $(name)_libnx
|
|
endif
|
|
|
|
objects := libretro $(objects)
|
|
objects := $(patsubst %,obj/%.o,$(objects))
|
|
|
|
obj/libretro.o: target-libretro/libretro.cpp
|
|
|
|
all: $(objects)
|
|
ifeq ($(platform),linux)
|
|
$(strip $(compiler) -o out/$(name).so -shared $(objects) -Wl,--no-undefined -Wl,--version-script=target-libretro/link.T -lgomp -Wl,-Bdynamic $(options))
|
|
else ifeq ($(platform),windows)
|
|
$(strip $(compiler) -o out/$(name).dll -shared $(objects) -Wl,--no-undefined -Wl,--version-script=target-libretro/link.T -lgomp -Wl,-Bdynamic $(options))
|
|
else ifeq ($(platform),libnx)
|
|
$(strip $(AR) rcs out/$(name).a $(objects))
|
|
else ifeq ($(platform),macos)
|
|
$(strip $(compiler) -o out/$(name).dylib -shared $(objects) $(options))
|
|
else ifeq ($(platform), ios-arm64)
|
|
ifeq ($(IOSSDK),)
|
|
IOSSDK := $(shell xcodebuild -version -sdk iphoneos Path)
|
|
endif
|
|
$(strip c++ -arch arm64 -marm -miphoneos-version-min=11.0 -isysroot $(IOSSDK) -o out/$(name)_ios.dylib -shared $(objects) -lpthread -ldl)
|
|
else ifeq ($(platform), tvos-arm64)
|
|
ifeq ($(IOSSDK),)
|
|
IOSSDK := $(shell xcodebuild -version -sdk appletvos Path)
|
|
endif
|
|
$(strip c++ -arch arm64 -marm -mtvos-version-min=11.0 -isysroot $(IOSSDK) -o out/$(name)_tvos.dylib -shared $(objects) -lpthread -ldl)
|
|
endif
|