sdl.mk 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. #############################################################
  2. #
  3. # SDL
  4. #
  5. #############################################################
  6. SDL_VERSION:=1.2.13
  7. SDL_SOURCE:=SDL-$(SDL_VERSION).tar.gz
  8. SDL_SITE:=http://www.libsdl.org/release
  9. SDL_CAT:=$(ZCAT)
  10. SDL_DIR:=$(BUILD_DIR)/SDL-$(SDL_VERSION)
  11. SDL_EXTRA_CFLAGS = -I./include -D_GNU_SOURCE=1 -fvisibility=hidden -D_REENTRANT -D_REENTRANT -DHAVE_LINUX_VERSION_H
  12. ifeq ($(BR2_PACKAGE_SDL_FBCON),y)
  13. SDL_FBCON=--enable-video-fbcon=yes
  14. else
  15. SDL_FBCON=--enable-video-fbcon=no
  16. endif
  17. ifeq ($(BR2_PACKAGE_SDL_DIRECTFB),y)
  18. SDL_DEPENDENCIES += directfb
  19. SDL_DIRECTFB=--enable-video-directfb=yes
  20. SDL_DIRECTFB_TARGET:=$(STAGING_DIR)/include/directfb
  21. SDL_DIRECTFB_INCLUDES:=-I$(STAGING_DIR)/usr/include/directfb
  22. SDL_EXTRA_CFLAGS += $(SDL_DIRECTFB_INCLUDES)
  23. else
  24. SDL_DIRECTFB=--enable-video-directfb=no
  25. endif
  26. ifeq ($(BR2_PACKAGE_SDL_QTOPIA),y)
  27. SDL_QTOPIA=--enable-video-qtopia=yes
  28. SDL_DEPENDENCIES += qt
  29. else
  30. SDL_QTOPIA=--enable-video-qtopia=no
  31. endif
  32. ifeq ($(BR2_PACKAGE_SDL_X11),y)
  33. SDL_X11=--enable-video-x11=yes
  34. SDL_DEPENDENCIES += xserver_xorg-server
  35. else
  36. SDL_X11=--enable-video-x11=no
  37. endif
  38. ifeq ($(BR2_PACKAGE_TSLIB),y)
  39. SDL_DEPENDENCIES += tslib
  40. endif
  41. $(DL_DIR)/$(SDL_SOURCE):
  42. $(call DOWNLOAD,$(SDL_SITE),$(SDL_SOURCE))
  43. sdl-source: $(DL_DIR)/$(SDL_SOURCE)
  44. $(SDL_DIR)/.unpacked: $(DL_DIR)/$(SDL_SOURCE)
  45. $(SDL_CAT) $(DL_DIR)/$(SDL_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  46. toolchain/patch-kernel.sh $(SDL_DIR) package/sdl sdl-$(SDL_VERSION)\*.patch
  47. $(CONFIG_UPDATE) $(SDL_DIR)
  48. $(CONFIG_UPDATE) $(SDL_DIR)/build-scripts
  49. touch $@
  50. $(SDL_DIR)/.configured: $(SDL_DIR)/.unpacked
  51. (cd $(SDL_DIR); rm -rf config.cache; \
  52. $(TARGET_CONFIGURE_OPTS) \
  53. $(TARGET_CONFIGURE_ARGS) \
  54. ./configure $(QUIET) \
  55. --target=$(GNU_TARGET_NAME) \
  56. --host=$(GNU_TARGET_NAME) \
  57. --build=$(GNU_HOST_NAME) \
  58. --prefix=$(STAGING_DIR)/usr \
  59. --sysconfdir=/etc \
  60. --localstatedir=/var \
  61. --enable-pulseaudio=no \
  62. --disable-arts \
  63. --disable-esd \
  64. --disable-nasm \
  65. $(SDL_FBCON) \
  66. $(SDL_DIRECTFB) \
  67. $(SDL_QTOPIA) \
  68. $(SDL_X11) \
  69. )
  70. touch $@
  71. ifeq ($(BR2_PACKAGE_SDL_DIRECTFB),y)
  72. $(SDL_DIRECTFB_TARGET):
  73. mkdir -p $(STAGING_DIR)/include
  74. ln -s -f ../usr/include/directfb $(SDL_DIRECTFB_TARGET)
  75. endif
  76. $(SDL_DIR)/.compiled: $(SDL_DIR)/.configured $(SDL_DIRECTFB_TARGET)
  77. $(MAKE1) $(TARGET_CONFIGURE_OPTS) \
  78. EXTRA_CFLAGS="$(SDL_EXTRA_CFLAGS)" \
  79. LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
  80. DESTDIR=$(STAGING_DIR)/usr -C $(SDL_DIR)
  81. touch $@
  82. $(STAGING_DIR)/usr/lib/libSDL.so: $(SDL_DIR)/.compiled
  83. $(MAKE) -C $(SDL_DIR) install
  84. # use correct rpath for linking
  85. $(SED) 's^libdir=\$${exec_prefix}^libdir=/usr^' \
  86. $(STAGING_DIR)/usr/bin/sdl-config
  87. touch -c $@
  88. $(TARGET_DIR)/usr/lib/libSDL.so: $(STAGING_DIR)/usr/lib/libSDL.so
  89. cp -dpf $(STAGING_DIR)/usr/lib/libSDL*.so* $(TARGET_DIR)/usr/lib/
  90. -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libSDL.so
  91. SDL sdl: $(SDL_DEPENDENCIES) $(TARGET_DIR)/usr/lib/libSDL.so
  92. sdl-unpacked: $(SDL_DIR)/.unpacked
  93. sdl-clean:
  94. $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SDL_DIR) uninstall
  95. -$(MAKE) -C $(SDL_DIR) clean
  96. sdl-dirclean:
  97. rm -rf $(SDL_DIR)
  98. #############################################################
  99. #
  100. # Toplevel Makefile options
  101. #
  102. #############################################################
  103. ifeq ($(BR2_PACKAGE_SDL),y)
  104. TARGETS+=sdl
  105. endif