Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=c7d4a4103f618cd2e15305a13b77460690baaa5c

commit c7d4a4103f618cd2e15305a13b77460690baaa5c
Author: DeX77 <[email protected]>
Date:   Mon Oct 12 21:46:36 2015 +0200

libomxil-bellagio-0.9.3-1-x86_64

* new package (needed by mesa 11.0.3)

diff --git a/source/lib/libomxil-bellagio/FrugalBuild 
b/source/lib/libomxil-bellagio/FrugalBuild
new file mode 100644
index 0000000..ee33f28
--- /dev/null
+++ b/source/lib/libomxil-bellagio/FrugalBuild
@@ -0,0 +1,28 @@
+# Compiling Time: 0.32 SBU
+# Maintainer: DeX77 <[email protected]>
+
+pkgname=libomxil-bellagio
+pkgver=0.9.3
+pkgrel=1
+pkgdesc="An opensource implementation of the OpenMAX Integration Layer API"
+archs=('i686' 'x86_64')
+license=('LGPL')
+depends=('glibc')
+groups=('lib')
+_F_sourceforge_dirname="omxil"
+Finclude sourceforge
+source=("${source[@]}" \
+        fedora-fixes.patch)
+sha1sums=('04afd1bde078afa5a03190b6c6865406e2bd01d8' \
+          '50125c655f29ef94d6425db4a60d52c67111b434')
+
+build(){
+  Fcd
+  Fpatchall
+  Fautoreconf
+  Fmake
+  Fmakeinstall
+}
+
+
+# optimization OK
diff --git a/source/lib/libomxil-bellagio/fedora-fixes.patch 
b/source/lib/libomxil-bellagio/fedora-fixes.patch
new file mode 100644
index 0000000..2ae3c3c
--- /dev/null
+++ b/source/lib/libomxil-bellagio/fedora-fixes.patch
@@ -0,0 +1,199 @@
+When libomxdynamicloader.so is loaded, it complains that RM_Deinit can't be 
resolved.
+Link explicitly against omxil-bellagio so that ld.so can find the reference.
+
+Signed-off-by: Qais Yousef <[email protected]>
+
+--- bellagio-0.9.3/src/dynamic_loader/Makefile.am.old  2012-03-23 
15:07:47.379021034 +0000
++++ bellagio-0.9.3/src/dynamic_loader/Makefile.am      2012-03-23 
15:08:47.563034818 +0000
+@@ -3,7 +3,7 @@
+ omxdynamicloader_LTLIBRARIES = libomxdynamicloader.la
+ libomxdynamicloader_la_SOURCES = ste_dynamic_component_loader.c 
ste_dynamic_component_loader.h
+
+-libomxdynamicloader_la_LDFLAGS =
++libomxdynamicloader_la_LDFLAGS = -L$(abs_top_srcdir)/src/.libs 
-lomxil-bellagio
+ libomxdynamicloader_la_CFLAGS = -I$(top_srcdir)/include \
+                       -I$(top_srcdir)/src \
+                       -I$(top_srcdir)/src/base \
+Fix dependency issue to allow parallel build
+
+Signed-off-by: Qais Yousef <[email protected]>
+
+Index: bellagio-0.9.3/src/Makefile.am
+===================================================================
+--- bellagio-0.9.3.orig/src/Makefile.am
++++ bellagio-0.9.3/src/Makefile.am
+@@ -8,6 +8,7 @@ omxregister_bellagio_SOURCES = omxregist
+ omxregister_bellagio_CFLAGS = -DOMXILCOMPONENTSPATH=\"$(plugindir)/\" \
+                             -I$(top_srcdir)/include
+ omxregister_bellagio_LDFLAGS = -lomxil-bellagio -L$(builddir)
++omxregister_bellagio_DEPENDENCIES = libomxil-bellagio.la
+
+ lib_LTLIBRARIES = libomxil-bellagio.la
+ libomxil_bellagio_la_SOURCES = component_loader.h \
+We always access globalComponentList[] at indexComponent=-1 which causes a
+segfault. Use i as the index instead.
+
+Signed-off-by: Qais Yousef <[email protected]>
+
+--- bellagio-0.9.3/src/omx_reference_resource_manager.c.old    2012-03-13 
10:15:25.743940980 +0000
++++ bellagio-0.9.3/src/omx_reference_resource_manager.c        2012-03-13 
10:18:02.201971009 +0000
+@@ -485,7 +485,6 @@
+ OMX_ERRORTYPE RM_removeFromWaitForResource(OMX_COMPONENTTYPE 
*openmaxStandComp) {
+       omx_base_component_PrivateType* omx_base_component_Private;
+       int i = 0;
+-      int indexComponent = -1;
+
+       DEBUG(DEB_LEV_FUNCTION_NAME, "In %s\n", __func__);
+       omx_base_component_Private = 
(omx_base_component_PrivateType*)openmaxStandComp->pComponentPrivate;
+@@ -493,16 +492,13 @@
+       while(listOfcomponentRegistered[i].component_name != NULL ) {
+               if (!strcmp(listOfcomponentRegistered[i].component_name, 
omx_base_component_Private->name)) {
+                       // found component in the list of the resource manager
+-                      
removeElemFromList(&globalComponentList[indexComponent], openmaxStandComp);
+-                      break;
++                      removeElemFromList(&globalComponentList[i], 
openmaxStandComp);
++                      DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
++                      return OMX_ErrorNone;
+               }
+               i++;
+       }
+-      if (indexComponent <0) {
+-              // No resource to be handled
+-              DEBUG(DEB_LEV_ERR, "In %s No resource to be handled\n", 
__func__);
+-              return OMX_ErrorNone;
+-      }
+-      DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
++      // No resource to be handled
++      DEBUG(DEB_LEV_ERR, "In %s No resource to be handled\n", __func__);
+       return OMX_ErrorNone;
+ }
+ OMX_INDEXTYPE/OMX_INDEXVENDORTYPE in one switch
+ src/base/omx_base_component.c |   54 ++++++++++++++++++++++-------------------
+ 1 files changed, 29 insertions(+), 25 deletions(-)
+--- a/src/base/omx_base_component.c
++++ a/src/base/omx_base_component.c
+@@ -915,14 +915,6 @@ OSCL_EXPORT_REF OSCL_EXPORT_REF OMX_ERRORTYPE 
omx_base_component_GetParameter(
+     return OMX_ErrorBadParameter;
+   }
+   switch(nParamIndex) {
+-  case OMX_IndexParameterThreadsID:
+-          if ((err = checkHeader(ComponentParameterStructure, 
sizeof(OMX_PARAM_BELLAGIOTHREADS_ID))) != OMX_ErrorNone) {
+-            break;
+-          }
+-        threadID = (OMX_PARAM_BELLAGIOTHREADS_ID 
*)ComponentParameterStructure;
+-        threadID->nThreadBufferMngtID = 
omx_base_component_Private->bellagioThreads->nThreadBufferMngtID;
+-        threadID->nThreadMessageID = 
omx_base_component_Private->bellagioThreads->nThreadMessageID;
+-        break;
+   case OMX_IndexParamAudioInit:
+   case OMX_IndexParamVideoInit:
+   case OMX_IndexParamImageInit:
+@@ -988,28 +980,40 @@ OSCL_EXPORT_REF OSCL_EXPORT_REF OMX_ERRORTYPE 
omx_base_component_GetParameter(
+       }
+     }
+     break;
+-  case OMX_IndexVendorCompPropTunnelFlags:
+-    pPropTunnelSetup = 
(OMX_VENDOR_PROP_TUNNELSETUPTYPE*)ComponentParameterStructure;
++  default:
++    /* additional switch statement for extended OMX_INDEXTYPE */
++    switch((OMX_INDEXVENDORTYPE) nParamIndex) {
++    case OMX_IndexParameterThreadsID:
++        if ((err = checkHeader(ComponentParameterStructure, 
sizeof(OMX_PARAM_BELLAGIOTHREADS_ID))) != OMX_ErrorNone) {
++          break;
++        }
++      threadID = (OMX_PARAM_BELLAGIOTHREADS_ID *)ComponentParameterStructure;
++      threadID->nThreadBufferMngtID = 
omx_base_component_Private->bellagioThreads->nThreadBufferMngtID;
++      threadID->nThreadMessageID = 
omx_base_component_Private->bellagioThreads->nThreadMessageID;
++      break;
++    case OMX_IndexVendorCompPropTunnelFlags:
++      pPropTunnelSetup = 
(OMX_VENDOR_PROP_TUNNELSETUPTYPE*)ComponentParameterStructure;
+
+-    if (pPropTunnelSetup->nPortIndex >= 
(omx_base_component_Private->sPortTypesParam[OMX_PortDomainAudio].nPorts +
+-                                         
omx_base_component_Private->sPortTypesParam[OMX_PortDomainVideo].nPorts +
+-                                         
omx_base_component_Private->sPortTypesParam[OMX_PortDomainImage].nPorts +
+-                                         
omx_base_component_Private->sPortTypesParam[OMX_PortDomainOther].nPorts)) {
++      if (pPropTunnelSetup->nPortIndex >= 
(omx_base_component_Private->sPortTypesParam[OMX_PortDomainAudio].nPorts +
++                                           
omx_base_component_Private->sPortTypesParam[OMX_PortDomainVideo].nPorts +
++                                           
omx_base_component_Private->sPortTypesParam[OMX_PortDomainImage].nPorts +
++                                           
omx_base_component_Private->sPortTypesParam[OMX_PortDomainOther].nPorts)) {
+
+-      DEBUG(DEB_LEV_ERR,"In %s OMX_IndexVendorCompPropTunnelFlags 
nPortIndex=%d Line=%d \n",
+-          __func__,(int)pPropTunnelSetup->nPortIndex,__LINE__);
++        DEBUG(DEB_LEV_ERR,"In %s OMX_IndexVendorCompPropTunnelFlags 
nPortIndex=%d Line=%d \n",
++            __func__,(int)pPropTunnelSetup->nPortIndex,__LINE__);
+
+-      return OMX_ErrorBadPortIndex;
+-    }
++        return OMX_ErrorBadPortIndex;
++      }
+
+-    pPort = omx_base_component_Private->ports[pPropTunnelSetup->nPortIndex];
++      pPort = omx_base_component_Private->ports[pPropTunnelSetup->nPortIndex];
+
+-    pPropTunnelSetup->nTunnelSetup.nTunnelFlags  = pPort->nTunnelFlags;
+-    pPropTunnelSetup->nTunnelSetup.eSupplier     = pPort->eBufferSupplier;
+-    break;
+-  default:
+-    err = OMX_ErrorUnsupportedIndex;
+-    break;
++      pPropTunnelSetup->nTunnelSetup.nTunnelFlags  = pPort->nTunnelFlags;
++      pPropTunnelSetup->nTunnelSetup.eSupplier     = pPort->eBufferSupplier;
++      break;
++    default:
++      err = OMX_ErrorUnsupportedIndex;
++      break;
++    }
+   }
+   DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s for component %p\n", __func__, 
hComponent);
+   return err;
+diff -up libomxil-bellagio-0.9.3/Makefile.am.nodoc 
libomxil-bellagio-0.9.3/Makefile.am
+--- libomxil-bellagio-0.9.3/Makefile.am.nodoc  2011-01-12 08:53:26.000000000 
+0100
++++ libomxil-bellagio-0.9.3/Makefile.am        2012-04-23 13:46:15.410823381 
+0200
+@@ -7,7 +7,6 @@ EXTRA_DIST = libomxil-bellagio.spec
+ pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = libomxil-bellagio.pc
+
+-docdir = $(DESTDIR)$(prefix)/share/doc/@PACKAGE@
+ doc_DATA = README \
+          ChangeLog \
+          TODO
+diff -up libomxil-bellagio-0.9.3/src/omxregister.c.unused 
libomxil-bellagio-0.9.3/src/omxregister.c
+--- libomxil-bellagio-0.9.3/src/omxregister.c.unused   2011-01-12 
08:53:26.000000000 +0100
++++ libomxil-bellagio-0.9.3/src/omxregister.c  2012-12-10 22:02:28.621695659 
+0100
+@@ -248,7 +248,15 @@ static int buildComponentsList(FILE* omx
+                                               }
+                                               fptr(stComponents);
+                                               err = fwrite(lib_absolute_path, 
1, strlen(lib_absolute_path), omxregistryfp);
+-                                              err = fwrite("\n", 1, 1, 
omxregistryfp);
++                                              if (err != 
strlen(lib_absolute_path)) {
++                                                      DEBUG(DEB_LEV_ERR, 
"Failed to write %zu bytes to fd %d\n", strlen(lib_absolute_path), 
fileno(omxregistryfp));
++                                                      continue;
++                                              }
++                                              err = fwrite("\n", 1, 
strlen(buffer), omxregistryfp);
++                                              if (err != strlen(buffer)) {
++                                                      DEBUG(DEB_LEV_ERR, 
"Failed to write %zu bytes to fd %d\n", strlen(buffer), fileno(omxregistryfp));
++                                                      continue;
++                                              }
+
+
+                                               for (i = 0; i<num_of_comp; i++) 
{
+--- libomxil-bellagio-0.9.3/include/OMX_Types.h.orig 2011-01-12 
08:53:26.000000000 +0100
++++ libomxil-bellagio-0.9.3/include/OMX_Types.h 2013-02-25 09:53:55.000000000 
+0100
+@@ -314,6 +314,18 @@
+  *  platform & operating specific object used to reference the window */
+ typedef void* OMX_NATIVE_WINDOWTYPE;
+
++
++/** Define the OMX IL version that corresponds to this set of header files.
++ *  We also define a combined version that can be used to write or compare
++ *  values of the 32bit nVersion field, assuming a little endian architecture 
*/
++#define OMX_VERSION_MAJOR 1
++#define OMX_VERSION_MINOR 1
++#define OMX_VERSION_REVISION 2
++#define OMX_VERSION_STEP 0
++
++#define OMX_VERSION ((OMX_VERSION_STEP<<24) | (OMX_VERSION_REVISION<<16) | 
(OMX_VERSION_MINOR<<8) | OMX_VERSION_MAJOR)
++
++
+ /** The OMX_VERSIONTYPE union is used to specify the version for
+     a structure or component.  For a component, the version is entirely
+     specified by the component vendor.  Components doing the same function
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to