* [Buildroot] [PATCH 4/5] x264: new package
@ 2014-10-01 9:14 David du Colombier
2014-10-01 9:14 ` [Buildroot] [PATCH 5/5] ffmpeg: enable x264 support David du Colombier
2014-10-01 17:44 ` [Buildroot] [PATCH 4/5] x264: new package Thomas Petazzoni
0 siblings, 2 replies; 4+ messages in thread
From: David du Colombier @ 2014-10-01 9:14 UTC (permalink / raw)
To: buildroot
This package is based on an earlier package
proposed by Ayaka in December 2013.
Signed-off-by: David du Colombier <0intro@gmail.com>
---
package/Config.in | 1 +
package/x264/Config.in | 9 +++++++++
package/x264/x264.mk | 42 ++++++++++++++++++++++++++++++++++++++++++
3 files changed, 52 insertions(+)
create mode 100644 package/x264/Config.in
create mode 100644 package/x264/x264.mk
diff --git a/package/Config.in b/package/Config.in
index 2ad72bc..33616e1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -33,6 +33,7 @@ menu "Audio and video applications"
source "package/vlc/Config.in"
source "package/vorbis-tools/Config.in"
source "package/wavpack/Config.in"
+ source "package/x264/Config.in"
source "package/xbmc/Config.in"
source "package/yavta/Config.in"
endmenu
diff --git a/package/x264/Config.in b/package/x264/Config.in
new file mode 100644
index 0000000..6ad2495
--- /dev/null
+++ b/package/x264/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_X264
+ bool "x264"
+ help
+ x264 is a free software library and application for
+ encoding video streams into the H.264/MPEG-4 AVC
+ compression format, and is released under the terms
+ of the GNU GPL.
+
+ https://www.videolan.org/developers/x264.html
diff --git a/package/x264/x264.mk b/package/x264/x264.mk
new file mode 100644
index 0000000..dff2313
--- /dev/null
+++ b/package/x264/x264.mk
@@ -0,0 +1,42 @@
+###############################################################
+#
+# x264
+#
+###############################################################
+
+X264_VERSION = 20140930-2245-stable
+X264_SOURCE = x264-snapshot-$(X264_VERSION).tar.bz2
+X264_SITE= ftp://ftp.videolan.org/pub/videolan/x264/snapshots
+X264_LICENSE = GPL
+X264_LICENSE_FILES = COPYING
+X264_INSTALL_STAGING = YES
+X264_INSTALL_TARGET = YES
+X264_DEPENDENCIES = host-pkgconf
+
+define X264_CONFIGURE_CMDS
+ (cd $(@D);./configure \
+ --prefix=/usr \
+ --host="$(GNU_TARGET_NAME)" \
+ --cross-prefix="$(TARGET_CROSS)" \
+ --enable-static \
+ --enable-strip \
+ --enable-pic \
+ --enable-shared \
+ --disable-ffms \
+ --disable-cli \
+ )
+endef
+
+define X264_BUILD_CMDS
+ $(MAKE) CC="$(TARGET_CC)" -C $(@D)
+endef
+
+define X264_INSTALL_STAGING_CMDS
+ $(MAKE) DESTDIR="$(STAGING_DIR)" -C $(@D) install
+endef
+
+define X264_INSTALL_TARGET_CMDS
+ $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install
+endef
+
+$(eval $(generic-package))
--
1.9.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 5/5] ffmpeg: enable x264 support
2014-10-01 9:14 [Buildroot] [PATCH 4/5] x264: new package David du Colombier
@ 2014-10-01 9:14 ` David du Colombier
2014-10-01 17:44 ` [Buildroot] [PATCH 4/5] x264: new package Thomas Petazzoni
1 sibling, 0 replies; 4+ messages in thread
From: David du Colombier @ 2014-10-01 9:14 UTC (permalink / raw)
To: buildroot
Signed-off-by: David du Colombier <0intro@gmail.com>
---
package/ffmpeg/ffmpeg.mk | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk
index b4b2e56..c7bff62 100644
--- a/package/ffmpeg/ffmpeg.mk
+++ b/package/ffmpeg/ffmpeg.mk
@@ -229,6 +229,13 @@ else
FFMPEG_CONF_OPT += --disable-libvpx
endif
+ifeq ($(BR2_PACKAGE_X264)$(BR2_PACKAGE_FFMPEG_GPL),yy)
+FFMPEG_CONF_OPT += --enable-libx264
+FFMPEG_DEPENDENCIES += x264
+else
+FFMPEG_CONF_OPT += --disable-libx264
+endif
+
ifeq ($(BR2_X86_CPU_HAS_MMX),y)
FFMPEG_CONF_OPT += --enable-yasm
FFMPEG_DEPENDENCIES += host-yasm
--
1.9.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 4/5] x264: new package
2014-10-01 9:14 [Buildroot] [PATCH 4/5] x264: new package David du Colombier
2014-10-01 9:14 ` [Buildroot] [PATCH 5/5] ffmpeg: enable x264 support David du Colombier
@ 2014-10-01 17:44 ` Thomas Petazzoni
2014-10-02 10:49 ` David du Colombier
1 sibling, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2014-10-01 17:44 UTC (permalink / raw)
To: buildroot
Dear David du Colombier,
On Wed, 1 Oct 2014 11:14:00 +0200, David du Colombier wrote:
> This package is based on an earlier package
> proposed by Ayaka in December 2013.
Thanks for reviving this patch, definitely appreciated!
One question: we received only PATCH 4/5 and PATCH 5/5 from your
series. Is this normal? Maybe it's just a small mistake on your side
when generating the patches.
Some comments below.
> diff --git a/package/Config.in b/package/Config.in
> index 2ad72bc..33616e1 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -33,6 +33,7 @@ menu "Audio and video applications"
> source "package/vlc/Config.in"
> source "package/vorbis-tools/Config.in"
> source "package/wavpack/Config.in"
> + source "package/x264/Config.in"
I'd x264 is mostly a library, so I'd prefer to see it in the libraries.
> diff --git a/package/x264/x264.mk b/package/x264/x264.mk
> new file mode 100644
> index 0000000..dff2313
> --- /dev/null
> +++ b/package/x264/x264.mk
> @@ -0,0 +1,42 @@
> +###############################################################
> +#
> +# x264
> +#
> +###############################################################
> +
> +X264_VERSION = 20140930-2245-stable
> +X264_SOURCE = x264-snapshot-$(X264_VERSION).tar.bz2
> +X264_SITE= ftp://ftp.videolan.org/pub/videolan/x264/snapshots
> +X264_LICENSE = GPL
The license is actually GPLv2+.
> +X264_LICENSE_FILES = COPYING
> +X264_INSTALL_STAGING = YES
> +X264_INSTALL_TARGET = YES
Line not needed.
> +X264_DEPENDENCIES = host-pkgconf
> +
Might be worth adding a comment right before X264_CONFIGURE_CMDS to
indicate that the configure script is not generated by autoconf.
> +define X264_CONFIGURE_CMDS
> + (cd $(@D);./configure \
> + --prefix=/usr \
> + --host="$(GNU_TARGET_NAME)" \
> + --cross-prefix="$(TARGET_CROSS)" \
> + --enable-static \
> + --enable-strip \
> + --enable-pic \
> + --enable-shared \
--enable-shared will not work for static only builds. Maybe you should
try something such as:
X264_CONF_OPTS = --enable-static
ifeq ($(BR2_PREFER_STATIC_LIB),)
X264_CONF_OPTS = --enable-pic --enable-shared
endif
and then use $(X264_CONF_OPTS) when calling the configure script.
If you want to try a purely static configuration, you can try with the
basic configuration at
http://autobuild.buildroot.org/toolchains/configs/bfin-uclinux.config.
> + --disable-ffms \
> + --disable-cli \
> + )
> +endef
> +
> +define X264_BUILD_CMDS
> + $(MAKE) CC="$(TARGET_CC)" -C $(@D)
Could you try:
$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)
?
CC="$(TARGET_CC)" as well as many other useful variables are passed in
$(TARGET_CONFIGURE_OPTS). It's also a good habit to pass
$(TARGET_MAKE_ENV) in the environment.
> +endef
> +
> +define X264_INSTALL_STAGING_CMDS
> + $(MAKE) DESTDIR="$(STAGING_DIR)" -C $(@D) install
Also pass $(TARGET_MAKE_ENV).
> +endef
> +
> +define X264_INSTALL_TARGET_CMDS
> + $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install
Ditto.
> +endef
> +
> +$(eval $(generic-package))
Could you respin after fixing those minor issues?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 4/5] x264: new package
2014-10-01 17:44 ` [Buildroot] [PATCH 4/5] x264: new package Thomas Petazzoni
@ 2014-10-02 10:49 ` David du Colombier
0 siblings, 0 replies; 4+ messages in thread
From: David du Colombier @ 2014-10-02 10:49 UTC (permalink / raw)
To: buildroot
Thanks for the review, Thomas.
> One question: we received only PATCH 4/5 and PATCH 5/5 from your
> series. Is this normal? Maybe it's just a small mistake on your side
> when generating the patches.
Yes, there are only two patches.
>> diff --git a/package/Config.in b/package/Config.in
>> index 2ad72bc..33616e1 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -33,6 +33,7 @@ menu "Audio and video applications"
>> source "package/vlc/Config.in"
>> source "package/vorbis-tools/Config.in"
>> source "package/wavpack/Config.in"
>> + source "package/x264/Config.in"
>
> I'd x264 is mostly a library, so I'd prefer to see it in the libraries.
Done.
>> diff --git a/package/x264/x264.mk b/package/x264/x264.mk
>> new file mode 100644
>> index 0000000..dff2313
>> --- /dev/null
>> +++ b/package/x264/x264.mk
>> @@ -0,0 +1,42 @@
>> +###############################################################
>> +#
>> +# x264
>> +#
>> +###############################################################
>> +
>> +X264_VERSION = 20140930-2245-stable
>> +X264_SOURCE = x264-snapshot-$(X264_VERSION).tar.bz2
>> +X264_SITE= ftp://ftp.videolan.org/pub/videolan/x264/snapshots
>> +X264_LICENSE = GPL
>
> The license is actually GPLv2+.
Done.
>> +X264_LICENSE_FILES = COPYING
>> +X264_INSTALL_STAGING = YES
>> +X264_INSTALL_TARGET = YES
>
> Line not needed.
Done.
>> +X264_DEPENDENCIES = host-pkgconf
>> +
>
> Might be worth adding a comment right before X264_CONFIGURE_CMDS to
> indicate that the configure script is not generated by autoconf.
Done.
>> +define X264_CONFIGURE_CMDS
>> + (cd $(@D);./configure \
>> + --prefix=/usr \
>> + --host="$(GNU_TARGET_NAME)" \
>> + --cross-prefix="$(TARGET_CROSS)" \
>> + --enable-static \
>> + --enable-strip \
>> + --enable-pic \
>> + --enable-shared \
>
> --enable-shared will not work for static only builds. Maybe you should
> try something such as:
>
> X264_CONF_OPTS = --enable-static
>
> ifeq ($(BR2_PREFER_STATIC_LIB),)
> X264_CONF_OPTS = --enable-pic --enable-shared
> endif
>
> and then use $(X264_CONF_OPTS) when calling the configure script.
Done. I've let --enable-static as is to always build the static library.
>> + --disable-ffms \
>> + --disable-cli \
>> + )
>> +endef
>> +
>> +define X264_BUILD_CMDS
>> + $(MAKE) CC="$(TARGET_CC)" -C $(@D)
>
> Could you try:
>
> $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)
>
> ?
I've chosen to put TARGET_CONFIGURE_OPTS before ./configure instead,
so it will not override the variables defined in config.mak.
> CC="$(TARGET_CC)" as well as many other useful variables are passed in
> $(TARGET_CONFIGURE_OPTS). It's also a good habit to pass
> $(TARGET_MAKE_ENV) in the environment.
>
>> +endef
>> +
>> +define X264_INSTALL_STAGING_CMDS
>> + $(MAKE) DESTDIR="$(STAGING_DIR)" -C $(@D) install
>
> Also pass $(TARGET_MAKE_ENV).
Done.
>> +endef
>> +
>> +define X264_INSTALL_TARGET_CMDS
>> + $(MAKE) DESTDIR="$(TARGET_DIR)" -C $(@D) install
>
> Ditto.
Done.
>> +endef
>> +
>> +$(eval $(generic-package))
>
> Could you respin after fixing those minor issues?
I'll send the updated patch.
--
David du Colombier
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-10-02 10:49 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-10-01 9:14 [Buildroot] [PATCH 4/5] x264: new package David du Colombier
2014-10-01 9:14 ` [Buildroot] [PATCH 5/5] ffmpeg: enable x264 support David du Colombier
2014-10-01 17:44 ` [Buildroot] [PATCH 4/5] x264: new package Thomas Petazzoni
2014-10-02 10:49 ` David du Colombier
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.