summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-01-18 17:03:04 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-01-18 23:14:51 +0000
commit6107be140fdec204586850ea1f7e4b968be7670b (patch)
tree0c12daad5c95c27e35499b5e70f01fc36b85d297
parent73d84b7f1fbf99c0db30c8ffe4c270e2803203fd (diff)
downloadmeta-gplv2-6107be140fdec204586850ea1f7e4b968be7670b.tar.gz
shared-mime-info: Add 1.10 from OE-Core3.1_M2
Later versions of shared-mime-info need itstool which is GPLv3. Add an old version of shared-mime-info to allow gplv3 free builds to suceed. Use python to set PREFERRED_VERSION based on INCOMPATIBLE_LICENSE to control this. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--conf/layer.conf3
-rw-r--r--recipes-support/shared-mime-info/shared-mime-info.inc37
-rw-r--r--recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch25
-rw-r--r--recipes-support/shared-mime-info/shared-mime-info/parallelmake.patch33
-rw-r--r--recipes-support/shared-mime-info/shared-mime-info_1.10.bb7
5 files changed, 105 insertions, 0 deletions
diff --git a/conf/layer.conf b/conf/layer.conf
index 0d46e11..3cd88dc 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -17,3 +17,6 @@ LAYERDEPENDS_gplv2 = "core"
17LAYERSERIES_COMPAT_gplv2 = "zeus" 17LAYERSERIES_COMPAT_gplv2 = "zeus"
18 18
19LICENSE_PATH += "${LAYERDIR}/licenses" 19LICENSE_PATH += "${LAYERDIR}/licenses"
20
21PREFERRED_VERSION_shared-mime-info = "${@['', '1.10']['GPLV3' in (d.getVar('INCOMPATIBLE_LICENSE') or '').upper()]}"
22PREFERRED_VERSION_shared-mime-info-native = "${@['', '1.10']['GPLV3' in (d.getVar('INCOMPATIBLE_LICENSE') or '').upper()]}"
diff --git a/recipes-support/shared-mime-info/shared-mime-info.inc b/recipes-support/shared-mime-info/shared-mime-info.inc
new file mode 100644
index 0000000..3fe1a44
--- /dev/null
+++ b/recipes-support/shared-mime-info/shared-mime-info.inc
@@ -0,0 +1,37 @@
1SUMMARY = "Shared MIME type database and specification"
2HOMEPAGE = "http://freedesktop.org/wiki/Software/shared-mime-info"
3SECTION = "base"
4
5LICENSE = "GPLv2"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7
8DEPENDS = "libxml2 intltool-native glib-2.0 shared-mime-info-native"
9
10SRC_URI = "http://freedesktop.org/~hadess/shared-mime-info-${PV}.tar.xz"
11
12inherit autotools pkgconfig gettext
13
14EXTRA_OECONF = "--disable-update-mimedb"
15
16FILES_${PN} += "${datadir}/mime"
17FILES_${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc"
18
19# freedesktop.org.xml is only required when updating the mime database,
20# package it separately
21PACKAGES =+ "shared-mime-info-data"
22FILES_shared-mime-info-data = "${datadir}/mime/packages/freedesktop.org.xml"
23RDEPENDS_shared-mime-info-data = "shared-mime-info"
24
25do_install () {
26 autotools_do_install
27
28 update-mime-database ${D}${datadir}/mime
29}
30
31do_install_class-native () {
32 autotools_do_install
33
34 ${B}/update-mime-database ${D}${datadir}/mime
35}
36
37BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch b/recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch
new file mode 100644
index 0000000..262ff75
--- /dev/null
+++ b/recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch
@@ -0,0 +1,25 @@
1fix shared-mime-info build race condition
2
3The definition of install-data-hook in Makefile.am leads
4to multiple, overlapping, executions of install-binPROGRAMS
5target. We modify the definition to avoid that.
6
7Upstream-Status: Pending
8
9Signed-off-by: Joe Slater <jslater@windriver.com>
10
11Index: shared-mime-info-1.9/Makefile.am
12===================================================================
13--- shared-mime-info-1.9.orig/Makefile.am
14+++ shared-mime-info-1.9/Makefile.am
15@@ -50,7 +50,9 @@ else
16 update_mime_database="$(top_builddir)/update-mime-database$(EXEEXT)"
17 endif
18
19-install-data-hook: install-binPROGRAMS
20+# do NOT make this dependent on anything!
21+#
22+install-data-hook:
23 if ENABLE_UPDATE_MIMEDB
24 $(update_mime_database) -V "$(DESTDIR)$(datadir)/mime"
25 endif
diff --git a/recipes-support/shared-mime-info/shared-mime-info/parallelmake.patch b/recipes-support/shared-mime-info/shared-mime-info/parallelmake.patch
new file mode 100644
index 0000000..fea34a5
--- /dev/null
+++ b/recipes-support/shared-mime-info/shared-mime-info/parallelmake.patch
@@ -0,0 +1,33 @@
1The Makefile used by shared-mime-info is one big race with the SUBDIRS
2option and the dependency specifically calling make all combining to
3create multiple make instances all of which may try and build targets
4like update-mime-database.
5
6This patch removes those options meaning make can correctly identify
7dependencies and stop itself racing itself.
8
9RP 10/10/2011
10
11Upstream-Status: Pending
12Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
13
14Index: shared-mime-info-1.9/Makefile.am
15===================================================================
16--- shared-mime-info-1.9.orig/Makefile.am
17+++ shared-mime-info-1.9/Makefile.am
18@@ -1,5 +1,3 @@
19-SUBDIRS=. po
20-
21 AM_CPPFLAGS = $(ALL_CFLAGS)
22
23 packagesdir = $(datadir)/mime/packages
24@@ -81,8 +79,7 @@ endif
25
26 all: $(defaultmakedeps)
27
28-create-pot:
29- $(AM_V_GEN) $(MAKE) -C po shared-mime-info.pot
30+create-pot: po
31
32 local-test: create-pot freedesktop.org.xml update-mime-database$(EXEEXT)
33 if CROSS_COMPILING
diff --git a/recipes-support/shared-mime-info/shared-mime-info_1.10.bb b/recipes-support/shared-mime-info/shared-mime-info_1.10.bb
new file mode 100644
index 0000000..9fc210b
--- /dev/null
+++ b/recipes-support/shared-mime-info/shared-mime-info_1.10.bb
@@ -0,0 +1,7 @@
1require shared-mime-info.inc
2
3SRC_URI += "file://parallelmake.patch \
4 file://install-data-hook.patch"
5
6SRC_URI[md5sum] = "418c2ced9dc4dd5ca8b06a755e6d64e9"
7SRC_URI[sha256sum] = "c625a83b4838befc8cafcd54e3619946515d9e44d63d61c4adf7f5513ddfbebf"