Add SDL_sound package
authorEvan Zelkowitz <evan.zelkowitz@gmail.com>
Sun, 20 Sep 2009 08:02:44 +0000 (10:02 +0200)
committerPeter Korsgaard <jacmet@sunsite.dk>
Sun, 20 Sep 2009 08:05:15 +0000 (10:05 +0200)
Closes #477

Peter: minor tweaks:
 - sdl_snd -> sdl_sound
 - cleaned up help text
 - don't transform binary name
 - add option to keep playsound/playsound_simple - Off by default
 - fix uninstall when BR2_HAVE_DEVFILES isn't enabled

Signed-off-by: Evan Zelkowitz <evan.zelkowitz@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
CHANGES
package/Config.in
package/sdl_sound/Config.in [new file with mode: 0644]
package/sdl_sound/sdl_sound.mk [new file with mode: 0644]

diff --git a/CHANGES b/CHANGES
index ac747d582a0f68fdd8e9aba42a0a64dbc793c404..daf0d4a67015b0b87fa09512227c24c5323a7ae8 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,11 +1,12 @@
 2009.11, Not yet released:
 
-       New packages: divine, libarchive
+       New packages: divine, libarchive, sdl_sound
 
        Updated/fixed packages: squashfs
 
        Issues resolved (http://bugs.uclibc.org):
 
+       #477: Add sdl_sound package
        #487: Make kismet package sexier
        #527: misc fixes for dnsmasq package
        #565: libevent: Bump version and clean up makefile
index 061838ba589ceb52e8d8057d2221f158570c9db5..619c9bd488d748fc93db96b4818ef8fe48cfe767 100644 (file)
@@ -309,6 +309,7 @@ source "package/sawman/Config.in"
 source "package/sdl/Config.in"
 source "package/sdl_image/Config.in"
 source "package/sdl_mixer/Config.in"
+source "package/sdl_sound/Config.in"
 source "package/sdl_net/Config.in"
 source "package/sdl_ttf/Config.in"
 source "package/sdl_gfx/Config.in"
diff --git a/package/sdl_sound/Config.in b/package/sdl_sound/Config.in
new file mode 100644 (file)
index 0000000..08ad754
--- /dev/null
@@ -0,0 +1,19 @@
+config BR2_PACKAGE_SDL_SOUND
+       bool "SDL_sound"
+       depends on BR2_PACKAGE_SDL
+       help
+         SDL_sound is a library that handles the decoding of several
+         popular sound file formats, such as .WAV and .MP3.
+         It is meant to make the programmer's sound playback tasks
+         simpler. The programmer gives SDL_sound a filename, or feeds
+         it data directly from one of many sources, and then reads the
+         decoded waveform data back at her leisure.
+
+         http://icculus.org/SDL_sound/
+
+config BR2_PACKAGE_SDL_SOUND_PLAYSOUND
+       bool "install playsound tool"
+       depends on BR2_PACKAGE_SDL_SOUND
+       help
+         Enable this option to install the playsound/playsound_simple
+         tools to target.
diff --git a/package/sdl_sound/sdl_sound.mk b/package/sdl_sound/sdl_sound.mk
new file mode 100644 (file)
index 0000000..1923257
--- /dev/null
@@ -0,0 +1,42 @@
+#############################################################
+#
+# sdl_sound addon for SDL
+#
+#############################################################
+SDL_SOUND_VERSION:=1.0.3
+SDL_SOUND_SOURCE:=SDL_sound-$(SDL_SOUND_VERSION).tar.gz
+SDL_SOUND_SITE:=http://icculus.org/SDL_sound/downloads/
+SDL_SOUND_LIBTOOL_PATCH:=NO
+SDL_SOUND_INSTALL_STAGING:=YES
+SDL_SOUND_INSTALL_TARGET:=YES
+
+SDL_SOUND_CONF_OPT:=--with-sdl-prefix=$(STAGING_DIR)/usr \
+               --with-sdl-exec-prefix=$(STAGING_DIR)/usr \
+               --disable-sdltest \
+               --enable-static \
+               --program-prefix=''
+
+# enable mmx for newer x86's
+ifeq ($(BR2_i386)$(BR2_x86_i386)$(BR2_x86_i486)$(BR2_x86_i586)$(BR2_x86_pentiumpro)$(BR2_x86_geode),y)
+SDL_SOUND_CONF_OPT += --enable-mmx
+else
+SDL_SOUND_CONF_OPT += --disable-mmx
+endif
+
+$(eval $(call AUTOTARGETS,package,sdl_sound))
+
+ifneq ($(BR2_PACKAGE_SDL_SOUND_PLAYSOUND),y)
+$(SDL_SOUND_HOOK_POST_INSTALL):
+       rm $(addprefix $(TARGET_DIR)/usr/bin/,playsound playsound_simple)
+       touch $@
+endif
+
+# target shared libs doesn't get removed by make uninstall if the .la files
+# are removed (E.G. if BR2_HAVE_DEVFILES isn't set)
+$(SDL_SOUND_TARGET_UNINSTALL):
+       $(call MESSAGE,"Uninstalling")
+       $(MAKE) DESTDIR=$(STAGING_DIR) uninstall -C $(@D)/$(SDL_SOUND_SUBDIR)
+       rm -f $(@D)/.stamp_staging_installed
+       $(MAKE) DESTDIR=$(TARGET_DIR) uninstall -C $(@D)/$(SDL_SOUND_SUBDIR)
+       rm -f $(TARGET_DIR)/usr/lib/libSDL_sound*so*
+       rm -f $(SDL_SOUND_TARGET_INSTALL_TARGET) $(SDL_SOUND_HOOK_POST_INSTALL)