PocketSNES.mk 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. ################################################################################
  2. #
  3. # PocketSNES
  4. #
  5. ################################################################################
  6. POCKETSNES_VERSION = PocketSNES-FunKey-1.2.2
  7. POCKETSNES_SITE_METHOD = git
  8. POCKETSNES_SITE = https://github.com/FunKey-Project/PocketSNES.git
  9. POCKETSNES_LICENSE = GPL-2.0
  10. POCKETSNES_LICENSE_FILES = COPYING
  11. POCKETSNES_DEPENDENCIES = sdl sdl_image sdl_mixer sdl_ttf zlib
  12. POCKETSNES_CFLAGS = $(TARGET_CFLAGS) $(subst $\",,$(BR2_TARGET_OPTIMIZATION)) -mfloat-abi=hard -ffast-math -funsafe-math-optimizations
  13. POCKETSNES_SDL_CFLAGS += $(shell $(STAGING_DIR)/usr/bin/sdl-config --cflags)
  14. POCKETSNES_SDL_LIBS += $(shell $(STAGING_DIR)/usr/bin/sdl-config --libs)
  15. POCKETSNES_INCLUDE = -I pocketsnes \
  16. -I sal/linux/include -I sal/include \
  17. -I pocketsnes/include \
  18. -I menu -I pocketsnes/linux -I pocketsnes/snes9x
  19. POCKETSNES_CFLAGS += -ggdb -O3
  20. POCKETSNES_CFLAGS += -fomit-frame-pointer -fomit-frame-pointer -fexpensive-optimizations
  21. POCKETSNES_CFLAGS += $(POCKETSNES_INCLUDE)
  22. POCKETSNES_CFLAGS += $(POCKETSNES_SDL_CFLAGS)
  23. POCKETSNES_CFLAGS += -DRC_OPTIMIZED -D__LINUX__ -D__DINGUX__ -DNO_ROM_BROWSER -DGCW_ZERO
  24. POCKETSNES_CXXFLAGS += $(POCKETSNES_INCLUDE)
  25. POCKETSNES_CXXFLAGS += -fno-exceptions -fno-rtti
  26. POCKETSNES_LDFLAGS += -s -fprofile-generate -fprofile-dir=/home/retrofw/profile/pocket_snes \
  27. -fno-strict-aliasing
  28. POCKETSNES_LDFLAGS += $(POCKETSNES_SDL_LIBS)
  29. POCKETSNES_LDFLAGS += -lgcc -lpthread -lSDL_image -lSDL_ttf -lpng -lm -lz
  30. define POCKETSNES_BUILD_CMDS
  31. (cd $(@D); \
  32. make \
  33. CFLAGS='$(POCKETSNES_CFLAGS)' \
  34. CXXFLAGS='$(POCKETSNES_CXXFLAGS)' \
  35. LDFLAGS='$(POCKETSNES_LDFLAGS)' \
  36. CC='$(TARGET_CC)' \
  37. CXX='$(TARGET_CXX)' \
  38. )
  39. endef
  40. define POCKETSNES_INSTALL_TARGET_CMDS
  41. $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/games
  42. $(INSTALL) -m 0755 $(@D)/psnes $(TARGET_DIR)/usr/games/psnes
  43. endef
  44. define POCKETSNES_CREATE_OPK
  45. $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/local/share/OPKs/Emulators
  46. $(HOST_DIR)/usr/bin/mksquashfs $(POCKETSNES_PKGDIR)/opk/snes $(TARGET_DIR)/usr/local/share/OPKs/Emulators/snes_pocketsnes_funkey-s.opk -all-root -noappend -no-exports -no-xattrs
  47. endef
  48. POCKETSNES_POST_INSTALL_TARGET_HOOKS += POCKETSNES_CREATE_OPK
  49. $(eval $(generic-package))