* Drop DirectFB support from libgtk2
* bump libgtk2 to version 2.24.18
[Peter: fixup patch whitespace changes]
Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
There used to be a post-patch hook to apply a patch only on the host
variant of libgtk2. However, after the reorganization of the patch
naming policy, this was no longer working properly, so
dd1848bc73 changed this by a patch that
works on both the target and host variants.
We can therefore get rid of the useless post-patch hook.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The libgtk2 package was using a host-<foo>.patch that should be
applied only on the host variant of the package. Unfortunately, with
the patch model rework, this doesn't work anymore: Buildroot tries to
apply the patch twice, for some reason.
But instead of fixing the patch model, it is probably a lot better to
fix this patch itself, which is the only usage of host-only patch in
Buildroot.
So instead of simply removing code that detects dependencies in gtk2's
configure.in script, we use a condition based on the value of
gdktarget. And it turns out that it makes the patch shorter.
However, it requires autoreconfiguring the libgtk2 target package,
because we are now modifying its configure.in.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libgtk2 can optionally use a number of features from additional X
extensions, so we add support for those, to ensure that Gtk gets built
after those extensions if they have been enabled in the Buildroot
configuration.
The extensions are Xinerama, Xinput, Xrandr, Xcursor, Xfixes,
Xcomposite and Xdamage.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libgtk2 is a X client library, so it doesn't make sense for it to
depend on the X.org server. Instead, it should depend on the X client
libraries.
This patch therefore replaces the dependency on the X server by a
dependency on libX11, libXext, libXrender and fontconfig, that are the
mandatory requirements to build the X backend of Gtk.
[Peter: don't add an empty line before gtk demo help text]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
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>
The name "patch-kernel.sh" is a bit stupid, since this script is used
to patch everything in Buildroot, not only kernel trees.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that those values are passed at the autotools infrastructure
level, there's no need for every package to pass inconsistent values.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use the Gnome FTP server as the download site, like we do for other
components of the Gtk stack.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
After libgtk was bumped to 2.22.0 default loacation of
pixbuf loaders cache changed.
Use --update-cache flag for gdk-pixbuf-query-loaders
which does waht we need.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Finally, we bump Gtk from the old and ancient 2.12 version to the
latest 2.22.0 version currently available.
The DirectFB support is Gtk 2.22 compiles again thanks to the work of
Lionel Landwerlin (it was broken in every Gtk version between 2.12 and
2.20). Therefore, Gtk on DirectFB is no longer marked as deprecated.
In addition to this, we :
* Upgrade the "reduce-dependencies" patch
* Remove the "configure" and "no-tests" patches which do not seem to
be useful anymore
* Add a libtool patch
We also remove references to a non-existant 2.15 gtk version in
libgtk2.mk.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Pango was recently updated to v1.28 as a dependency of webkit, but its
freetype support has unfortunately been rewritten with parts in C++
(since pango 1.25), so adjust dependencies of pango and users of it to
require C++ support.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libgtk2 on DirectFB is deprecated because it is no longer supported in
recent versions of Gtk. We will remove support for Gtk over DirectFB
in the next Buildroot version unless support for DirectFB in mainline
Gtk is improved in the mean time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gettext needs WCHAR support in the toolchain, and as libglib2 depends on
gettext and lots of stuff depends on libglib2, quite a lot of packages
needs to have their dependencies adjusted.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Making a full build of libgtk2 for the host is a pain, since it
requires host-cairo, which it turns requires a full X.org stack to be
compiled for the host.
Moreover, building libgtk2 for the host completely is useless: we only
need gdk-pixbuf-csource and gtk-update-icon-cache.
In this patch, we add a new
host-libgtk2-2.12.12-reduce-dependencies.patch, that is only applied
to libgtk2 when being built for the host. This patch removes a lot of
dependencies in configure.in, which allows to:
* run make and make install in gdk-pixbuf/, which compiles and
installs the gdk-pixbuf library and the gdk-pixbuf-csource utility
* run make gtk-update-icon-cache in gtk/, which compiles the
gtk-update-icon-cache utility, which is then installed manually
The compilation and installation steps of libgtk2 for the host are
therefore overriden, so as to not use the default behaviour, which
would attempt to build the full gtk library.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Those are already in TARGET_CONFIGURE_ARGS. Also get rid of unused
BR2_AC_CV_FUNC_MALLOC_0_NONNULL variable.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
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>
The XSERVER variable used to be defined by package/Makefile.in because
the X server package name was different depending on the type of X
server that was choosen. Nowadays, the name of the package is always
xserver_xorg-server, so there's no point in having this XSERVER
intermediate variable.
This patch makes all packages use xserver_xorg-server directly as a
dependency, and removes the XSERVER variable from package/Makefile.in.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The BR2_PACKAGE_XSERVER_none option has gone, so use BR2_PACKAGE_XORG7
instead. It is more logical to test if BR2_PACKAGE_XORG7 is set to
know if an X.org server is available, than testing if
BR2_PACKAGE_XSERVER_none is set to know if an X.org server is *not*
available.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Many packages used to depend on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7,
but this is useless since BR2_PACKAGE_XORG is a non-existing
configuration option. So, these depencies gets simplified to
BR2_PACKAGE_XORG7 only.
Some others were depending on BR2_PACKAGE_TINYX (which doesn't) exist
or BR2_PACKAGE_XSERVER_xorg || BR2_PACKAGE_XSERVER_tiny ||
BR2_PACKAGE_XSERVER_x11r7. Replace all that mess by a simple
dependency on BR2_PACKAGE_XORG7.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Move stamp (dependency) files outside the (version specific) source
directories, so other packages can hardcode dependencies on them instead
of having to use <PACKAGE>_VERSION variables.
This is important as the variables in the make rules are evaluated when
the rules is seen, which might be before the dependent makefile is parsed
(and hence <PACKAGE>_VERSION variable is known, screwing up stuff.
The downside of this is that the package isn't automatically rebuilt
when the version changes (E.G. by a svn update) and you now also have to
remove the stamp files next to $(BUILD_DIR)/<PACKAGE>-* to force a rebuild.
This matches upstream tarball, doesn't screw up existing .config's with
BR2_PACKAGE_PKGCONFIG and makes sure the patch gets applied for target
compilation.
The host versions shouldn't be visible in Kconfig, so remove the
reference to BR2_PACKAGE_PKGCONFIG everywhere and prefix the host targets
with host-.
At the same time add pkgconfig for the target (E.G. for development) and
let BR2_PACKAGE_PKGCONFIG control that package.
Notice: all defconfigs in the tree have been updated, but make sure to
disable the pkgconfig package (unless you want it) if you use an external
config, otherwise you'll end up with pkgconfig and glib2 in the target.