All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] ffmpeg: use static package list
@ 2017-02-16 10:34 Andreas Oberritter
  2017-02-16 10:34 ` [PATCH 2/3] ffmpeg: Fix the license description Andreas Oberritter
  2017-02-16 10:34 ` [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset Andreas Oberritter
  0 siblings, 2 replies; 7+ messages in thread
From: Andreas Oberritter @ 2017-02-16 10:34 UTC (permalink / raw)
  To: openembedded-core

Dynamic packaging isn't useful if every library needs to be
listed manually.

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
---
 meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb | 53 +++++++++-----------------
 1 file changed, 19 insertions(+), 34 deletions(-)

diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
index e206222..52c266b 100644
--- a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
@@ -107,7 +107,25 @@ do_configure() {
     ${S}/configure ${EXTRA_OECONF}
 }
 
-PACKAGES_DYNAMIC += "^lib(av(codec|device|filter|format|util|resample)|swscale|swresample|postproc).*"
+PACKAGES =+ "libavcodec \
+             libavdevice \
+             libavfilter \
+             libavformat \
+             libavresample \
+             libavutil \
+             libpostproc \
+             libswresample \
+             libswscale"
+
+FILES_libavcodec = "${libdir}/libavcodec${SOLIBS}"
+FILES_libavdevice = "${libdir}/libavdevice${SOLIBS}"
+FILES_libavfilter = "${libdir}/libavfilter${SOLIBS}"
+FILES_libavformat = "${libdir}/libavformat${SOLIBS}"
+FILES_libavresample = "${libdir}/libavresample${SOLIBS}"
+FILES_libavutil = "${libdir}/libavutil${SOLIBS}"
+FILES_libpostproc = "${libdir}/libpostproc${SOLIBS}"
+FILES_libswresample = "${libdir}/libswresample${SOLIBS}"
+FILES_libswscale = "${libdir}/libswscale${SOLIBS}"
 
 # ffmpeg disables PIC on some platforms (e.g. x86-32)
 INSANE_SKIP_${MLPREFIX}libavcodec = "textrel"
@@ -119,36 +137,3 @@ INSANE_SKIP_${MLPREFIX}libavresample = "textrel"
 INSANE_SKIP_${MLPREFIX}libswscale = "textrel"
 INSANE_SKIP_${MLPREFIX}libswresample = "textrel"
 INSANE_SKIP_${MLPREFIX}libpostproc = "textrel"
-
-python populate_packages_prepend() {
-    av_libdir = d.expand('${libdir}')
-    av_pkgconfig = d.expand('${libdir}/pkgconfig')
-
-    # Runtime package
-    do_split_packages(d, av_libdir, '^lib(.*)\.so\..*',
-                      output_pattern='lib%s',
-                      description='libav %s library',
-                      extra_depends='',
-                      prepend=True,
-                      allow_links=True)
-
-    # Development packages (-dev, -staticdev)
-    do_split_packages(d, av_libdir, '^lib(.*)\.so$',
-                      output_pattern='lib%s-dev',
-                      description='libav %s development package',
-                      extra_depends='${PN}-dev',
-                      prepend=True,
-                      allow_links=True)
-    do_split_packages(d, av_pkgconfig, '^lib(.*)\.pc$',
-                      output_pattern='lib%s-dev',
-                      description='libav %s development package',
-                      extra_depends='${PN}-dev',
-                      prepend=True)
-    do_split_packages(d, av_libdir, '^lib(.*)\.a$',
-                      output_pattern='lib%s-staticdev',
-                      description='libav %s development package - static library',
-                      extra_depends='${PN}-dev',
-                      prepend=True,
-                      allow_links=True)
-
-}
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/3] ffmpeg: Fix the license description
  2017-02-16 10:34 [PATCH 1/3] ffmpeg: use static package list Andreas Oberritter
@ 2017-02-16 10:34 ` Andreas Oberritter
  2017-02-21  1:21   ` Burton, Ross
  2017-02-16 10:34 ` [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset Andreas Oberritter
  1 sibling, 1 reply; 7+ messages in thread
From: Andreas Oberritter @ 2017-02-16 10:34 UTC (permalink / raw)
  To: openembedded-core

FFmpeg has complicated licensing options, so it should also
have complicated license statements in its recipe.

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
---
 meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
index 52c266b..dc33bb4 100644
--- a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
@@ -5,7 +5,17 @@ DESCRIPTION = "FFmpeg is the leading multimedia framework, able to decode, encod
 HOMEPAGE = "https://www.ffmpeg.org/"
 SECTION = "libs"
 
-LICENSE = "GPLv2+"
+LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT"
+LICENSE_${PN} = "GPLv2+"
+LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libpostproc = "GPLv2+"
+LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
 LICENSE_FLAGS = "commercial"
 
 LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset
  2017-02-16 10:34 [PATCH 1/3] ffmpeg: use static package list Andreas Oberritter
  2017-02-16 10:34 ` [PATCH 2/3] ffmpeg: Fix the license description Andreas Oberritter
@ 2017-02-16 10:34 ` Andreas Oberritter
  2017-02-16 15:39   ` Khem Raj
  1 sibling, 1 reply; 7+ messages in thread
From: Andreas Oberritter @ 2017-02-16 10:34 UTC (permalink / raw)
  To: openembedded-core

The libpostproc package has an explicit GPLv2+ license tag.

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
---
 ...figure-allow-libpostproc-without-gpl-flag.patch | 34 ++++++++++++++++++++++
 meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb     |  1 +
 2 files changed, 35 insertions(+)
 create mode 100644 meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch

diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
new file mode 100644
index 0000000..dc11f34
--- /dev/null
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
@@ -0,0 +1,34 @@
+Upstream-Status: inappropriate [distro-specific]
+
+Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
+
+From 9c28ed17d1184ee95819e4c576373c20fe2c3600 Mon Sep 17 00:00:00 2001
+From: Andreas Oberritter <obi@opendreambox.org>
+Date: Sat, 11 Feb 2017 22:57:42 +0100
+Subject: [PATCH] configure: allow libpostproc without gpl flag
+
+There may be GPL'ed programs in a distribution which want libpostproc,
+while other GPL-incompatible programs use some of the other libraries
+provided by ffmpeg.
+
+Since we know the license of libpostproc, we mark the resulting binary
+package accordingly instead of refusing to build it.
+
+Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index d60ffd8..cd53e6c 100755
+--- a/configure
++++ b/configure
+@@ -3135,7 +3135,7 @@ avdevice_deps="avformat avcodec avutil"
+ avfilter_deps="avutil"
+ avformat_deps="avcodec avutil"
+ avresample_deps="avutil"
+-postproc_deps="avutil gpl"
++postproc_deps="avutil"
+ swresample_deps="avutil"
+ swscale_deps="avutil"
+ 
diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
index dc33bb4..555c72b 100644
--- a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
@@ -26,6 +26,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
 SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
            file://mips64_cpu_detection.patch \
            file://0001-avutil-log-avoid-build-error-if-valgrind-was-removed.patch \
+           file://0002-configure-allow-libpostproc-without-gpl-flag.patch \
           "
 SRC_URI[md5sum] = "e34d1b92c5d844f2a3611c741a6dba18"
 SRC_URI[sha256sum] = "3f01bd1fe1a17a277f8c84869e5d9192b4b978cb660872aa2b54c3cc8a2fedfc"
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset
  2017-02-16 10:34 ` [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset Andreas Oberritter
@ 2017-02-16 15:39   ` Khem Raj
  2017-02-17 10:31     ` Andreas Oberritter
  0 siblings, 1 reply; 7+ messages in thread
From: Khem Raj @ 2017-02-16 15:39 UTC (permalink / raw)
  To: Andreas Oberritter; +Cc: Patches and discussions about the oe-core layer

On Thu, Feb 16, 2017 at 2:34 AM, Andreas Oberritter
<obi@opendreambox.org> wrote:
> The libpostproc package has an explicit GPLv2+ license tag.
>
> Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> ---
>  ...figure-allow-libpostproc-without-gpl-flag.patch | 34 ++++++++++++++++++++++
>  meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb     |  1 +
>  2 files changed, 35 insertions(+)
>  create mode 100644 meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
>
> diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
> new file mode 100644
> index 0000000..dc11f34
> --- /dev/null
> +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
> @@ -0,0 +1,34 @@
> +Upstream-Status: inappropriate [distro-specific]
> +
> +Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> +
> +From 9c28ed17d1184ee95819e4c576373c20fe2c3600 Mon Sep 17 00:00:00 2001
> +From: Andreas Oberritter <obi@opendreambox.org>
> +Date: Sat, 11 Feb 2017 22:57:42 +0100
> +Subject: [PATCH] configure: allow libpostproc without gpl flag
> +
> +There may be GPL'ed programs in a distribution which want libpostproc,
> +while other GPL-incompatible programs use some of the other libraries
> +provided by ffmpeg.
> +
> +Since we know the license of libpostproc, we mark the resulting binary
> +package accordingly instead of refusing to build it.


this changes the documented behavior IMO we should discuss it upstream
otherwise it will be hard to explain this to legal people.

> +
> +Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> +---
> + configure | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/configure b/configure
> +index d60ffd8..cd53e6c 100755
> +--- a/configure
> ++++ b/configure
> +@@ -3135,7 +3135,7 @@ avdevice_deps="avformat avcodec avutil"
> + avfilter_deps="avutil"
> + avformat_deps="avcodec avutil"
> + avresample_deps="avutil"
> +-postproc_deps="avutil gpl"
> ++postproc_deps="avutil"
> + swresample_deps="avutil"
> + swscale_deps="avutil"
> +
> diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
> index dc33bb4..555c72b 100644
> --- a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
> +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
> @@ -26,6 +26,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
>  SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
>             file://mips64_cpu_detection.patch \
>             file://0001-avutil-log-avoid-build-error-if-valgrind-was-removed.patch \
> +           file://0002-configure-allow-libpostproc-without-gpl-flag.patch \
>            "
>  SRC_URI[md5sum] = "e34d1b92c5d844f2a3611c741a6dba18"
>  SRC_URI[sha256sum] = "3f01bd1fe1a17a277f8c84869e5d9192b4b978cb660872aa2b54c3cc8a2fedfc"
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset
  2017-02-16 15:39   ` Khem Raj
@ 2017-02-17 10:31     ` Andreas Oberritter
  0 siblings, 0 replies; 7+ messages in thread
From: Andreas Oberritter @ 2017-02-17 10:31 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Thu, 16 Feb 2017 07:39:17 -0800 Khem Raj <raj.khem@gmail.com> wrote:

> On Thu, Feb 16, 2017 at 2:34 AM, Andreas Oberritter
> <obi@opendreambox.org> wrote:
> > The libpostproc package has an explicit GPLv2+ license tag.
> >
> > Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> > ---
> >  ...figure-allow-libpostproc-without-gpl-flag.patch | 34 ++++++++++++++++++++++
> >  meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb     |  1 +
> >  2 files changed, 35 insertions(+)
> >  create mode 100644 meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
> >
> > diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
> > new file mode 100644
> > index 0000000..dc11f34
> > --- /dev/null
> > +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/0002-configure-allow-libpostproc-without-gpl-flag.patch
> > @@ -0,0 +1,34 @@
> > +Upstream-Status: inappropriate [distro-specific]
> > +
> > +Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> > +
> > +From 9c28ed17d1184ee95819e4c576373c20fe2c3600 Mon Sep 17 00:00:00 2001
> > +From: Andreas Oberritter <obi@opendreambox.org>
> > +Date: Sat, 11 Feb 2017 22:57:42 +0100
> > +Subject: [PATCH] configure: allow libpostproc without gpl flag
> > +
> > +There may be GPL'ed programs in a distribution which want libpostproc,
> > +while other GPL-incompatible programs use some of the other libraries
> > +provided by ffmpeg.
> > +
> > +Since we know the license of libpostproc, we mark the resulting binary
> > +package accordingly instead of refusing to build it.  
> 
> 
> this changes the documented behavior IMO we should discuss it upstream
> otherwise it will be hard to explain this to legal people.

Really? I don't see why. There's no difference to any other GPL package we
build. The documentation says libpostroc is GPL'ed. The recipe does the same.
No surprises for legal people involved.

I'm not going to annoy upstream with this, because this change is not suitable
for upstream. That's why it carries the 'inappropriate' tag.

Regards,
Andreas

> 
> > +
> > +Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> > +---
> > + configure | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/configure b/configure
> > +index d60ffd8..cd53e6c 100755
> > +--- a/configure
> > ++++ b/configure
> > +@@ -3135,7 +3135,7 @@ avdevice_deps="avformat avcodec avutil"
> > + avfilter_deps="avutil"
> > + avformat_deps="avcodec avutil"
> > + avresample_deps="avutil"
> > +-postproc_deps="avutil gpl"
> > ++postproc_deps="avutil"
> > + swresample_deps="avutil"
> > + swscale_deps="avutil"
> > +
> > diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
> > index dc33bb4..555c72b 100644
> > --- a/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
> > +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_3.2.2.bb
> > @@ -26,6 +26,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
> >  SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
> >             file://mips64_cpu_detection.patch \
> >             file://0001-avutil-log-avoid-build-error-if-valgrind-was-removed.patch \
> > +           file://0002-configure-allow-libpostproc-without-gpl-flag.patch \
> >            "
> >  SRC_URI[md5sum] = "e34d1b92c5d844f2a3611c741a6dba18"
> >  SRC_URI[sha256sum] = "3f01bd1fe1a17a277f8c84869e5d9192b4b978cb660872aa2b54c3cc8a2fedfc"
> > --
> > 2.7.4
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core  



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/3] ffmpeg: Fix the license description
  2017-02-16 10:34 ` [PATCH 2/3] ffmpeg: Fix the license description Andreas Oberritter
@ 2017-02-21  1:21   ` Burton, Ross
  2017-02-21  9:53     ` Andreas Oberritter
  0 siblings, 1 reply; 7+ messages in thread
From: Burton, Ross @ 2017-02-21  1:21 UTC (permalink / raw)
  To: Andreas Oberritter; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 2078 bytes --]

On 16 February 2017 at 10:34, Andreas Oberritter <obi@opendreambox.org>
wrote:

> +LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT"
> +LICENSE_${PN} = "GPLv2+"
> +LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libpostproc = "GPLv2+"
> +LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
> +LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> 'GPLv2+', 'LGPLv2.1+', d)}"
>

Using a script to extract the pkgdata information, I see this license
information in the runtime libraries.

libswscale-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libswresample-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libpostproc-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libavutil-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libavformat-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libavfilter-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libavdevice-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libavcodec-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
libswscale: GPLv2+
libswresample: GPLv2+
libpostproc: GPLv2+
libavutil: GPLv2+
libavformat: GPLv2+
libavfilter: GPLv2+
libavdevice: GPLv2+
libavcodec: GPLv2+
ffmpeg-dbg: BSD & GPLv2+ & LGPLv2.1+ & MIT
ffmpeg-staticdev: BSD & GPLv2+ & LGPLv2.1+ & MIT
ffmpeg-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
ffmpeg-doc: BSD & GPLv2+ & LGPLv2.1+ & MIT
ffmpeg-locale: BSD & GPLv2+ & LGPLv2.1+ & MIT
ffmpeg: GPLv2+

It looks like the BSD/LGPL/MIT license statements don't end up in any
packages which actually contain binaries.  Is this correct?

Ross

[-- Attachment #2: Type: text/html, Size: 3902 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/3] ffmpeg: Fix the license description
  2017-02-21  1:21   ` Burton, Ross
@ 2017-02-21  9:53     ` Andreas Oberritter
  0 siblings, 0 replies; 7+ messages in thread
From: Andreas Oberritter @ 2017-02-21  9:53 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

On Tue, 21 Feb 2017 01:21:35 +0000
"Burton, Ross" <ross.burton@intel.com> wrote:

> On 16 February 2017 at 10:34, Andreas Oberritter <obi@opendreambox.org>
> wrote:
> 
> > +LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT"
> > +LICENSE_${PN} = "GPLv2+"
> > +LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libpostproc = "GPLv2+"
> > +LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> > +LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl',
> > 'GPLv2+', 'LGPLv2.1+', d)}"
> >  
> 
> Using a script to extract the pkgdata information, I see this license
> information in the runtime libraries.
> 
> libswscale-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libswresample-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libpostproc-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libavutil-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libavformat-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libavfilter-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libavdevice-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libavcodec-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> libswscale: GPLv2+
> libswresample: GPLv2+
> libpostproc: GPLv2+
> libavutil: GPLv2+
> libavformat: GPLv2+
> libavfilter: GPLv2+
> libavdevice: GPLv2+
> libavcodec: GPLv2+
> ffmpeg-dbg: BSD & GPLv2+ & LGPLv2.1+ & MIT
> ffmpeg-staticdev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> ffmpeg-dev: BSD & GPLv2+ & LGPLv2.1+ & MIT
> ffmpeg-doc: BSD & GPLv2+ & LGPLv2.1+ & MIT
> ffmpeg-locale: BSD & GPLv2+ & LGPLv2.1+ & MIT
> ffmpeg: GPLv2+
> 
> It looks like the BSD/LGPL/MIT license statements don't end up in any
> packages which actually contain binaries.  Is this correct?

Yes, because LICENSE describes the source licenses, whereas LICENSE_.* describes
licenses of binary packages [1].

The binary packages contain combined work. Quoted from FFmpeg's docs (LICENSE.md):

„Most files in FFmpeg are under the GNU Lesser General Public License version 2.1
or later (LGPL v2.1+). Read the file `COPYING.LGPLv2.1` for details. Some other
files have MIT/X11/BSD-style licenses. In combination the LGPL v2.1+ applies to
FFmpeg.“

If you disable the 'gpl' PACKAGECONFIG knob, the binary packages will get the LGPLv2+
license tag (except for libpostproc), and slightly reduced functionality.

Regards,
Andreas

[1]: http://www.yoctoproject.org/docs/current/ref-manual/ref-manual.html#var-LICENSE


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-02-21  9:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-16 10:34 [PATCH 1/3] ffmpeg: use static package list Andreas Oberritter
2017-02-16 10:34 ` [PATCH 2/3] ffmpeg: Fix the license description Andreas Oberritter
2017-02-21  1:21   ` Burton, Ross
2017-02-21  9:53     ` Andreas Oberritter
2017-02-16 10:34 ` [PATCH 3/3] ffmpeg: Build libpostproc even if global gpl flag is unset Andreas Oberritter
2017-02-16 15:39   ` Khem Raj
2017-02-17 10:31     ` Andreas Oberritter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.