See commit 07730ff3 "treewide: add support for "lto" in PKG_BUILD_FLAGS"
on the main repository.
Note: Some packages only added `-flto` to CFLAGS and not LDFLAGS. This
fixes it and properly enables LTO.
Signed-off-by: Andre Heider <a.heider@gmail.com>
See commit 5c545bdb "treewide: replace PKG_USE_MIPS16:=0 with
PKG_BUILD_FLAGS:=no-mips16" on the main repository.
Signed-off-by: Andre Heider <a.heider@gmail.com>
this Makefile still used `CONFIG_GCC_USE_VERSION_*` to select various
compilation options, for GCC versions that are antiquated
convert to parsing the major from the `CONFIG_GCC_VERSION` which will
always exist and can also be used with range logic
intent seemed to be:
* `-flto` for "not =10" (or newer, probably)
* no additional options for "=10" (and newer, probably)
GCC 11 or 12 would likely revert to the default (not =10) option,
because 10 was the newest at the time, and 11 and 12 are "not 10"
unsure of what actually works, perhaps `-flto` works in all versions by
now (possibly early gcc 10 bug workaround?)
GCC 11 will have been using `-flto` anyway by the current logic and I
guess it must be working or there would have been changes
Signed-off-by: Tony Butler <spudz76@gmail.com>
We need to copy MagickWand-config, which handles pkg-config data, to the
staging dir, so that dependent packages can use it. php7-pecl-imagick,
for example, may otherwise use an eventual host-installed file, causing
compilation to fail. There's also a MagickCore-config file that does
the same thing for the MagickCore library, so a *-config wilcard is used
to handle all cases.
Since configure is called with --prefix=/usr, use $(SED) to change
definition of prefix and exec_prefix lines in *-config from /usr to
$(STAGING_DIR)/usr.
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
ImageMagick is a free and open-source software suite for displaying,
converting, and editing raster image and vector image files. This
package provides the prominent 'convert' utility.
ImageMagick's installation footprint is:
x86_64: 6.7 MB,
ipq806x (ARM): 6.0 MB,
bcm53xx: 6.2 MB.
The shared libraries occupy 2.4 MB on bcm53xx, 2.3 MB on ipq806x, and
2.5 MB on x86_64. The 114 ImageMagick's modules occupy from 3.4 MB to
4.0 MB depending on the target. It may be possible to reduce the
installation footprint by introducing build parameters to control the
selection of modules. In view of the large number of modules and the
possibility of breakage due to module interdependencies or other
reasons, such attempt is not made at this time.
ImageMagick is therefore best suited for extroot-enabled or x86_64
OpenWrt systems.
In many cases, GraphicsMagick may be used as a substitute for
ImageMagick. GraphicsMagick provides similar functionality, it is
faster and it has a smaller installation footprint. It is therefore
better suited for non-extroot OpenWrt systems. However, in tests to
reduce resolution (and size) of a high-resolution JPEG image
GraphicsMagick required about 25% more RAM than ImageMagick (no HDRI,
quantum depth of 8) during its execution.
Signed-off-by: Val Kulkov <val.kulkov@gmail.com>