From a525d61e64bcff3595f3ab8d59a7938ae38cabab Mon Sep 17 00:00:00 2001 From: Michel-FK Date: Mon, 25 May 2020 08:03:43 +0200 Subject: [PATCH] Added package FCEUX --- FunKey/Config.in | 1 + FunKey/package/FCEUX/Config.in | 14 +++++++ FunKey/package/FCEUX/FCEUX.mk | 69 ++++++++++++++++++++++++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 FunKey/package/FCEUX/Config.in create mode 100644 FunKey/package/FCEUX/FCEUX.mk diff --git a/FunKey/Config.in b/FunKey/Config.in index d6f3e6f..9741b4d 100644 --- a/FunKey/Config.in +++ b/FunKey/Config.in @@ -2,3 +2,4 @@ source "$BR2_EXTERNAL_FUNKEY_PATH/package/mednafen/Config.in" source "$BR2_EXTERNAL_FUNKEY_PATH/package/FunKey-GPIO-Mapping/Config.in" source "$BR2_EXTERNAL_FUNKEY_PATH/package/retrofe/Config.in" source "$BR2_EXTERNAL_FUNKEY_PATH/package/PCSX-ReARMed/Config.in" +source "$BR2_EXTERNAL_FUNKEY_PATH/package/FCEUX/Config.in" diff --git a/FunKey/package/FCEUX/Config.in b/FunKey/package/FCEUX/Config.in new file mode 100644 index 0000000..51619de --- /dev/null +++ b/FunKey/package/FCEUX/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_FCEUX + bool "FCEUX" + default y + select BR2_PACKAGE_SDL + select BR2_PACKAGE_SDL_IMAGE + select BR2_PACKAGE_SDL_MIXER + select BR2_PACKAGE_SDL_TTF + select BR2_PACKAGE_ZLIB + help + An open source NES Emulator for Windows and Unix that + features solid emulation accuracy and state of the art tools + for power users. For some reason casual gamers use it too. + + http://fceux.com/ diff --git a/FunKey/package/FCEUX/FCEUX.mk b/FunKey/package/FCEUX/FCEUX.mk new file mode 100644 index 0000000..a3d3eeb --- /dev/null +++ b/FunKey/package/FCEUX/FCEUX.mk @@ -0,0 +1,69 @@ +################################################################################ +# +# FCEUX +# +################################################################################ + +FCEUX_VERSION = 54a355ba067fd14ed3084ae75b8a4030c4cea680 +FCEUX_SITE_METHOD = git +FCEUX_SITE = ssh://git@fk/FunKey-Project/FunKey-Emulator-FCEUX +FCEUX_LICENSE = GPL-2.0 +FCEUX_LICENSE_FILES = COPYING + +FCEUX_DEPENDENCIES = sdl sdl_image sdl_mixer sdl_ttf zlib + +FCEUX_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_ARM_CPU_ARMV7A),y) +FCEUX_CFLAGS += -march=armv7-a +endif + +ifeq ($(BR2_GCC_TARGET_CPU),"cortex-a7") +FCEUX_CFLAGS += -mtune=cortex-a7 +endif + +ifeq ($(BR2_GCC_TARGET_FLOAT_ABI),"hard") +FCEUX_CFLAGS += -mfloat-abi=hard -ffast-math -funsafe-math-optimizations +else ifeq ($(BR2_GCC_TARGET_FLOAT_ABI),"soft") +FCEUX_CFLAGS += -mfloat-abi=soft -ffast-math -funsafe-math-optimizations +endif + +ifeq ($(BR2_ARM_CPU_HAS_NEON),y) +FCEUX_CFLAGS += -D__ARM_NEON__ -mfpu=neon -mvectorize-with-neon-quad +endif + +FCEUX_CFLAGS += -ggdb -O3 +FCEUX_CFLAGS += -Wno-write-strings -Wno-sign-compare +FCEUX_CFLAGS += -fomit-frame-pointer -fno-builtin -fno-common +FCEUX_CFLAGS += $(shell $(STAGING_DIR)/usr/bin/sdl-config --cflags) +FCEUX_CFLAGS += -DDINGUX \ + -DLSB_FIRST \ + -DPSS_STYLE=1 \ + -DHAVE_ASPRINTF \ + -DFRAMESKIP + +FCEUX_LDFLAGS += $(FCEUX_CFLAGS) \ + -s -fprofile-generate -fprofile-dir=/home/retrofw/profile/fceux \ + -fno-strict-aliasing + +FCEUX_LIBS += $(shell $(STAGING_DIR)/usr/bin/sdl-config --libs) +FCEUX_LIBS += -lSDL -lSDL_image -lSDL_ttf -lpng -lm -lz + +define FCEUX_BUILD_CMDS + (cd $(@D); \ + make \ + CFLAGS='$(FCEUX_CFLAGS)' \ + LDFLAGS='$(FCEUX_LDFLAGS)' \ + LIBS='$(FCEUX_LIBS)' \ + CROSS_COMPILE=$(TARGET_CROSS) \ + CHAINPREFIX='$(STAGING_DIR)/usr' \ + ) +endef + +define FCEUX_INSTALL_TARGET_CMDS + $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/games + $(INSTALL) -m 0755 $(@D)/fceux/fceux $(TARGET_DIR)/usr/games/fceux +endef + + +$(eval $(generic-package))