mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 13:16:41 +00:00
commit
9f493ac858
42
packages/addons/addon-depends/atk/package.mk
Normal file
42
packages/addons/addon-depends/atk/package.mk
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="atk"
|
||||||
|
PKG_VERSION="2.20.0"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="GPL"
|
||||||
|
PKG_SITE="http://library.gnome.org/devel/atk/"
|
||||||
|
PKG_URL="http://ftp.gnome.org/pub/gnome/sources/$PKG_NAME/2.20/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain glib"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="accessibility"
|
||||||
|
PKG_SHORTDESC="ATK - Accessibility Toolkit"
|
||||||
|
PKG_LONGDESC="ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications. Using the ATK interfaces, accessibility tools have full access to view and control running applications."
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \
|
||||||
|
--disable-rebuilds --disable-glibtest"
|
||||||
|
|
||||||
|
pre_configure_target() {
|
||||||
|
export CFLAGS="$CFLAGS -fPIC"
|
||||||
|
}
|
347
packages/addons/addon-depends/atk/patches/atk-meh.patch
Normal file
347
packages/addons/addon-depends/atk/patches/atk-meh.patch
Normal file
@ -0,0 +1,347 @@
|
|||||||
|
diff -Naur atk-2.20.0/atk/atkobject.c atk-2.20.0.patch/atk/atkobject.c
|
||||||
|
--- atk-2.20.0/atk/atkobject.c 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/atkobject.c 2016-03-26 01:10:01.058238623 +0100
|
||||||
|
@@ -26,7 +26,6 @@
|
||||||
|
#include <glib/gi18n-lib.h>
|
||||||
|
|
||||||
|
#include "atk.h"
|
||||||
|
-#include "atkmarshal.h"
|
||||||
|
#include "atkprivate.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
@@ -610,27 +609,6 @@
|
||||||
|
G_TYPE_POINTER);
|
||||||
|
|
||||||
|
/**
|
||||||
|
- * AtkObject::state-change:
|
||||||
|
- * @atkobject: the object which received the signal.
|
||||||
|
- * @arg1: The name of the state which has changed
|
||||||
|
- * @arg2: A boolean which indicates whether the state has been set or unset.
|
||||||
|
- *
|
||||||
|
- * The "state-change" signal is emitted when an object's state
|
||||||
|
- * changes. The detail value identifies the state type which has
|
||||||
|
- * changed.
|
||||||
|
- */
|
||||||
|
- atk_object_signals[STATE_CHANGE] =
|
||||||
|
- g_signal_new ("state_change",
|
||||||
|
- G_TYPE_FROM_CLASS (klass),
|
||||||
|
- G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
|
||||||
|
- G_STRUCT_OFFSET (AtkObjectClass, state_change),
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__STRING_BOOLEAN,
|
||||||
|
- G_TYPE_NONE, 2,
|
||||||
|
- G_TYPE_STRING,
|
||||||
|
- G_TYPE_BOOLEAN);
|
||||||
|
-
|
||||||
|
- /**
|
||||||
|
* AtkObject::visible-data-changed:
|
||||||
|
* @atkobject: the object which received the signal.
|
||||||
|
*
|
||||||
|
diff -Naur atk-2.20.0/atk/atktable.c atk-2.20.0.patch/atk/atktable.c
|
||||||
|
--- atk-2.20.0/atk/atktable.c 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/atktable.c 2016-03-26 01:11:35.242363570 +0100
|
||||||
|
@@ -20,7 +20,6 @@
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "atktable.h"
|
||||||
|
-#include "atkmarshal.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECTION:atktable
|
||||||
|
@@ -102,78 +101,6 @@
|
||||||
|
if (!initialized)
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
- * AtkTable::row-inserted:
|
||||||
|
- * @atktable: the object which received the signal.
|
||||||
|
- * @arg1: The index of the first row inserted.
|
||||||
|
- * @arg2: The number of rows inserted.
|
||||||
|
- *
|
||||||
|
- * The "row-inserted" signal is emitted by an object which
|
||||||
|
- * implements the AtkTable interface when a row is inserted.
|
||||||
|
- */
|
||||||
|
- atk_table_signals[ROW_INSERTED] =
|
||||||
|
- g_signal_new ("row_inserted",
|
||||||
|
- ATK_TYPE_TABLE,
|
||||||
|
- G_SIGNAL_RUN_LAST,
|
||||||
|
- G_STRUCT_OFFSET (AtkTableIface, row_inserted),
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 2, G_TYPE_INT, G_TYPE_INT);
|
||||||
|
- /**
|
||||||
|
- * AtkTable::column-inserted:
|
||||||
|
- * @atktable: the object which received the signal.
|
||||||
|
- * @arg1: The index of the column inserted.
|
||||||
|
- * @arg2: The number of colums inserted.
|
||||||
|
- *
|
||||||
|
- * The "column-inserted" signal is emitted by an object which
|
||||||
|
- * implements the AtkTable interface when a column is inserted.
|
||||||
|
- */
|
||||||
|
- atk_table_signals[COLUMN_INSERTED] =
|
||||||
|
- g_signal_new ("column_inserted",
|
||||||
|
- ATK_TYPE_TABLE,
|
||||||
|
- G_SIGNAL_RUN_LAST,
|
||||||
|
- G_STRUCT_OFFSET (AtkTableIface, column_inserted),
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 2, G_TYPE_INT, G_TYPE_INT);
|
||||||
|
- /**
|
||||||
|
- * AtkTable::row-deleted:
|
||||||
|
- * @atktable: the object which received the signal.
|
||||||
|
- * @arg1: The index of the first row deleted.
|
||||||
|
- * @arg2: The number of rows deleted.
|
||||||
|
- *
|
||||||
|
- * The "row-deleted" signal is emitted by an object which
|
||||||
|
- * implements the AtkTable interface when a row is deleted.
|
||||||
|
- */
|
||||||
|
- atk_table_signals[ROW_DELETED] =
|
||||||
|
- g_signal_new ("row_deleted",
|
||||||
|
- ATK_TYPE_TABLE,
|
||||||
|
- G_SIGNAL_RUN_LAST,
|
||||||
|
- G_STRUCT_OFFSET (AtkTableIface, row_deleted),
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 2, G_TYPE_INT, G_TYPE_INT);
|
||||||
|
- /**
|
||||||
|
- * AtkTable::column-deleted:
|
||||||
|
- * @atktable: the object which received the signal.
|
||||||
|
- * @arg1: The index of the first column deleted.
|
||||||
|
- * @arg2: The number of columns deleted.
|
||||||
|
- *
|
||||||
|
- * The "column-deleted" signal is emitted by an object which
|
||||||
|
- * implements the AtkTable interface when a column is deleted.
|
||||||
|
- */
|
||||||
|
- atk_table_signals[COLUMN_DELETED] =
|
||||||
|
- g_signal_new ("column_deleted",
|
||||||
|
- ATK_TYPE_TABLE,
|
||||||
|
- G_SIGNAL_RUN_LAST,
|
||||||
|
- G_STRUCT_OFFSET (AtkTableIface, column_deleted),
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 2, G_TYPE_INT, G_TYPE_INT);
|
||||||
|
- /**
|
||||||
|
* AtkTable::row-reordered:
|
||||||
|
* @atktable: the object which received the signal.
|
||||||
|
*
|
||||||
|
diff -Naur atk-2.20.0/atk/atktext.c atk-2.20.0.patch/atk/atktext.c
|
||||||
|
--- atk-2.20.0/atk/atktext.c 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/atktext.c 2016-03-26 01:12:57.099480029 +0100
|
||||||
|
@@ -20,7 +20,6 @@
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "atk.h"
|
||||||
|
-#include "atkmarshal.h"
|
||||||
|
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
@@ -190,75 +189,6 @@
|
||||||
|
class->get_bounded_ranges = atk_text_real_get_bounded_ranges;
|
||||||
|
|
||||||
|
/**
|
||||||
|
- * AtkText::text-changed:
|
||||||
|
- * @atktext: the object which received the signal.
|
||||||
|
- * @arg1: The position (character offset) of the insertion or deletion.
|
||||||
|
- * @arg2: The length (in characters) of text inserted or deleted.
|
||||||
|
- *
|
||||||
|
- * The "text-changed" signal is emitted when the text of the
|
||||||
|
- * object which implements the AtkText interface changes, This
|
||||||
|
- * signal will have a detail which is either "insert" or
|
||||||
|
- * "delete" which identifies whether the text change was an
|
||||||
|
- * insertion or a deletion.
|
||||||
|
- *
|
||||||
|
- * Deprecated: 2.9.4: Use #AtkObject::text-insert or
|
||||||
|
- * #AtkObject::text-remove instead.
|
||||||
|
- */
|
||||||
|
- atk_text_signals[TEXT_CHANGED] =
|
||||||
|
- g_signal_new ("text_changed",
|
||||||
|
- ATK_TYPE_TEXT,
|
||||||
|
- G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
|
||||||
|
- G_STRUCT_OFFSET (AtkTextIface, text_changed),
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 2, G_TYPE_INT, G_TYPE_INT);
|
||||||
|
-
|
||||||
|
- /**
|
||||||
|
- * AtkText::text-insert:
|
||||||
|
- * @atktext: the object which received the signal.
|
||||||
|
- * @arg1: The position (character offset) of the insertion.
|
||||||
|
- * @arg2: The length (in characters) of text inserted.
|
||||||
|
- * @arg3: The new text inserted
|
||||||
|
- *
|
||||||
|
- * The "text-insert" signal is emitted when a new text is
|
||||||
|
- * inserted. If the signal was not triggered by the user
|
||||||
|
- * (e.g. typing or pasting text), the "system" detail should be
|
||||||
|
- * included.
|
||||||
|
- */
|
||||||
|
- atk_text_signals[TEXT_INSERT] =
|
||||||
|
- g_signal_new ("text_insert",
|
||||||
|
- ATK_TYPE_TEXT,
|
||||||
|
- G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
|
||||||
|
- 0,
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT_STRING,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 3, G_TYPE_INT, G_TYPE_INT, G_TYPE_STRING);
|
||||||
|
-
|
||||||
|
- /**
|
||||||
|
- * AtkText::text-remove:
|
||||||
|
- * @atktext: the object which received the signal.
|
||||||
|
- * @arg1: The position (character offset) of the removal.
|
||||||
|
- * @arg2: The length (in characters) of text removed.
|
||||||
|
- * @arg3: The old text removed
|
||||||
|
- *
|
||||||
|
- * The "text-remove" signal is emitted when a new text is
|
||||||
|
- * removed. If the signal was not triggered by the user
|
||||||
|
- * (e.g. typing or pasting text), the "system" detail should be
|
||||||
|
- * included.
|
||||||
|
- */
|
||||||
|
- atk_text_signals[TEXT_REMOVE] =
|
||||||
|
- g_signal_new ("text_remove",
|
||||||
|
- ATK_TYPE_TEXT,
|
||||||
|
- G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
|
||||||
|
- 0,
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__INT_INT_STRING,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 3, G_TYPE_INT, G_TYPE_INT, G_TYPE_STRING);
|
||||||
|
-
|
||||||
|
- /**
|
||||||
|
* AtkText::text-caret-moved:
|
||||||
|
* @atktext: the object which received the signal.
|
||||||
|
* @arg1: The new position of the text caret.
|
||||||
|
diff -Naur atk-2.20.0/atk/atkutil.c atk-2.20.0.patch/atk/atkutil.c
|
||||||
|
--- atk-2.20.0/atk/atkutil.c 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/atkutil.c 2016-03-26 01:13:04.481490538 +0100
|
||||||
|
@@ -20,7 +20,6 @@
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "atkutil.h"
|
||||||
|
-#include "atkmarshal.c"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECTION:atkutil
|
||||||
|
diff -Naur atk-2.20.0/atk/atkvalue.c atk-2.20.0.patch/atk/atkvalue.c
|
||||||
|
--- atk-2.20.0/atk/atkvalue.c 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/atkvalue.c 2016-03-26 01:18:03.268897883 +0100
|
||||||
|
@@ -23,7 +23,6 @@
|
||||||
|
#include <glib/gi18n-lib.h>
|
||||||
|
|
||||||
|
#include "atkvalue.h"
|
||||||
|
-#include "atkmarshal.h"
|
||||||
|
#include "atk-enum-types.h"
|
||||||
|
#include "atkprivate.h"
|
||||||
|
|
||||||
|
@@ -322,42 +321,6 @@
|
||||||
|
atk_value_base_init (AtkValueIface *class)
|
||||||
|
{
|
||||||
|
static gboolean initialized = FALSE;
|
||||||
|
- if (!initialized)
|
||||||
|
- {
|
||||||
|
- /**
|
||||||
|
- * AtkValue::value-changed:
|
||||||
|
- * @atkvalue: the object on which the signal was emitted.
|
||||||
|
- * @value: the new value in a numerical form.
|
||||||
|
- * @text: human readable text alternative (also called
|
||||||
|
- * description) of this object. NULL if not available.
|
||||||
|
- *
|
||||||
|
- * The 'value-changed' signal is emitted when the current value
|
||||||
|
- * that represent the object changes. @value is the numerical
|
||||||
|
- * representation of this new value. @text is the human
|
||||||
|
- * readable text alternative of @value, and can be NULL if it is
|
||||||
|
- * not available. Note that if there is a textual description
|
||||||
|
- * associated with the new numeric value, that description
|
||||||
|
- * should be included regardless of whether or not it has also
|
||||||
|
- * changed.
|
||||||
|
- *
|
||||||
|
- * Example: a password meter whose value changes as the user
|
||||||
|
- * types their new password. Appropiate value text would be
|
||||||
|
- * "weak", "acceptable" and "strong".
|
||||||
|
- *
|
||||||
|
- * Since: 2.12
|
||||||
|
- */
|
||||||
|
- atk_value_signals[VALUE_CHANGED] =
|
||||||
|
- g_signal_new ("value_changed",
|
||||||
|
- ATK_TYPE_VALUE,
|
||||||
|
- G_SIGNAL_RUN_LAST,
|
||||||
|
- 0,
|
||||||
|
- (GSignalAccumulator) NULL, NULL,
|
||||||
|
- atk_marshal_VOID__DOUBLE_STRING,
|
||||||
|
- G_TYPE_NONE,
|
||||||
|
- 2, G_TYPE_DOUBLE, G_TYPE_STRING);
|
||||||
|
-
|
||||||
|
- initialized = TRUE;
|
||||||
|
- }
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
diff -Naur atk-2.20.0/atk/atkwindow.c atk-2.20.0.patch/atk/atkwindow.c
|
||||||
|
--- atk-2.20.0/atk/atkwindow.c 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/atkwindow.c 2016-03-26 01:13:13.448503294 +0100
|
||||||
|
@@ -20,7 +20,6 @@
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "atkwindow.h"
|
||||||
|
-#include "atkmarshal.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECTION:atkwindow
|
||||||
|
diff -Naur atk-2.20.0/atk/Makefile.am atk-2.20.0.patch/atk/Makefile.am
|
||||||
|
--- atk-2.20.0/atk/Makefile.am 2016-02-15 12:29:12.000000000 +0100
|
||||||
|
+++ atk-2.20.0.patch/atk/Makefile.am 2016-03-26 01:08:29.075118340 +0100
|
||||||
|
@@ -115,50 +115,7 @@
|
||||||
|
|
||||||
|
# ---------- Handle built sources ----------
|
||||||
|
|
||||||
|
-BUILT_SOURCES = atkmarshal.h atkmarshal.c atk-enum-types.h atk-enum-types.c
|
||||||
|
-
|
||||||
|
-atkmarshal.h: stamp-atkmarshal.h
|
||||||
|
- @true
|
||||||
|
-stamp-atkmarshal.h: @REBUILD@ atkmarshal.list
|
||||||
|
- $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=atk_marshal $(srcdir)/atkmarshal.list --header >> xgen-gmh \
|
||||||
|
- && (cmp -s xgen-gmh atkmarshal.h || cp xgen-gmh atkmarshal.h) \
|
||||||
|
- && rm -f xgen-gmh xgen-gmh~ \
|
||||||
|
- && echo timestamp > $(@F)
|
||||||
|
-
|
||||||
|
-atkmarshal.c: stamp-atkmarshal.c
|
||||||
|
- @true
|
||||||
|
-stamp-atkmarshal.c: @REBUILD@ atkmarshal.list
|
||||||
|
- $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=atk_marshal $(srcdir)/atkmarshal.list --body >> xgen-gmc \
|
||||||
|
- && (cmp -s xgen-gmc atkmarshal.c || cp xgen-gmc atkmarshal.c) \
|
||||||
|
- && rm -f xgen-gmc xgen-gmc~ \
|
||||||
|
- && echo timestamp > $(@F)
|
||||||
|
-
|
||||||
|
-atk-enum-types.h: s-enum-types-h
|
||||||
|
- @true
|
||||||
|
-s-enum-types-h: @REBUILD@ $(atk_headers) Makefile
|
||||||
|
- $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) \
|
||||||
|
- --fhead "#if defined(ATK_DISABLE_SINGLE_INCLUDES) && !defined (__ATK_H_INSIDE__) && !defined (ATK_COMPILATION)\n#error \"Only <atk/atk.h> can be included directly.\"\n#endif\n\n#ifndef __ATK_ENUM_TYPES_H__\n#define __ATK_ENUM_TYPES_H__\n\n#include <atk/atkversion.h>\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
|
||||||
|
- --fprod "/* enumerations from \"@filename@\" */\n" \
|
||||||
|
- --vhead "ATK_AVAILABLE_IN_ALL\nGType @enum_name@_get_type (void);\n#define ATK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
|
||||||
|
- --ftail "G_END_DECLS\n\n#endif /* __ATK_ENUM_TYPES_H__ */" \
|
||||||
|
- $(atk_headers) ) > tmp-atk-enum-types.h \
|
||||||
|
- && (cmp -s tmp-atk-enum-types.h atk-enum-types.h || cp tmp-atk-enum-types.h atk-enum-types.h ) \
|
||||||
|
- && rm -f tmp-atk-enum-types.h \
|
||||||
|
- && echo timestamp > $(@F)
|
||||||
|
-
|
||||||
|
-atk-enum-types.c: s-enum-types-c
|
||||||
|
- @true
|
||||||
|
-s-enum-types-c: @REBUILD@ $(atk_headers) Makefile
|
||||||
|
- $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) \
|
||||||
|
- --fhead "#include \"config.h\"\n\n#include <atk.h>" \
|
||||||
|
- --fprod "\n/* enumerations from \"@filename@\" */" \
|
||||||
|
- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
|
||||||
|
- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
|
||||||
|
- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
|
||||||
|
- $(atk_headers) ) > tmp-atk-enum-types.c \
|
||||||
|
- && (cmp -s tmp-atk-enum-types.c atk-enum-types.c || cp tmp-atk-enum-types.c atk-enum-types.c ) \
|
||||||
|
- && rm -f tmp-atk-enum-types.c \
|
||||||
|
- && echo timestamp > $(@F)
|
||||||
|
+BUILT_SOURCES = atk-enum-types.h atk-enum-types.c
|
||||||
|
|
||||||
|
|
||||||
|
if HAVE_INTROSPECTION
|
@ -0,0 +1,132 @@
|
|||||||
|
# GdkPixbuf Image Loader Modules file
|
||||||
|
# Automatically generated file, do not edit
|
||||||
|
# Created by gdk-pixbuf-query-loaders from gdk-pixbuf-2.21.5
|
||||||
|
#
|
||||||
|
# LoaderDir = /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders
|
||||||
|
#
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so"
|
||||||
|
"ani" 4 "gdk-pixbuf" "The ANI image format" "LGPL"
|
||||||
|
"application/x-navi-animation" ""
|
||||||
|
"ani" ""
|
||||||
|
"RIFF ACON" " xxxx " 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so"
|
||||||
|
"bmp" 5 "gdk-pixbuf" "The BMP image format" "LGPL"
|
||||||
|
"image/bmp" "image/x-bmp" "image/x-MS-bmp" ""
|
||||||
|
"bmp" ""
|
||||||
|
"BM" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so"
|
||||||
|
"gif" 4 "gdk-pixbuf" "The GIF image format" "LGPL"
|
||||||
|
"image/gif" ""
|
||||||
|
"gif" ""
|
||||||
|
"GIF8" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so"
|
||||||
|
"icns" 4 "gdk-pixbuf" "The ICNS image format" "GPL"
|
||||||
|
"image/x-icns" ""
|
||||||
|
"icns" ""
|
||||||
|
"icns" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so"
|
||||||
|
"ico" 5 "gdk-pixbuf" "The ICO image format" "LGPL"
|
||||||
|
"image/x-icon" "image/x-ico" "image/x-win-bitmap" ""
|
||||||
|
"ico" "cur" ""
|
||||||
|
" \001 " "zz znz" 100
|
||||||
|
" \002 " "zz znz" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-jasper.so"
|
||||||
|
"jpeg2000" 4 "gdk-pixbuf" "The JPEG 2000 image format" "LGPL"
|
||||||
|
"image/jp2" "image/jpeg2000" "image/jpx" ""
|
||||||
|
"jp2" "jpc" "jpx" "j2k" "jpf" ""
|
||||||
|
" jP" "!!!! " 100
|
||||||
|
"\377O\377Q" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-jpeg.so"
|
||||||
|
"jpeg" 5 "gdk-pixbuf" "The JPEG image format" "LGPL"
|
||||||
|
"image/jpeg" ""
|
||||||
|
"jpeg" "jpe" "jpg" ""
|
||||||
|
"\377\330" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pcx.so"
|
||||||
|
"pcx" 4 "gdk-pixbuf" "The PCX image format" "LGPL"
|
||||||
|
"image/x-pcx" ""
|
||||||
|
"pcx" ""
|
||||||
|
"\n \001" "" 100
|
||||||
|
"\n\002\001" "" 100
|
||||||
|
"\n\003\001" "" 100
|
||||||
|
"\n\004\001" "" 100
|
||||||
|
"\n\005\001" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-png.so"
|
||||||
|
"png" 5 "gdk-pixbuf" "The PNG image format" "LGPL"
|
||||||
|
"image/png" ""
|
||||||
|
"png" ""
|
||||||
|
"\211PNG\r\n\032\n" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so"
|
||||||
|
"pnm" 4 "gdk-pixbuf" "The PNM/PBM/PGM/PPM image format family" "LGPL"
|
||||||
|
"image/x-portable-anymap" "image/x-portable-bitmap" "image/x-portable-graymap" "image/x-portable-pixmap" ""
|
||||||
|
"pnm" "pbm" "pgm" "ppm" ""
|
||||||
|
"P1" "" 100
|
||||||
|
"P2" "" 100
|
||||||
|
"P3" "" 100
|
||||||
|
"P4" "" 100
|
||||||
|
"P5" "" 100
|
||||||
|
"P6" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so"
|
||||||
|
"qtif" 4 "gdk-pixbuf" "The QTIF image format" "LGPL"
|
||||||
|
"image/x-quicktime" "image/qtif" ""
|
||||||
|
"qtif" "qif" ""
|
||||||
|
"abcdidsc" "xxxx " 100
|
||||||
|
"abcdidat" "xxxx " 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ras.so"
|
||||||
|
"ras" 4 "gdk-pixbuf" "The Sun raster image format" "LGPL"
|
||||||
|
"image/x-cmu-raster" "image/x-sun-raster" ""
|
||||||
|
"ras" ""
|
||||||
|
"Y\246j\225" "" 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so"
|
||||||
|
"tga" 4 "gdk-pixbuf" "The Targa image format" "LGPL"
|
||||||
|
"image/x-tga" ""
|
||||||
|
"tga" "targa" ""
|
||||||
|
" \001\001" "x " 100
|
||||||
|
" \001\t" "x " 100
|
||||||
|
" \002" "xz " 99
|
||||||
|
" \003" "xz " 100
|
||||||
|
" \n" "xz " 100
|
||||||
|
" \013" "xz " 100
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so"
|
||||||
|
"tiff" 1 "gdk-pixbuf" "The TIFF image format" "LGPL"
|
||||||
|
"image/tiff" ""
|
||||||
|
"tiff" "tif" ""
|
||||||
|
"MM *" " z " 100
|
||||||
|
"II* " " z" 100
|
||||||
|
"II* \020 CR\002 " " z zzz z" 0
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-wbmp.so"
|
||||||
|
"wbmp" 4 "gdk-pixbuf" "The WBMP image format" "LGPL"
|
||||||
|
"image/vnd.wap.wbmp" ""
|
||||||
|
"wbmp" ""
|
||||||
|
" " "zz" 1
|
||||||
|
" `" "z " 1
|
||||||
|
" @" "z " 1
|
||||||
|
" " "z " 1
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so"
|
||||||
|
"xbm" 4 "gdk-pixbuf" "The XBM image format" "LGPL"
|
||||||
|
"image/x-xbitmap" ""
|
||||||
|
"xbm" ""
|
||||||
|
"#define " "" 100
|
||||||
|
"/*" "" 50
|
||||||
|
|
||||||
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so"
|
||||||
|
"xpm" 4 "gdk-pixbuf" "The XPM image format" "LGPL"
|
||||||
|
"image/x-xpixmap" ""
|
||||||
|
"xpm" ""
|
||||||
|
"/* XPM */" "" 100
|
||||||
|
|
||||||
|
|
44
packages/addons/addon-depends/gdk-pixbuf/package.mk
Normal file
44
packages/addons/addon-depends/gdk-pixbuf/package.mk
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="gdk-pixbuf"
|
||||||
|
PKG_VERSION="2.34.0"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="OSS"
|
||||||
|
PKG_SITE="http://www.gtk.org/"
|
||||||
|
PKG_URL="http://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/2.34/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain glib libjpeg-turbo libpng jasper tiff"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/toolkits"
|
||||||
|
PKG_SHORTDESC="gdk-pixbuf: a GNOME library for image loading and manipulation."
|
||||||
|
PKG_LONGDESC="gdk-pixbuf (GdkPixbuf) is a GNOME library for image loading and manipulation. The GdkPixbuf documentation contains both the programmer's guide and the API reference."
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="gio_can_sniff=yes \
|
||||||
|
--disable-gtk-doc \
|
||||||
|
--disable-gtk-doc-html \
|
||||||
|
--disable-gtk-doc-pdf \
|
||||||
|
--disable-man \
|
||||||
|
--with-libpng \
|
||||||
|
--with-libjpeg \
|
||||||
|
--with-libtiff \
|
||||||
|
--with-libjasper"
|
@ -0,0 +1,58 @@
|
|||||||
|
diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am
|
||||||
|
index 8319b49..8f27c5c 100644
|
||||||
|
--- a/gdk-pixbuf/Makefile.am
|
||||||
|
+++ b/gdk-pixbuf/Makefile.am
|
||||||
|
@@ -617,51 +617,21 @@ MAINTAINERCLEANFILES = \
|
||||||
|
#
|
||||||
|
# gdk-pixbuf-enum-types.h
|
||||||
|
#
|
||||||
|
-gdk-pixbuf-enum-types.h: s-enum-types-h
|
||||||
|
+gdk-pixbuf-enum-types.h:
|
||||||
|
@true
|
||||||
|
|
||||||
|
-s-enum-types-h: @REBUILD@ $(gdk_pixbuf_headers) gdk-pixbuf-enum-types.h.template
|
||||||
|
- $(AM_V_GEN)( cd $(srcdir) && $(GLIB_MKENUMS) --template gdk-pixbuf-enum-types.h.template \
|
||||||
|
- $(gdk_pixbuf_headers) ) > tmp-gdk-pixbuf-enum-types.h \
|
||||||
|
- && (cmp -s tmp-gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.h || cp tmp-gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.h ) \
|
||||||
|
- && rm -f tmp-gdk-pixbuf-enum-types.h \
|
||||||
|
- && echo timestamp > $(@F)
|
||||||
|
-
|
||||||
|
CLEANFILES += tmp-gdk-pixbuf-enum-types.h
|
||||||
|
MAINTAINERCLEANFILES += s-enum-types-h
|
||||||
|
|
||||||
|
#
|
||||||
|
-# gdk-pixbuf-enum-types.c
|
||||||
|
-#
|
||||||
|
-gdk-pixbuf-enum-types.c: @REBUILD@ $(gdk_pixbuf_headers) gdk-pixbuf-enum-types.c.template
|
||||||
|
- $(AM_V_GEN)(cd $(srcdir) && $(GLIB_MKENUMS) --template gdk-pixbuf-enum-types.c.template \
|
||||||
|
- $(gdk_pixbuf_headers)) > gdk-pixbuf-enum-types.c
|
||||||
|
-
|
||||||
|
-#
|
||||||
|
# gdk-pixbuf-marshal.h
|
||||||
|
#
|
||||||
|
-gdk-pixbuf-marshal.h: @REBUILD@ stamp-gdk-pixbuf-marshal.h
|
||||||
|
+gdk-pixbuf-marshal.h:
|
||||||
|
@true
|
||||||
|
|
||||||
|
-stamp-gdk-pixbuf-marshal.h: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
|
||||||
|
- $(AM_V_GEN)echo "#if !defined(GDK_PIXBUF_DISABLE_DEPRECATED) || defined(GDK_PIXBUF_COMPILATION)" > xgen-gmh \
|
||||||
|
- && $(GLIB_GENMARSHAL) --prefix=_gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --header >> xgen-gmh \
|
||||||
|
- && echo "#endif /* !GDK_PIXBUF_DISABLE_DEPRECATED || GDK_PIXBUF_COMPILATION */" >> xgen-gmh \
|
||||||
|
- && (cmp -s xgen-gmh gdk-pixbuf-marshal.h || cp xgen-gmh gdk-pixbuf-marshal.h) \
|
||||||
|
- && rm -f xgen-gmh xgen-gmh~ \
|
||||||
|
- && echo timestamp > $(@F)
|
||||||
|
-
|
||||||
|
CLEANFILES += xgen-gmh
|
||||||
|
MAINTAINERCLEANFILES += stamp-gdk-pixbuf-marshal.h
|
||||||
|
|
||||||
|
-#
|
||||||
|
-# gdk-pixbuf-marshal.c
|
||||||
|
-#
|
||||||
|
-$(srcdir)/gdk-pixbuf-marshal.c: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
|
||||||
|
- $(AM_V_GEN)(echo -e "#include <gdk-pixbuf/gdk-pixbuf.h>\n" | $(GLIB_GENMARSHAL) --prefix=_gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --body ) >> xgen-gmc \
|
||||||
|
- && cp xgen-gmc gdk-pixbuf-marshal.c \
|
||||||
|
- && rm -f xgen-gmc xgen-gmc~
|
||||||
|
-
|
||||||
|
CLEANFILES += xgen-gmc
|
||||||
|
|
||||||
|
# if srcdir!=builddir, clean out maintainer-clean files from builddir
|
57
packages/addons/addon-depends/gtk+/package.mk
Normal file
57
packages/addons/addon-depends/gtk+/package.mk
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="gtk+"
|
||||||
|
PKG_VERSION="2.24.30"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="OSS"
|
||||||
|
PKG_SITE="http://www.gtk.org/"
|
||||||
|
PKG_URL="http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain atk libX11 libXrandr libXi glib pango cairo gdk-pixbuf"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/toolkits"
|
||||||
|
PKG_SHORTDESC="gtk+: The Gimp ToolKit (GTK)"
|
||||||
|
PKG_LONGDESC="This is GTK+. GTK+, which stands for the Gimp ToolKit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach."
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="ac_cv_path_GLIB_GENMARSHAL=$ROOT/$TOOLCHAIN/bin/glib-genmarshal \
|
||||||
|
--disable-glibtest \
|
||||||
|
--enable-modules \
|
||||||
|
--enable-explicit-deps=no \
|
||||||
|
--disable-debug \
|
||||||
|
--enable-shm \
|
||||||
|
--disable-cups \
|
||||||
|
--disable-papi \
|
||||||
|
--enable-xkb \
|
||||||
|
--disable-xinerama \
|
||||||
|
--disable-gtk-doc-html \
|
||||||
|
--with-xinput"
|
||||||
|
|
||||||
|
make_target() {
|
||||||
|
make SRC_SUBDIRS="gdk gtk modules"
|
||||||
|
$MAKEINSTALL SRC_SUBDIRS="gdk gtk modules"
|
||||||
|
}
|
||||||
|
|
||||||
|
makeinstall_target() {
|
||||||
|
make install DESTDIR=$INSTALL SRC_SUBDIRS="gdk gtk modules"
|
||||||
|
}
|
@ -0,0 +1,64 @@
|
|||||||
|
From fca2ac06da064b133101f215efd5fbd738fb3ef9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Stefan Saraev <stefan@saraev.ca>
|
||||||
|
Date: Thu, 27 Mar 2014 14:26:27 +0200
|
||||||
|
Subject: [PATCH] no gtk-doc
|
||||||
|
|
||||||
|
---
|
||||||
|
Makefile.am | 3 +--
|
||||||
|
configure.ac | 12 ------------
|
||||||
|
2 files changed, 1 insertions(+), 14 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 8e3a2f1..35e94d2 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -2,7 +2,7 @@
|
||||||
|
include $(top_srcdir)/Makefile.decl
|
||||||
|
|
||||||
|
SRC_SUBDIRS = gdk gtk modules demos tests perf
|
||||||
|
-SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
|
||||||
|
+SUBDIRS = po po-properties $(SRC_SUBDIRS) m4macros build
|
||||||
|
|
||||||
|
# require automake 1.4
|
||||||
|
AUTOMAKE_OPTIONS = 1.7
|
||||||
|
@@ -136,7 +136,6 @@ MAINTAINERCLEANFILES = \
|
||||||
|
$(srcdir)/mkinstalldirs \
|
||||||
|
$(srcdir)/omf.make \
|
||||||
|
$(srcdir)/xmldocs.make \
|
||||||
|
- $(srcdir)/gtk-doc.make \
|
||||||
|
$(srcdir)/ChangeLog \
|
||||||
|
`find "$(srcdir)" -type f -name Makefile.in -print`
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 245a87f..f6ede8a 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -1594,8 +1594,6 @@ GOBJECT_INTROSPECTION_CHECK([0.9.3])
|
||||||
|
# Checks for gtk-doc and docbook-tools
|
||||||
|
##################################################
|
||||||
|
|
||||||
|
-GTK_DOC_CHECK([1.11])
|
||||||
|
-
|
||||||
|
AC_CHECK_PROG(DB2HTML, db2html, true, false)
|
||||||
|
AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
|
||||||
|
|
||||||
|
@@ -1727,16 +1725,6 @@ demos/Makefile
|
||||||
|
demos/gtk-demo/Makefile
|
||||||
|
demos/gtk-demo/geninclude.pl
|
||||||
|
tests/Makefile
|
||||||
|
-docs/Makefile
|
||||||
|
-docs/reference/Makefile
|
||||||
|
-docs/reference/gdk/Makefile
|
||||||
|
-docs/reference/gdk/version.xml
|
||||||
|
-docs/reference/gtk/Makefile
|
||||||
|
-docs/reference/gtk/version.xml
|
||||||
|
-docs/reference/libgail-util/Makefile
|
||||||
|
-docs/faq/Makefile
|
||||||
|
-docs/tools/Makefile
|
||||||
|
-docs/tutorial/Makefile
|
||||||
|
build/Makefile
|
||||||
|
build/win32/Makefile
|
||||||
|
build/win32/vs9/Makefile
|
||||||
|
--
|
||||||
|
1.7.2.5
|
||||||
|
|
@ -0,0 +1,34 @@
|
|||||||
|
From 3cb23c7b05be36e130bd1930dad3382ce8c08c51 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Stefan Saraev <stefan@saraev.ca>
|
||||||
|
Date: Sun, 26 Oct 2014 00:26:09 +0300
|
||||||
|
Subject: [PATCH] meh glib
|
||||||
|
|
||||||
|
---
|
||||||
|
gdk/Makefile.am | 4 ++--
|
||||||
|
1 files changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
|
||||||
|
index c880f6e..7661530 100644
|
||||||
|
--- a/gdk/Makefile.am
|
||||||
|
+++ b/gdk/Makefile.am
|
||||||
|
@@ -307,7 +307,7 @@ lib_LTLIBRARIES = $(gdktargetlib)
|
||||||
|
|
||||||
|
EXTRA_LTLIBRARIES = libgdk-x11-2.0.la libgdk-win32-2.0.la libgdk-quartz-2.0.la libgdk-directfb-2.0.la
|
||||||
|
|
||||||
|
-MAINTAINERCLEANFILES = $(gdk_built_sources) stamp-gdkenumtypes.h
|
||||||
|
+MAINTAINERCLEANFILES = $(gdk_built_sources)
|
||||||
|
EXTRA_DIST += $(gdk_built_sources)
|
||||||
|
EXTRA_HEADERS =
|
||||||
|
|
||||||
|
@@ -333,7 +333,7 @@ BUILT_SOURCES = \
|
||||||
|
$(gdk_built_sources) \
|
||||||
|
gdkconfig.h
|
||||||
|
|
||||||
|
-gdkenumtypes.h: stamp-gdkenumtypes.h
|
||||||
|
+gdkenumtypes.h:
|
||||||
|
@true
|
||||||
|
stamp-gdkenumtypes.h: @REBUILD@ $(gdk_public_h_sources) gdkenumtypes.h.template
|
||||||
|
( cd $(srcdir) && $(GLIB_MKENUMS) --template gdkenumtypes.h.template \
|
||||||
|
--
|
||||||
|
1.7.2.5
|
||||||
|
|
38
packages/addons/addon-depends/harfbuzz/package.mk
Normal file
38
packages/addons/addon-depends/harfbuzz/package.mk
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="harfbuzz"
|
||||||
|
PKG_VERSION="1.2.5"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="GPL"
|
||||||
|
PKG_SITE="http://www.freedesktop.org/wiki/Software/HarfBuzz"
|
||||||
|
PKG_URL="http://www.freedesktop.org/software/harfbuzz/release/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain glib freetype cairo"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/toolkits"
|
||||||
|
PKG_SHORTDESC="harfbuzz: an OpenType text shaping engine."
|
||||||
|
PKG_LONGDESC="HarfBuzz is an OpenType text shaping engine."
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_MAINTAINER="none"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--with-icu=no"
|
35
packages/addons/addon-depends/libXScrnSaver/package.mk
Normal file
35
packages/addons/addon-depends/libXScrnSaver/package.mk
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="libXScrnSaver"
|
||||||
|
PKG_VERSION="1.2.2"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="GPL"
|
||||||
|
PKG_SITE="http://xorg.freedesktop.org/"
|
||||||
|
PKG_URL="http://xorg.freedesktop.org/releases/individual/lib/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain scrnsaverproto"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/lib"
|
||||||
|
PKG_SHORTDESC=""
|
||||||
|
PKG_LONGDESC=""
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared --enable-malloc0returnsnull"
|
37
packages/addons/addon-depends/libXcursor/package.mk
Normal file
37
packages/addons/addon-depends/libXcursor/package.mk
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="libXcursor"
|
||||||
|
PKG_VERSION="1.1.14"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="OSS"
|
||||||
|
PKG_SITE="http://www.X.org"
|
||||||
|
PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain libX11 libXfixes libXrender"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/lib"
|
||||||
|
PKG_SHORTDESC="libXcursor: X Cursor Library"
|
||||||
|
PKG_LONGDESC="X11 Cursor management library"
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--disable-shared --enable-static"
|
35
packages/addons/addon-depends/libXft/package.mk
Normal file
35
packages/addons/addon-depends/libXft/package.mk
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="libXft"
|
||||||
|
PKG_VERSION="2.3.2"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="OSS"
|
||||||
|
PKG_SITE="http://www.X.org"
|
||||||
|
PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain util-macros xproto libXrender fontconfig freetype"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/lib"
|
||||||
|
PKG_SHORTDESC="libxft: X FreeType library"
|
||||||
|
PKG_LONGDESC="X FreeType library"
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared"
|
33
packages/addons/addon-depends/libexif/package.mk
Normal file
33
packages/addons/addon-depends/libexif/package.mk
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="libexif"
|
||||||
|
PKG_VERSION="0.6.21"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="LGPL"
|
||||||
|
PKG_SITE="http://sourceforge.net/projects/libexif"
|
||||||
|
PKG_URL="http://downloads.sf.net/sourceforge/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="lib"
|
||||||
|
PKG_SHORTDESC="A library to parse an EXIF file and read the data from those tags"
|
||||||
|
PKG_LONGDESC="A library to parse an EXIF file and read the data from those tags"
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
37
packages/addons/addon-depends/libva-vdpau-driver/package.mk
Normal file
37
packages/addons/addon-depends/libva-vdpau-driver/package.mk
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="libva-vdpau-driver"
|
||||||
|
PKG_VERSION="0.7.4"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="GPL"
|
||||||
|
PKG_SITE="http://freedesktop.org/wiki/Software/vaapi"
|
||||||
|
PKG_URL="http://freedesktop.org/software/vaapi/releases/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain libva libvdpau mesa"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="graphics"
|
||||||
|
PKG_SHORTDESC="VDPAU backend for VA API"
|
||||||
|
PKG_LONGDESC="VDPAU backend for VA API"
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
post_makeinstall_target() {
|
||||||
|
rm -rf $INSTALL/usr/lib/va/s3g_drv_video.so
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
>From fda3706eb74ba5ad874853969f3df3e372739c8d Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Xiang, Haihao" <haihao.xiang@intel.com>
|
||||||
|
Date: Fri, 21 Jun 2013 12:55:30 +0800
|
||||||
|
Subject: [PATCH] VAEncH264VUIBufferType and VAEncH264SEIBufferType are
|
||||||
|
dropped from VA API
|
||||||
|
|
||||||
|
The driver doesn't use them indeed
|
||||||
|
|
||||||
|
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
|
||||||
|
---
|
||||||
|
src/vdpau_dump.c | 2 --
|
||||||
|
1 file changed, 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/vdpau_dump.c b/src/vdpau_dump.c
|
||||||
|
index 899888b..610e7cd 100644
|
||||||
|
--- a/src/vdpau_dump.c
|
||||||
|
+++ b/src/vdpau_dump.c
|
||||||
|
@@ -59,8 +59,6 @@ const char *string_of_VABufferType(VABufferType type)
|
||||||
|
_(VAEncSequenceParameterBufferType);
|
||||||
|
_(VAEncPictureParameterBufferType);
|
||||||
|
_(VAEncSliceParameterBufferType);
|
||||||
|
- _(VAEncH264VUIBufferType);
|
||||||
|
- _(VAEncH264SEIBufferType);
|
||||||
|
#endif
|
||||||
|
#if VA_CHECK_VERSION(0,31,1)
|
||||||
|
_(VAQMatrixBufferType);
|
||||||
|
--
|
||||||
|
1.7.9.5
|
||||||
|
|
@ -0,0 +1,16 @@
|
|||||||
|
--- a/src/utils_glx.h~ 2012-10-05 16:02:58.000000000 +0100
|
||||||
|
+++ b/src/utils_glx.h 2012-10-19 08:44:12.469642440 +0100
|
||||||
|
@@ -48,6 +48,13 @@
|
||||||
|
typedef void (*PFNGLXRELEASETEXIMAGEEXTPROC)(Display *, GLXDrawable, int);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+#if GL_GLEXT_VERSION >= 85
|
||||||
|
+/* XXX: PFNGLMULTITEXCOORD2FPROC got out of the GL_VERSION_1_3_DEPRECATED
|
||||||
|
+ block and is not defined if GL_VERSION_1_3 is defined in <GL/gl.h>
|
||||||
|
+ Redefine the type here as an interim solution */
|
||||||
|
+typedef void (*PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#ifndef GL_FRAMEBUFFER_BINDING
|
||||||
|
#define GL_FRAMEBUFFER_BINDING GL_FRAMEBUFFER_BINDING_EXT
|
||||||
|
#endif
|
@ -0,0 +1,11 @@
|
|||||||
|
--- a/src/vdpau_decode.c
|
||||||
|
+++ b/src/vdpau_decode.c
|
||||||
|
@@ -1289,7 +1289,7 @@
|
||||||
|
driver_data,
|
||||||
|
obj_context->vdp_decoder,
|
||||||
|
obj_surface->vdp_surface,
|
||||||
|
- (VdpPictureInfo)&obj_context->vdp_picture_info,
|
||||||
|
+ (VdpPictureInfo *)&obj_context->vdp_picture_info,
|
||||||
|
obj_context->vdp_bitstream_buffers_count,
|
||||||
|
obj_context->vdp_bitstream_buffers
|
||||||
|
);
|
44
packages/addons/addon-depends/ninja/package.mk
Normal file
44
packages/addons/addon-depends/ninja/package.mk
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="ninja"
|
||||||
|
PKG_VERSION="1.6.0"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="Apache"
|
||||||
|
PKG_SITE="http://martine.github.io/ninja/"
|
||||||
|
PKG_URL="https://github.com/ninja-build/ninja/archive/v$PKG_VERSION.tar.gz"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="devel"
|
||||||
|
PKG_SHORTDESC="Small build system with a focus on speed"
|
||||||
|
PKG_LONGDESC="Small build system with a focus on speed"
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="no"
|
||||||
|
|
||||||
|
configure_host() {
|
||||||
|
:
|
||||||
|
}
|
||||||
|
|
||||||
|
make_host() {
|
||||||
|
python2 configure.py --bootstrap
|
||||||
|
}
|
||||||
|
|
||||||
|
makeinstall_host() {
|
||||||
|
cp ninja $ROOT/$TOOLCHAIN/bin/
|
||||||
|
}
|
48
packages/addons/addon-depends/nspr/package.mk
Normal file
48
packages/addons/addon-depends/nspr/package.mk
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="nspr"
|
||||||
|
PKG_VERSION="4.12"
|
||||||
|
PKG_REV="2"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="Mozilla Public License"
|
||||||
|
PKG_SITE="http://www.linuxfromscratch.org/blfs/view/svn/general/nspr.html"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain nss:host"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="security"
|
||||||
|
PKG_SHORTDESC="Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level and libc like functions"
|
||||||
|
PKG_LONGDESC="Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level and libc like functions"
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="no"
|
||||||
|
|
||||||
|
MAKEFLAGS=-j1
|
||||||
|
|
||||||
|
if [ "$TARGET_ARCH" = "x86_64" ] ; then
|
||||||
|
TARGET_USE_64="--enable-64bit"
|
||||||
|
fi
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--with-pthreads $TARGET_USE_64"
|
||||||
|
PKG_MAKE_OPTS_TARGET="NSINSTALL=$ROOT/$TOOLCHAIN/bin/nsinstall"
|
||||||
|
PKG_MAKEINSTALL_OPTS_TARGET="NSINSTALL=$ROOT/$TOOLCHAIN/bin/nsinstall"
|
||||||
|
|
||||||
|
configure_target() {
|
||||||
|
cd $(get_build_dir nss)/nspr
|
||||||
|
./configure --with-pthreads $TARGET_USE_64 $TARGET_CONFIGURE_OPTS
|
||||||
|
}
|
78
packages/addons/addon-depends/nss/package.mk
Normal file
78
packages/addons/addon-depends/nss/package.mk
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="nss"
|
||||||
|
PKG_VERSION="3.22.3"
|
||||||
|
PKG_REV="2"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="Mozilla Public License"
|
||||||
|
PKG_SITE="http://ftp.mozilla.org/"
|
||||||
|
PKG_URL="http://ftp.mozilla.org/pub/security/nss/releases/NSS_3_22_3_RTM/src/nss-3.22.3-with-nspr-4.12.tar.gz"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain nss:host nspr"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="security"
|
||||||
|
PKG_SHORTDESC="The Network Security Services (NSS) package is a set of libraries designed to support cross-platform development of security-enabled client and server applications"
|
||||||
|
PKG_LONGDESC="The Network Security Services (NSS) package is a set of libraries designed to support cross-platform development of security-enabled client and server applications"
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="no"
|
||||||
|
|
||||||
|
MAKEFLAGS=-j1
|
||||||
|
|
||||||
|
make_host() {
|
||||||
|
cd $ROOT/$PKG_BUILD/nss
|
||||||
|
|
||||||
|
[ "$TARGET_ARCH" = "x86_64" ] && export USE_64=1
|
||||||
|
|
||||||
|
make -C coreconf/nsinstall
|
||||||
|
}
|
||||||
|
|
||||||
|
makeinstall_host() {
|
||||||
|
cp $ROOT/$PKG_BUILD/nss/coreconf/nsinstall/*/nsinstall $ROOT/$TOOLCHAIN/bin
|
||||||
|
}
|
||||||
|
|
||||||
|
post_makeinstall_host() {
|
||||||
|
rm -rf $ROOT/$PKG_BUILD/nss/coreconf/nsinstall/Linux*
|
||||||
|
}
|
||||||
|
|
||||||
|
make_target() {
|
||||||
|
cd $ROOT/$PKG_BUILD/nss
|
||||||
|
|
||||||
|
[ "$TARGET_ARCH" = "x86_64" ] && TARGET_USE_64="USE_64=1"
|
||||||
|
|
||||||
|
make BUILD_OPT=1 $TARGET_USE_64 \
|
||||||
|
NSPR_INCLUDE_DIR=$SYSROOT_PREFIX/usr/include/nspr \
|
||||||
|
USE_SYSTEM_ZLIB=1 ZLIB_LIBS=-lz \
|
||||||
|
OS_TEST=$TARGET_ARCH \
|
||||||
|
NSS_TESTS="dummy" \
|
||||||
|
NSINSTALL=$ROOT/$TOOLCHAIN/bin/nsinstall \
|
||||||
|
CPU_ARCH_TAG=$TARGET_ARCH \
|
||||||
|
CC=$TARGET_CC LDFLAGS="$LDFLAGS -L$SYSROOT_PREFIX/usr/lib" \
|
||||||
|
V=1
|
||||||
|
}
|
||||||
|
|
||||||
|
makeinstall_target() {
|
||||||
|
cd $ROOT/$PKG_BUILD
|
||||||
|
$STRIP dist/Linux*/lib/*.so
|
||||||
|
cp -L dist/Linux*/lib/*.so $SYSROOT_PREFIX/usr/lib
|
||||||
|
cp -L dist/Linux*/lib/libcrmf.a $SYSROOT_PREFIX/usr/lib
|
||||||
|
mkdir -p $SYSROOT_PREFIX/usr/include/nss
|
||||||
|
cp -RL dist/{public,private}/nss/* $SYSROOT_PREFIX/usr/include/nss
|
||||||
|
cp -L dist/Linux*/lib/pkgconfig/nss.pc $SYSROOT_PREFIX/usr/lib/pkgconfig
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
diff --git a/nss/cmd/shlibsign/Makefile b/nss/cmd/shlibsign/Makefile
|
||||||
|
index 83f90fa..177feee 100644
|
||||||
|
--- a/nss/cmd/shlibsign/Makefile
|
||||||
|
+++ b/nss/cmd/shlibsign/Makefile
|
||||||
|
@@ -95,5 +95,3 @@ else
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
-libs install :: $(CHECKLOC)
|
||||||
|
-
|
||||||
|
diff --git a/nss/coreconf/Linux.mk b/nss/coreconf/Linux.mk
|
||||||
|
index a586e5e..e815b72 100644
|
||||||
|
--- a/nss/coreconf/Linux.mk
|
||||||
|
+++ b/nss/coreconf/Linux.mk
|
||||||
|
@@ -16,12 +16,6 @@ ifeq ($(USE_PTHREADS),1)
|
||||||
|
IMPL_STRATEGY = _PTH
|
||||||
|
endif
|
||||||
|
|
||||||
|
-CC = gcc
|
||||||
|
-CCC = g++
|
||||||
|
-RANLIB = ranlib
|
||||||
|
-
|
||||||
|
-DEFAULT_COMPILER = gcc
|
||||||
|
-
|
||||||
|
ifeq ($(OS_TARGET),Android)
|
||||||
|
ifndef ANDROID_NDK
|
||||||
|
$(error Must set ANDROID_NDK to the path to the android NDK first)
|
@ -0,0 +1,241 @@
|
|||||||
|
Submitted By: Armin K. <krejzi at email dot com>
|
||||||
|
Date: 2013-07-02
|
||||||
|
Initial Package Version: 3.15
|
||||||
|
Upstream Status: Not applicable
|
||||||
|
Origin: Based on dj's original patch, rediffed and modified for 3.15
|
||||||
|
Description: Adds auto-generated nss.pc and nss-config script, and allows
|
||||||
|
building without nspr in the source tree.
|
||||||
|
|
||||||
|
--- a/nss/config/Makefile 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
+++ b/nss/config/Makefile 2013-07-02 14:53:56.684750636 +0200
|
||||||
|
@@ -0,0 +1,40 @@
|
||||||
|
+CORE_DEPTH = ..
|
||||||
|
+DEPTH = ..
|
||||||
|
+
|
||||||
|
+include $(CORE_DEPTH)/coreconf/config.mk
|
||||||
|
+
|
||||||
|
+NSS_MAJOR_VERSION = `grep "NSS_VMAJOR" ../lib/nss/nss.h | awk '{print $$3}'`
|
||||||
|
+NSS_MINOR_VERSION = `grep "NSS_VMINOR" ../lib/nss/nss.h | awk '{print $$3}'`
|
||||||
|
+NSS_PATCH_VERSION = `grep "NSS_VPATCH" ../lib/nss/nss.h | awk '{print $$3}'`
|
||||||
|
+PREFIX = /usr
|
||||||
|
+
|
||||||
|
+all: export libs
|
||||||
|
+
|
||||||
|
+export:
|
||||||
|
+ # Create the nss.pc file
|
||||||
|
+ mkdir -p $(DIST)/lib/pkgconfig
|
||||||
|
+ sed -e "s,@prefix@,$(PREFIX)," \
|
||||||
|
+ -e "s,@exec_prefix@,\$${prefix}," \
|
||||||
|
+ -e "s,@libdir@,\$${prefix}/lib," \
|
||||||
|
+ -e "s,@includedir@,\$${prefix}/include/nss," \
|
||||||
|
+ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION),g" \
|
||||||
|
+ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \
|
||||||
|
+ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \
|
||||||
|
+ nss.pc.in > nss.pc
|
||||||
|
+ chmod 0644 nss.pc
|
||||||
|
+ ln -sf ../../../../nss/config/nss.pc $(DIST)/lib/pkgconfig
|
||||||
|
+
|
||||||
|
+ # Create the nss-config script
|
||||||
|
+ mkdir -p $(DIST)/bin
|
||||||
|
+ sed -e "s,@prefix@,$(PREFIX)," \
|
||||||
|
+ -e "s,@NSS_MAJOR_VERSION@,$(NSS_MAJOR_VERSION)," \
|
||||||
|
+ -e "s,@NSS_MINOR_VERSION@,$(NSS_MINOR_VERSION)," \
|
||||||
|
+ -e "s,@NSS_PATCH_VERSION@,$(NSS_PATCH_VERSION)," \
|
||||||
|
+ nss-config.in > nss-config
|
||||||
|
+ chmod 0755 nss-config
|
||||||
|
+ ln -sf ../../../nss/config/nss-config $(DIST)/bin
|
||||||
|
+
|
||||||
|
+libs:
|
||||||
|
+
|
||||||
|
+dummy: all export libs
|
||||||
|
+
|
||||||
|
--- a/nss/config/nss-config.in 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
+++ b/nss/config/nss-config.in 2013-07-02 14:52:58.328084334 +0200
|
||||||
|
@@ -0,0 +1,153 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+
|
||||||
|
+prefix=@prefix@
|
||||||
|
+
|
||||||
|
+major_version=@NSS_MAJOR_VERSION@
|
||||||
|
+minor_version=@NSS_MINOR_VERSION@
|
||||||
|
+patch_version=@NSS_PATCH_VERSION@
|
||||||
|
+
|
||||||
|
+usage()
|
||||||
|
+{
|
||||||
|
+ cat <<EOF
|
||||||
|
+Usage: nss-config [OPTIONS] [LIBRARIES]
|
||||||
|
+Options:
|
||||||
|
+ [--prefix[=DIR]]
|
||||||
|
+ [--exec-prefix[=DIR]]
|
||||||
|
+ [--includedir[=DIR]]
|
||||||
|
+ [--libdir[=DIR]]
|
||||||
|
+ [--version]
|
||||||
|
+ [--libs]
|
||||||
|
+ [--cflags]
|
||||||
|
+Dynamic Libraries:
|
||||||
|
+ nss
|
||||||
|
+ nssutil
|
||||||
|
+ smime
|
||||||
|
+ ssl
|
||||||
|
+ softokn
|
||||||
|
+EOF
|
||||||
|
+ exit $1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+if test $# -eq 0; then
|
||||||
|
+ usage 1 1>&2
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+lib_nss=yes
|
||||||
|
+lib_nssutil=yes
|
||||||
|
+lib_smime=yes
|
||||||
|
+lib_ssl=yes
|
||||||
|
+lib_softokn=yes
|
||||||
|
+
|
||||||
|
+while test $# -gt 0; do
|
||||||
|
+ case "$1" in
|
||||||
|
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
|
||||||
|
+ *) optarg= ;;
|
||||||
|
+ esac
|
||||||
|
+
|
||||||
|
+ case $1 in
|
||||||
|
+ --prefix=*)
|
||||||
|
+ prefix=$optarg
|
||||||
|
+ ;;
|
||||||
|
+ --prefix)
|
||||||
|
+ echo_prefix=yes
|
||||||
|
+ ;;
|
||||||
|
+ --exec-prefix=*)
|
||||||
|
+ exec_prefix=$optarg
|
||||||
|
+ ;;
|
||||||
|
+ --exec-prefix)
|
||||||
|
+ echo_exec_prefix=yes
|
||||||
|
+ ;;
|
||||||
|
+ --includedir=*)
|
||||||
|
+ includedir=$optarg
|
||||||
|
+ ;;
|
||||||
|
+ --includedir)
|
||||||
|
+ echo_includedir=yes
|
||||||
|
+ ;;
|
||||||
|
+ --libdir=*)
|
||||||
|
+ libdir=$optarg
|
||||||
|
+ ;;
|
||||||
|
+ --libdir)
|
||||||
|
+ echo_libdir=yes
|
||||||
|
+ ;;
|
||||||
|
+ --version)
|
||||||
|
+ echo ${major_version}.${minor_version}.${patch_version}
|
||||||
|
+ ;;
|
||||||
|
+ --cflags)
|
||||||
|
+ echo_cflags=yes
|
||||||
|
+ ;;
|
||||||
|
+ --libs)
|
||||||
|
+ echo_libs=yes
|
||||||
|
+ ;;
|
||||||
|
+ nss)
|
||||||
|
+ lib_nss=yes
|
||||||
|
+ ;;
|
||||||
|
+ nssutil)
|
||||||
|
+ lib_nssutil=yes
|
||||||
|
+ ;;
|
||||||
|
+ smime)
|
||||||
|
+ lib_smime=yes
|
||||||
|
+ ;;
|
||||||
|
+ ssl)
|
||||||
|
+ lib_ssl=yes
|
||||||
|
+ ;;
|
||||||
|
+ softokn)
|
||||||
|
+ lib_softokn=yes
|
||||||
|
+ ;;
|
||||||
|
+ *)
|
||||||
|
+ usage 1 1>&2
|
||||||
|
+ ;;
|
||||||
|
+ esac
|
||||||
|
+ shift
|
||||||
|
+done
|
||||||
|
+
|
||||||
|
+# Set variables that may be dependent upon other variables
|
||||||
|
+if test -z "$exec_prefix"; then
|
||||||
|
+ exec_prefix=`pkg-config --variable=exec_prefix nss`
|
||||||
|
+fi
|
||||||
|
+if test -z "$includedir"; then
|
||||||
|
+ includedir=`pkg-config --variable=includedir nss`
|
||||||
|
+fi
|
||||||
|
+if test -z "$libdir"; then
|
||||||
|
+ libdir=`pkg-config --variable=libdir nss`
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if test "$echo_prefix" = "yes"; then
|
||||||
|
+ echo $prefix
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if test "$echo_exec_prefix" = "yes"; then
|
||||||
|
+ echo $exec_prefix
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if test "$echo_includedir" = "yes"; then
|
||||||
|
+ echo $includedir
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if test "$echo_libdir" = "yes"; then
|
||||||
|
+ echo $libdir
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if test "$echo_cflags" = "yes"; then
|
||||||
|
+ echo -I$includedir
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if test "$echo_libs" = "yes"; then
|
||||||
|
+ libdirs="-L$libdir"
|
||||||
|
+ if test -n "$lib_nss"; then
|
||||||
|
+ libdirs="$libdirs -lnss${major_version}"
|
||||||
|
+ fi
|
||||||
|
+ if test -n "$lib_nssutil"; then
|
||||||
|
+ libdirs="$libdirs -lnssutil${major_version}"
|
||||||
|
+ fi
|
||||||
|
+ if test -n "$lib_smime"; then
|
||||||
|
+ libdirs="$libdirs -lsmime${major_version}"
|
||||||
|
+ fi
|
||||||
|
+ if test -n "$lib_ssl"; then
|
||||||
|
+ libdirs="$libdirs -lssl${major_version}"
|
||||||
|
+ fi
|
||||||
|
+ if test -n "$lib_softokn"; then
|
||||||
|
+ libdirs="$libdirs -lsoftokn${major_version}"
|
||||||
|
+ fi
|
||||||
|
+ echo $libdirs
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
--- a/nss/config/nss.pc.in 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
+++ b/nss/config/nss.pc.in 2013-07-02 14:52:58.328084334 +0200
|
||||||
|
@@ -0,0 +1,12 @@
|
||||||
|
+prefix=@prefix@
|
||||||
|
+exec_prefix=@exec_prefix@
|
||||||
|
+libdir=@libdir@
|
||||||
|
+includedir=@includedir@
|
||||||
|
+
|
||||||
|
+Name: NSS
|
||||||
|
+Description: Network Security Services
|
||||||
|
+Version: @NSS_MAJOR_VERSION@.@NSS_MINOR_VERSION@.@NSS_PATCH_VERSION@
|
||||||
|
+Requires: nspr >= 4.8
|
||||||
|
+Libs: -L@libdir@ -lnss@NSS_MAJOR_VERSION@ -lnssutil@NSS_MAJOR_VERSION@ -lsmime@NSS_MAJOR_VERSION@ -lssl@NSS_MAJOR_VERSION@ -lsoftokn@NSS_MAJOR_VERSION@
|
||||||
|
+Cflags: -I${includedir}
|
||||||
|
+
|
||||||
|
--- a/nss/Makefile 2013-05-28 23:43:24.000000000 +0200
|
||||||
|
+++ b/nss/Makefile 2013-07-02 14:52:58.328084334 +0200
|
||||||
|
@@ -44,7 +44,7 @@
|
||||||
|
# (7) Execute "local" rules. (OPTIONAL). #
|
||||||
|
#######################################################################
|
||||||
|
|
||||||
|
-nss_build_all: build_nspr all
|
||||||
|
+nss_build_all: all
|
||||||
|
|
||||||
|
nss_clean_all: clobber_nspr clobber
|
||||||
|
|
||||||
|
--- a/nss/manifest.mn 2013-05-28 23:43:24.000000000 +0200
|
||||||
|
+++ b/nss/manifest.mn 2013-07-02 14:52:58.331417666 +0200
|
||||||
|
@@ -10,4 +10,4 @@
|
||||||
|
|
||||||
|
RELEASE = nss
|
||||||
|
|
||||||
|
-DIRS = coreconf lib cmd external_tests
|
||||||
|
+DIRS = coreconf lib cmd config
|
18
packages/addons/addon-depends/pango/config/pango.modules
Normal file
18
packages/addons/addon-depends/pango/config/pango.modules
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# Pango Modules file
|
||||||
|
# Automatically generated file, do not edit
|
||||||
|
#
|
||||||
|
# ModulesPath = /usr/lib/pango/1.8.0/modules
|
||||||
|
#
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-arabic-lang.so ArabicScriptEngineLang PangoEngineLang PangoRenderNone arabic:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-basic-fc.so BasicScriptEngineFc PangoEngineShape PangoRenderFc common:
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so devaIndicScriptEngineLang PangoEngineLang PangoRenderNone devanagari:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so bengIndicScriptEngineLang PangoEngineLang PangoRenderNone bengali:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so guruIndicScriptEngineLang PangoEngineLang PangoRenderNone gurmukhi:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so gujrIndicScriptEngineLang PangoEngineLang PangoRenderNone gujarati:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so oryaIndicScriptEngineLang PangoEngineLang PangoRenderNone oriya:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so tamlIndicScriptEngineLang PangoEngineLang PangoRenderNone tamil:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so teluIndicScriptEngineLang PangoEngineLang PangoRenderNone telugu:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so kndaIndicScriptEngineLang PangoEngineLang PangoRenderNone kannada:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so mlymIndicScriptEngineLang PangoEngineLang PangoRenderNone malayalam:*
|
||||||
|
/usr/lib/pango/1.8.0/modules/pango-indic-lang.so sinhIndicScriptEngineLang PangoEngineLang PangoRenderNone sinhala:*
|
||||||
|
|
6
packages/addons/addon-depends/pango/config/pangorc
Normal file
6
packages/addons/addon-depends/pango/config/pangorc
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[Pango]
|
||||||
|
ModuleFiles = /etc/pango/pango.modules
|
||||||
|
ModulesPath = /usr/lib/pango/1.8.0/modules
|
||||||
|
|
||||||
|
[PangoX]
|
||||||
|
AliasFiles = /etc/pango/pangox.aliases
|
40
packages/addons/addon-depends/pango/package.mk
Normal file
40
packages/addons/addon-depends/pango/package.mk
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="pango"
|
||||||
|
PKG_VERSION="1.40.0"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="GPL"
|
||||||
|
PKG_SITE="http://www.pango.org/"
|
||||||
|
PKG_URL="http://ftp.gnome.org/pub/gnome/sources/pango/1.40/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain glib cairo freetype fontconfig libX11 libXft harfbuzz"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/toolkits"
|
||||||
|
PKG_SHORTDESC="pango: Library for layout and rendering of internationalized text"
|
||||||
|
PKG_LONGDESC="The goal of the Pango project is to provide an open-source framework for the layout and rendering of internationalized text. Pango is an offshoot of the GTK+ and GNOME projects, and the initial focus is operation in those environments, however there is nothing fundamentally GTK+ or GNOME specific about Pango. Pango uses Unicode for all of its encoding, and will eventually support output in all the worlds major languages."
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
||||||
|
|
||||||
|
PKG_CONFIGURE_OPTS_TARGET="--disable-doc-cross-references \
|
||||||
|
--disable-gtk-doc \
|
||||||
|
--disable-man \
|
||||||
|
--enable-debug=no \
|
||||||
|
--with-xft"
|
@ -0,0 +1,46 @@
|
|||||||
|
diff -Naur pango-1.38.1/configure.ac pango-1.38.1.patch/configure.ac
|
||||||
|
--- pango-1.38.1/configure.ac 2015-10-12 21:13:25.000000000 +0200
|
||||||
|
+++ pango-1.38.1.patch/configure.ac 2015-11-14 23:14:05.714344868 +0100
|
||||||
|
@@ -483,15 +483,6 @@
|
||||||
|
dnl *** Checks for gtk-doc ***
|
||||||
|
dnl **************************
|
||||||
|
|
||||||
|
-if $have_cairo ; then : ; else
|
||||||
|
- if test x$enable_gtk_doc = xyes ; then
|
||||||
|
- AC_MSG_WARN([Cairo not present, disabling doc building])
|
||||||
|
- enable_gtk_doc=no
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
-GTK_DOC_CHECK([1.15], [--flavour no-tmpl])
|
||||||
|
-
|
||||||
|
AC_ARG_ENABLE(doc-cross-references,
|
||||||
|
AC_HELP_STRING([--disable-doc-cross-references],
|
||||||
|
[cross reference glib and cairo symbols @<:@default=yes@:>@]),
|
||||||
|
@@ -606,7 +597,6 @@
|
||||||
|
pango/pangoxft.rc
|
||||||
|
pango-view/Makefile
|
||||||
|
examples/Makefile
|
||||||
|
-docs/Makefile
|
||||||
|
docs/version.xml
|
||||||
|
tools/Makefile
|
||||||
|
tests/Makefile
|
||||||
|
diff -Naur pango-1.38.1/Makefile.am pango-1.38.1.patch/Makefile.am
|
||||||
|
--- pango-1.38.1/Makefile.am 2015-04-15 19:37:43.000000000 +0200
|
||||||
|
+++ pango-1.38.1.patch/Makefile.am 2015-11-14 23:05:52.738361176 +0100
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
## Process this file with automake to create Makefile.in.
|
||||||
|
|
||||||
|
-SUBDIRS= pango pango-view examples docs tools tests build
|
||||||
|
+SUBDIRS= pango pango-view examples tools tests build
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
autogen.sh \
|
||||||
|
@@ -38,7 +38,6 @@
|
||||||
|
$(srcdir)/INSTALL \
|
||||||
|
$(srcdir)/omf.make \
|
||||||
|
$(srcdir)/xmldocs.make \
|
||||||
|
- $(srcdir)/gtk-doc.make \
|
||||||
|
$(srcdir)/ChangeLog
|
||||||
|
|
||||||
|
### ChangeLog generation
|
@ -0,0 +1,79 @@
|
|||||||
|
diff -Naur pango-1.38.1/Makefile.am pango-1.38.1.patch/Makefile.am
|
||||||
|
--- pango-1.38.1/Makefile.am 2015-11-14 23:05:52.000000000 +0100
|
||||||
|
+++ pango-1.38.1.patch/Makefile.am 2015-11-14 23:19:07.548943525 +0100
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
## Process this file with automake to create Makefile.in.
|
||||||
|
|
||||||
|
-SUBDIRS= pango pango-view examples tools tests build
|
||||||
|
+SUBDIRS= pango build
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
autogen.sh \
|
||||||
|
diff -Naur pango-1.38.1/pango/Makefile.am pango-1.38.1.patch/pango/Makefile.am
|
||||||
|
--- pango-1.38.1/pango/Makefile.am 2015-09-01 00:47:11.000000000 +0200
|
||||||
|
+++ pango-1.38.1.patch/pango/Makefile.am 2015-11-14 23:21:14.081145117 +0100
|
||||||
|
@@ -31,7 +31,7 @@
|
||||||
|
$(LIBTHAI_CFLAGS) \
|
||||||
|
$(X_CFLAGS)
|
||||||
|
|
||||||
|
-BUILT_SOURCES = pango-enum-types.h pango-enum-types.c pango-features.h
|
||||||
|
+BUILT_SOURCES = pango-features.h
|
||||||
|
|
||||||
|
pangoincludedir=$(includedir)/pango-1.0/pango
|
||||||
|
|
||||||
|
@@ -127,22 +127,6 @@
|
||||||
|
pango-features.h \
|
||||||
|
pango-enum-types.h
|
||||||
|
|
||||||
|
-pango-enum-types.h: s-enum-types-h
|
||||||
|
-s-enum-types-h: $(pango_headers) Makefile.am pango-enum-types.h.template
|
||||||
|
- $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) \
|
||||||
|
- --template pango-enum-types.h.template \
|
||||||
|
- $(pango_headers) ) > pango-enum-types.h.tmp \
|
||||||
|
- && mv pango-enum-types.h.tmp pango-enum-types.h \
|
||||||
|
- && echo timestamp > $@
|
||||||
|
-
|
||||||
|
-pango-enum-types.c: s-enum-types-c
|
||||||
|
-s-enum-types-c: $(pango_headers) Makefile.am pango-enum-types.c.template
|
||||||
|
- $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) \
|
||||||
|
- --template pango-enum-types.c.template \
|
||||||
|
- $(pango_headers) ) > pango-enum-types.c.tmp \
|
||||||
|
- && mv pango-enum-types.c.tmp pango-enum-types.c \
|
||||||
|
- && echo timestamp > $@
|
||||||
|
-
|
||||||
|
pango-features.h:
|
||||||
|
$(AM_V_GEN) cd $(top_builddir) && ./config.status pango/pango-features.h
|
||||||
|
|
||||||
|
diff -Naur pango-1.38.1/pango/pango-context.c pango-1.38.1.patch/pango/pango-context.c
|
||||||
|
--- pango-1.38.1/pango/pango-context.c 2015-09-13 17:05:39.000000000 +0200
|
||||||
|
+++ pango-1.38.1.patch/pango/pango-context.c 2015-11-14 23:22:57.512225981 +0100
|
||||||
|
@@ -38,6 +38,7 @@
|
||||||
|
|
||||||
|
#include "pango-engine-private.h"
|
||||||
|
#include "pango-script-private.h"
|
||||||
|
+#include "pango-enum-types.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* PangoContext:
|
||||||
|
diff -Naur pango-1.38.1/pango/pangofc-font.c pango-1.38.1.patch/pango/pangofc-font.c
|
||||||
|
--- pango-1.38.1/pango/pangofc-font.c 2015-04-15 19:37:43.000000000 +0200
|
||||||
|
+++ pango-1.38.1.patch/pango/pangofc-font.c 2015-11-14 23:23:49.840316980 +0100
|
||||||
|
@@ -45,6 +45,7 @@
|
||||||
|
#include "pango-engine.h"
|
||||||
|
#include "pango-layout.h"
|
||||||
|
#include "pango-impl-utils.h"
|
||||||
|
+#include "pango-enum-types.h"
|
||||||
|
|
||||||
|
#include <fontconfig/fcfreetype.h>
|
||||||
|
|
||||||
|
diff -Naur pango-1.38.1/pango/pango-layout.c pango-1.38.1.patch/pango/pango-layout.c
|
||||||
|
--- pango-1.38.1/pango/pango-layout.c 2015-09-01 18:20:54.000000000 +0200
|
||||||
|
+++ pango-1.38.1.patch/pango/pango-layout.c 2015-11-14 23:23:19.280262638 +0100
|
||||||
|
@@ -77,6 +77,7 @@
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "pango-layout-private.h"
|
||||||
|
+#include "pango-enum-types.h"
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct _Extents Extents;
|
33
packages/addons/addon-depends/scrnsaverproto/package.mk
Normal file
33
packages/addons/addon-depends/scrnsaverproto/package.mk
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="scrnsaverproto"
|
||||||
|
PKG_VERSION="1.2.2"
|
||||||
|
PKG_REV="1"
|
||||||
|
PKG_ARCH="any"
|
||||||
|
PKG_LICENSE="GPL"
|
||||||
|
PKG_SITE="http://xorg.freedesktop.org/"
|
||||||
|
PKG_URL="http://xorg.freedesktop.org/releases/individual/proto/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="x11/proto"
|
||||||
|
PKG_SHORTDESC=""
|
||||||
|
PKG_LONGDESC=""
|
||||||
|
|
||||||
|
PKG_IS_ADDON="no"
|
||||||
|
PKG_AUTORECONF="yes"
|
2
packages/addons/browser/chromium/changelog.txt
Normal file
2
packages/addons/browser/chromium/changelog.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
7.0.100
|
||||||
|
- initial LibreELEC release
|
1
packages/addons/browser/chromium/config/Xdefaults
Normal file
1
packages/addons/browser/chromium/config/Xdefaults
Normal file
@ -0,0 +1 @@
|
|||||||
|
Xft.dpi: 96
|
13
packages/addons/browser/chromium/config/pango.modules
Normal file
13
packages/addons/browser/chromium/config/pango.modules
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-arabic-lang.so ArabicScriptEngineLang PangoEngineLang PangoRenderNone arabic:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-basic-fc.so BasicScriptEngineFc PangoEngineShape PangoRenderFc common:
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so devaIndicScriptEngineLang PangoEngineLang PangoRenderNone devanagari:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so bengIndicScriptEngineLang PangoEngineLang PangoRenderNone bengali:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so guruIndicScriptEngineLang PangoEngineLang PangoRenderNone gurmukhi:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so gujrIndicScriptEngineLang PangoEngineLang PangoRenderNone gujarati:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so oryaIndicScriptEngineLang PangoEngineLang PangoRenderNone oriya:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so tamlIndicScriptEngineLang PangoEngineLang PangoRenderNone tamil:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so teluIndicScriptEngineLang PangoEngineLang PangoRenderNone telugu:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so kndaIndicScriptEngineLang PangoEngineLang PangoRenderNone kannada:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so mlymIndicScriptEngineLang PangoEngineLang PangoRenderNone malayalam:*
|
||||||
|
/storage/.kodi/addons/browser.chromium/pango-modules/pango-indic-lang.so sinhIndicScriptEngineLang PangoEngineLang PangoRenderNone sinhala:*
|
||||||
|
|
10
packages/addons/browser/chromium/config/pangorc
Normal file
10
packages/addons/browser/chromium/config/pangorc
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#
|
||||||
|
# pangorc file for uninstalled operation. If pango-viewer is run with
|
||||||
|
# this file in the current directory it will set it as PANGO_RC_FILE
|
||||||
|
#
|
||||||
|
|
||||||
|
[Pango]
|
||||||
|
ModuleFiles = /storage/.kodi/addons/browser.chromium/config/pango.modules
|
||||||
|
|
||||||
|
[PangoX]
|
||||||
|
AliasFiles = /storage/.kodi/addons/browser.chromium/config/pangx.aliases
|
125
packages/addons/browser/chromium/config/pixbuf.loaders.cache
Normal file
125
packages/addons/browser/chromium/config/pixbuf.loaders.cache
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-jpeg.so"
|
||||||
|
"jpeg" 5 "gdk-pixbuf" "The JPEG image format" "LGPL"
|
||||||
|
"image/jpeg" ""
|
||||||
|
"jpeg" "jpe" "jpg" ""
|
||||||
|
"\377\330" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-ani.so"
|
||||||
|
"ani" 4 "gdk-pixbuf" "The ANI image format" "LGPL"
|
||||||
|
"application/x-navi-animation" ""
|
||||||
|
"ani" ""
|
||||||
|
"RIFF ACON" " xxxx " 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-ico.so"
|
||||||
|
"ico" 5 "gdk-pixbuf" "The ICO image format" "LGPL"
|
||||||
|
"image/x-icon" "image/x-ico" "image/x-win-bitmap" ""
|
||||||
|
"ico" "cur" ""
|
||||||
|
" \001 " "zz znz" 100
|
||||||
|
" \002 " "zz znz" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-ras.so"
|
||||||
|
"ras" 4 "gdk-pixbuf" "The Sun raster image format" "LGPL"
|
||||||
|
"image/x-cmu-raster" "image/x-sun-raster" ""
|
||||||
|
"ras" ""
|
||||||
|
"Y\246j\225" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-jasper.so"
|
||||||
|
"jpeg2000" 4 "gdk-pixbuf" "The JPEG 2000 image format" "LGPL"
|
||||||
|
"image/jp2" "image/jpeg2000" "image/jpx" ""
|
||||||
|
"jp2" "jpc" "jpx" "j2k" "jpf" ""
|
||||||
|
" jP" "!!!! " 100
|
||||||
|
"\377O\377Q" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-wbmp.so"
|
||||||
|
"wbmp" 4 "gdk-pixbuf" "The WBMP image format" "LGPL"
|
||||||
|
"image/vnd.wap.wbmp" ""
|
||||||
|
"wbmp" ""
|
||||||
|
" " "zz" 1
|
||||||
|
" `" "z " 1
|
||||||
|
" @" "z " 1
|
||||||
|
" " "z " 1
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-png.so"
|
||||||
|
"png" 5 "gdk-pixbuf" "The PNG image format" "LGPL"
|
||||||
|
"image/png" ""
|
||||||
|
"png" ""
|
||||||
|
"\211PNG\r\n\032\n" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-pcx.so"
|
||||||
|
"pcx" 4 "gdk-pixbuf" "The PCX image format" "LGPL"
|
||||||
|
"image/x-pcx" ""
|
||||||
|
"pcx" ""
|
||||||
|
"\n \001" "" 100
|
||||||
|
"\n\002\001" "" 100
|
||||||
|
"\n\003\001" "" 100
|
||||||
|
"\n\004\001" "" 100
|
||||||
|
"\n\005\001" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-qtif.so"
|
||||||
|
"qtif" 4 "gdk-pixbuf" "The QTIF image format" "LGPL"
|
||||||
|
"image/x-quicktime" "image/qtif" ""
|
||||||
|
"qtif" "qif" ""
|
||||||
|
"abcdidsc" "xxxx " 100
|
||||||
|
"abcdidat" "xxxx " 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-tiff.so"
|
||||||
|
"tiff" 5 "gdk-pixbuf" "The TIFF image format" "LGPL"
|
||||||
|
"image/tiff" ""
|
||||||
|
"tiff" "tif" ""
|
||||||
|
"MM *" " z " 100
|
||||||
|
"II* " " z" 100
|
||||||
|
"II* \020 CR\002 " " z zzz z" 0
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-icns.so"
|
||||||
|
"icns" 4 "gdk-pixbuf" "The ICNS image format" "GPL"
|
||||||
|
"image/x-icns" ""
|
||||||
|
"icns" ""
|
||||||
|
"icns" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-tga.so"
|
||||||
|
"tga" 4 "gdk-pixbuf" "The Targa image format" "LGPL"
|
||||||
|
"image/x-tga" ""
|
||||||
|
"tga" "targa" ""
|
||||||
|
" \001\001" "x " 100
|
||||||
|
" \001\t" "x " 100
|
||||||
|
" \002" "xz " 99
|
||||||
|
" \003" "xz " 100
|
||||||
|
" \n" "xz " 100
|
||||||
|
" \v" "xz " 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-bmp.so"
|
||||||
|
"bmp" 5 "gdk-pixbuf" "The BMP image format" "LGPL"
|
||||||
|
"image/bmp" "image/x-bmp" "image/x-MS-bmp" ""
|
||||||
|
"bmp" ""
|
||||||
|
"BM" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-xbm.so"
|
||||||
|
"xbm" 4 "gdk-pixbuf" "The XBM image format" "LGPL"
|
||||||
|
"image/x-xbitmap" ""
|
||||||
|
"xbm" ""
|
||||||
|
"#define " "" 100
|
||||||
|
"/*" "" 50
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-xpm.so"
|
||||||
|
"xpm" 4 "gdk-pixbuf" "The XPM image format" "LGPL"
|
||||||
|
"image/x-xpixmap" ""
|
||||||
|
"xpm" ""
|
||||||
|
"/* XPM */" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-pnm.so"
|
||||||
|
"pnm" 4 "gdk-pixbuf" "The PNM/PBM/PGM/PPM image format family" "LGPL"
|
||||||
|
"image/x-portable-anymap" "image/x-portable-bitmap" "image/x-portable-graymap" "image/x-portable-pixmap" ""
|
||||||
|
"pnm" "pbm" "pgm" "ppm" ""
|
||||||
|
"P1" "" 100
|
||||||
|
"P2" "" 100
|
||||||
|
"P3" "" 100
|
||||||
|
"P4" "" 100
|
||||||
|
"P5" "" 100
|
||||||
|
"P6" "" 100
|
||||||
|
|
||||||
|
"/storage/.kodi/addons/browser.chromium/gdk-pixbuf-modules/libpixbufloader-gif.so"
|
||||||
|
"gif" 4 "gdk-pixbuf" "The GIF image format" "LGPL"
|
||||||
|
"image/gif" ""
|
||||||
|
"gif" ""
|
||||||
|
"GIF8" "" 100
|
||||||
|
|
BIN
packages/addons/browser/chromium/icon/icon.png
Normal file
BIN
packages/addons/browser/chromium/icon/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 33 KiB |
177
packages/addons/browser/chromium/package.mk
Normal file
177
packages/addons/browser/chromium/package.mk
Normal file
@ -0,0 +1,177 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
PKG_NAME="chromium"
|
||||||
|
PKG_VERSION="49.0.2623.87"
|
||||||
|
PKG_REV="100"
|
||||||
|
PKG_ARCH="x86_64"
|
||||||
|
PKG_LICENSE="Mixed"
|
||||||
|
PKG_SITE="http://www.chromium.org/Home"
|
||||||
|
PKG_URL="https://commondatastorage.googleapis.com/chromium-browser-official/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||||
|
PKG_DEPENDS_TARGET="toolchain pciutils dbus libXcomposite libXcursor libXtst alsa-lib bzip2 yasm nss libXScrnSaver libexif ninja:host libpng harfbuzz atk gtk+ libva-vdpau-driver"
|
||||||
|
PKG_PRIORITY="optional"
|
||||||
|
PKG_SECTION="browser"
|
||||||
|
PKG_SHORTDESC="Chromium Browser: the open-source web browser from Google"
|
||||||
|
PKG_LONGDESC="Chromium Browser: the open-source web browser from Google"
|
||||||
|
PKG_AUTORECONF="no"
|
||||||
|
|
||||||
|
PKG_IS_ADDON="yes"
|
||||||
|
PKG_ADDON_NAME="Chromium"
|
||||||
|
PKG_ADDON_TYPE="xbmc.python.script"
|
||||||
|
PKG_ADDON_PROVIDES="executable"
|
||||||
|
PKG_ADDON_REPOVERSION="7.0"
|
||||||
|
|
||||||
|
pre_make_target() {
|
||||||
|
export MAKEFLAGS="-j4"
|
||||||
|
|
||||||
|
strip_lto
|
||||||
|
|
||||||
|
# https://groups.google.com/a/chromium.org/d/topic/chromium-packagers/9JX1N2nf4PU/discussion
|
||||||
|
touch chrome/test/data/webui/i18n_process_css_test.html
|
||||||
|
}
|
||||||
|
|
||||||
|
make_target() {
|
||||||
|
# CFLAGS are passed through release_extra_cflags below
|
||||||
|
export -n CFLAGS CXXFLAGS
|
||||||
|
|
||||||
|
export LDFLAGS="$LDFLAGS -ludev"
|
||||||
|
|
||||||
|
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
|
||||||
|
# Note: These are for OpenELEC use ONLY. For your own distribution, please
|
||||||
|
# get your own set of keys.
|
||||||
|
|
||||||
|
_google_api_key=AIzaSyAQ6L9vt9cnN4nM0weaa6Y38K4eyPvtKgI
|
||||||
|
_google_default_client_id=740889307901-4bkm4e0udppnp1lradko85qsbnmkfq3b.apps.googleusercontent.com
|
||||||
|
_google_default_client_secret=9TJlhL661hvShQub4cWhANXa
|
||||||
|
|
||||||
|
local _chromium_conf=(
|
||||||
|
-Dgoogle_api_key=$_google_api_key
|
||||||
|
-Dgoogle_default_client_id=$_google_default_client_id
|
||||||
|
-Dgoogle_default_client_secret=$_google_default_client_secret
|
||||||
|
-Dtarget_arch=x64
|
||||||
|
-Dfastbuild=2
|
||||||
|
-Dwerror=
|
||||||
|
-Dclang=0
|
||||||
|
-Dpython_ver=2.7
|
||||||
|
-Dlinux_link_gsettings=0
|
||||||
|
-Dlinux_strip_binary=1
|
||||||
|
-Dlinux_use_bundled_binutils=0
|
||||||
|
-Dlinux_use_bundled_gold=0
|
||||||
|
-Dlinux_use_gold_flags=0
|
||||||
|
-Dicu_use_data_file_flag=0
|
||||||
|
-Dlogging_like_official_build=1
|
||||||
|
-Dtracing_like_official_build=1
|
||||||
|
-Dfieldtrial_testing_like_official_build=1
|
||||||
|
-Dremove_webcore_debug_symbols=1
|
||||||
|
-Drelease_extra_cflags="$CFLAGS"
|
||||||
|
-Dlibspeechd_h_prefix=speech-dispatcher/
|
||||||
|
-Dffmpeg_branding=Chrome
|
||||||
|
-Dproprietary_codecs=1
|
||||||
|
-Duse_system_bzip2=1
|
||||||
|
-Duse_system_flac=0
|
||||||
|
-Duse_system_ffmpeg=0
|
||||||
|
-Duse_system_harfbuzz=1
|
||||||
|
-Duse_system_icu=0
|
||||||
|
-Duse_system_libevent=0
|
||||||
|
-Duse_system_libjpeg=1
|
||||||
|
-Duse_system_libpng=1
|
||||||
|
-Duse_system_libvpx=0
|
||||||
|
-Duse_system_libxml=0
|
||||||
|
-Duse_system_snappy=0
|
||||||
|
-Duse_system_xdg_utils=0
|
||||||
|
-Duse_system_yasm=1
|
||||||
|
-Duse_system_zlib=0
|
||||||
|
-Duse_mojo=0
|
||||||
|
-Duse_gconf=0
|
||||||
|
-Duse_gnome_keyring=0
|
||||||
|
-Duse_pulseaudio=0
|
||||||
|
-Duse_kerberos=0
|
||||||
|
-Duse_cups=0
|
||||||
|
-Denable_hangout_services_extension=1
|
||||||
|
-Ddisable_fatal_linker_warnings=1
|
||||||
|
-Dsysroot=$SYSROOT_PREFIX
|
||||||
|
-Ddisable_glibc=1
|
||||||
|
-Denable_widevine=1
|
||||||
|
-Ddisable_nacl=1
|
||||||
|
-Ddisable_pnacl=1)
|
||||||
|
|
||||||
|
./build/linux/unbundle/replace_gyp_files.py "${_chromium_conf[@]}"
|
||||||
|
./build/gyp_chromium --depth=. "${_chromium_conf[@]}"
|
||||||
|
|
||||||
|
ninja -C out/Release chrome chrome_sandbox
|
||||||
|
}
|
||||||
|
|
||||||
|
makeinstall_target() {
|
||||||
|
:
|
||||||
|
}
|
||||||
|
|
||||||
|
addon() {
|
||||||
|
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||||
|
cp -P $PKG_BUILD/out/Release/chrome $ADDON_BUILD/$PKG_ADDON_ID/bin/chromium.bin
|
||||||
|
cp -P $PKG_BUILD/out/Release/chrome_sandbox $ADDON_BUILD/$PKG_ADDON_ID/bin/chrome-sandbox
|
||||||
|
cp -P $PKG_BUILD/out/Release/{*.pak,*.bin,libwidevinecdmadapter.so} $ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||||
|
cp -PR $PKG_BUILD/out/Release/locales $ADDON_BUILD/$PKG_ADDON_ID/bin/
|
||||||
|
|
||||||
|
$STRIP $ADDON_BUILD/$PKG_ADDON_ID/bin/chromium.bin
|
||||||
|
$STRIP $ADDON_BUILD/$PKG_ADDON_ID/bin/chrome-sandbox
|
||||||
|
|
||||||
|
# config
|
||||||
|
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config
|
||||||
|
cp -P $PKG_DIR/config/* $ADDON_BUILD/$PKG_ADDON_ID/config
|
||||||
|
|
||||||
|
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# pango
|
||||||
|
cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpangocairo-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpango-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
cp -PL $(get_build_dir pango)/.install_pkg/usr/lib/libpangoft2-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# cairo
|
||||||
|
cp -PL $(get_build_dir cairo)/.install_pkg/usr/lib/libcairo.so.2 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# gtk
|
||||||
|
cp -PL $(get_build_dir gtk+)/.install_pkg/usr/lib/libgdk-x11-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
cp -PL $(get_build_dir gtk+)/.install_pkg/usr/lib/libgtk-x11-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# atk
|
||||||
|
# cp -PL $(get_build_dir atk)/.install_pkg/usr/lib/libatk-1.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# harfbuzz
|
||||||
|
cp -PL $(get_build_dir harfbuzz)/.install_pkg/usr/lib/libharfbuzz.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# gdk-pixbuf
|
||||||
|
cp -PL $(get_build_dir gdk-pixbuf)/.install_pkg/usr/lib/libgdk_pixbuf-2.0.so.0 $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# pixbuf loaders
|
||||||
|
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/gdk-pixbuf-modules
|
||||||
|
cp -PL $(get_build_dir gdk-pixbuf)/.install_pkg/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/* $ADDON_BUILD/$PKG_ADDON_ID/gdk-pixbuf-modules
|
||||||
|
|
||||||
|
# nss
|
||||||
|
cp -PL $(get_build_dir nss)/dist/Linux*OPT.OBJ/lib/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# nspr
|
||||||
|
cp -PL $(get_build_dir nspr)/.install_pkg/usr/lib/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# libexif
|
||||||
|
cp -PL $(get_build_dir libexif)/.install_pkg/usr/lib/* $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
|
||||||
|
# libva-vdpau-driver
|
||||||
|
cp -PL $(get_build_dir libva-vdpau-driver)/.install_pkg/usr/lib/va/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||||
|
}
|
@ -0,0 +1,53 @@
|
|||||||
|
diff -upr chromium-48.0.2564.82.orig/chrome/common/chrome_content_client.cc chromium-48.0.2564.82/chrome/common/chrome_content_client.cc
|
||||||
|
--- chromium-48.0.2564.82.orig/chrome/common/chrome_content_client.cc 2016-01-20 22:01:20.000000000 +0200
|
||||||
|
+++ chromium-48.0.2564.82/chrome/common/chrome_content_client.cc 2016-01-21 20:02:02.788936626 +0200
|
||||||
|
@@ -158,7 +158,12 @@ void ComputeBuiltInPlugins(std::vector<c
|
||||||
|
#if defined(WIDEVINE_CDM_AVAILABLE) && defined(ENABLE_PEPPER_CDMS) && \
|
||||||
|
!defined(WIDEVINE_CDM_IS_COMPONENT)
|
||||||
|
static bool skip_widevine_cdm_file_check = false;
|
||||||
|
- if (PathService::Get(chrome::FILE_WIDEVINE_CDM_ADAPTER, &path)) {
|
||||||
|
+ bool widevine_cdm_present =
|
||||||
|
+ skip_widevine_cdm_file_check ||
|
||||||
|
+ (PathService::Get(chrome::FILE_WIDEVINE_CDM, &path) &&
|
||||||
|
+ base::PathExists(path));
|
||||||
|
+ if (widevine_cdm_present &&
|
||||||
|
+ PathService::Get(chrome::FILE_WIDEVINE_CDM_ADAPTER, &path)) {
|
||||||
|
if (skip_widevine_cdm_file_check || base::PathExists(path)) {
|
||||||
|
content::PepperPluginInfo widevine_cdm;
|
||||||
|
widevine_cdm.is_out_of_process = true;
|
||||||
|
diff -upr chromium-48.0.2564.82.orig/chrome/common/chrome_paths.cc chromium-48.0.2564.82/chrome/common/chrome_paths.cc
|
||||||
|
--- chromium-48.0.2564.82.orig/chrome/common/chrome_paths.cc 2016-01-20 22:01:20.000000000 +0200
|
||||||
|
+++ chromium-48.0.2564.82/chrome/common/chrome_paths.cc 2016-01-21 19:18:51.287978456 +0200
|
||||||
|
@@ -375,6 +375,11 @@ bool PathProvider(int key, base::FilePat
|
||||||
|
return false;
|
||||||
|
cur = cur.AppendASCII(kWidevineCdmAdapterFileName);
|
||||||
|
break;
|
||||||
|
+ case chrome::FILE_WIDEVINE_CDM:
|
||||||
|
+ if (!GetInternalPluginsDirectory(&cur))
|
||||||
|
+ return false;
|
||||||
|
+ cur = cur.AppendASCII(kWidevineCdmFileName);
|
||||||
|
+ break;
|
||||||
|
#endif // defined(WIDEVINE_CDM_AVAILABLE) && defined(ENABLE_PEPPER_CDMS)
|
||||||
|
case chrome::FILE_RESOURCES_PACK:
|
||||||
|
#if defined(OS_MACOSX) && !defined(OS_IOS)
|
||||||
|
diff -upr chromium-48.0.2564.82.orig/chrome/common/chrome_paths.h chromium-48.0.2564.82/chrome/common/chrome_paths.h
|
||||||
|
--- chromium-48.0.2564.82.orig/chrome/common/chrome_paths.h 2016-01-14 03:49:22.000000000 +0200
|
||||||
|
+++ chromium-48.0.2564.82/chrome/common/chrome_paths.h 2016-01-21 19:18:51.287978456 +0200
|
||||||
|
@@ -99,6 +99,7 @@ enum {
|
||||||
|
DIR_COMPONENT_WIDEVINE_CDM, // Directory that contains component-updated
|
||||||
|
// Widevine CDM files.
|
||||||
|
FILE_WIDEVINE_CDM_ADAPTER, // Full path to the Widevine CDM adapter file.
|
||||||
|
+ FILE_WIDEVINE_CDM, // Full path to the Widevine CDM file.
|
||||||
|
FILE_RESOURCES_PACK, // Full path to the .pak file containing
|
||||||
|
// binary data (e.g., html files and images
|
||||||
|
// used by internal pages).
|
||||||
|
diff -upr chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||||
|
--- chromium-48.0.2564.82.orig/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-14 01:05:17.000000000 +0200
|
||||||
|
+++ chromium-48.0.2564.82/third_party/widevine/cdm/stub/widevine_cdm_version.h 2016-01-21 19:18:51.287978456 +0200
|
||||||
|
@@ -12,4 +12,6 @@
|
||||||
|
|
||||||
|
#define WIDEVINE_CDM_AVAILABLE
|
||||||
|
|
||||||
|
+#define WIDEVINE_CDM_VERSION_STRING "Pinkie Pie"
|
||||||
|
+
|
||||||
|
#endif // WIDEVINE_CDM_VERSION_H_
|
@ -0,0 +1,10 @@
|
|||||||
|
--- a/chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc 2015-12-15 12:05:07.000000000 -0800
|
||||||
|
+++ b/chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc 2016-01-12 16:08:45.701976368 -0800
|
||||||
|
@@ -140,7 +140,6 @@
|
||||||
|
#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
||||||
|
// Now that we have some minimal ui initialized, check to see if we're
|
||||||
|
// running as root and bail if we are.
|
||||||
|
- DetectRunningAsRoot();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,10 @@
|
|||||||
|
--- a/sandbox/linux/suid/client/setuid_sandbox_client.cc 2015-11-13 03:04:19.000000000 -0800
|
||||||
|
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc 2016-01-12 22:06:26.291831672 -0800
|
||||||
|
@@ -123,7 +123,6 @@
|
||||||
|
|
||||||
|
// We now consider ourselves "fully sandboxed" as far as the
|
||||||
|
// setuid sandbox is concerned.
|
||||||
|
- CHECK(IsFileSystemAccessDenied());
|
||||||
|
sandboxed_ = true;
|
||||||
|
return true;
|
||||||
|
}
|
@ -0,0 +1,490 @@
|
|||||||
|
Description: Enables using VA-API hardware acceleration in Linux. The patch for bpf_gpu_policy_linux.cc initially came from https://codereview.chromium.org/15955009/diff/92001/content/common/sandbox_linux/bpf_gpu_policy_linux.cc.
|
||||||
|
|
||||||
|
Index: dev.wily/content/common/gpu/media/gpu_video_decode_accelerator.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/common/gpu/media/gpu_video_decode_accelerator.cc
|
||||||
|
+++ dev.wily/content/common/gpu/media/gpu_video_decode_accelerator.cc
|
||||||
|
@@ -34,7 +34,7 @@
|
||||||
|
#include "content/common/gpu/media/dxva_video_decode_accelerator_win.h"
|
||||||
|
#elif defined(OS_MACOSX)
|
||||||
|
#include "content/common/gpu/media/vt_video_decode_accelerator_mac.h"
|
||||||
|
-#elif defined(OS_CHROMEOS)
|
||||||
|
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
#if defined(USE_V4L2_CODEC)
|
||||||
|
#include "content/common/gpu/media/v4l2_device.h"
|
||||||
|
#include "content/common/gpu/media/v4l2_slice_video_decode_accelerator.h"
|
||||||
|
@@ -164,7 +164,7 @@
|
||||||
|
#if defined(OS_WIN)
|
||||||
|
capabilities.supported_profiles =
|
||||||
|
DXVAVideoDecodeAccelerator::GetSupportedProfiles();
|
||||||
|
-#elif defined(OS_CHROMEOS)
|
||||||
|
+#elif defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
media::VideoDecodeAccelerator::SupportedProfiles vda_profiles;
|
||||||
|
#if defined(USE_V4L2_CODEC)
|
||||||
|
vda_profiles = V4L2VideoDecodeAccelerator::GetSupportedProfiles();
|
||||||
|
@@ -251,6 +251,8 @@ void GpuVideoDecodeAccelerator::Initiali
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ VLOG(1) << "Initializing GPU video decode accelerator.";
|
||||||
|
+
|
||||||
|
// Array of Create..VDA() function pointers, maybe applicable to the current
|
||||||
|
// platform. This list is ordered by priority of use and it should be the
|
||||||
|
// same as the order of querying supported profiles of VDAs.
|
||||||
|
@@ -361,11 +361,14 @@
|
||||||
|
&GpuVideoDecodeAccelerator::CreateAndroidVDA};
|
||||||
|
|
||||||
|
for (const auto& create_vda_function : create_vda_fps) {
|
||||||
|
+ VLOG(1) << "Testing create_vda_function.";
|
||||||
|
video_decode_accelerator_ = (this->*create_vda_function)();
|
||||||
|
if (!video_decode_accelerator_ ||
|
||||||
|
!video_decode_accelerator_->Initialize(config, this))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
+ VLOG(1) << "Initialization successful.";
|
||||||
|
+
|
||||||
|
if (video_decode_accelerator_->CanDecodeOnIOThread()) {
|
||||||
|
filter_ = new MessageFilter(this, host_route_id_);
|
||||||
|
stub_->channel()->AddFilter(filter_.get());
|
||||||
|
@@ -346,7 +351,9 @@ void GpuVideoDecodeAccelerator::BindImag
|
||||||
|
scoped_ptr<media::VideoDecodeAccelerator>
|
||||||
|
GpuVideoDecodeAccelerator::CreateVaapiVDA() {
|
||||||
|
scoped_ptr<media::VideoDecodeAccelerator> decoder;
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+ VLOG(1) << "About to create new VAAPI video decode accelerator.";
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+ VLOG(1) << "Creating new VAAPI video decode accelerator.";
|
||||||
|
decoder.reset(new VaapiVideoDecodeAccelerator(
|
||||||
|
make_context_current_, base::Bind(&GpuVideoDecodeAccelerator::BindImage,
|
||||||
|
base::Unretained(this))));
|
||||||
|
Index: dev.wily/content/content_common.gypi
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/content_common.gypi
|
||||||
|
+++ dev.wily/content/content_common.gypi
|
||||||
|
@@ -856,7 +856,7 @@
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
- ['chromeos==1', {
|
||||||
|
+ ['chromeos==1 or desktop_linux==1', {
|
||||||
|
'sources': [
|
||||||
|
'common/gpu/media/accelerated_video_decoder.h',
|
||||||
|
'common/gpu/media/h264_decoder.cc',
|
||||||
|
@@ -908,7 +908,7 @@
|
||||||
|
'common/gpu/media/tegra_v4l2_device.h',
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
- ['target_arch != "arm" and chromeos == 1', {
|
||||||
|
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
|
||||||
|
'dependencies': [
|
||||||
|
'../media/media.gyp:media',
|
||||||
|
'../third_party/libyuv/libyuv.gyp:libyuv',
|
||||||
|
Index: dev.wily/content/content_gpu.gypi
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/content_gpu.gypi
|
||||||
|
+++ dev.wily/content/content_gpu.gypi
|
||||||
|
@@ -36,7 +36,7 @@
|
||||||
|
],
|
||||||
|
},
|
||||||
|
}],
|
||||||
|
- ['target_arch!="arm" and chromeos == 1', {
|
||||||
|
+ ['target_arch!="arm" and (chromeos == 1 or desktop_linux == 1)', {
|
||||||
|
'include_dirs': [
|
||||||
|
'<(DEPTH)/third_party/libva',
|
||||||
|
],
|
||||||
|
Index: dev.wily/content/content_tests.gypi
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/content_tests.gypi
|
||||||
|
+++ dev.wily/content/content_tests.gypi
|
||||||
|
@@ -1719,7 +1719,7 @@
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}],
|
||||||
|
- ['chromeos==1 and target_arch != "arm"', {
|
||||||
|
+ ['(chromeos==1 or desktop_linux==1) and target_arch != "arm"', {
|
||||||
|
'targets': [
|
||||||
|
{
|
||||||
|
'target_name': 'vaapi_jpeg_decoder_unittest',
|
||||||
|
Index: dev.wily/content/public/common/content_switches.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/public/common/content_switches.cc
|
||||||
|
+++ dev.wily/content/public/common/content_switches.cc
|
||||||
|
@@ -926,7 +926,9 @@ const char kDisableWebAudio[]
|
||||||
|
#if defined(OS_CHROMEOS)
|
||||||
|
// Disables panel fitting (used for mirror mode).
|
||||||
|
const char kDisablePanelFitting[] = "disable-panel-fitting";
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
// Disables VA-API accelerated video encode.
|
||||||
|
const char kDisableVaapiAcceleratedVideoEncode[] =
|
||||||
|
"disable-vaapi-accelerated-video-encode";
|
||||||
|
Index: dev.wily/content/public/common/content_switches.h
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/public/common/content_switches.h
|
||||||
|
+++ dev.wily/content/public/common/content_switches.h
|
||||||
|
@@ -272,6 +272,8 @@ CONTENT_EXPORT extern const char kDisabl
|
||||||
|
|
||||||
|
#if defined(OS_CHROMEOS)
|
||||||
|
CONTENT_EXPORT extern const char kDisablePanelFitting[];
|
||||||
|
+#endif
|
||||||
|
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
CONTENT_EXPORT extern const char kDisableVaapiAcceleratedVideoEncode[];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
Index: dev.wily/media/media.gyp
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/media/media.gyp
|
||||||
|
+++ dev.wily/media/media.gyp
|
||||||
|
@@ -756,7 +756,7 @@
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
# For VaapiVideoEncodeAccelerator.
|
||||||
|
- ['target_arch != "arm" and chromeos == 1', {
|
||||||
|
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1)', {
|
||||||
|
'sources': [
|
||||||
|
'filters/h264_bitstream_buffer.cc',
|
||||||
|
'filters/h264_bitstream_buffer.h',
|
||||||
|
@@ -1359,7 +1359,7 @@
|
||||||
|
'player_android',
|
||||||
|
],
|
||||||
|
}],
|
||||||
|
- ['target_arch != "arm" and chromeos == 1 and use_x11 == 1', {
|
||||||
|
+ ['target_arch != "arm" and (chromeos == 1 or desktop_linux == 1) and use_x11 == 1', {
|
||||||
|
'sources': [
|
||||||
|
'filters/h264_bitstream_buffer_unittest.cc',
|
||||||
|
],
|
||||||
|
Index: dev.wily/gpu/config/software_rendering_list_json.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/gpu/config/software_rendering_list_json.cc
|
||||||
|
+++ dev.wily/gpu/config/software_rendering_list_json.cc
|
||||||
|
@@ -481,17 +481,6 @@ const char kSoftwareRenderingListJson[]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
- "id": 48,
|
||||||
|
- "description": "Accelerated video decode is unavailable on Linux",
|
||||||
|
- "cr_bugs": [137247],
|
||||||
|
- "os": {
|
||||||
|
- "type": "linux"
|
||||||
|
- },
|
||||||
|
- "features": [
|
||||||
|
- "accelerated_video_decode"
|
||||||
|
- ]
|
||||||
|
- },
|
||||||
|
- {
|
||||||
|
"id": 49,
|
||||||
|
"description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
|
||||||
|
"cr_bugs": [140175],
|
||||||
|
@@ -1042,6 +1042,11 @@
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"os": {
|
||||||
|
+ "type": "linux"
|
||||||
|
+ }
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "os": {
|
||||||
|
"type": "android"
|
||||||
|
},
|
||||||
|
"gl_renderer": ".*Google.*"
|
||||||
|
Index: dev.wily/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
|
||||||
|
+++ dev.wily/content/common/sandbox_linux/bpf_gpu_policy_linux.cc
|
||||||
|
@@ -21,6 +21,8 @@
|
||||||
|
#include "base/logging.h"
|
||||||
|
#include "base/memory/scoped_ptr.h"
|
||||||
|
#include "build/build_config.h"
|
||||||
|
+// Auto-generated for dlopen libva libraries
|
||||||
|
+#include "content/common/gpu/media/va_stubs.h"
|
||||||
|
#include "content/common/sandbox_linux/sandbox_bpf_base_policy_linux.h"
|
||||||
|
#include "content/common/sandbox_linux/sandbox_seccomp_bpf_linux.h"
|
||||||
|
#include "content/common/set_process_title.h"
|
||||||
|
@@ -31,6 +33,8 @@
|
||||||
|
#include "sandbox/linux/syscall_broker/broker_file_permission.h"
|
||||||
|
#include "sandbox/linux/syscall_broker/broker_process.h"
|
||||||
|
#include "sandbox/linux/system_headers/linux_syscalls.h"
|
||||||
|
+#include "third_party/libva/va/va.h"
|
||||||
|
+#include "third_party/libva/va/va_x11.h"
|
||||||
|
|
||||||
|
using sandbox::arch_seccomp_data;
|
||||||
|
using sandbox::bpf_dsl::Allow;
|
||||||
|
@@ -40,6 +44,11 @@ using sandbox::syscall_broker::BrokerFil
|
||||||
|
using sandbox::syscall_broker::BrokerProcess;
|
||||||
|
using sandbox::SyscallSets;
|
||||||
|
|
||||||
|
+using content_common_gpu_media::kModuleVa;
|
||||||
|
+using content_common_gpu_media::kModuleVa_x11;
|
||||||
|
+using content_common_gpu_media::InitializeStubs;
|
||||||
|
+using content_common_gpu_media::StubPathMap;
|
||||||
|
+
|
||||||
|
namespace content {
|
||||||
|
|
||||||
|
namespace {
|
||||||
|
@@ -94,7 +103,7 @@ inline bool UseLibV4L2() {
|
||||||
|
|
||||||
|
bool IsAcceleratedVaapiVideoEncodeEnabled() {
|
||||||
|
bool accelerated_encode_enabled = false;
|
||||||
|
-#if defined(OS_CHROMEOS)
|
||||||
|
+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
|
||||||
|
const base::CommandLine& command_line =
|
||||||
|
*base::CommandLine::ForCurrentProcess();
|
||||||
|
accelerated_encode_enabled =
|
||||||
|
@@ -299,27 +299,41 @@
|
||||||
|
// inside the sandbox, so preload them now.
|
||||||
|
if (IsAcceleratedVaapiVideoEncodeEnabled() ||
|
||||||
|
IsAcceleratedVideoDecodeEnabled()) {
|
||||||
|
- const char* I965DrvVideoPath = NULL;
|
||||||
|
- const char* I965HybridDrvVideoPath = NULL;
|
||||||
|
+ VLOG(1) << "Attempting to enable hardware video acceleration.";
|
||||||
|
+ StubPathMap paths;
|
||||||
|
+ paths[kModuleVa].push_back("libva.so.1");
|
||||||
|
+ paths[kModuleVa_x11].push_back("libva-x11.so.1");
|
||||||
|
+ if (!InitializeStubs(paths)) {
|
||||||
|
+ VLOG(1) << "Failed to initialize stubs";
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- if (IsArchitectureX86_64()) {
|
||||||
|
- I965DrvVideoPath = "/usr/lib64/va/drivers/i965_drv_video.so";
|
||||||
|
- I965HybridDrvVideoPath = "/usr/lib64/va/drivers/hybrid_drv_video.so";
|
||||||
|
- } else if (IsArchitectureI386()) {
|
||||||
|
- I965DrvVideoPath = "/usr/lib/va/drivers/i965_drv_video.so";
|
||||||
|
+ // libva drivers won't get loaded even above two libraries get dlopened.
|
||||||
|
+ // Thus, libva calls will fail after post sandbox stage.
|
||||||
|
+ //
|
||||||
|
+ // To get the va driver loaded before sandboxing, upstream simply dlopen
|
||||||
|
+ // the hard-coded va driver path because ChromeOS is the only platform
|
||||||
|
+ // that Google want to support libva.
|
||||||
|
+ //
|
||||||
|
+ // While generic linux distros ship va driver as anywhere they want.
|
||||||
|
+ // Fortunately, the va driver will be loadded when vaInitialize() get
|
||||||
|
+ // called.
|
||||||
|
+ // So the following code is to call vaInitialize() before sandboxing.
|
||||||
|
+ Display* x_display = XOpenDisplay(NULL);
|
||||||
|
+ VADisplay va_display = vaGetDisplay(x_display);
|
||||||
|
+ if (!vaDisplayIsValid(va_display)) {
|
||||||
|
+ VLOG(1) << "Failed to call vaGetDisplay()";
|
||||||
|
+ return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
- dlopen(I965DrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
||||||
|
- if (I965HybridDrvVideoPath)
|
||||||
|
- dlopen(I965HybridDrvVideoPath, RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
||||||
|
- dlopen("libva.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
||||||
|
-#if defined(USE_OZONE)
|
||||||
|
- dlopen("libva-drm.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
||||||
|
-#elif defined(USE_X11)
|
||||||
|
- dlopen("libva-x11.so.1", RTLD_NOW|RTLD_GLOBAL|RTLD_NODELETE);
|
||||||
|
-#endif
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
+ int major_version, minor_version;
|
||||||
|
+ if (vaInitialize(va_display, &major_version, &minor_version)
|
||||||
|
+ != VA_STATUS_SUCCESS) {
|
||||||
|
+ VLOG(1) << "Failed to call vaInitialize()";
|
||||||
|
+ return false;
|
||||||
|
+ }
|
||||||
|
+ } // end of IsAcceleratedVaapiVideoEncodeEnabled() || IsAcceleratedVideoDecodeEnabled()
|
||||||
|
+ } // end of IsArchitectureX86_64() || IsArchitectureI386()
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
Index: dev.wily/chrome/browser/about_flags.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/chrome/browser/about_flags.cc
|
||||||
|
+++ dev.wily/chrome/browser/about_flags.cc
|
||||||
|
@@ -937,7 +937,7 @@
|
||||||
|
"disable-accelerated-video-decode",
|
||||||
|
IDS_FLAGS_ACCELERATED_VIDEO_DECODE_NAME,
|
||||||
|
IDS_FLAGS_ACCELERATED_VIDEO_DECODE_DESCRIPTION,
|
||||||
|
- kOsMac | kOsWin | kOsCrOS,
|
||||||
|
+ kOsAll,
|
||||||
|
SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
|
||||||
|
},
|
||||||
|
#if defined(USE_ASH)
|
||||||
|
Index: dev.wily/content/common/gpu/media/vaapi_wrapper.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/common/gpu/media/vaapi_wrapper.cc
|
||||||
|
+++ dev.wily/content/common/gpu/media/vaapi_wrapper.cc
|
||||||
|
@@ -146,7 +146,7 @@ scoped_ptr<VaapiWrapper> VaapiWrapper::C
|
||||||
|
VAProfile va_profile,
|
||||||
|
const base::Closure& report_error_to_uma_cb) {
|
||||||
|
if (!profile_infos_.Get().IsProfileSupported(mode, va_profile)) {
|
||||||
|
- DVLOG(1) << "Unsupported va_profile: " << va_profile;
|
||||||
|
+ VLOG(1) << "Unsupported va_profile: " << va_profile;
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -305,15 +305,17 @@ VaapiWrapper::GetSupportedProfileInfosFo
|
||||||
|
bool VaapiWrapper::VaInitialize(const base::Closure& report_error_to_uma_cb) {
|
||||||
|
static bool vaapi_functions_initialized = PostSandboxInitialization();
|
||||||
|
if (!vaapi_functions_initialized) {
|
||||||
|
- bool running_on_chromeos = false;
|
||||||
|
-#if defined(OS_CHROMEOS)
|
||||||
|
+ bool error_level_logging = false;
|
||||||
|
+#if defined(OS_LINUX)
|
||||||
|
+ error_level_logging = true;
|
||||||
|
+#elif defined(OS_CHROMEOS)
|
||||||
|
// When chrome runs on linux with chromeos=1, do not log error message
|
||||||
|
// without VAAPI libraries.
|
||||||
|
- running_on_chromeos = base::SysInfo::IsRunningOnChromeOS();
|
||||||
|
+ error_level_logging = base::SysInfo::IsRunningOnChromeOS();
|
||||||
|
#endif
|
||||||
|
static const char kErrorMsg[] = "Failed to initialize VAAPI libs";
|
||||||
|
- if (running_on_chromeos)
|
||||||
|
- LOG(ERROR) << kErrorMsg;
|
||||||
|
+ if (error_level_logging)
|
||||||
|
+ VLOG(1) << kErrorMsg;
|
||||||
|
else
|
||||||
|
DVLOG(1) << kErrorMsg;
|
||||||
|
return false;
|
||||||
|
@@ -384,7 +386,7 @@ bool VaapiWrapper::IsEntrypointSupported
|
||||||
|
if (std::find(supported_entrypoints.begin(),
|
||||||
|
supported_entrypoints.end(),
|
||||||
|
entrypoint) == supported_entrypoints.end()) {
|
||||||
|
- DVLOG(1) << "Unsupported entrypoint";
|
||||||
|
+ VLOG(1) << "Unsupported entrypoint";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
@@ -408,8 +410,8 @@ bool VaapiWrapper::AreAttribsSupported_L
|
||||||
|
if (attribs[i].type != required_attribs[i].type ||
|
||||||
|
(attribs[i].value & required_attribs[i].value) !=
|
||||||
|
required_attribs[i].value) {
|
||||||
|
- DVLOG(1) << "Unsupported value " << required_attribs[i].value
|
||||||
|
- << " for attribute type " << required_attribs[i].type;
|
||||||
|
+ VLOG(1) << "Unsupported value " << required_attribs[i].value
|
||||||
|
+ << " for attribute type " << required_attribs[i].type;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -427,46 +427,7 @@
|
||||||
|
VAEntrypoint entrypoint,
|
||||||
|
std::vector<VAConfigAttrib>& required_attribs,
|
||||||
|
gfx::Size* resolution) {
|
||||||
|
- va_lock_->AssertAcquired();
|
||||||
|
- VAConfigID va_config_id;
|
||||||
|
- VAStatus va_res = vaCreateConfig(
|
||||||
|
- va_display_,
|
||||||
|
- va_profile,
|
||||||
|
- entrypoint,
|
||||||
|
- &required_attribs[0],
|
||||||
|
- required_attribs.size(),
|
||||||
|
- &va_config_id);
|
||||||
|
- VA_SUCCESS_OR_RETURN(va_res, "vaCreateConfig failed", false);
|
||||||
|
-
|
||||||
|
- // Calls vaQuerySurfaceAttributes twice. The first time is to get the number
|
||||||
|
- // of attributes to prepare the space and the second time is to get all
|
||||||
|
- // attributes.
|
||||||
|
- unsigned int num_attribs;
|
||||||
|
- va_res = vaQuerySurfaceAttributes(
|
||||||
|
- va_display_, va_config_id, nullptr, &num_attribs);
|
||||||
|
- VA_SUCCESS_OR_RETURN(va_res, "vaQuerySurfaceAttributes failed", false);
|
||||||
|
- if (!num_attribs)
|
||||||
|
- return false;
|
||||||
|
-
|
||||||
|
- std::vector<VASurfaceAttrib> attrib_list(
|
||||||
|
- base::checked_cast<size_t>(num_attribs));
|
||||||
|
-
|
||||||
|
- va_res = vaQuerySurfaceAttributes(
|
||||||
|
- va_display_, va_config_id, &attrib_list[0], &num_attribs);
|
||||||
|
- VA_SUCCESS_OR_RETURN(va_res, "vaQuerySurfaceAttributes failed", false);
|
||||||
|
-
|
||||||
|
- resolution->SetSize(0, 0);
|
||||||
|
- for (const auto& attrib : attrib_list) {
|
||||||
|
- if (attrib.type == VASurfaceAttribMaxWidth)
|
||||||
|
- resolution->set_width(attrib.value.value.i);
|
||||||
|
- else if (attrib.type == VASurfaceAttribMaxHeight)
|
||||||
|
- resolution->set_height(attrib.value.value.i);
|
||||||
|
- }
|
||||||
|
- if (resolution->IsEmpty()) {
|
||||||
|
- LOG(ERROR) << "Codec resolution " << resolution->ToString()
|
||||||
|
- << " cannot be zero.";
|
||||||
|
- return false;
|
||||||
|
- }
|
||||||
|
+ resolution->SetSize(1920, 1088);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Index: dev.wily/content/common/gpu/media/vaapi_video_decode_accelerator.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/common/gpu/media/vaapi_video_decode_accelerator.cc
|
||||||
|
+++ dev.wily/content/common/gpu/media/vaapi_video_decode_accelerator.cc
|
||||||
|
@@ -269,17 +269,17 @@ bool VaapiVideoDecodeAccelerator::Initia
|
||||||
|
|
||||||
|
base::AutoLock auto_lock(lock_);
|
||||||
|
DCHECK_EQ(state_, kUninitialized);
|
||||||
|
- DVLOG(2) << "Initializing VAVDA, profile: " << profile;
|
||||||
|
+ VLOG(1) << "Initializing VAVDA, profile: " << profile;
|
||||||
|
|
||||||
|
#if defined(USE_X11)
|
||||||
|
if (gfx::GetGLImplementation() != gfx::kGLImplementationDesktopGL) {
|
||||||
|
- DVLOG(1) << "HW video decode acceleration not available without "
|
||||||
|
+ VLOG(1) << "HW video decode acceleration not available without "
|
||||||
|
"DesktopGL (GLX).";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
#elif defined(USE_OZONE)
|
||||||
|
if (gfx::GetGLImplementation() != gfx::kGLImplementationEGLGLES2) {
|
||||||
|
- DVLOG(1) << "HW video decode acceleration not available without "
|
||||||
|
+ VLOG(1) << "HW video decode acceleration not available without "
|
||||||
|
<< "EGLGLES2.";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
@@ -289,7 +289,7 @@ bool VaapiVideoDecodeAccelerator::Initia
|
||||||
|
VaapiWrapper::kDecode, profile, base::Bind(&ReportToUMA, VAAPI_ERROR));
|
||||||
|
|
||||||
|
if (!vaapi_wrapper_.get()) {
|
||||||
|
- DVLOG(1) << "Failed initializing VAAPI for profile " << profile;
|
||||||
|
+ VLOG(1) << "Failed initializing VAAPI for profile " << profile;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -302,7 +302,7 @@ bool VaapiVideoDecodeAccelerator::Initia
|
||||||
|
vp8_accelerator_.reset(new VaapiVP8Accelerator(this, vaapi_wrapper_.get()));
|
||||||
|
decoder_.reset(new VP8Decoder(vp8_accelerator_.get()));
|
||||||
|
} else {
|
||||||
|
- DLOG(ERROR) << "Unsupported profile " << profile;
|
||||||
|
+ VLOG(1) << "Unsupported profile " << profile;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
Index: dev.wily/content/gpu/gpu_main.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/gpu/gpu_main.cc
|
||||||
|
+++ dev.wily/content/gpu/gpu_main.cc
|
||||||
|
@@ -66,7 +66,7 @@
|
||||||
|
#include "content/common/sandbox_mac.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
#include "content/common/gpu/media/vaapi_wrapper.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
@@ -227,7 +227,7 @@ int GpuMain(const MainFunctionParams& pa
|
||||||
|
GetGpuInfoFromCommandLine(gpu_info, command_line);
|
||||||
|
gpu_info.in_process_gpu = false;
|
||||||
|
|
||||||
|
-#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
+#if (defined(OS_CHROMEOS) || defined(OS_LINUX)) && defined(ARCH_CPU_X86_FAMILY)
|
||||||
|
VaapiWrapper::PreSandboxInitialization();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
Index: dev.wily/content/common/gpu/client/command_buffer_proxy_impl.cc
|
||||||
|
===================================================================
|
||||||
|
--- dev.wily.orig/content/common/gpu/client/command_buffer_proxy_impl.cc
|
||||||
|
+++ dev.wily/content/common/gpu/client/command_buffer_proxy_impl.cc
|
||||||
|
@@ -561,8 +561,10 @@ bool CommandBufferProxyImpl::ProduceFron
|
||||||
|
|
||||||
|
scoped_ptr<media::VideoDecodeAccelerator>
|
||||||
|
CommandBufferProxyImpl::CreateVideoDecoder() {
|
||||||
|
+ TRACE_EVENT0("gpu", "CommandBufferProxyImpl::CreateVideoDecoder");
|
||||||
|
if (!channel_)
|
||||||
|
return scoped_ptr<media::VideoDecodeAccelerator>();
|
||||||
|
+ VLOG(1) << "About to create GpuVideoDecodeAcceleratorHost.";
|
||||||
|
return scoped_ptr<media::VideoDecodeAccelerator>(
|
||||||
|
new GpuVideoDecodeAcceleratorHost(channel_, this));
|
||||||
|
}
|
33
packages/addons/browser/chromium/source/bin/chromium
Normal file
33
packages/addons/browser/chromium/source/bin/chromium
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# OpenELEC is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenELEC is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
# make sure we use "own" gtk/pango/nss/etc
|
||||||
|
export LD_LIBRARY_PATH=/storage/.kodi/addons/browser.chromium/lib
|
||||||
|
|
||||||
|
# configure pango/pixbuf
|
||||||
|
export PANGO_RC_FILE=/storage/.kodi/addons/browser.chromium/config/pangorc
|
||||||
|
export GDK_PIXBUF_MODULE_FILE=/storage/.kodi/addons/browser.chromium/config/pixbuf.loaders.cache
|
||||||
|
|
||||||
|
# font rendering in gtk widgets is brokeen with nvidia blob. use our Xdefaults
|
||||||
|
export XENVIRONMENT=/storage/.kodi/addons/browser.chromium/config/Xdefaults
|
||||||
|
|
||||||
|
# start chromium
|
||||||
|
LD_PRELOAD=/usr/lib/libGL.so /storage/.kodi/addons/browser.chromium/bin/chromium.bin \
|
||||||
|
--user-data-dir=/storage/.kodi/userdata/addon_data/browser.chromium/profile \
|
||||||
|
--test-type $@
|
195
packages/addons/browser/chromium/source/default.py
Normal file
195
packages/addons/browser/chromium/source/default.py
Normal file
@ -0,0 +1,195 @@
|
|||||||
|
################################################################################
|
||||||
|
# This file is part of OpenELEC - http://www.openelec.tv
|
||||||
|
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||||
|
#
|
||||||
|
# This Program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
#
|
||||||
|
# This Program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||||
|
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||||
|
# http://www.gnu.org/copyleft/gpl.html
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import time
|
||||||
|
import xbmcaddon
|
||||||
|
import subprocess
|
||||||
|
from xml.dom.minidom import parse
|
||||||
|
|
||||||
|
sys.path.append('/usr/share/kodi/addons/service.libreelec.settings')
|
||||||
|
|
||||||
|
import oe
|
||||||
|
|
||||||
|
__addon__ = xbmcaddon.Addon();
|
||||||
|
__path__ = os.path.join(__addon__.getAddonInfo('path'), 'bin') + '/'
|
||||||
|
|
||||||
|
pauseXBMC = __addon__.getSetting("PAUSE_XBMC")
|
||||||
|
|
||||||
|
# widevine and flash stuff
|
||||||
|
__url__ = 'https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb'
|
||||||
|
__file__ = __url__.split('/')[-1]
|
||||||
|
__tar__ = 'data.tar.xz'
|
||||||
|
__tmp__ = '/tmp/widevine/'
|
||||||
|
__lib__ = 'opt/google/chrome/libwidevinecdm.so'
|
||||||
|
__flash__ = 'opt/google/chrome/PepperFlash/libpepflashplayer.so'
|
||||||
|
|
||||||
|
def download():
|
||||||
|
try:
|
||||||
|
if not os.path.isdir(__tmp__):
|
||||||
|
os.mkdir(__tmp__)
|
||||||
|
if not os.path.exists(__tmp__ + __file__):
|
||||||
|
oe.download_file(__url__, __tmp__ + __file__)
|
||||||
|
except Exception, e:
|
||||||
|
oe.notify('Chromium', 'Could not download file')
|
||||||
|
|
||||||
|
def install_flash():
|
||||||
|
try:
|
||||||
|
download()
|
||||||
|
oe.notify('Chromium', 'Extracting libpepflashplayer.so')
|
||||||
|
if not os.path.isdir(__tmp__ + __tar__):
|
||||||
|
oe.execute('cd ' + __tmp__ + ' && ar -x ' + __file__)
|
||||||
|
oe.execute('tar xf ' + __tmp__ + __tar__ + ' -C ' + __tmp__ + ' ./' + __flash__)
|
||||||
|
if not os.path.isdir(__path__ + 'PepperFlash'):
|
||||||
|
os.mkdir(__path__ + 'PepperFlash')
|
||||||
|
oe.copy_file(__tmp__ + __flash__, __path__ + 'PepperFlash/' + __flash__.split('/')[-1])
|
||||||
|
oe.notify('Chromium', 'Installation of libpepflashplayer.so succeeded')
|
||||||
|
except Exception, e:
|
||||||
|
oe.notify('Chromium', 'Installation of libpepflashplayer.so failed')
|
||||||
|
|
||||||
|
def install_widevine():
|
||||||
|
try:
|
||||||
|
download()
|
||||||
|
oe.notify('Chromium', 'Extracting libwidevinecdm.so')
|
||||||
|
if not os.path.isdir(__tmp__ + __tar__):
|
||||||
|
oe.execute('cd ' + __tmp__ + ' && ar -x ' + __file__)
|
||||||
|
oe.execute('tar xf ' + __tmp__ + __tar__ + ' -C ' + __tmp__ + ' ./' + __lib__)
|
||||||
|
oe.copy_file(__tmp__ + __lib__, __path__ + __lib__.split('/')[-1])
|
||||||
|
oe.notify('Chromium', 'Installation of libwidevinecdm.so succeeded')
|
||||||
|
except Exception, e:
|
||||||
|
oe.notify('Chromium', 'Installation of libwidevinecdm.so failed')
|
||||||
|
|
||||||
|
def pauseXbmc():
|
||||||
|
if pauseXBMC == "true":
|
||||||
|
xbmc.executebuiltin("PlayerControl(Stop)")
|
||||||
|
xbmc.audioSuspend()
|
||||||
|
xbmc.enableNavSounds(False)
|
||||||
|
|
||||||
|
def resumeXbmc():
|
||||||
|
if pauseXBMC == "true":
|
||||||
|
xbmc.audioResume()
|
||||||
|
xbmc.enableNavSounds(True)
|
||||||
|
|
||||||
|
def startChromium(args):
|
||||||
|
oe.execute('chmod +x ' + __path__ + 'chromium')
|
||||||
|
oe.execute('chmod +x ' + __path__ + 'chromium.bin')
|
||||||
|
oe.execute('chmod 4755 ' + __path__ + 'chrome-sandbox')
|
||||||
|
|
||||||
|
try:
|
||||||
|
window_mode = {
|
||||||
|
'maximized': '--start-maximized',
|
||||||
|
'kiosk': '--kiosk',
|
||||||
|
'none': '',
|
||||||
|
}
|
||||||
|
|
||||||
|
raster_mode = {
|
||||||
|
'default': '',
|
||||||
|
'off': '--disable-accelerated-2d-canvas --disable-gpu-compositing',
|
||||||
|
'force': '--enable-gpu-rasterization --enable-accelerated-2d-canvas --ignore-gpu-blacklist',
|
||||||
|
}
|
||||||
|
|
||||||
|
new_env = os.environ.copy()
|
||||||
|
vaapi_mode = __addon__.getSetting('VAAPI_MODE')
|
||||||
|
gpu_accel_mode = ''
|
||||||
|
if vaapi_mode == 'intel':
|
||||||
|
new_env['LIBVA_DRIVERS_PATH'] = '/usr/lib/va'
|
||||||
|
new_env['LIBVA_DRIVER_NAME'] = 'i965'
|
||||||
|
elif vaapi_mode == 'amd':
|
||||||
|
new_env['LIBVA_DRIVERS_PATH'] = os.path.join(__addon__.getAddonInfo('path'), 'lib')
|
||||||
|
new_env['LIBVA_DRIVER_NAME'] = 'vdpau'
|
||||||
|
elif vaapi_mode == 'nvidia':
|
||||||
|
new_env['LIBVA_DRIVERS_PATH'] = os.path.join(__addon__.getAddonInfo('path'), 'lib')
|
||||||
|
new_env['LIBVA_DRIVER_NAME'] = 'vdpau'
|
||||||
|
gpu_accel_mode = '--allow-no-sandbox-job --disable-gpu-sandbox'
|
||||||
|
else:
|
||||||
|
new_env['LIBGL_ALWAYS_SOFTWARE'] = '1'
|
||||||
|
|
||||||
|
flash_plugin = ''
|
||||||
|
if os.path.exists(__path__ + 'PepperFlash/libpepflashplayer.so'):
|
||||||
|
flash_plugin = '--ppapi-flash-path=' + __path__ + 'PepperFlash/libpepflashplayer.so'
|
||||||
|
|
||||||
|
if __addon__.getSetting('USE_CUST_AUDIODEVICE') == 'true':
|
||||||
|
alsa_device = __addon__.getSetting('CUST_AUDIODEVICE_STR')
|
||||||
|
else:
|
||||||
|
alsa_device = getAudioDevice()
|
||||||
|
alsa_param = ''
|
||||||
|
if not alsa_device == None and not alsa_device == '':
|
||||||
|
alsa_param = '--alsa-output-device=' + alsa_device
|
||||||
|
|
||||||
|
chrome_params = window_mode.get(__addon__.getSetting('WINDOW_MODE')) + ' ' + \
|
||||||
|
raster_mode.get(__addon__.getSetting('RASTER_MODE')) + ' ' + \
|
||||||
|
flash_plugin + ' ' + \
|
||||||
|
gpu_accel_mode + ' ' + \
|
||||||
|
alsa_param + ' ' + \
|
||||||
|
args + ' ' + \
|
||||||
|
__addon__.getSetting('HOMEPAGE')
|
||||||
|
subprocess.call(__path__ + 'chromium ' + chrome_params, shell=True, env=new_env)
|
||||||
|
except Exception, e:
|
||||||
|
oe.dbg_log('chromium', unicode(e))
|
||||||
|
|
||||||
|
def isRuning(pname):
|
||||||
|
tmp = os.popen("ps -Af").read()
|
||||||
|
pcount = tmp.count(pname)
|
||||||
|
if pcount > 0:
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
def getAudioDevice():
|
||||||
|
try:
|
||||||
|
dom = parse("/storage/.kodi/userdata/guisettings.xml")
|
||||||
|
audiooutput=dom.getElementsByTagName('audiooutput')
|
||||||
|
for node in audiooutput:
|
||||||
|
dev = node.getElementsByTagName('audiodevice')[0].childNodes[0].nodeValue
|
||||||
|
if dev.startswith("ALSA:"):
|
||||||
|
dev = dev.split("ALSA:")[1]
|
||||||
|
if dev == "@":
|
||||||
|
return None
|
||||||
|
if dev.startswith("@:"):
|
||||||
|
dev = dev.split("@:")[1]
|
||||||
|
else:
|
||||||
|
# not ALSA
|
||||||
|
return None
|
||||||
|
except:
|
||||||
|
return None
|
||||||
|
if dev.startswith("CARD="):
|
||||||
|
dev = "plughw:" + dev
|
||||||
|
return dev
|
||||||
|
|
||||||
|
if (not __addon__.getSetting("firstrun")):
|
||||||
|
__addon__.setSetting("firstrun", "1")
|
||||||
|
__addon__.openSettings()
|
||||||
|
|
||||||
|
try:
|
||||||
|
args = ' '.join(sys.argv[1:])
|
||||||
|
except:
|
||||||
|
args = ""
|
||||||
|
|
||||||
|
if args == 'widevine':
|
||||||
|
install_widevine()
|
||||||
|
elif args == 'flash':
|
||||||
|
install_flash()
|
||||||
|
else:
|
||||||
|
if not isRuning('chromium.bin'):
|
||||||
|
pauseXbmc()
|
||||||
|
startChromium(args)
|
||||||
|
while isRuning('chromium.bin'):
|
||||||
|
time.sleep(1)
|
||||||
|
resumeXbmc()
|
@ -0,0 +1,16 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<strings>
|
||||||
|
<string id="1000">General</string>
|
||||||
|
<string id="1001">Actions</string>
|
||||||
|
<string id="1020">Chromium Configuration</string>
|
||||||
|
<string id="1021">Stop Kodi Player and Suspend AudioEngine</string>
|
||||||
|
<string id="1022">HW Acceleration Mode</string>
|
||||||
|
<string id="1023">Rasterization Mode</string>
|
||||||
|
<string id="1024">Window Mode</string>
|
||||||
|
<string id="1025">Default Homepage</string>
|
||||||
|
<string id="1026">Use Custom Audio Device</string>
|
||||||
|
<string id="1027">Audio Device</string>
|
||||||
|
<string id="1030">Chromium Actions</string>
|
||||||
|
<string id="1031">Install libwidevinecdm.so (Netflix Support)</string>
|
||||||
|
<string id="1032">Install libpepflashplayer.so (Flash Player Support)</string>
|
||||||
|
</strings>
|
@ -0,0 +1,20 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<settings>
|
||||||
|
<category label="1000">
|
||||||
|
<setting label="1020" type="lsep"/>
|
||||||
|
<setting type="sep" />
|
||||||
|
<setting id="PAUSE_XBMC" type="bool" label="1021" default="true" />
|
||||||
|
<setting id="VAAPI_MODE" type="labelenum" label="1022" values="off|intel|amd|nvidia" default="off"/>
|
||||||
|
<setting id="RASTER_MODE" type="labelenum" label="1023" values="default|off|force" default="default" subsetting="true" enable="gt(-1,0)"/>
|
||||||
|
<setting id="WINDOW_MODE" type="labelenum" label="1024" values="maximized|kiosk|none" default="maximized" />
|
||||||
|
<setting id="HOMEPAGE" type="text" label="1025" default="https://libreelec.tv" />
|
||||||
|
<setting id="USE_CUST_AUDIODEVICE" type="bool" label="1026" default="false" />
|
||||||
|
<setting id="CUST_AUDIODEVICE_STR" type="text" label="1027" visible="eq(-1,true)" subsetting="true" default="" />
|
||||||
|
</category>
|
||||||
|
<category label="1001">
|
||||||
|
<setting label="1030" type="lsep"/>
|
||||||
|
<setting type="sep" />
|
||||||
|
<setting label="1031" type="action" action="RunScript(browser.chromium, widevine)"/>
|
||||||
|
<setting label="1032" type="action" action="RunScript(browser.chromium, flash)"/>
|
||||||
|
</category>
|
||||||
|
</settings>
|
Loading…
x
Reference in New Issue
Block a user