sdl.mk 3.1 KB

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