From d0336972287d40dd9f19f64faf3ca89c11e630fd Mon Sep 17 00:00:00 2001 From: Nicolas Chauvet Date: Fri, 13 Feb 2009 18:14:19 +0000 Subject: [PATCH] Update to 0.9.9rc Add libxul 1.9.1 support --- .gitignore | 3 +- 0001-Mozilla-SDK-libxul-1.9.1-support.patch | 215 ++++++++++++++++++++ sources | 3 +- vlc.spec | 45 ++-- 4 files changed, 241 insertions(+), 25 deletions(-) create mode 100644 0001-Mozilla-SDK-libxul-1.9.1-support.patch diff --git a/.gitignore b/.gitignore index d6608a5..6baa58a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ -vlc-0.9.8a.tar.bz2 -vlc-0.9.9-git2009011313.tar.bz2 +vlc-0.9.9-rc.tar.bz2 diff --git a/0001-Mozilla-SDK-libxul-1.9.1-support.patch b/0001-Mozilla-SDK-libxul-1.9.1-support.patch new file mode 100644 index 0000000..b31048b --- /dev/null +++ b/0001-Mozilla-SDK-libxul-1.9.1-support.patch @@ -0,0 +1,215 @@ +diff --git a/configure.ac b/configure.ac +index 96df16a..83dbb1d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -5523,7 +5523,7 @@ then + #endif + ]) + if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then +- AC_MSG_ERROR([Please install the Firefox development tools; mozilla-config.h, plugin/npapi.h and plugin/npruntime.h were not found.]) ++ AC_MSG_ERROR([Please install the Xulrunner development tools; npapi.h and pruntime.h were not found.]) + fi + MOZILLA_REQUIRED_HEADERS= + mozilla=: +diff --git a/projects/mozilla/support/npmac.cpp b/projects/mozilla/support/npmac.cpp +index ccc3945..1b38392 100644 +--- a/projects/mozilla/support/npmac.cpp ++++ b/projects/mozilla/support/npmac.cpp +@@ -4,6 +4,8 @@ + // + //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + ++#include "config.h" ++ + #include + + #include +@@ -54,7 +56,11 @@ + #undef XP_UNIX + #endif + ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + #include "npupp.h" ++#else ++#include "npfunctions.h" ++#endif + + #ifdef __MWERKS__ + #ifndef powerc +@@ -993,6 +999,7 @@ DEFINE_API_C(NPError) main(NPNetscapeFuncs* nsTable, NPPluginFuncs* pluginFuncs, + // + pluginFuncs->version = (NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR; + pluginFuncs->size = sizeof(NPPluginFuncs); ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + pluginFuncs->newp = NewNPP_NewProc(PLUGIN_TO_HOST_GLUE(newp, Private_New)); + pluginFuncs->destroy = NewNPP_DestroyProc(PLUGIN_TO_HOST_GLUE(destroy, Private_Destroy)); + pluginFuncs->setwindow = NewNPP_SetWindowProc(PLUGIN_TO_HOST_GLUE(setwindow, Private_SetWindow)); +@@ -1004,9 +1011,26 @@ DEFINE_API_C(NPError) main(NPNetscapeFuncs* nsTable, NPPluginFuncs* pluginFuncs, + pluginFuncs->print = NewNPP_PrintProc(PLUGIN_TO_HOST_GLUE(print, Private_Print)); + pluginFuncs->event = NewNPP_HandleEventProc(PLUGIN_TO_HOST_GLUE(event, Private_HandleEvent)); + pluginFuncs->getvalue = NewNPP_GetValueProc(PLUGIN_TO_HOST_GLUE(getvalue, Private_GetValue)); ++#else ++ pluginFuncs->newp = (NewNPP_NewProcPtr)(PLUGIN_TO_HOST_GLUE(newp, Private_New)); ++ pluginFuncs->destroy = (NewNPP_DestroyProcPtr)(PLUGIN_TO_HOST_GLUE(destroy, Private_Destroy)); ++ pluginFuncs->setwindow = (NewNPP_SetWindowProcPtr)(PLUGIN_TO_HOST_GLUE(setwindow, Private_SetWindow)); ++ pluginFuncs->newstream = (NewNPP_NewStreamProcPtr)(PLUGIN_TO_HOST_GLUE(newstream, Private_NewStream)); ++ pluginFuncs->destroystream = (NewNPP_DestroyStreamProcPtr)(PLUGIN_TO_HOST_GLUE(destroystream, Private_DestroyStream)); ++ pluginFuncs->asfile = (NewNPP_StreamAsFileProcPtr)(PLUGIN_TO_HOST_GLUE(asfile, Private_StreamAsFile)); ++ pluginFuncs->writeready = (NewNPP_WriteReadyProcPtr)(PLUGIN_TO_HOST_GLUE(writeready, Private_WriteReady)); ++ pluginFuncs->write = (NewNPP_WriteProcPtr)(PLUGIN_TO_HOST_GLUE(write, Private_Write)); ++ pluginFuncs->print = (NewNPP_PrintProcPtr)(PLUGIN_TO_HOST_GLUE(print, Private_Print)); ++ pluginFuncs->event = (NewNPP_HandleEventProcPtr)(PLUGIN_TO_HOST_GLUE(event, Private_HandleEvent)); ++ pluginFuncs->getvalue = (NewNPP_GetValueProcPtr)(PLUGIN_TO_HOST_GLUE(getvalue, Private_GetValue)); ++#endif + if( navMinorVers >= NPVERS_HAS_NOTIFICATION ) + { ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + pluginFuncs->urlnotify = NewNPP_URLNotifyProc(PLUGIN_TO_HOST_GLUE(urlnotify, Private_URLNotify)); ++#else ++ pluginFuncs->urlnotify = (NewNPP_URLNotifyProcPtr)(PLUGIN_TO_HOST_GLUE(urlnotify, Private_URLNotify)); ++#endif + } + #ifdef OJI + if( navMinorVers >= NPVERS_HAS_LIVECONNECT ) +diff --git a/projects/mozilla/support/npunix.c b/projects/mozilla/support/npunix.c +index 26c6736..933aad3 100644 +--- a/projects/mozilla/support/npunix.c ++++ b/projects/mozilla/support/npunix.c +@@ -38,12 +38,20 @@ + *---------------------------------------------------------------------- + */ + ++#include "config.h" ++ + #define XP_UNIX 1 + #define OJI 1 + + #include + #include ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + #include ++#define MOZJREF jref ++#else ++#include ++#define MOZJREF void* ++#endif + + /* + * Define PLUGIN_TRACE to have the wrapper functions print +@@ -198,7 +206,7 @@ JRIEnv* NPN_GetJavaEnv() + return CallNPN_GetJavaEnvProc(gNetscapeFuncs.getJavaEnv); + } + +-jref NPN_GetJavaPeer(NPP instance) ++MOZJREF NPN_GetJavaPeer(NPP instance) + { + return CallNPN_GetJavaPeerProc(gNetscapeFuncs.getJavaPeer, + instance); +@@ -529,7 +537,7 @@ Private_SetValue(NPP instance, NPPVariable variable, void *r_value) + JRIGlobalRef + Private_GetJavaClass(void) + { +- jref clazz = NPP_GetJavaClass(); ++ MOZJREF clazz = NPP_GetJavaClass(); + if (clazz) { + JRIEnv* env = NPN_GetJavaEnv(); + return JRI_NewGlobalRef(env, clazz); +@@ -685,6 +693,7 @@ NP_Initialize(NPNetscapeFuncs* nsTable, NPPluginFuncs* pluginFuncs) + */ + pluginFuncs->version = (NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR; + pluginFuncs->size = sizeof(NPPluginFuncs); ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + pluginFuncs->newp = NewNPP_NewProc(Private_New); + pluginFuncs->destroy = NewNPP_DestroyProc(Private_Destroy); + pluginFuncs->setwindow = NewNPP_SetWindowProc(Private_SetWindow); +@@ -697,9 +706,27 @@ NP_Initialize(NPNetscapeFuncs* nsTable, NPPluginFuncs* pluginFuncs) + pluginFuncs->event = NULL; + pluginFuncs->getvalue = NewNPP_GetValueProc(Private_GetValue); + pluginFuncs->setvalue = NewNPP_SetValueProc(Private_SetValue); ++#else ++ pluginFuncs->newp = (NPP_NewProcPtr)(Private_New); ++ pluginFuncs->destroy = (NewNPP_DestroyProcPtr)(Private_Destroy); ++ pluginFuncs->setwindow = (NewNPP_SetWindowProcPtr)(Private_SetWindow); ++ pluginFuncs->newstream = (NewNPP_NewStreamProcPtr)(Private_NewStream); ++ pluginFuncs->destroystream = (NewNPP_DestroyStreamProcPtr)(Private_DestroyStream); ++ pluginFuncs->asfile = (NewNPP_StreamAsFileProcPtr)(Private_StreamAsFile); ++ pluginFuncs->writeready = (NewNPP_WriteReadyProcPtr)(Private_WriteReady); ++ pluginFuncs->write = (NewNPP_WriteProcPtr)(Private_Write); ++ pluginFuncs->print = (NewNPP_PrintProcPtr)(Private_Print); ++ pluginFuncs->event = NULL; ++ pluginFuncs->getvalue = (NewNPP_GetValueProcPtr)(Private_GetValue); ++ pluginFuncs->setvalue = (NewNPP_SetValueProcPtr)(Private_SetValue); ++#endif + if( navMinorVers >= NPVERS_HAS_NOTIFICATION ) + { ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + pluginFuncs->urlnotify = NewNPP_URLNotifyProc(Private_URLNotify); ++#else ++ pluginFuncs->urlnotify = (NewNPP_URLNotifyProcPtr)(Private_URLNotify); ++#endif + } + #ifdef OJI + if( navMinorVers >= NPVERS_HAS_LIVECONNECT ) +diff --git a/projects/mozilla/support/npwin.cpp b/projects/mozilla/support/npwin.cpp +index c277f84..8d72e76 100644 +--- a/projects/mozilla/support/npwin.cpp ++++ b/projects/mozilla/support/npwin.cpp +@@ -42,7 +42,13 @@ + #endif + + #include "npapi.h" ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) + #include "npupp.h" ++#define MOZJREF jref ++#else ++#include "npfunctions.h" ++#define MOZJREF void* ++#endif + + //\\// DEFINE + #define NP_EXPORT +@@ -61,7 +67,7 @@ JRIGlobalRef Private_GetJavaClass(void); + JRIGlobalRef + Private_GetJavaClass(void) + { +- jref clazz = NPP_GetJavaClass(); ++ MOZJREF clazz = NPP_GetJavaClass(); + if (clazz) { + JRIEnv* env = NPN_GetJavaEnv(); + return JRI_NewGlobalRef(env, clazz); +@@ -351,7 +357,7 @@ JRIEnv* NPN_GetJavaEnv(void) + return g_pNavigatorFuncs->getJavaEnv(); + } + +-jref NPN_GetJavaPeer(NPP instance) ++MOZJREF NPN_GetJavaPeer(NPP instance) + { + return g_pNavigatorFuncs->getJavaPeer(instance); + } +diff --git a/projects/mozilla/vlcshell.cpp b/projects/mozilla/vlcshell.cpp +index 7adfca6..3adf09d 100644 +--- a/projects/mozilla/vlcshell.cpp ++++ b/projects/mozilla/vlcshell.cpp +@@ -36,6 +36,13 @@ + # include + #endif + ++#include "npapi.h" ++#if (((NP_VERSION_MAJOR << 8) + NP_VERSION_MINOR) < 20) ++#define MOZJREF jref ++#else ++#define MOZJREF void* ++#endif ++ + /* This is from mozilla java, do we really need it? */ + #if 0 + #include +@@ -294,7 +301,7 @@ NPError NPP_Initialize( void ) + return NPERR_NO_ERROR; + } + +-jref NPP_GetJavaClass( void ) ++MOZJREF NPP_GetJavaClass( void ) + { + return NULL; + } diff --git a/sources b/sources index cc555bd..10c7d44 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -8ffa2ff763badd5de7592004d8d69a63 vlc-0.9.8a.tar.bz2 -ec6fb4e74389d3ca6b80b6a607b02a3f vlc-0.9.9-git2009011313.tar.bz2 +d332a2b8075d0f70de63372221e2a487 vlc-0.9.9-rc.tar.bz2 diff --git a/vlc.spec b/vlc.spec index fb52b43..5c9eeab 100644 --- a/vlc.spec +++ b/vlc.spec @@ -4,7 +4,8 @@ %define with_internal_live555 0 %define live555_date 2008.07.25 %define vlc_git 0 -%define vlc_date 20080915 +%define vlc_rc -rc +%define vlc_date 20090210 %define with_mozilla 1 %define with_dc1394 0 %define with_directfb 1 @@ -17,9 +18,9 @@ Version: 1.0.0 %define _version %{version}-git %define release_tag 0.1.%{vlc_date}git %else -Version: 0.9.8a +Version: 0.9.9 %define _version %{version} -%define release_tag 3 +%define release_tag 0.1rc %endif Release: %{release_tag}%{?dist} License: GPLv2+ @@ -28,7 +29,7 @@ URL: http://www.videolan.org/ %if %vlc_git Source0: http://nightlies.videolan.org/build/source/trunk-%{vlc_date}-0024/vlc-snapshot-%{vlc_date}.tar.bz2 %else -Source0: http://download.videolan.org/pub/videolan/vlc/%{version}/vlc-%{_version}.tar.bz2 +Source0: http://download.videolan.org/pub/videolan/vlc/%{version}/vlc-%{_version}%{?vlc_rc}.tar.bz2 %endif %if %with_internal_live555 Source2: http://www.live555.com/liveMedia/public/live.%{live555_date}.tar.gz @@ -39,10 +40,8 @@ Patch2: vlc-0.9.8a-embeddedvideo.patch Patch3: 300_all_pic.patch Patch4: 310_all_mmx_pic.patch Patch5: vlc-pulse0071.patch -Patch6: 0001-Mozilla-SDK-libxul-1.9.1-preliminary-support.patch -Patch7: 0002-Fix-the-config.h-reference-that-was-only-present-in.patch +Patch6: 0001-Mozilla-SDK-libxul-1.9.1-support.patch Patch8: vlc-backport-postproc_unif.patch -Patch9: vlc-0.9.9-git2009011313.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: desktop-file-utils @@ -177,8 +176,8 @@ BuildRequires: libggi-devel %if %with_dc1394 BuildRequires: compat-libdc1394-devel BuildRequires: compat-libraw1394-devel -%else -BuildRequires: libraw1394-devel +#else +#BuildRequires: libraw1394-devel %endif @@ -262,11 +261,13 @@ VLC plugins for libdc1394 %endif %prep -%setup -q -n %{name}-%{_version} +%setup -q -n %{name}-%{_version}%{?vlc_rc} %if %with_internal_live555 -%setup -q -D -T -a 2 -n %{name}-%{_version} +%setup -q -D -T -a 2 -n %{name}-%{_version}%{?vlc_rc} %endif %patch0 -p1 -b .default_font +%if %vlc_git +%else %patch1 -p1 -b .pulse_default %patch2 -p1 -b .embedded #http://trac.videolan.org/vlc/ticket/1383 @@ -275,15 +276,13 @@ sed -i.dmo_pic -e 's/fno-PIC/fPIC/' libs/loader/Makefile.in %patch4 -p1 -b .mmx_pic %patch5 -p1 -b .pulse0071 %patch6 -p1 -b .libxul191 -%patch7 -p1 -b .config_h %patch8 -p1 -b .postproc -%patch9 -p1 -b .vlc099 chmod -x modules/gui/qt4/qt4* #./bootstrap autoreconf -f -i libtoolize - +%endif %build @@ -382,7 +381,6 @@ sed -i -e 's! -shared ! -Wl,--as-needed\0!g' libtool make %{?_smp_mflags} - %install rm -rf $RPM_BUILD_ROOT @@ -450,12 +448,8 @@ fi || : %{_datadir}/applications/*%{name}.desktop %{_datadir}/icons/hicolor/*/apps/vlc.png %{_datadir}/vlc/skins2/ -%{_bindir}/cvlc -%{_bindir}/nvlc %{_bindir}/qvlc -%{_bindir}/rvlc %{_bindir}/svlc -%{_bindir}/vlc-wrapper %{_libdir}/vlc/gui/libqt4_plugin.so %{_libdir}/vlc/access/libaccess_gnomevfs_plugin.so %{_libdir}/vlc/access/libscreen_plugin.so @@ -483,6 +477,10 @@ fi || : %files core -f %{name}.lang %defattr(-,root,root,-) %{_bindir}/vlc +%{_bindir}/cvlc +%{_bindir}/nvlc +%{_bindir}/rvlc +%{_bindir}/vlc-wrapper %exclude %{_datadir}/vlc/skins2 %{_datadir}/vlc/ %{_libdir}/*.so.* @@ -517,7 +515,7 @@ fi || : %exclude %{_libdir}/vlc/access/libdc1394_plugin.so %endif %{_libdir}/vlc/ -%{_mandir}/man1/vlc.1* +%{_mandir}/man1/vlc*.1* %files nox %defattr(-,root,root,-) @@ -551,8 +549,13 @@ fi || : %changelog +* Fri Feb 13 2009 kwizart < kwizart at gmail.com > - 0.9.9-0.1rc +- Update to 0.9.9rc +- Move Xless binaries to the -core subpackage +- Add support for libxul 1.9.1 + * Fri Jan 16 2009 kwizart < kwizart at gmail.com > - 0.9.8a-3 -- Add libxul 1.9.1 prelimary support +- Add libxul 1.9.1 preliminary support - backport postproc fixes - Add pending 0.9-bugfix git branch - Add lua support by default