Commit Graph

62 Commits (MyCruft)

Author SHA1 Message Date
Fabrice Fontaine 701e6f34e0 package/jpeg: SIMD needs VSX with little endian
SIMD needs VSX with little endian to avoid the following build failure:

In file included from /nvmedata/autobuild/instance-12/output-1/build/jpeg-turbo-2.1.3/simd/powerpc/jccolor-altivec.c:25:
/nvmedata/autobuild/instance-12/output-1/build/jpeg-turbo-2.1.3/simd/powerpc/jccolext-altivec.c: In function 'jsimd_rgb_ycc_convert_altivec':
/nvmedata/autobuild/instance-12/output-1/build/jpeg-turbo-2.1.3/simd/powerpc/jsimd_altivec.h:93:26: warning: implicit declaration of function 'vec_vsx_ld'; did you mean 'vec_vsl'? [-Wimplicit-function-declaration]
   93 | #define VEC_LD(a, b)     vec_vsx_ld(a, b)
      |                          ^~~~~~~~~~

Fixes:
 - http://autobuild.buildroot.org/results/be6d5ad0cee4ee19eb25e595d44555a1af6e073b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2022-08-23 22:58:24 +02:00
Clément Péron 3d71ffcf8d package/jpeg-turbo: allow installing tools
Currently, the jpeg-turbo tools are forcibly removed, but they can be
usefull (e.g. to test performance on the target, or to script batch
conversions).

Add an option to allow keeping them.

Signed-off-by: Clément Péron <peron.clem@gmail.com>
[yann.morin.1998@free.fr
  - move the option out of the choice
  - move the option to a Config.in.options
  - drop the default 'n', which is ... the default
  - use positive logic to define the hook
  - move definition of the hook in the conditional block
  - don't indent the hook assignment
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-12 15:30:58 +02:00
Yann E. MORIN 7a48ac725f package/jpeg: properly indent in menuconfig
Since there is a variable definition between the definition of
BR2_PACKAGE_JPEG and the choice depending on it, the choice is
not indented bewlo the "jpeg support" prompt, like we like to
have:

    [*] jpeg support
        jpeg variant (jpeg-turbo)  --->

Move the BR2_PACKAGE_JPEG right before the choice (really, move
BR2_PACKAGE_JPEG_SIMD_SUPPORT before BR2_PACKAGE_JPEG, but diff
finds the move of BR2_PACKAGE_JPEG is smaller to display):

    [*] jpeg support
          jpeg variant (jpeg-turbo)  --->

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-04-12 15:30:58 +02:00
Yann E. MORIN 3b67e8e664 core: allow br2-external trees to provide libjpeg
Similar to toolchains, we now offer a way for br2-external trees to
provide their libjpeg implementation, which gets included in the jpeg
choice.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Vadim Kochan <vadim4j@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-08-04 00:13:37 +02:00
Yann E. MORIN 4ab4df632a package/jpeg: better indentation
Use easier-to-read layout; fix leading spaces.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-12-11 21:07:52 +01:00
Thomas Petazzoni 09d48dce0a jpeg: fix typo introduced when fixing the indentation
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-11 18:36:03 +01:00
Peter Korsgaard 643a21b326 jpeg-turbo: add simd support for aarch64
>From the 1.5-b1 release notes:

Added ARM 64-bit (ARMv8) NEON SIMD implementations of the commonly-used
compression algorithms (including the slow integer forward DCT and h2v2 &
h2v1 downsampling algorithms, which are not accelerated in the 32-bit NEON
implementation.) This speeds up the compression of full-color JPEGs by about
75% on average on a Cavium ThunderX processor and by about 2-2.5x on average
on Cortex-A53 and Cortex-A57 cores.

Add it unconditionally for all aarch64 cores, as neon support is required
for all "standard" ARMv8 implementations.  If an ARMv8 implementation w/o
NEON ever shows up, then we will need to add a BR2_AARCH64_CPU_HAS_NEON and
handle it like ARM.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-11 18:23:21 +01:00
Peter Korsgaard 3031af7ea7 jpeg-turbo: add simd support for powerpc cores with altivec
>From the 1.5-b1 release notes:

Added full SIMD acceleration for PowerPC platforms using AltiVec VMX
(128-bit SIMD) instructions.  Although the performance of libjpeg-turbo on
PowerPC was already good, due to the increased number of registers available
to the compiler vs.  x86, it was still possible to speed up compression by
about 3-4x and decompression by about 2-2.5x (relative to libjpeg v6b)
through the use of AltiVec instructions.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-11 18:23:01 +01:00
Peter Korsgaard 6c5ff61a6a jpeg: rework jpeg-turbo simd support handling
In preperation for adding more architectures to the jpeg-turbo simd
handling, introduce a hidden BR2_PACKAGE_JPEG_SIMDS_SUPPORT symbol and use
that to enable simd support and default to jpeg-turbo, instead of open
coding it in both places.

While we are at it, reword the help text to be more useful.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-11 18:21:53 +01:00
Yann E. MORIN 958495578f package/jpeg: make it behave more like other virtual packages
Currently, the virtual package jpeg is a special virtual package,
as it offers a choice for its implementation, rather than letting the
user enable them manually.

In so doing, it defines its _HAS option as a 'def_bool y' rather than
letting each implementation 'select' it.

Since we are going to generate a list of virtual packages and their
providers, this defeats the heuristic used to find providers.

Coming with an alternate heuristic that also matches the jpeg
package is quite complex, so better and easier to make it look more
like any other virtual package.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-06-08 17:07:31 +02:00
Yann E. MORIN 5e82185537 package/jpeg: convert to the virtual-package infrastructure
Since this package is implemented via a choice rather than the usual
separate-package providers, we only need BR2_PACKAGE_HAS_JPEG to be
always defined when the 'jpeg' package is selected.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Mike Zick <minimod@morethan.org>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-04-05 19:21:11 +02:00
Yann E. MORIN 17a0165a2a package/libjpeg: switch to package-defined providers
For the underlying reasons, see previous patch, titled:
    package/opengl/libegl: switch to package-defined providers

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-12-25 18:21:44 +01:00
Jerzy Grzegorek 5a57148657 fix header package name
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-07-27 15:21:03 +02:00
Alexandre Belloni 8dfd59d114 Normalize separator size to 80
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 22:30:24 +02:00
Alexandre Belloni 966e005d52 Convert headers to lower case when relevant
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 17:36:41 +02:00
Thomas Petazzoni 30c695ef01 jpeg: convert to a real package
jpeg is a virtual package, but since it is listed in the dependencies
of other packages, it should obey to all the normal make rules for
packages. Notably, the jpeg-show-depends target is mandatory for the
graph-depends script to work.

Instead to implement such a make target manually, make jpeg a normal
generic-package, except that it doesn't have any source.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-03-09 22:27:02 +01:00
Arnout Vandecappelle 7cba1dead6 jpeg: fix make source
'make source' fails because the host-jpeg-source target doesn't exist
anymore. Fix this by adding this target explicitly.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-17 12:22:53 +01:00
Peter Korsgaard 21dd3e777b package: add selection between libjpeg and jpeg-turbo
Introduce a virtual 'jpeg' package, which pulls in either libjpeg or
jpeg-turbo depending on a choice selection.

Rename jpeg package to libjpeg so we can reuse 'jpeg' for the virtual
package, making the change transparent to existing users and all the
packages using libjpeg.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-14 00:03:32 +01:00
Arnout Vandecappelle (Essensium/Mind) e1502ebc0c all packages: rename XXXTARGETS to xxx-package
Also remove the redundant $(call ...).

This is a purely mechanical change, performed with
find package linux toolchain boot -name \*.mk | \
  xargs sed -i -e 's/$(eval $(call GENTARGETS))/$(eval $(generic-package))/' \
               -e 's/$(eval $(call AUTOTARGETS))/$(eval $(autotools-package))/' \
               -e 's/$(eval $(call CMAKETARGETS))/$(eval $(cmake-package))/'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-17 20:23:05 +02:00
Arnout Vandecappelle (Essensium/Mind) 69e64c42b7 all packages: use new host-xxx-package macros
This is a purely mechanical change, performed with
find package linux toolchain boot -name \*.mk | \
  xargs sed -i -e 's/$(eval $(call GENTARGETS,host))/$(eval $(host-generic-package))/' \
               -e 's/$(eval $(call AUTOTARGETS,host))/$(eval $(host-autotools-package))/' \
               -e 's/$(eval $(call CMAKETARGETS,host))/$(eval $(host-cmake-package))/'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-17 20:18:03 +02:00
Gustavo Zacarias 9ae23e3911 packages: remove redundant INSTALL_TARGET=YES declarations
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-11 22:30:33 +01:00
Will Newton c1d52aea49 jpeg: Allow building of libjpeg for the host
Signed-off-by: Will Newton <will.newton@imgtec.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-01-26 22:33:35 +01:00
Yegor Yefremov 90a939e2bd jpeg: bump to v8d
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-01-23 10:48:53 +01:00
Thomas Petazzoni 300f9c9c9d package: remove useless arguments from AUTOTARGETS
Thanks to the pkgparentdir and pkgname functions, we can rewrite the
AUTOTARGETS macro in a way that avoids the need for each package to
repeat its name and the directory in which it is present.

[Peter: pkgdir->pkgparentdir]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-29 23:12:27 +02:00
Yann E. MORIN 8ea4d5b47b jpeg: remove --program-prefix
--program-prefix is now set in the auto-target infrastructure.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-12 00:08:14 +02:00
Peter Korsgaard c1e0bc5275 jpeg: bump version
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-07-14 09:35:52 +02:00
Peter Korsgaard 0be744e495 package: apply libtool patch where possible
Now that we have libtool-2.2.x patch support, we can get rid of a bunch
of _LIBTOOL_PATH = NO, fixing (potential) cross link issues.

Notice: php not changed, as it uses a very old 1.5 version for the
embedded sqlite, where our buildroot-libtool-v1.5.patch doesn't apply.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-17 14:02:52 +01:00
Heiko Zuerker 12989b0626 jpeg: don't add prefix to binaries
Signed-off-by: Heiko Zuerker <smiley73@users.sourceforge.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-27 21:42:02 +01:00
Peter Korsgaard b808b60b89 jpeg: remove lgpl header
Buildroot as a whole is under GPL, so lets not expand each .mk file with
legal matter. The git history nicely shows the origin of each file, and
after the conversion to autotargets there basically isn't anything
left of the original file anymore.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-10-04 11:51:09 +02:00
Martin Banky ffa57e4e74 jpeg: bump to 8b
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-10-04 11:47:36 +02:00
Thomas Petazzoni 478ea1a12d packages: remove unneeded _INSTALL_TARGET_OPT definitions
Now that <pkg>_INSTALL_TARGET_OPT always defaults to
'DESTDIR=$(TARGET_DIR) install', we can remove the
<pkg>_INSTALL_TARGET_OPT definition from a lot of packages.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-09-27 15:32:32 +02:00
Thomas Petazzoni 0f5fae2a69 jpeg: convert old-style hooks to new-style hooks
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-09-12 19:24:59 +02:00
Lionel Landwerlin 21bab8862f jpeg: convert to autotools infrastructure
[Peter: has own libtool patch, use std staging install, fix target install]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-12-30 13:48:02 +01:00
Peter Korsgaard 3fdf0bffb8 buildroot: silence ./configure step when building with 'make -s'
We have been passing -q to ./configure when using 'make -s' for
packages using Makefile.autotools.in for some time. Do the same
for packages using autotools, but not using the
Makefile.autotools.in infrastructure, taking care to not do it
for packages with hand written configure scripts.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-10-01 21:24:42 +02:00
Will Newton 422ce6536b package: Remove unnecessary dependencies on uclibc.
A C library will have been built by the toolchain makefiles, so there is no
need for packages to explicitly depend on uclibc.

Signed-off-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-03 20:22:38 +02:00
Peter Korsgaard 4a7bfd2775 package/: convert to DOWNLOAD helper 2009-01-16 11:42:52 +00:00
Peter Korsgaard ac1d92c425 package/: get rid of unneeded $(strip ..) 2008-12-08 08:15:27 +00:00
Peter Korsgaard 4683420c4c Kconfig: remove 'default n'
'default n' is the default, so there's no need to say it explicitly.
2008-07-17 20:01:44 +00:00
John Voltz a53d48a7b9 fixed jpeg makefile 2008-03-06 18:14:14 +00:00
Ulf Samuelsson 9207bef94f Create dir before use in jpeg pkg 2007-10-13 23:08:01 +00:00
Bernhard Reutner-Fischer 14a71561a3 - just use the strip binary to avoid confusing libtool (quotes)
- use $(STRIPCMD) in packages to avoid clashes with $(STRIP)
2007-10-01 16:15:31 +00:00
Bernhard Reutner-Fischer 98a7a4c9d2 - misc cleanups (Cristian Ionescu-Idbohrn) 2007-08-28 21:42:44 +00:00
Bernhard Reutner-Fischer 080026489c - use correct include dir (Simon Pasch)
- cleanup while at it
2007-08-28 12:41:56 +00:00
Bernhard Reutner-Fischer 6c6cb06709 - sed -i -e "/;$/s/;$//g" $(egrep ";$" package/* package/*/*.mk toolchain/* toolchain/*/*.mk */Makefile.in -l) 2007-08-21 19:20:18 +00:00
Ulf Samuelsson e4ead9c13c Remove switches if sstrip is run 2007-08-21 01:53:57 +00:00
Ulf Samuelsson e1621a4a2a Use <package>_VERSION in all <package>.mk instead of <package>_VER 2007-07-11 14:06:06 +00:00
Bernhard Reutner-Fischer 74d518dc2a - add endian handling, mmap, memcmp checks to TARGET_CONFIGURE_ARGS
- use TARGET_CONFIGURE_ARGS where appropriate.
2007-06-27 12:01:27 +00:00
Eric Andersen 85d7f6f05f fixup package LDFLAGS handling 2007-03-13 22:59:59 +00:00
Eric Andersen 732d94d25f fixup a whole steaming pile of insanity. When packages are configured,
they should be configured with --prefix=/usr and we then need to use
make DESTDIR=$(STAGING_DIR) install to get things installed into the
staging directory.  The current situation for many packages, which use
--prefix=$(STAGING_DIR) results in the staging_dir paths getting compiled
into the binary itself.

This also adds in a pile of libtool fixups.  Between broken pkgconfig,
broken libtool handling, and broken --prefix settings, its a wonder
things have worked as well as they have up till now.
 -Erik
2007-01-14 03:52:21 +00:00
Eric Andersen cc894f23eb be explicit about not doing X 2007-01-11 07:25:29 +00:00