diff options
author | 2012-11-13 22:11:28 +0000 | |
---|---|---|
committer | 2012-11-13 22:11:28 +0000 | |
commit | 91aec36d4927bc5df974a08905c43359663790f0 (patch) | |
tree | edd5aea046d323858cb0eb75e98be3f73f0d2c47 /app-emulation/free42 | |
parent | stable arm, bug #441306 (diff) | |
download | gentoo-2-91aec36d4927bc5df974a08905c43359663790f0.tar.gz gentoo-2-91aec36d4927bc5df974a08905c43359663790f0.tar.bz2 gentoo-2-91aec36d4927bc5df974a08905c43359663790f0.zip |
Fix QA warnings in alsa code and main program.
(Portage version: 2.1.11.31/cvs/Linux x86_64, signed Manifest commit with key D628E536)
Diffstat (limited to 'app-emulation/free42')
-rw-r--r-- | app-emulation/free42/ChangeLog | 6 | ||||
-rw-r--r-- | app-emulation/free42/files/free42-1.4.75-fix-alsa.patch | 180 | ||||
-rw-r--r-- | app-emulation/free42/free42-1.4.75.ebuild | 4 |
3 files changed, 186 insertions, 4 deletions
diff --git a/app-emulation/free42/ChangeLog b/app-emulation/free42/ChangeLog index 542a2a0ea840..566f86c787ee 100644 --- a/app-emulation/free42/ChangeLog +++ b/app-emulation/free42/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for app-emulation/free42 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/free42/ChangeLog,v 1.7 2012/11/11 19:32:07 nimiux Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/free42/ChangeLog,v 1.8 2012/11/13 22:11:27 nimiux Exp $ + + 13 Nov 2012; Chema Alonso <nimiux@gentoo.org> free42-1.4.75.ebuild, + files/free42-1.4.75-fix-alsa.patch: + Fix strict-alias warnings in alsa code. Fix array length. *free42-1.4.75 (11 Nov 2012) diff --git a/app-emulation/free42/files/free42-1.4.75-fix-alsa.patch b/app-emulation/free42/files/free42-1.4.75-fix-alsa.patch index bbcb24907e0a..0994d083d628 100644 --- a/app-emulation/free42/files/free42-1.4.75-fix-alsa.patch +++ b/app-emulation/free42/files/free42-1.4.75-fix-alsa.patch @@ -1,7 +1,7 @@ diff -Nur a/gtk/audio_alsa.cc b/gtk/audio_alsa.cc --- a/gtk/audio_alsa.cc 2012-10-27 21:14:48.000000000 +0200 -+++ b/gtk/audio_alsa.cc 2012-11-11 20:26:28.779917284 +0100 -@@ -23,6 +23,7 @@ ++++ b/gtk/audio_alsa.cc 2012-11-13 22:11:41.489906248 +0100 +@@ -23,39 +23,94 @@ #include <sys/time.h> #include <pthread.h> #include <dlfcn.h> @@ -9,3 +9,179 @@ diff -Nur a/gtk/audio_alsa.cc b/gtk/audio_alsa.cc // We want to be able to run even if libasound is not present, so we have to // link it manually using dlopen() and dlsym(). These are the functions we are + // going to need; the pointer names are the same as the actual function names + // in libasound, with _dl_ prefixed. + static int libasound_state = 0; // 0=closed, 1=open, 2=missing +-static int (*_dl_snd_pcm_close)(snd_pcm_t *pcm); +-static int (*_dl_snd_pcm_format_big_endian)(snd_pcm_format_t format); +-static int (*_dl_snd_pcm_format_physical_width)(snd_pcm_format_t format); +-static int (*_dl_snd_pcm_format_unsigned)(snd_pcm_format_t format); +-static int (*_dl_snd_pcm_format_width)(snd_pcm_format_t format); +-static int (*_dl_snd_pcm_hw_params)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params); +-static int (*_dl_snd_pcm_hw_params_malloc)(snd_pcm_hw_params_t **ptr); +-static void (*_dl_snd_pcm_hw_params_free)(snd_pcm_hw_params_t *obj); +-static int (*_dl_snd_pcm_hw_params_any)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params); +-static int (*_dl_snd_pcm_hw_params_get_buffer_size)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val); +-static int (*_dl_snd_pcm_hw_params_set_access)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t _access); +-static int (*_dl_snd_pcm_hw_params_set_buffer_size_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val); +-static int (*_dl_snd_pcm_hw_params_set_channels)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val); +-static int (*_dl_snd_pcm_hw_params_set_format)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t val); +-static int (*_dl_snd_pcm_hw_params_set_rate_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir); +-static int (*_dl_snd_pcm_open)(snd_pcm_t **pcm, const char *name, snd_pcm_stream_t stream, int mode); +-static int (*_dl_snd_pcm_prepare)(snd_pcm_t *pcm); +-static int (*_dl_snd_pcm_resume)(snd_pcm_t *pcm); +-static int (*_dl_snd_pcm_sw_params)(snd_pcm_t *pcm, snd_pcm_sw_params_t *params); +-static int (*_dl_snd_pcm_sw_params_malloc)(snd_pcm_sw_params_t **ptr); +-static void (*_dl_snd_pcm_sw_params_free)(snd_pcm_sw_params_t *obj); +-static int (*_dl_snd_pcm_sw_params_current)(snd_pcm_t *pcm, snd_pcm_sw_params_t *params); +-static int (*_dl_snd_pcm_sw_params_get_boundary)(const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val); +-static int (*_dl_snd_pcm_sw_params_set_silence_size)(snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val); +-static int (*_dl_snd_pcm_sw_params_set_silence_threshold)(snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val); +-static snd_pcm_sframes_t (*_dl_snd_pcm_writei)(snd_pcm_t *pcm, const void *buffer, snd_pcm_uframes_t size); +-static const char *(*_dl_snd_strerror)(int errnum); ++ ++typedef int (dyn_snd_pcm_close) (snd_pcm_t *pcm); ++dyn_snd_pcm_close * _dl_snd_pcm_close = NULL; ++ ++typedef int (dyn_snd_pcm_format_big_endian) (snd_pcm_format_t format); ++dyn_snd_pcm_format_big_endian * _dl_snd_pcm_format_big_endian = NULL; ++ ++typedef int (dyn_snd_pcm_format_physical_width) (snd_pcm_format_t format); ++dyn_snd_pcm_format_physical_width * _dl_snd_pcm_format_physical_width = NULL; ++ ++typedef int (dyn_snd_pcm_format_unsigned) (snd_pcm_format_t format); ++dyn_snd_pcm_format_unsigned * _dl_snd_pcm_format_unsigned = NULL; ++ ++typedef int (dyn_snd_pcm_format_width) (snd_pcm_format_t format); ++dyn_snd_pcm_format_width * _dl_snd_pcm_format_width = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params); ++dyn_snd_pcm_hw_params * _dl_snd_pcm_hw_params = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_malloc) (snd_pcm_hw_params_t **ptr); ++dyn_snd_pcm_hw_params_malloc * _dl_snd_pcm_hw_params_malloc = NULL; ++ ++typedef void (dyn_snd_pcm_hw_params_free) (snd_pcm_hw_params_t *obj); ++dyn_snd_pcm_hw_params_free * _dl_snd_pcm_hw_params_free = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_any) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params); ++dyn_snd_pcm_hw_params_any * _dl_snd_pcm_hw_params_any = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_get_buffer_size) (const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val); ++dyn_snd_pcm_hw_params_get_buffer_size * _dl_snd_pcm_hw_params_get_buffer_size = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_set_access) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t _access); ++dyn_snd_pcm_hw_params_set_access * _dl_snd_pcm_hw_params_set_access = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_set_buffer_size_near) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val); ++dyn_snd_pcm_hw_params_set_buffer_size_near * _dl_snd_pcm_hw_params_set_buffer_size_near = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_set_channels) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val); ++dyn_snd_pcm_hw_params_set_channels * _dl_snd_pcm_hw_params_set_channels = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_set_format) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t val); ++dyn_snd_pcm_hw_params_set_format * _dl_snd_pcm_hw_params_set_format = NULL; ++ ++typedef int (dyn_snd_pcm_hw_params_set_rate_near) (snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir); ++dyn_snd_pcm_hw_params_set_rate_near * _dl_snd_pcm_hw_params_set_rate_near = NULL; ++ ++typedef int (dyn_snd_pcm_open) (snd_pcm_t **pcm, const char *name, snd_pcm_stream_t stream, int mode); ++dyn_snd_pcm_open * _dl_snd_pcm_open = NULL; ++ ++typedef int (dyn_snd_pcm_prepare) (snd_pcm_t *pcm); ++dyn_snd_pcm_prepare * _dl_snd_pcm_prepare = NULL; ++ ++typedef int (dyn_snd_pcm_resume) (snd_pcm_t *pcm); ++dyn_snd_pcm_resume * _dl_snd_pcm_resume = NULL; ++ ++typedef int (dyn_snd_pcm_sw_params) (snd_pcm_t *pcm, snd_pcm_sw_params_t *params); ++dyn_snd_pcm_sw_params * _dl_snd_pcm_sw_params = NULL; ++ ++typedef int (dyn_snd_pcm_sw_params_malloc) (snd_pcm_sw_params_t **ptr); ++dyn_snd_pcm_sw_params_malloc * _dl_snd_pcm_sw_params_malloc = NULL; ++ ++typedef void (dyn_snd_pcm_sw_params_free) (snd_pcm_sw_params_t *obj); ++dyn_snd_pcm_sw_params_free * _dl_snd_pcm_sw_params_free = NULL; ++ ++typedef int (dyn_snd_pcm_sw_params_current) (snd_pcm_t *pcm, snd_pcm_sw_params_t *params); ++dyn_snd_pcm_sw_params_current * _dl_snd_pcm_sw_params_current = NULL; ++ ++typedef int (dyn_snd_pcm_sw_params_get_boundary) (const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val); ++dyn_snd_pcm_sw_params_get_boundary * _dl_snd_pcm_sw_params_get_boundary = NULL; ++ ++typedef int (dyn_snd_pcm_sw_params_set_silence_size) (snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val); ++dyn_snd_pcm_sw_params_set_silence_size * _dl_snd_pcm_sw_params_set_silence_size = NULL; ++ ++typedef int (dyn_snd_pcm_sw_params_set_silence_threshold) (snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val); ++dyn_snd_pcm_sw_params_set_silence_threshold * _dl_snd_pcm_sw_params_set_silence_threshold = NULL; ++ ++typedef snd_pcm_sframes_t (dyn_snd_pcm_writei) (snd_pcm_t *pcm, const void *buffer, snd_pcm_uframes_t size); ++dyn_snd_pcm_writei * _dl_snd_pcm_writei = NULL; ++ ++typedef const char * (dyn_snd_strerror) (int errnum); ++dyn_snd_strerror * _dl_snd_strerror = NULL; + + #define TDIFF(begin,end) (((double)(end.tv_sec - begin.tv_sec)*1000.0) + ((end.tv_usec - begin.tv_usec)/1000.0)) + +@@ -169,33 +224,34 @@ + fprintf(stderr, "Could not open " ALSALIB "\nusing gdk_beep() for BEEP and TONE.\n"); + return false; + } +- *((void **) &_dl_snd_pcm_close) = dlsym(lib, "snd_pcm_close"); +- *((void **) &_dl_snd_pcm_format_big_endian) = dlsym(lib, "snd_pcm_format_big_endian"); +- *((void **) &_dl_snd_pcm_format_physical_width) = dlsym(lib, "snd_pcm_format_physical_width"); +- *((void **) &_dl_snd_pcm_format_unsigned) = dlsym(lib, "snd_pcm_format_unsigned"); +- *((void **) &_dl_snd_pcm_format_width) = dlsym(lib, "snd_pcm_format_width"); +- *((void **) &_dl_snd_pcm_hw_params) = dlsym(lib, "snd_pcm_hw_params"); +- *((void **) &_dl_snd_pcm_hw_params_malloc) = dlsym(lib, "snd_pcm_hw_params_malloc"); +- *((void **) &_dl_snd_pcm_hw_params_free) = dlsym(lib, "snd_pcm_hw_params_free"); +- *((void **) &_dl_snd_pcm_hw_params_any) = dlsym(lib, "snd_pcm_hw_params_any"); +- *((void **) &_dl_snd_pcm_hw_params_get_buffer_size) = dlsym(lib, "snd_pcm_hw_params_get_buffer_size"); +- *((void **) &_dl_snd_pcm_hw_params_set_access) = dlsym(lib, "snd_pcm_hw_params_set_access"); +- *((void **) &_dl_snd_pcm_hw_params_set_buffer_size_near) = dlsym(lib, "snd_pcm_hw_params_set_buffer_size_near"); +- *((void **) &_dl_snd_pcm_hw_params_set_channels) = dlsym(lib, "snd_pcm_hw_params_set_channels"); +- *((void **) &_dl_snd_pcm_hw_params_set_format) = dlsym(lib, "snd_pcm_hw_params_set_format"); +- *((void **) &_dl_snd_pcm_hw_params_set_rate_near) = dlsym(lib, "snd_pcm_hw_params_set_rate_near"); +- *((void **) &_dl_snd_pcm_open) = dlsym(lib, "snd_pcm_open"); +- *((void **) &_dl_snd_pcm_prepare) = dlsym(lib, "snd_pcm_prepare"); +- *((void **) &_dl_snd_pcm_resume) = dlsym(lib, "snd_pcm_resume"); +- *((void **) &_dl_snd_pcm_sw_params) = dlsym(lib, "snd_pcm_sw_params"); +- *((void **) &_dl_snd_pcm_sw_params_malloc) = dlsym(lib, "snd_pcm_sw_params_malloc"); +- *((void **) &_dl_snd_pcm_sw_params_free) = dlsym(lib, "snd_pcm_sw_params_free"); +- *((void **) &_dl_snd_pcm_sw_params_current) = dlsym(lib, "snd_pcm_sw_params_current"); +- *((void **) &_dl_snd_pcm_sw_params_get_boundary) = dlsym(lib, "snd_pcm_sw_params_get_boundary"); +- *((void **) &_dl_snd_pcm_sw_params_set_silence_size) = dlsym(lib, "snd_pcm_sw_params_set_silence_size"); +- *((void **) &_dl_snd_pcm_sw_params_set_silence_threshold) = dlsym(lib, "snd_pcm_sw_params_set_silence_threshold"); +- *((void **) &_dl_snd_pcm_writei) = dlsym(lib, "snd_pcm_writei"); +- *((void **) &_dl_snd_strerror) = dlsym(lib, "snd_strerror"); ++ _dl_snd_pcm_close = (dyn_snd_pcm_close *) dlsym(lib, "snd_pcm_close"); ++ _dl_snd_pcm_format_big_endian = (dyn_snd_pcm_format_big_endian *) dlsym(lib, "snd_pcm_format_big_endian"); ++ _dl_snd_pcm_format_physical_width = (dyn_snd_pcm_format_physical_width *) dlsym(lib, "snd_pcm_format_physical_width"); ++ _dl_snd_pcm_format_unsigned = (dyn_snd_pcm_format_unsigned *) dlsym(lib, "snd_pcm_format_unsigned"); ++ _dl_snd_pcm_format_width = (dyn_snd_pcm_format_width *) dlsym(lib, "snd_pcm_format_width"); ++ _dl_snd_pcm_hw_params = (dyn_snd_pcm_hw_params *) dlsym(lib, "snd_pcm_hw_params"); ++ _dl_snd_pcm_hw_params_malloc = (dyn_snd_pcm_hw_params_malloc *) dlsym(lib, "snd_pcm_hw_params_malloc"); ++ _dl_snd_pcm_hw_params_free = (dyn_snd_pcm_hw_params_free *) dlsym(lib, "snd_pcm_hw_params_free"); ++ _dl_snd_pcm_hw_params_any = (dyn_snd_pcm_hw_params_any *) dlsym(lib, "snd_pcm_hw_params_any"); ++ _dl_snd_pcm_hw_params_get_buffer_size = (dyn_snd_pcm_hw_params_get_buffer_size *) dlsym(lib, "snd_pcm_hw_params_get_buffer_size"); ++ _dl_snd_pcm_hw_params_set_access = (dyn_snd_pcm_hw_params_set_access *) dlsym(lib, "snd_pcm_hw_params_set_access"); ++ _dl_snd_pcm_hw_params_set_buffer_size_near = (dyn_snd_pcm_hw_params_set_buffer_size_near *) dlsym(lib, "snd_pcm_hw_params_set_buffer_size_near"); ++ _dl_snd_pcm_hw_params_set_channels = (dyn_snd_pcm_hw_params_set_channels *) dlsym(lib, "snd_pcm_hw_params_set_channels"); ++ _dl_snd_pcm_hw_params_set_format = (dyn_snd_pcm_hw_params_set_format *) dlsym(lib, "snd_pcm_hw_params_set_format"); ++ _dl_snd_pcm_hw_params_set_rate_near = (dyn_snd_pcm_hw_params_set_rate_near *) dlsym(lib, "snd_pcm_hw_params_set_rate_near"); ++ _dl_snd_pcm_open = (dyn_snd_pcm_open *) dlsym(lib, "snd_pcm_open"); ++ _dl_snd_pcm_prepare = (dyn_snd_pcm_prepare *) dlsym(lib, "snd_pcm_prepare"); ++ _dl_snd_pcm_resume = (dyn_snd_pcm_resume *) dlsym(lib, "snd_pcm_resume"); ++ _dl_snd_pcm_sw_params = (dyn_snd_pcm_sw_params *) dlsym(lib, "snd_pcm_sw_params"); ++ _dl_snd_pcm_sw_params_malloc = (dyn_snd_pcm_sw_params_malloc *) dlsym(lib, "snd_pcm_sw_params_malloc"); ++ _dl_snd_pcm_sw_params_free = (dyn_snd_pcm_sw_params_free *) dlsym(lib, "snd_pcm_sw_params_free"); ++ _dl_snd_pcm_sw_params_current = (dyn_snd_pcm_sw_params_current *) dlsym(lib, "snd_pcm_sw_params_current"); ++ _dl_snd_pcm_sw_params_get_boundary = (dyn_snd_pcm_sw_params_get_boundary *) dlsym(lib, "snd_pcm_sw_params_get_boundary"); ++ _dl_snd_pcm_sw_params_set_silence_size = (dyn_snd_pcm_sw_params_set_silence_size *) dlsym(lib, "snd_pcm_sw_params_set_silence_size"); ++ _dl_snd_pcm_sw_params_set_silence_threshold = (dyn_snd_pcm_sw_params_set_silence_threshold *) dlsym(lib, "snd_pcm_sw_params_set_silence_threshold"); ++ _dl_snd_pcm_writei = (dyn_snd_pcm_writei *) dlsym(lib, "snd_pcm_writei"); ++ _dl_snd_strerror = (dyn_snd_strerror *) dlsym(lib, "snd_strerror"); ++ + if (dlerror() == NULL) + return true; + fprintf(stderr, "Could not load all required symbols from " ALSALIB "\nusing gdk_beep() for BEEP and TONE.\n"); diff --git a/app-emulation/free42/free42-1.4.75.ebuild b/app-emulation/free42/free42-1.4.75.ebuild index 00fef4cd8692..d8c6dbdc0efc 100644 --- a/app-emulation/free42/free42-1.4.75.ebuild +++ b/app-emulation/free42/free42-1.4.75.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/free42/free42-1.4.75.ebuild,v 1.1 2012/11/11 19:32:05 nimiux Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/free42/free42-1.4.75.ebuild,v 1.2 2012/11/13 22:11:27 nimiux Exp $ EAPI=4 @@ -32,6 +32,8 @@ src_prepare() { sed -i -e '/^LDFLAGS =/{s/=/:=/;s/$/ \$\{LDFLAGS\}/}' \ "${S}/gtk/Makefile" || die sed -i -e '/^LDFLAGS +=/d' "${S}/gtk/Makefile" || die + sed -i -e 's/print_gif_name\[FILENAMELEN\]/print_gif_name\[1000\]/' \ + "${S}/gtk/shell_main.cc" || die epatch "${FILESDIR}"/${P}-fix-alsa.patch } |