gst-ffmpeg: add option for LGPL build
PATCH v2 1/1 gst-ffmpeg: add option for LGPL build
Add option to build a LGPL licensed gst-ffmpeg.
---
v1 -> v2:
- Move GST_FFMPEG_CONF_OPT adjustment (introduced by this patch) higher in the file, so that GST_FFMPEG_CONF_EXTRA_OPT lines don't get split.
--- package/gstreamer/gst-ffmpeg/Config.in | 13 ++++++++++++- package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk | 11 ++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-)
package/gstreamer/gst-ffmpeg/Config.in +12 -1
@@ -1,4 +1,4 @@ -config BR2_PACKAGE_GST_FFMPEG +menuconfig BR2_PACKAGE_GST_FFMPEG bool "gst-ffmpeg" select BR2_PACKAGE_GST_PLUGINS_BASE depends on BR2_LARGEFILE
@@ -8,5 +8,16 @@ config BR2_PACKAGE_GST_FFMPEG http://gstreamer.freedesktop.org/ +if BR2_PACKAGE_GST_FFMPEG + +config BR2_PACKAGE_GST_FFMPEG_LGPL_BUILD + bool "Build a LGPL licensed gst-ffmpeg" + help + This removes --enable-gpl and --enable-postproc from the + ffmpeg configure line, and disables building the postproc + gstreamer plugin. + +endif + comment "gst-ffmpeg needs a toolchain w/ largefile, IPv6" depends on !(BR2_LARGEFILE && BR2_INET_IPV6)
package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk +10 -1
@@ -10,6 +10,15 @@ GST_FFMPEG_SITE = http://gstreamer.freedesktop.org/src/gst-ffmpeg GST_FFMPEG_INSTALL_STAGING = YES GST_FFMPEG_DEPENDENCIES = host-pkgconf gstreamer gst-plugins-base +ifeq ($(BR2_PACKAGE_GST_FFMPEG_LGPL_BUILD),y) +GST_FFMPEG_CONF_OPT += --enable-lgpl +GST_FFMPEG_LICENSE = LGPL2+ (gst-ffmpeg), LGPLv2.1+/LGPL3+ (libav) +GST_FFMPEG_LICENSE_FILES = COPYING.LIB gst-libs/ext/libav/COPYING.LGPLv2.1 gst-libs/ext/libav/COPYING.LGPLv3 +else +GST_FFMPEG_LICENSE = GPLv2+ (gst-ffmpeg), GPLv2+/GPL3+ (libav) +GST_FFMPEG_LICENSE_FILES = COPYING gst-libs/ext/libav/COPYING.GPLv2 gst-libs/ext/libav/COPYING.GPLv3 +endif + GST_FFMPEG_CONF_EXTRA_OPT = \ --cross-prefix=$(TARGET_CROSS) \ --target-os=linux
@@ -76,6 +85,6 @@ ifeq ($(BR2_PREFER_STATIC_LIB),) GST_FFMPEG_CONF_EXTRA_OPT += --enable-pic endif -GST_FFMPEG_CONF_OPT = --with-ffmpeg-extra-configure="$(GST_FFMPEG_CONF_EXTRA_OPT)" +GST_FFMPEG_CONF_OPT += --with-ffmpeg-extra-configure="$(GST_FFMPEG_CONF_EXTRA_OPT)" $(eval $(autotools-package))
Signature · 1 line
1.7.9.5
PATCH v2 1/1 gst-ffmpeg: add option for LGPL build
Dear Danomi Manchego,
Quoted 26 lines · Danomi Manchego
Add option to build a LGPL licensed gst-ffmpeg.
Signed-off-by Danomi Manchego <[email protected]>---
v1 -> v2:
- MoveGST_FFMPEG_CONF_OPTadjustment (introduced by this patch) higher in the file, so thatGST_FFMPEG_CONF_EXTRA_OPTlines don't get split.--- package/gstreamer/gst-ffmpeg/Config.in | 13 ++++++++++++- package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk | 11 ++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-)package/gstreamer/gst-ffmpeg/Config.in +1
-1@@ -1,4 +1,4 @@ -config BR2_PACKAGE_GST_FFMPEG +menuconfig BR2_PACKAGE_GST_FFMPEG bool "gst-ffmpeg" select BR2_PACKAGE_GST_PLUGINS_BASE depends on BR2_LARGEFILE
package/gstreamer/gst-ffmpeg/Config.in config BR2_PACKAGE_GST_FFMPEG · line 9
Quoted 2 lines
package/gstreamer/gst-ffmpeg/Config.in +0
-0@@ -8,5 +8,16 @@ config BR2_PACKAGE_GST_FFMPEG http://gstreamer.freedesktop.org/
Not related to your patch, but how about providing a more specific URL such as http://gstreamer.freedesktop.org/modules/gst-ffmpeg.html?
It would be a separate patch of course.
package/gstreamer/gst-ffmpeg/Config.in config BR2_PACKAGE_GST_FFMPEG · line 18
Quoted 9 lines
package/gstreamer/gst-ffmpeg/Config.in +8
-0+if BR2_PACKAGE_GST_FFMPEG + +config BR2_PACKAGE_GST_FFMPEG_LGPL_BUILD + bool "Build a LGPL licensed gst-ffmpeg" + help + This removes --enable-gpl and --enable-postproc from the + ffmpeg configure line, and disables building the postproc + gstreamer plugin.
I personally prefer positive options. If you enable this options, it will remove stuff. I suggest you mimic the BR2_PACKAGE_FFMPEG_GPL option, from the ffmpeg package.
Also unrelated to this patch, but is this package actually using ffmpeg or libav? All kconfig stuff suggest ffmpeg, but the package tarball actually contains a copy of the library in a directory named gst-libs/ext/libav, and the licensing info you add below mention libav.
It's worth adding a separate patch to clarify to the user that:
- this package uses an internal copy of the library, and
- which source library it actually is.
Quoted 10 lines
package/gstreamer/gst-ffmpeg/Config.in +3
-0+ +endif + comment "gst-ffmpeg needs a toolchain w/ largefile, IPv6" depends on !(BR2_LARGEFILE && BR2_INET_IPV6)package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk +0
-0
package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk GST_FFMPEG_SITE = http://gstreamer.freedesktop.org/src/gst-ffmpeg · line 14
Quoted 5 lines
package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk +2
-0@@ -10,6 +10,15 @@ GST_FFMPEG_SITE = http://gstreamer.freedesktop.org/src/gst-ffmpeg GST_FFMPEG_INSTALL_STAGING = YES GST_FFMPEG_DEPENDENCIES = host-pkgconf gstreamer gst-plugins-base +ifeq ($(BR2_PACKAGE_GST_FFMPEG_LGPL_BUILD),y) +GST_FFMPEG_CONF_OPT += --enable-lgpl
Your patch does not apply anymore to current master because _CONF_OPT have been renamed to _CONF_OPTS. Care to you rebase and resend?
Otherwise looks good. I did a quick build test and it worked.
Signature · 1 line
Luca
PATCH v2 1/1 gst-ffmpeg: add option for LGPL build
Luca,
Quoted 32 lines · Luca Ceresoli
Dear Danomi Manchego,
Quoted 29 lines · Danomi Manchego
Add option to build a LGPL licensed gst-ffmpeg.
Signed-off-by Danomi Manchego <[email protected]>---
v1 -> v2:
- MoveGST_FFMPEG_CONF_OPTadjustment (introduced by this patch) higher in the file, so thatGST_FFMPEG_CONF_EXTRA_OPTlines don't get split.--- package/gstreamer/gst-ffmpeg/Config.in | 13 ++++++++++++- package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk | 11 ++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-)package/gstreamer/gst-ffmpeg/Config.in +1
-1@@ -1,4 +1,4 @@ -config BR2_PACKAGE_GST_FFMPEG +menuconfig BR2_PACKAGE_GST_FFMPEG bool "gst-ffmpeg" select BR2_PACKAGE_GST_PLUGINS_BASE depends on BR2_LARGEFILE@@ -8,5 +8,16 @@ config BR2_PACKAGE_GST_FFMPEG
Quoted 7 lines
package/gstreamer/gst-ffmpeg/Config.in config BR2_PACKAGE_GST_FFMPEG · line 9
Quoted 1 line
package/gstreamer/gst-ffmpeg/Config.in +0
-0http://gstreamer.freedesktop.org/Not related to your patch, but how about providing a more specific URL such as http://gstreamer.freedesktop.org/modules/gst-ffmpeg.html?
It would be a separate patch of course.
Okay, on v3, I'll add a patch updating the Config.in.
Quoted 5 lines
Quoted 5 lines
package/gstreamer/gst-ffmpeg/Config.in +5
-0+if BR2_PACKAGE_GST_FFMPEG + +config BR2_PACKAGE_GST_FFMPEG_LGPL_BUILD + bool "Build a LGPL licensed gst-ffmpeg" + help
Quoted 8 lines
package/gstreamer/gst-ffmpeg/Config.in config BR2_PACKAGE_GST_FFMPEG · line 18
Quoted 3 lines
package/gstreamer/gst-ffmpeg/Config.in +3
-0+ This removes --enable-gpl and --enable-postproc from the + ffmpeg configure line, and disables building the postproc + gstreamer plugin.I personally prefer positive options. If you enable this options, it will remove stuff. I suggest you mimic the
BR2_PACKAGE_FFMPEG_GPLoption, from the ffmpeg package.
Well, the option is --enable-lgpl, not --enable-gpl, and I was following the upstream description at
http://cgit.freedesktop.org/gstreamer/gst-ffmpeg/commit/?id=2d767fe58f6cc95a66f58f3de5a2fece7f3521ee
.
But okay, I'll switch this to a BR2_PACKAGE_GST_FFMPEG_GPL that resembles the ffmpeg option.
Quoted 4 lines
Also unrelated to this patch, but is this package actually using ffmpeg or libav? All kconfig stuff suggest ffmpeg, but the package tarball actually contains a copy of the library in a directory named gst-libs/ext/libav, and the licensing info you add below mention libav.
Yes, gst-ffmpeg switched to libav back in 2011.
Quoted 3 lines
It's worth adding a separate patch to clarify to the user that:
- this package uses an internal copy of the library, and
- which source library it actually is.
Okay, I'll add some detail in that Config.in patch.
Quoted 15 lines
Quoted 15 lines
package/gstreamer/gst-ffmpeg/Config.in +3
-0+ +endif + comment "gst-ffmpeg needs a toolchain w/ largefile, IPv6" depends on !(BR2_LARGEFILE && BR2_INET_IPV6)package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk +0
-0@@ -10,6 +10,15 @@ GST_FFMPEG_SITE =http://gstreamer.freedesktop.org/src/gst-ffmpeg
GST_FFMPEG_INSTALL_STAGING= YESGST_FFMPEG_DEPENDENCIES= host-pkgconf gstreamer gst-plugins-base
Quoted 6 lines
package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk GST_FFMPEG_SITE = http://gstreamer.freedesktop.org/src/gst-ffmpeg · line 14
Quoted 2 lines
package/gstreamer/gst-ffmpeg/gst-ffmpeg.mk +2
-0+ifeq ($(BR2_PACKAGE_GST_FFMPEG_LGPL_BUILD),y) +GST_FFMPEG_CONF_OPT += --enable-lgplYour patch does not apply anymore to current master because
_CONF_OPThave been renamed to_CONF_OPTS. Care to you rebase and resend?
Okay, will be part of the change to resemble the ffmpeg GPL option.
Danomi -
Quoted 4 lines
Otherwise looks good. I did a quick build test and it worked.
--
Luca