Commit Graph

9359 Commits

Author SHA1 Message Date
Peter Korsgaard
c71816a8a5 Makefile: make GNU_HOST_NAME a simply expanded variable (:=)
GNU_HOST_NAME is referred more than 100 times in the tree, used 5
times during startup, and is relatively expensive to run - so make
it a simple expanded variable (:=) rather than recursively expanded
one (=).

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-06 20:56:25 +02:00
Peter Korsgaard
4efdd9f3d9 Makefile.package.in: optimize UPPERCASE macro
As noticed by Thomas, we call the UPPERCASE macro a lot, and it slows down
startup quite a bit.

Optimize it by implementing it in make, rather than forking a shell + tr.
The implementation is heavily based on the 'up' macro from gmsl
(http://gmsl.sf.net)

With this in place, startup time is ~5 times lower.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-06 20:56:18 +02:00
Thomas Petazzoni
803967499f xfonts: fix dependencies and build process
Instead of assuming that mkfontdir and mkfontscale are available on
the development system, use the one installed in $(HOST_DIR).

The FCCACHE variable is removed, because, for some reason, the
installation process of xfonts disables the call to fc-cache when a
DESTDIR is passed. See the definition of XORG_FONT_FCCACHE in
aclocal.m4 in font packages:

AC_DEFUN([XORG_FONT_FCCACHE],[
        AC_PATH_PROG(FCCACHE, fc-cache)
        FCCACHE_WARN='echo "** Warning: fonts.cache not built" ; echo "** Generate this file manually on host system using fc-cache"'
        if test x"$FCCACHE" = x ; then
                RUN_FCCACHE="${FCCACHE_WARN}"
        else
                RUN_FCCACHE='@(if test -z "$(DESTDIR)"; then echo $(FCCACHE) $(fontdir); $(FCCACHE) $(fontdir); else'
                RUN_FCCACHE="${RUN_FCCACHE} ${FCCACHE_WARN} ; fi)"
        fi
        AC_SUBST([RUN_FCCACHE])
])

In addition to this, we update the font dependencies to include
font-utils for the host, mkfontdir for the host, mkfontscale for the
host and bdftopcf for the host.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:18:42 +02:00
Thomas Petazzoni
3be79ce2a5 xapp_mkfontdir: enable for the host
When compiling xfonts, mkfontdir is needed for the host, therefore,
enable it.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:18:42 +02:00
Thomas Petazzoni
a10439d3cd Enable xapp_bdftopcf dependencies for the host
Now that xapp_bdftopcf is enabled on the host, we also need its
dependencies to be available for the host. The dependency of
host-xapp_bdftopcf is host-xlib_libXfont, which itself depends on a
bunch of other packages. Some of them were already available for the
host, some not (xfont_encodings, xlib_xtrans, xproto_fontcacheproto,
xproto_fontsproto) and are therefore added by this patch.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:18:42 +02:00
Thomas Petazzoni
34fec71532 xapp_bdftopcf: enable for the host
Compiling xfonts require having bdftopcf installed on the
host. Therefore, enable host support for this package.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:18:41 +02:00
Thomas Petazzoni
4a57f7d261 xfont_font-util: enable host package
When compiling xfonts, host utilities like bdftopcf or ucs2any, part
of xfont_font-util are needed. Until now, xfont_font-util was
installing ugly symbolic links, assuming that these tools were
available on the development machine.

This patch enables the host package for xfont_font-util, removes the
post-install.sh script, and keeps only the useful part of this script
in a post install hook.

host-xfont_font-util will be used later by xfont packages.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:18:41 +02:00
Thomas Petazzoni
2eb4b09529 Add staging libraries directories to -L in external case
In order to solve issues of libtool trying to link target components
against host libraries, it seems that specifying -L$(STAGING_DIR)/lib
and -L$(STAGING_DIR)/usr/lib works.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:18:41 +02:00
Thomas Petazzoni
6b939d40f6 Add -rpath option for host package compilation
In c1b6242fdc, we added
$(HOST_DIR)/usr/lib to LD_LIBRARY_PATH when building target packages,
because the build of target packages sometimes require host tools
installed in $(HOST_DIR)/usr/bin which themselves require host
libaries installed in $(HOST_DIR)/usr/lib.

Unfortunately, this solution didn't work, as libtool then tried to
link target binaries against host libraries. So $(HOST_DIR)/usr/lib
got removed from LD_LIBRARY_PATH in
0d1830b07d.

However, this meant that we went back to the previous situation, in
which host tools used during compilation of target components might
require host libraries. An example :

make[2]: Entering directory `/home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/build/xfont_font-adobe-100dpi-1.0.1'
/home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/host/usr/bin/mkfontdir /home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/target/usr/share/fonts/X11/100dpi
/home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/host/usr/bin/mkfontscale: error while loading shared libraries: libfontenc.so.1: cannot open shared object file: No such file or directory

Therefore, we try another solution: make sure that host binaries are
linked with an -rpath option, so that $(HOST_DIR)/usr/lib doesn't need
to be in LD_LIBRARY_PATH for them to find their libraries.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06 20:17:38 +02:00
Paulius Zaleckas
d701a82321 Remove gtk-doc documentations from target
On my target rootfs it is installed documentation for:
atk, cairo, gdk, gdk-pixbuf, gio, glib, gobject, gtk, pango

It ocupies 34M of space. Configure option --disable-gtk-doc doesn't
prevent installation of it. So we should remove them manually if
documentation is disabled.

[Peter: also remove manual rm's from hal/libxml2/libglade]
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-05 12:21:21 +02:00
Peter Korsgaard
79db1ff5ac hal: cleanup package
Closes #1525

Kconfig selects are not recursive, so ensure we select the dependencies
of our dependencies as well.

Cleanup target installation:
- Remove tasks handled by the generic post-build cleanup
- Hal doesn't install etc/rc.d, so don't try to delete it

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-04 23:11:20 +02:00
Peter Korsgaard
32ed970075 mplayer: disable parallel builds (make -jX)
The build system races with itself when building the internal vidix stuff
(x86 only), so use MAKE1.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-04 22:48:16 +02:00
Gustavo Zacarias
63b8666409 usb_modeswitch: Bump to version 1.1.2
And correct kconfig dependency.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-04 21:47:17 +02:00
Peter Korsgaard
23ff3c2786 mplayer: internal copies of libdvdread/libdvdcss require largefile support
So disable when we don't have largefile support in toolchain.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-04 21:38:14 +02:00
Paulius Zaleckas
ca218debd5 X11 OpenChrome driver depends on libxcomposite
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 20:13:14 +02:00
Peter Korsgaard
aac61fdcc3 update for 2010.05-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 16:12:45 +02:00
Peter Korsgaard
5724e099ea CHANGES: update list of new/updated packages
Mainly package changes done by Thomas' pull requests.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 16:07:20 +02:00
Peter Korsgaard
ccb58a730d ccache: fix ccache-target dependencies
Ccache for the target doesn't make sense without a toolchain, so make
it depend on it.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 15:13:19 +02:00
Peter Korsgaard
2a2403af1d bzip2: fixup build after ea448fe (convert to gentargets, add host package, bump version)
Fix a few typos/mistakes introduced in commit ea448fe:

- bzip2 soname is not the same as package version
- It is PKG_INSTALL_STAGING, not PKG_STAGING_INSTALL
- Typo: BZIP2_INSTALL_TARGET_CMDS, not B2IP_INSTALL_TARGET_CMDS

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 15:07:05 +02:00
Lionel Landwerlin
0d1830b07d package: Add $(HOST_DIR)/usr/lib to LD_LIBRARY_PATH for host but not target
Some packages like icu requires to be compiled against the host system
first to be able to compile against the target. This is due to the
usage of self generated binaries by the package to build itself. When
the generated tools also depends on generated libraries it is required
to add the path to these libraries in the library path
(LD_LIBRARY_PATH) especially for the configure step.

Adding $(HOST_DIR)/usr/lib to LD_LIBRARY_PATH for target compilation
might break the link step by mixing host libraries and target
binaries.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 13:37:11 +02:00
Peter Korsgaard
d39641ccd6 target/generic: inittab: fix devpts mounts when devtmpfs is used
If devtmpfs (the kernel-maintained /dev filesystem) is used, no
/dev/pts directory is created, causing the devpts mount to fail, which
in term causes stuff like dropbear to fail.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 12:01:19 +02:00
Lionel Landwerlin
3bb02f5ba5 ncurses: fix path to patch ncurses5-config
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 10:06:34 +02:00
Lionel Landwerlin
79832827f3 linux-fusion: bump to 8.1.1
Also convert to generic package infrastructure

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 09:33:24 +02:00
Lionel Landwerlin
58633266d5 directfb: added directfb tests installation option
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 09:26:37 +02:00
Lionel Landwerlin
38b915c185 directfb: bump to 1.4.3
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 09:26:10 +02:00
Peter Korsgaard
0cd0d06475 docs/news: slides from FOSDEM
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 09:02:51 +02:00
Lionel Landwerlin
92d69b9713 ncurses: convert to autotools infrastructure
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 08:44:36 +02:00
Peter Korsgaard
a54f53d3e2 toolchain/gdb: get rid of 6.4 / 6.5
These are ancient (2006) and upstream strongly discourage using them:
ftp://sourceware.org/pub/gdb/old-releases/README

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:18:50 +02:00
Thomas Petazzoni
ec5d2bb41b autoconf: Unverbosify autoreconf output
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:10 +02:00
Thomas Petazzoni
1534274047 Fix autotools configuration cache handling
It got broken by the introduction of the new autotools infrastructure
based on the generic infrastructure.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:09 +02:00
Thomas Petazzoni
86f0c602de Update defconfigs after BR2_GNU_TARGET_SUFFIX removal
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:08 +02:00
Thomas Petazzoni
65e80a0b0b Remove BR2_GNU_TARGET_SUFFIX and compute GNU_TARGET_NAME
Instead of asking the user about the GNU target suffix, just compute
it automatically from the other configuration options.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:08 +02:00
Thomas Petazzoni
7eeb1ccef7 Update defconfigs after BR2_ROOTFS_SUFFIX removal
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:07 +02:00
Thomas Petazzoni
d70a3800b2 Get rid of the code computing ROOTFS_SUFFIX
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:07 +02:00
Thomas Petazzoni
420cf17bff Remove last users of the ROOTFS_SUFFIX thing
The ROOTFS_SUFFIX thing has been removed in
325bfd1cba, so get rid of the last users.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:06 +02:00
Thomas Petazzoni
bf75987424 Get rid of KERNEL_CROSS
In both internal and external toolchain cases, KERNEL_CROSS was
defined to *exactly* the same value as TARGET_CROSS. It isn't modified
anywhere, and is just used by kernel compilation and pcmcia
compilation.

Therefore, get rid of KERNEL_CROSS and use TARGET_CROSS instead.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:06 +02:00
Thomas Petazzoni
4c5bf461cd Commonalize the definition of TOOLCHAIN_DIR
The definition of TOOLCHAIN_DIR is the same regardless of whether
external or internal toolchains are used. Moreover, move its
definition together with all the other *_DIR definitions.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03 00:00:05 +02:00
Thomas Petazzoni
4c57d9638f uclibc: make sure the default configuration doesn't ask questions
Since new configuration options have been added in 0.9.31, the value
of these configuration options should be determined, either by the
default configuration file we provide, or by uclibc.mk process.

The locale generation process should probably be improved in order to
allow building other locales than just en_US.

[Peter: fixup locale handling, add PROGRAM__NAME to defconfig]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:59:28 +02:00
Thomas Petazzoni
bf27314fa6 uClibc: add UCLIBC_HAS_NFTW to default configuration
UCLIBC_HAS_NFTW is a new knob in 0.9.31, which allows the obsolete and
deprecated ftw() to be compiled-out separatly from nftw(), which is
part of POSIX. nftw() should probably be enabled by default in uClibc,
and a bug has been opened about this on uClibc bug tracker
(https://bugs.busybox.net/show_bug.cgi?id=1597).

nftw() is, for example, used in Gtk+.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:26:41 +02:00
Thomas Petazzoni
87d0af93d4 autotools: fix referencing to LIBTOOL_PATCH variable
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:26:31 +02:00
Thomas Petazzoni
593c18c0bb packages: remove useless HOST_*_LIBTOOL_PATCH
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:26:27 +02:00
Thomas Petazzoni
d2c73f5cf9 autotools: inherit LIBTOOL_PATCH for host packages
When FOO_LIBTOOL_PATCH is defined, assume that the same value should
be used for HOST_FOO_LIBTOOL_PATCH.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:26:22 +02:00
Thomas Petazzoni
c9a06efff3 openssl: convert to the generic infrastructure
OpenSSL is not using the autotools as its build system. Therefore, we
must use the generic infrastructure instead of the autotools one.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:26:11 +02:00
Thomas Petazzoni
6af9c84a51 libxslt: fix host compilation
Do not build against libgcrypt on the host, since we don't build
libgcrypt ourself, and it might fail even when libgcrypt is installed
on the host:

...configure...
checking for libgcrypt-config... /usr/bin/libgcrypt-config
Crypto extensions will be available.

...build...
gcc: /usr/lib/libgcrypt.so: No such file or directory

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:25:15 +02:00
Thomas Petazzoni
7dfa3b3fb4 autotools: fix autoreconf check
The autoreconf check was incorrect, missing a $ sign to properly
reference a package-specific variable. There was no visible effect
until now since :

 * The existing syntax allowed to access the value defined in the
   package specific .mk file, so when AUTORECONF was set to YES by a
   package, it was working.

 * The default value in Makefile.autotools.in was NO. In fact, when a
   package .mkf file wasn't defining the AUTORECONF variable, the
   Makefile.autotools.in test was testing the empty string against
   'YES', which was false, leading to the AUTORECONF not being done,
   which was the desired effect.

However, in a later patch, we intend to change this default value.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:24:21 +02:00
Peter Korsgaard
8471827f32 lua: fix pkgconfig installation
install -D needs the destination filename, not just it's directory,
otherwise we end up with a pkgconfig file instead.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:22:45 +02:00
Peter Korsgaard
4439d38890 toolchain/gcc: bump 4.4.x version to 4.4.4
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 23:22:26 +02:00
Lionel Landwerlin
9b24af3820 autoconf: add AUTOCONF variable setting
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 09:41:29 +02:00
Lionel Landwerlin
a6304a23a9 autoconf: add missing AUTOMAKE variable setting
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 09:40:49 +02:00
Lionel Landwerlin
e411497c3a autoconf: add AUTOHEADER variable
autoheader is used by autoreconf, therefor we need to give the right
path to this tools for host/target autoreconfiguration.

Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-02 09:37:15 +02:00