about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/libomxil-bellagio
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libomxil-bellagio')
-rw-r--r--nixpkgs/pkgs/development/libraries/libomxil-bellagio/default.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/libomxil-bellagio/fno-common.patch32
2 files changed, 36 insertions, 1 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libomxil-bellagio/default.nix b/nixpkgs/pkgs/development/libraries/libomxil-bellagio/default.nix
index 5e3b0c6798a6..22a6de9fd956 100644
--- a/nixpkgs/pkgs/development/libraries/libomxil-bellagio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libomxil-bellagio/default.nix
@@ -12,7 +12,10 @@ stdenv.mkDerivation rec {
   configureFlags =
     lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" ];
 
-  patches = [ ./fedora-fixes.patch ];
+  patches = [
+    ./fedora-fixes.patch
+    ./fno-common.patch
+  ];
 
   doCheck = false; # fails
 
diff --git a/nixpkgs/pkgs/development/libraries/libomxil-bellagio/fno-common.patch b/nixpkgs/pkgs/development/libraries/libomxil-bellagio/fno-common.patch
new file mode 100644
index 000000000000..be70391adaae
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libomxil-bellagio/fno-common.patch
@@ -0,0 +1,32 @@
+Fix build faiure on gcc-10 (defaults to -fno-common).
+--- a/src/omx_reference_resource_manager.c
++++ b/src/omx_reference_resource_manager.c
+@@ -30,6 +30,11 @@
+ #include "base/omx_base_component.h"
+ #include "queue.h"
+ 
++int globalIndex;
++NameIndexType *listOfcomponentRegistered;
++ComponentListType **globalComponentList;
++ComponentListType **globalWaitingComponentList;
++
+ /**
+  * This is the static base pointer of the list
+  */
+--- a/src/omx_reference_resource_manager.h
++++ b/src/omx_reference_resource_manager.h
+@@ -49,10 +49,10 @@ struct NameIndexType {
+ };
+ 
+ 
+-int globalIndex;
+-NameIndexType *listOfcomponentRegistered;
+-ComponentListType **globalComponentList;
+-ComponentListType **globalWaitingComponentList;
++extern int globalIndex;
++extern NameIndexType *listOfcomponentRegistered;
++extern ComponentListType **globalComponentList;
++extern ComponentListType **globalWaitingComponentList;
+ 
+ OMX_ERRORTYPE RM_RegisterComponent(char *name, int max_components);
+ OMX_ERRORTYPE addElemToList(ComponentListType **list, OMX_COMPONENTTYPE *openmaxStandComp, int index, OMX_BOOL bIsWaiting);