diff options
author | Timo Teräs <timo.teras@iki.fi> | 2013-10-06 22:04:03 +0300 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2013-10-06 22:05:34 +0300 |
commit | 2ccffc3df0fe8ec17356941d1aca1c0a9c3ba3b0 (patch) | |
tree | b498a3c0286f1f6dd10a1257707be39f65771841 | |
parent | 8d05ecc84f58e4f5e9b34062fcda4ad35ed58a24 (diff) | |
download | aports-2ccffc3df0fe8ec17356941d1aca1c0a9c3ba3b0.tar.bz2 aports-2ccffc3df0fe8ec17356941d1aca1c0a9c3ba3b0.tar.xz |
main/vlc: fix networking and screen saver disabling
uclibc defines AI_IDN, but does not support it, so don't try using it.
and now that our uclibc has posix_spawn don't patch the calls out,
we really need to spawn out the processes.
-rw-r--r-- | main/vlc/APKBUILD | 16 | ||||
-rw-r--r-- | main/vlc/uclibc-fix-idn.patch | 13 | ||||
-rw-r--r-- | main/vlc/uclibc-inhibit-spawn.patch | 133 |
3 files changed, 21 insertions, 141 deletions
diff --git a/main/vlc/APKBUILD b/main/vlc/APKBUILD index 19eeaec6b4..3ac15a9bde 100644 --- a/main/vlc/APKBUILD +++ b/main/vlc/APKBUILD @@ -71,8 +71,8 @@ makedepends=" " source="http://download.videolan.org/pub/videolan/$pkgname/${_ver}/$pkgname-$_pkgver.tar.xz vlc.trigger - uclibc-inhibit-spawn.patch - uclibc-define-fminf.patch" + uclibc-define-fminf.patch + uclibc-fix-idn.patch" _builddir="$srcdir"/$pkgname-$_ver prepare() { @@ -224,13 +224,13 @@ daemon() { md5sums="8c77bda671821f5b9ede96b6816e2ade vlc-2.1.0.tar.xz 350b30698eb784def7d19446eb1d6c81 vlc.trigger -aa338f067d054887c3834a70686fb3f2 uclibc-inhibit-spawn.patch -34bacc70c150bdbe19476d84a76f2849 uclibc-define-fminf.patch" +34bacc70c150bdbe19476d84a76f2849 uclibc-define-fminf.patch +a57ecdeb28b93c2ac0ade2adff2da2b4 uclibc-fix-idn.patch" sha256sums="d2177daa31786acf1e961b2f63429797a8c62c090e5359bcc7929a1ba5fe41f7 vlc-2.1.0.tar.xz 0639c022dc844fad95eb0246b1d24557641939bbda91af0c700374378d8f054a vlc.trigger -c56d36afe86733715bdf48d9236dd6f807744a0f80ae01391f24d51ab02abfde uclibc-inhibit-spawn.patch -b16801cca70c0f13830a27146025cc55b947897744d9da1ab713c5f5ce0460a0 uclibc-define-fminf.patch" +b16801cca70c0f13830a27146025cc55b947897744d9da1ab713c5f5ce0460a0 uclibc-define-fminf.patch +8e15a1c29fed29eeafef4dd37c73cc0da578b40d9d94713ac12a69c101040901 uclibc-fix-idn.patch" sha512sums="abf397e1382289d579fec3dc540885c45ba055f158f7c248c5de27a7c50dac5a4c317145c4a786ed3819a9199fc304fa8f43ccde8c33c2938d40c805e7e9b124 vlc-2.1.0.tar.xz a081dd93248b63724ffb65cde0a00db0e1f3b9a1d47074800d898e39dc71c074b3dd3fa18e5fbc45fa90376e7df6d7ef8689c4253c1d9405868a3f8bbd76adcc vlc.trigger -7f285dd070d4998f0af3dd4a4965a7a181fed5e1e52271a5b30d1b72c3d3cd4a9771a7ef6ff9f094ada95b31c3400a34bdf8f29905d30c1ac3b765621d81e6d4 uclibc-inhibit-spawn.patch -0d9310afef1afbf15a19bcc8aa1835416830666d79a5461b45df900afde5b115ec7c18d4bc15d36efe45b912ebb51ceb91cc20ebd0be0ecc4ff3fd0e06dd4a55 uclibc-define-fminf.patch" +0d9310afef1afbf15a19bcc8aa1835416830666d79a5461b45df900afde5b115ec7c18d4bc15d36efe45b912ebb51ceb91cc20ebd0be0ecc4ff3fd0e06dd4a55 uclibc-define-fminf.patch +24d7ae347a81e05aa2273c180ed76dfb0c8140ef1e4f877a88326fdf37acec0ac8bf1bde98845e40cd57c93fe6e5c186623a6f6f66ed6fe94386826260d88738 uclibc-fix-idn.patch" diff --git a/main/vlc/uclibc-fix-idn.patch b/main/vlc/uclibc-fix-idn.patch new file mode 100644 index 0000000000..a93a26b85e --- /dev/null +++ b/main/vlc/uclibc-fix-idn.patch @@ -0,0 +1,13 @@ +diff -ru vlc-2.1.0.orig/include/vlc_network.h vlc-2.1.0/include/vlc_network.h +--- vlc-2.1.0.orig/include/vlc_network.h 2013-06-24 21:00:38.000000000 +0300 ++++ vlc-2.1.0/include/vlc_network.h 2013-10-06 21:59:53.275530885 +0300 +@@ -222,6 +222,9 @@ + #ifndef AI_NUMERICSERV + # define AI_NUMERICSERV 0 + #endif ++#if defined(__UCLIBC__) ++#undef AI_IDN ++#endif + #ifndef AI_IDN + # define AI_IDN 0 /* GNU/libc extension */ + #endif diff --git a/main/vlc/uclibc-inhibit-spawn.patch b/main/vlc/uclibc-inhibit-spawn.patch deleted file mode 100644 index 5a8033addc..0000000000 --- a/main/vlc/uclibc-inhibit-spawn.patch +++ /dev/null @@ -1,133 +0,0 @@ -diff -rupN a/modules/misc/inhibit/xdg.c b/modules/misc/inhibit/xdg.c ---- a/modules/misc/inhibit/xdg.c 2013-06-24 20:00:38.000000000 +0200 -+++ b/modules/misc/inhibit/xdg.c 2013-09-26 14:45:13.069727587 +0200 -@@ -28,7 +28,11 @@ - #include <assert.h> - #include <errno.h> - #include <signal.h> --#include <spawn.h> -+#if !defined(_POSIX_SPAWN) -+# define _POSIX_SPAWN -1 -+#else -+# include <spawn.h> -+#endif - #include <sys/wait.h> - - static int Open (vlc_object_t *); -@@ -46,7 +50,9 @@ vlc_module_end () - struct vlc_inhibit_sys - { - vlc_timer_t timer; -+#if (_POSIX_SPAWN >= 0) - posix_spawnattr_t attr; -+#endif - }; - - extern char **environ; -@@ -60,8 +66,12 @@ static void Timer (void *data) - }; - pid_t pid; - -+#if (_POSIX_SPAWN >= 0) - int err = posix_spawnp (&pid, "xdg-screensaver", NULL, &sys->attr, - argv, environ); -+#else -+ int err; -+#endif - if (err == 0) - { - int status; -@@ -91,6 +101,7 @@ static int Open (vlc_object_t *obj) - if (p_sys == NULL) - return VLC_ENOMEM; - -+#if (_POSIX_SPAWN >= 0) - posix_spawnattr_init (&p_sys->attr); - /* Reset signal handlers to default and clear mask in the child process */ - { -@@ -103,11 +114,14 @@ static int Open (vlc_object_t *obj) - posix_spawnattr_setflags (&p_sys->attr, POSIX_SPAWN_SETSIGDEF - | POSIX_SPAWN_SETSIGMASK); - } -+#endif - - ih->p_sys = p_sys; - if (vlc_timer_create (&p_sys->timer, Timer, ih)) - { -+#if (_POSIX_SPAWN >= 0) - posix_spawnattr_destroy (&p_sys->attr); -+#endif - free (p_sys); - return VLC_ENOMEM; - } -@@ -122,6 +136,8 @@ static void Close (vlc_object_t *obj) - vlc_inhibit_sys_t *p_sys = ih->p_sys; - - vlc_timer_destroy (p_sys->timer); -+#if (_POSIX_SPAWN >= 0) - posix_spawnattr_destroy (&p_sys->attr); -+#endif - free (p_sys); - } -diff -rupN a/src/posix/netconf.c b/src/posix/netconf.c ---- a/src/posix/netconf.c 2013-06-24 20:00:39.000000000 +0200 -+++ b/src/posix/netconf.c 2013-09-26 13:56:46.149770648 +0200 -@@ -29,7 +29,11 @@ - #include <sys/types.h> - #include <sys/wait.h> - #include <fcntl.h> -+#if !defined(_POSIX_SPAWN) -+# define _POSIX_SPAWN -1 -+#else - #include <spawn.h> -+#endif - #include <unistd.h> - - extern char **environ; -@@ -47,36 +51,45 @@ char *vlc_getProxyUrl(const char *url) - { - /* libproxy helper */ - pid_t pid; -+#if (_POSIX_SPAWN >= 0) - posix_spawn_file_actions_t actions; - posix_spawnattr_t attr; -+#endif - char *argv[3] = { (char *)"proxy", (char *)url, NULL }; - int fd[2]; - - if (vlc_pipe(fd)) - return NULL; - -+#if (_POSIX_SPAWN >= 0) - posix_spawn_file_actions_init(&actions); - posix_spawn_file_actions_addopen(&actions, STDIN_FILENO, "/dev/null", - O_RDONLY, 0644); - posix_spawn_file_actions_adddup2(&actions, fd[1], STDOUT_FILENO); - - posix_spawnattr_init(&attr); -+#endif - { - sigset_t set; - - sigemptyset(&set); -+#if (_POSIX_SPAWN >= 0) - posix_spawnattr_setsigmask(&attr, &set); -+#endif - sigaddset (&set, SIGPIPE); -+#if (_POSIX_SPAWN >= 0) - posix_spawnattr_setsigdefault(&attr, &set); - posix_spawnattr_setflags(&attr, POSIX_SPAWN_SETSIGDEF - | POSIX_SPAWN_SETSIGMASK); -+#endif - } -- -+#if (_POSIX_SPAWN >= 0) - if (posix_spawnp(&pid, "proxy", &actions, &attr, argv, environ)) - pid = -1; - - posix_spawnattr_destroy(&attr); - posix_spawn_file_actions_destroy(&actions); -+#endif - close(fd[1]); - - if (pid != -1) |