All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/4] ffmpeg: add new package
@ 2010-06-14  8:45 Luca Ceresoli
  0 siblings, 0 replies; 3+ messages in thread
From: Luca Ceresoli @ 2010-06-14  8:45 UTC (permalink / raw)
  To: buildroot

Peter Korsgaard wrote:
> >>>>> "Luca" == Luca Ceresoli <luca@lucaceresoli.net> writes:
> 
>  Luca> Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
> 
> Looks good - A few comments though:

Ok with almost all. See below.

> 
>  Luca> ---
>  Luca>  CHANGES                             |    2 +-
>  Luca>  package/multimedia/Config.in        |    1 +
>  Luca>  package/multimedia/ffmpeg/Config.in |   25 +++++++++++
>  Luca>  package/multimedia/ffmpeg/ffmpeg.mk |   79 +++++++++++++++++++++++++++++++++++
>  Luca>  4 files changed, 106 insertions(+), 1 deletions(-)
>  Luca>  create mode 100644 package/multimedia/ffmpeg/Config.in
>  Luca>  create mode 100644 package/multimedia/ffmpeg/ffmpeg.mk
> 
>  Luca> diff --git a/CHANGES b/CHANGES
>  Luca> index 3ba7195..6ca4fc9 100644
>  Luca> --- a/CHANGES
>  Luca> +++ b/CHANGES
>  Luca> @@ -4,7 +4,7 @@
>  
>  Luca>  	New GTK-based configurator, usable using 'make gconfig'.
>  
>  Luca> -	New packages: cgilua, copas, coxpcall, luafilesystem,
>  Luca> +	New packages: cgilua, copas, coxpcall, ffmpeg, luafilesystem,
>  Luca>  	luasocket, rings, wsapi, xavante
> 
> I would prefer if patches don't edit CHANGES - There's too high risk for
> merge conflicts.
> 
>  Luca> +config BR2_PACKAGE_FFMPEG_GPL
>  Luca> +	bool "Enable GPL code"
>  Luca> +	default n
>  Luca> +config BR2_PACKAGE_FFMPEG_NONFREE
>  Luca> +	bool "Enable nonfree code"
>  Luca> +	default n
> 
> 'n' is default, so there's no need for those lines.
> 
>  Luca> +ifeq ($(BR2_INET_IPV6),y)
>  Luca> +FFMPEG_CONF_OPT += --enable-ipv6
>  Luca> +else
>  Luca> +FFMPEG_CONF_OPT += --disable-ipv6
>  Luca> +endif
> 
> We do have a generic DISABLE_IPV6 if ffmpeg detects ipv6 support
> automatically even if --enable-ipv6 isn' passed.
> 
>  Luca> +# Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others
>  Luca> +define FFMPEG_CONFIGURE_CMDS
>  Luca> +	(cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \
>  Luca> +	$(TARGET_CONFIGURE_OPTS) \
>  Luca> +	$(TARGET_CONFIGURE_ARGS) \
>  Luca> +	$(TARGET_CONFIGURE_ENV) \
>  Luca> +	$(FFMPEG_CONF_ENV) \
>  Luca> +	./configure \
>  Luca> +		--enable-cross-compile	\
>  Luca> +		--cross-prefix=$(TARGET_CROSS) \
>  Luca> +		--sysroot=$(STAGING_DIR) \
>  Luca> +		--host-cc=$(HOSTCC) \
>  Luca> +		--cc=$(TARGET_CC) \
>  Luca> +		--arch=$(BR2_ARCH) \
>  Luca> +		--extra-cflags=-fPIC \
>  Luca> +		$(DISABLE_NLS) \
>  Luca> +		$(DISABLE_LARGEFILE) \
>  Luca> +		$(DISABLE_IPV6) \
>  Luca> +		$(FFMPEG_CONF_OPT) \
> 
> Does ffmpeg configure handle the -q (quiet) flag? If so, please add
> $(QUIET) as well.

It doesn't.

> 
> Is --cc needed? Doesn't it just use the CC environment variable? If not,
> what about TARGET_CFLAGS / TARGET_LDFLAGS?
> 
>  Luca> +	)
>  Luca> +endef
>  Luca> +
>  Luca> +# Override FFMPEG_INSTALL_TARGET_OPT: FFmpeg does not support install-strip
>  Luca> +FFMPEG_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install
> 
> FYI, in the future I would like to get rid of the 'make install vs make
> install-strip', but for now this is fine.
> 
> -- 
> Bye, Peter Korsgaard
> 

Luca

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

* [Buildroot] [PATCH 1/4] ffmpeg: add new package
  2010-06-12 16:22 ` [Buildroot] [PATCH 1/4] ffmpeg: add new package Luca Ceresoli
@ 2010-06-13 11:54   ` Peter Korsgaard
  0 siblings, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2010-06-13 11:54 UTC (permalink / raw)
  To: buildroot

>>>>> "Luca" == Luca Ceresoli <luca@lucaceresoli.net> writes:

 Luca> Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>

Looks good - A few comments though:

 Luca> ---
 Luca>  CHANGES                             |    2 +-
 Luca>  package/multimedia/Config.in        |    1 +
 Luca>  package/multimedia/ffmpeg/Config.in |   25 +++++++++++
 Luca>  package/multimedia/ffmpeg/ffmpeg.mk |   79 +++++++++++++++++++++++++++++++++++
 Luca>  4 files changed, 106 insertions(+), 1 deletions(-)
 Luca>  create mode 100644 package/multimedia/ffmpeg/Config.in
 Luca>  create mode 100644 package/multimedia/ffmpeg/ffmpeg.mk

 Luca> diff --git a/CHANGES b/CHANGES
 Luca> index 3ba7195..6ca4fc9 100644
 Luca> --- a/CHANGES
 Luca> +++ b/CHANGES
 Luca> @@ -4,7 +4,7 @@
 
 Luca>  	New GTK-based configurator, usable using 'make gconfig'.
 
 Luca> -	New packages: cgilua, copas, coxpcall, luafilesystem,
 Luca> +	New packages: cgilua, copas, coxpcall, ffmpeg, luafilesystem,
 Luca>  	luasocket, rings, wsapi, xavante

I would prefer if patches don't edit CHANGES - There's too high risk for
merge conflicts.

 Luca> +config BR2_PACKAGE_FFMPEG_GPL
 Luca> +	bool "Enable GPL code"
 Luca> +	default n
 Luca> +config BR2_PACKAGE_FFMPEG_NONFREE
 Luca> +	bool "Enable nonfree code"
 Luca> +	default n

'n' is default, so there's no need for those lines.

 Luca> +ifeq ($(BR2_INET_IPV6),y)
 Luca> +FFMPEG_CONF_OPT += --enable-ipv6
 Luca> +else
 Luca> +FFMPEG_CONF_OPT += --disable-ipv6
 Luca> +endif

We do have a generic DISABLE_IPV6 if ffmpeg detects ipv6 support
automatically even if --enable-ipv6 isn' passed.

 Luca> +# Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others
 Luca> +define FFMPEG_CONFIGURE_CMDS
 Luca> +	(cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \
 Luca> +	$(TARGET_CONFIGURE_OPTS) \
 Luca> +	$(TARGET_CONFIGURE_ARGS) \
 Luca> +	$(TARGET_CONFIGURE_ENV) \
 Luca> +	$(FFMPEG_CONF_ENV) \
 Luca> +	./configure \
 Luca> +		--enable-cross-compile	\
 Luca> +		--cross-prefix=$(TARGET_CROSS) \
 Luca> +		--sysroot=$(STAGING_DIR) \
 Luca> +		--host-cc=$(HOSTCC) \
 Luca> +		--cc=$(TARGET_CC) \
 Luca> +		--arch=$(BR2_ARCH) \
 Luca> +		--extra-cflags=-fPIC \
 Luca> +		$(DISABLE_NLS) \
 Luca> +		$(DISABLE_LARGEFILE) \
 Luca> +		$(DISABLE_IPV6) \
 Luca> +		$(FFMPEG_CONF_OPT) \

Does ffmpeg configure handle the -q (quiet) flag? If so, please add
$(QUIET) as well.

Is --cc needed? Doesn't it just use the CC environment variable? If not,
what about TARGET_CFLAGS / TARGET_LDFLAGS?

 Luca> +	)
 Luca> +endef
 Luca> +
 Luca> +# Override FFMPEG_INSTALL_TARGET_OPT: FFmpeg does not support install-strip
 Luca> +FFMPEG_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install

FYI, in the future I would like to get rid of the 'make install vs make
install-strip', but for now this is fine.

-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH 1/4] ffmpeg: add new package
  2010-06-12 16:22 [Buildroot] Add ffmpeg support Luca Ceresoli
@ 2010-06-12 16:22 ` Luca Ceresoli
  2010-06-13 11:54   ` Peter Korsgaard
  0 siblings, 1 reply; 3+ messages in thread
From: Luca Ceresoli @ 2010-06-12 16:22 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
---
 CHANGES                             |    2 +-
 package/multimedia/Config.in        |    1 +
 package/multimedia/ffmpeg/Config.in |   25 +++++++++++
 package/multimedia/ffmpeg/ffmpeg.mk |   79 +++++++++++++++++++++++++++++++++++
 4 files changed, 106 insertions(+), 1 deletions(-)
 create mode 100644 package/multimedia/ffmpeg/Config.in
 create mode 100644 package/multimedia/ffmpeg/ffmpeg.mk

diff --git a/CHANGES b/CHANGES
index 3ba7195..6ca4fc9 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,7 +4,7 @@
 
 	New GTK-based configurator, usable using 'make gconfig'.
 
-	New packages: cgilua, copas, coxpcall, luafilesystem,
+	New packages: cgilua, copas, coxpcall, ffmpeg, luafilesystem,
 	luasocket, rings, wsapi, xavante
 
 	Updated/fixed packages: cdrkit, file, gawk, gstreamer, intltool,
diff --git a/package/multimedia/Config.in b/package/multimedia/Config.in
index 3305f7b..3b0eec5 100644
--- a/package/multimedia/Config.in
+++ b/package/multimedia/Config.in
@@ -3,6 +3,7 @@ source "package/multimedia/alsa-lib/Config.in"
 source "package/multimedia/alsa-utils/Config.in"
 source "package/multimedia/aumix/Config.in"
 source "package/multimedia/flac/Config.in"
+source "package/multimedia/ffmpeg/Config.in"
 source "package/multimedia/gstreamer/Config.in"
 source "package/multimedia/gst-plugins-base/Config.in"
 source "package/multimedia/gst-plugins-good/Config.in"
diff --git a/package/multimedia/ffmpeg/Config.in b/package/multimedia/ffmpeg/Config.in
new file mode 100644
index 0000000..bc8fb22
--- /dev/null
+++ b/package/multimedia/ffmpeg/Config.in
@@ -0,0 +1,25 @@
+menuconfig BR2_PACKAGE_FFMPEG
+	bool "ffmpeg"
+	help
+         FFmpeg is a complete, cross-platform solution to record, convert
+         and stream audio and video.
+
+	 http://www.ffmpeg.org
+
+if BR2_PACKAGE_FFMPEG
+
+config BR2_PACKAGE_FFMPEG_GPL
+	bool "Enable GPL code"
+	default n
+	help
+         allow use of GPL code, the resulting libs and binaries will
+         be under GPL
+
+config BR2_PACKAGE_FFMPEG_NONFREE
+	bool "Enable nonfree code"
+	default n
+	help
+         allow use of nonfree code, the resulting libs and binaries
+         will be unredistributable
+
+endif
diff --git a/package/multimedia/ffmpeg/ffmpeg.mk b/package/multimedia/ffmpeg/ffmpeg.mk
new file mode 100644
index 0000000..b4abefb
--- /dev/null
+++ b/package/multimedia/ffmpeg/ffmpeg.mk
@@ -0,0 +1,79 @@
+#############################################################
+#
+# ffmpeg
+#
+#############################################################
+FFMPEG_VERSION := 0.5.2
+FFMPEG_SOURCE := ffmpeg-$(FFMPEG_VERSION).tar.bz2
+FFMPEG_SITE := http://ffmpeg.org/releases
+FFMPEG_INSTALL_STAGING = YES
+FFMPEG_INSTALL_TARGET = YES
+
+FFMPEG_CONF_OPT = \
+	--prefix=/usr		\
+	--enable-shared 	\
+	--disable-ffmpeg	\
+	--disable-ffplay	\
+	--disable-ffserver	\
+	--disable-avfilter	\
+	--disable-postproc	\
+	--disable-swscale	\
+	--disable-vhook		\
+
+ifeq ($(BR2_PACKAGE_FFMPEG_GPL),y)
+FFMPEG_CONF_OPT += --enable-gpl
+else
+FFMPEG_CONF_OPT += --disable-gpl
+endif
+
+ifeq ($(BR2_PACKAGE_FFMPEG_NONFREE),y)
+FFMPEG_CONF_OPT += --enable-nonfree
+else
+FFMPEG_CONF_OPT += --disable-nonfree
+endif
+
+ifeq ($(BR2_PTHREADS_NONE),y)
+FFMPEG_CONF_OPT += --disable-pthreads
+else
+FFMPEG_CONF_OPT += --enable-pthreads
+endif
+
+ifeq ($(BR2_INET_IPV6),y)
+FFMPEG_CONF_OPT += --enable-ipv6
+else
+FFMPEG_CONF_OPT += --disable-ipv6
+endif
+
+ifeq ($(BR2_PACKAGE_ZLIB),y)
+FFMPEG_CONF_OPT += --enable-zlib
+FFMPEG_DEPENDENCIES += zlib
+else
+FFMPEG_CONF_OPT += --disable-zlib
+endif
+
+# Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others
+define FFMPEG_CONFIGURE_CMDS
+	(cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \
+	$(TARGET_CONFIGURE_OPTS) \
+	$(TARGET_CONFIGURE_ARGS) \
+	$(TARGET_CONFIGURE_ENV) \
+	$(FFMPEG_CONF_ENV) \
+	./configure \
+		--enable-cross-compile	\
+		--cross-prefix=$(TARGET_CROSS) \
+		--sysroot=$(STAGING_DIR) \
+		--host-cc=$(HOSTCC) \
+		--cc=$(TARGET_CC) \
+		--arch=$(BR2_ARCH) \
+		--extra-cflags=-fPIC \
+		$(DISABLE_NLS) \
+		$(DISABLE_LARGEFILE) \
+		$(DISABLE_IPV6) \
+		$(FFMPEG_CONF_OPT) \
+	)
+endef
+
+# Override FFMPEG_INSTALL_TARGET_OPT: FFmpeg does not support install-strip
+FFMPEG_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install
+
+$(eval $(call AUTOTARGETS,package/multimedia,ffmpeg))
-- 
1.7.0.4

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

end of thread, other threads:[~2010-06-14  8:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-14  8:45 [Buildroot] [PATCH 1/4] ffmpeg: add new package Luca Ceresoli
  -- strict thread matches above, loose matches on Subject: below --
2010-06-12 16:22 [Buildroot] Add ffmpeg support Luca Ceresoli
2010-06-12 16:22 ` [Buildroot] [PATCH 1/4] ffmpeg: add new package Luca Ceresoli
2010-06-13 11:54   ` Peter Korsgaard

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.