summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2007-01-14 03:52:21 +0000
committerEric Andersen <andersen@codepoet.org>2007-01-14 03:52:21 +0000
commit732d94d25fd10fff65a378b03c3fca9bde403e95 (patch)
treeb9a58d5d379614371b65b671fb7851622a6b5667
parent4ac03cc86a989c2f86b2cdb7041b854bf9609049 (diff)
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
-rw-r--r--package/argus/argus.mk2
-rw-r--r--package/at/at.mk1
-rw-r--r--package/atk/atk.mk29
-rw-r--r--package/atk/libdir-la.patch77
-rw-r--r--package/autoconf/autoconf.mk1
-rw-r--r--package/automake/automake.mk1
-rw-r--r--package/avahi/avahi.mk18
-rw-r--r--package/bash/bash.mk3
-rw-r--r--package/berkeleydb/berkeleydb.mk17
-rw-r--r--package/bind/bind.mk5
-rw-r--r--package/bison/bison.mk1
-rw-r--r--package/boa/boa.mk1
-rw-r--r--package/bridge/bridge.mk1
-rw-r--r--package/cairo/cairo.mk35
-rw-r--r--package/cairo/libdir-la.patch77
-rw-r--r--package/coreutils/coreutils.mk1
-rw-r--r--package/cvs/cvs.mk2
-rw-r--r--package/diffutils/diffutils.mk1
-rw-r--r--package/directfb/directfb.mk43
-rw-r--r--package/distcc/distcc.mk3
-rw-r--r--package/dm/dm.mk15
-rw-r--r--package/dmalloc/dmalloc.mk18
-rw-r--r--package/dropbear/dropbear.mk1
-rw-r--r--package/e2fsprogs/e2fsprogs.mk1
-rw-r--r--package/expat/expat.mk14
-rw-r--r--package/expat/libdir-la.patch77
-rw-r--r--package/file/file.mk1
-rw-r--r--package/findutils/findutils.mk1
-rw-r--r--package/flex/flex.mk1
-rw-r--r--package/freetype/freetype.mk35
-rw-r--r--package/freetype/libdir-la.patch77
-rw-r--r--package/gawk/gawk.mk1
-rw-r--r--package/gettext/gettext.mk36
-rw-r--r--package/gettext/libdir-la.patch154
-rw-r--r--package/gmp/gmp.mk27
-rw-r--r--package/grep/grep.mk1
-rw-r--r--package/gzip/gzip.mk1
-rw-r--r--package/jpeg/jpeg.mk15
-rw-r--r--package/kexec/kexec.mk2
-rw-r--r--package/libcgi/libcgi.mk14
-rw-r--r--package/libcgicc/libcgicc.mk15
-rw-r--r--package/libdaemon/libdaemon.mk13
-rw-r--r--package/libglib12/libglib12.mk13
-rw-r--r--package/libglib2/libdir-la.patch77
-rw-r--r--package/libglib2/libglib2.mk31
-rw-r--r--package/libgtk12/libgtk12.mk13
-rw-r--r--package/libgtk2/libdir-la.patch77
-rw-r--r--package/libgtk2/libgtk2.mk14
-rw-r--r--package/libpcap/libpcap.mk23
-rw-r--r--package/libpng/libdir-la.patch77
-rw-r--r--package/libpng/libpng.mk44
-rw-r--r--package/libraw1394/libraw1394.mk23
-rw-r--r--package/libtool/libtool.mk1
-rw-r--r--package/libusb/libusb.mk2
-rw-r--r--package/lighttpd/lighttpd.mk1
-rw-r--r--package/links/links.mk1
-rw-r--r--package/lrzsz/lrzsz.mk1
-rw-r--r--package/ltt/ltt.mk1
-rw-r--r--package/make/make.mk1
-rw-r--r--package/mpfr/mpfr.mk14
-rw-r--r--package/nano/nano.mk2
-rw-r--r--package/ncurses/ncurses.mk6
-rw-r--r--package/newt/newt.mk1
-rw-r--r--package/ntp/ntp.mk1
-rw-r--r--package/openssh/openssh.mk1
-rw-r--r--package/openvpn/openvpn.mk1
-rw-r--r--package/pango/libdir-la.patch77
-rw-r--r--package/pango/no-tests.patch2
-rw-r--r--package/pango/pango.mk40
-rw-r--r--package/patch/patch.mk1
-rw-r--r--package/pppd/pppd.mk1
-rw-r--r--package/psmisc/psmisc.mk2
-rw-r--r--package/qte/qte.mk6
-rw-r--r--package/raidtools/raidtools.mk1
-rw-r--r--package/readline/readline.mk35
-rw-r--r--package/rsync/rsync.mk2
-rw-r--r--package/ruby/ruby.mk1
-rw-r--r--package/sdl/sdl.mk29
-rw-r--r--package/sed/sed.mk1
-rw-r--r--package/smartmontools/smartmontools.mk1
-rw-r--r--package/socat/socat.mk1
-rw-r--r--package/sqlite/sqlite.mk12
-rw-r--r--package/strace/strace.mk1
-rw-r--r--package/stunnel/stunnel.mk1
-rw-r--r--package/sudo/sudo.mk1
-rw-r--r--package/tar/tar.mk1
-rw-r--r--package/tcpdump/dhcpdump.mk15
-rw-r--r--package/tcpdump/tcpdump.mk20
-rw-r--r--package/tftpd/tftpd.mk1
-rw-r--r--package/thttpd/thttpd.mk2
-rw-r--r--package/tiff/tiff.mk16
-rw-r--r--package/tn5250/tn5250.mk1
-rw-r--r--package/usbutils/usbutils.mk2
-rw-r--r--package/util-linux/util-linux.mk5
-rw-r--r--package/valgrind/valgrind.mk1
-rw-r--r--package/vtun/vtun.mk1
-rw-r--r--package/wget/wget.mk2
-rw-r--r--package/which/which.mk2
-rw-r--r--package/xorg/Config.in2
-rw-r--r--package/xorg/libXfont-1.1.0-noftinternals.patch294
-rw-r--r--package/xorg/libdir-la.patch153
-rw-r--r--package/xorg/xorg-config.patch5
-rw-r--r--package/xorg/xorg.mk12
103 files changed, 1688 insertions, 327 deletions
diff --git a/package/argus/argus.mk b/package/argus/argus.mk
index 991fc3ecc..ee6993e12 100644
--- a/package/argus/argus.mk
+++ b/package/argus/argus.mk
@@ -50,7 +50,7 @@ endif
$(ARGUS_DIR)/.configured: $(ARGUS_DIR)/.unpacked
(cd $(ARGUS_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
$(ARGUS_TRAP_CHECK) \
./configure \
diff --git a/package/at/at.mk b/package/at/at.mk
index 40e4debeb..58a7cb463 100644
--- a/package/at/at.mk
+++ b/package/at/at.mk
@@ -29,6 +29,7 @@ $(AT_DIR)/.configured: $(AT_DIR)/.unpacked
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--localstatedir=/var \
diff --git a/package/atk/atk.mk b/package/atk/atk.mk
index a3147f8c8..06eba8dab 100644
--- a/package/atk/atk.mk
+++ b/package/atk/atk.mk
@@ -30,7 +30,6 @@ $(ATK_DIR)/.unpacked: $(DL_DIR)/$(ATK_SOURCE)
$(ATK_DIR)/.configured: $(ATK_DIR)/.unpacked
(cd $(ATK_DIR); rm -rf config.cache; \
$(TARGET_CONFIGURE_OPTS) \
- PKG_CONFIG=$(STAGING_DIR)/usr/bin/pkg-config \
ac_cv_c_bigendian=$(ATK_BE) \
ac_cv_func_posix_getpwuid_r=yes \
glib_cv_stack_grows=no \
@@ -90,18 +89,19 @@ $(ATK_DIR)/.configured: $(ATK_DIR)/.unpacked
gl_cv_c_restrict=no \
ac_cv_path_GLIB_GENMARSHAL=/usr/bin/glib-genmarshal \
./configure \
+ --target=$(GNU_TARGET_NAME) \
--host=$(REAL_GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
@@ -120,21 +120,8 @@ $(ATK_DIR)/atk/.libs/$(ATK_BINARY): $(ATK_DIR)/.configured
touch -c $(ATK_DIR)/atk/.libs/$(ATK_BINARY)
$(STAGING_DIR)/lib/$(ATK_BINARY): $(ATK_DIR)/atk/.libs/$(ATK_BINARY)
- $(MAKE) prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
- datadir=$(STAGING_DIR)/share \
- sysconfdir=$(STAGING_DIR)/etc \
- sharedstatedir=$(STAGING_DIR)/com \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- includedir=$(STAGING_DIR)/include \
- oldincludedir=$(STAGING_DIR)/include \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- -C $(ATK_DIR) install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(ATK_DIR) install
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libatk-1.0.la
touch -c $(STAGING_DIR)/lib/$(ATK_BINARY)
$(TARGET_DIR)/lib/libatk-1.0.so.0: $(STAGING_DIR)/lib/$(ATK_BINARY)
@@ -143,7 +130,7 @@ $(TARGET_DIR)/lib/libatk-1.0.so.0: $(STAGING_DIR)/lib/$(ATK_BINARY)
$(STRIP) --strip-unneeded $(TARGET_DIR)/lib/libatk-1.0.so.0.*
touch -c $(TARGET_DIR)/lib/libatk-1.0.so.0
-atk: libglib2 $(TARGET_DIR)/lib/libatk-1.0.so.0
+atk: libglib2 pkgconfig $(TARGET_DIR)/lib/libatk-1.0.so.0
atk-clean:
rm -f $(TARGET_DIR)/lib/$(ATK_BINARY)
diff --git a/package/atk/libdir-la.patch b/package/atk/libdir-la.patch
new file mode 100644
index 000000000..dfaf2e951
--- /dev/null
+++ b/package/atk/libdir-la.patch
@@ -0,0 +1,77 @@
+--- atk-1.9.1/ltmain.sh.orig 2004-11-23 09:19:19.000000000 -0700
++++ atk-1.9.1/ltmain.sh 2007-01-13 14:36:53.000000000 -0700
+@@ -231,8 +231,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2279,8 +2280,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ else
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+@@ -2754,6 +2761,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5141,6 +5158,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5459,10 +5480,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/autoconf/autoconf.mk b/package/autoconf/autoconf.mk
index 2beef2a74..83109f400 100644
--- a/package/autoconf/autoconf.mk
+++ b/package/autoconf/autoconf.mk
@@ -32,6 +32,7 @@ $(AUTOCONF_DIR)/.configured: $(AUTOCONF_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/automake/automake.mk b/package/automake/automake.mk
index be3384b29..c49d28f0d 100644
--- a/package/automake/automake.mk
+++ b/package/automake/automake.mk
@@ -33,6 +33,7 @@ $(AUTOMAKE_DIR)/.configured: $(AUTOMAKE_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/avahi/avahi.mk b/package/avahi/avahi.mk
index c53f5f10c..f939e7b7e 100644
--- a/package/avahi/avahi.mk
+++ b/package/avahi/avahi.mk
@@ -34,7 +34,6 @@ $(AVAHI_DIR)/.configured: $(AVAHI_DIR)/.unpacked
CFLAGS="$(TARGET_CFLAGS)" \
LIBDAEMON_CFLAGS="-I$(STAGING_DIR)/include" \
LIBDAEMON_LIBS="-L$(STAGING_DIR)/lib -ldaemon" \
- PKG_CONFIG_PATH="$(LIBDAEMON_DIR)" \
ac_cv_func_strtod=yes \
ac_fsusage_space=yes \
fu_cv_sys_stat_statfs2_bsize=yes \
@@ -90,19 +89,20 @@ $(AVAHI_DIR)/.configured: $(AVAHI_DIR)/.unpacked
ac_use_included_regex=no \
./configure \
--target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
+ --host=$(REAL_GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
- --libexecdir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
- --includedir=$(STAGING_DIR)/include \
$(DISABLE_NLS) \
$(DISABLE_LARGEFILE) \
--disable-glib \
@@ -130,15 +130,7 @@ $(AVAHI_DIR)/.compiled: $(AVAHI_DIR)/.configured
touch $(AVAHI_DIR)/.compiled
$(STAGING_DIR)/sbin/avahi-autoipd: $(AVAHI_DIR)/.compiled
- $(MAKE) \
- -C $(AVAHI_DIR)/avahi-autoipd \
- prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- datadir=$(STAGING_DIR)/share \
- sbindir=$(STAGING_DIR)/sbin \
- sysconfdir=$(STAGING_DIR)/etc \
- install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(AVAHI_DIR)/avahi-autoipd install
touch -c $(STAGING_DIR)/sbin/avahi-autoipd
$(TARGET_DIR)/usr/sbin/avahi-autoipd: $(STAGING_DIR)/sbin/avahi-autoipd
diff --git a/package/bash/bash.mk b/package/bash/bash.mk
index ccb28f18c..cd531f69a 100644
--- a/package/bash/bash.mk
+++ b/package/bash/bash.mk
@@ -28,7 +28,7 @@ $(BASH_DIR)/.unpacked: $(DL_DIR)/$(BASH_SOURCE)
$(BASH_DIR)/.configured: $(BASH_DIR)/.unpacked
# bash_cv_have_mbstate_t=yes
(cd $(BASH_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
ac_cv_func_setvbuf_reversed=no \
./configure \
@@ -39,6 +39,7 @@ $(BASH_DIR)/.configured: $(BASH_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/berkeleydb/berkeleydb.mk b/package/berkeleydb/berkeleydb.mk
index c20d2bca3..369044219 100644
--- a/package/berkeleydb/berkeleydb.mk
+++ b/package/berkeleydb/berkeleydb.mk
@@ -30,10 +30,12 @@ $(DB_DIR)/.configured: $(DB_DIR)/.dist
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--with-gnu-ld \
@@ -53,20 +55,7 @@ $(DB_DIR)/build_unix/.libs/$(DB_SHARLIB): $(DB_DIR)/.configured
$(MAKE) CC=$(TARGET_CC) -C $(DB_DIR)/build_unix
$(STAGING_DIR)/lib/$(DB_SHARLIB): $(DB_DIR)/build_unix/.libs/$(DB_SHARLIB)
- $(MAKE) \
- prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/lib \
- datadir=$(STAGING_DIR)/share \
- sysconfdir=$(STAGING_DIR)/etc \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- includedir=$(STAGING_DIR)/include \
- -C $(DB_DIR)/build_unix install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(DB_DIR)/build_unix install
chmod a-x $(STAGING_DIR)/lib/libdb*so*
rm -f $(STAGING_DIR)/bin/db_*
rm -rf $(STAGING_DIR)/share/locale $(STAGING_DIR)/info \
diff --git a/package/bind/bind.mk b/package/bind/bind.mk
index c0632b9a1..a5cf09d7a 100644
--- a/package/bind/bind.mk
+++ b/package/bind/bind.mk
@@ -36,6 +36,7 @@ $(BIND_DIR2)/Makefile: $(BIND_DIR2)/.unpacked
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--libdir=/lib \
--includedir=/include \
@@ -78,9 +79,9 @@ $(TARGET_DIR)/lib/libdns.so: $(STAGING_DIR)/lib/libdns.so
cd $(STAGING_DIR)/lib; \
cp -a libdns*so* libisc*so* libbind9*so* \
liblwres*so* $(TARGET_DIR)/lib
-
+
bind-lib: $(STAGING_DIR)/lib/libdns.so $(TARGET_DIR)/lib/libdns.so
-
+
bind: uclibc bind-bin bind-lib
bind-clean:
diff --git a/package/bison/bison.mk b/package/bison/bison.mk
index 7f7e5db93..2185d2086 100644
--- a/package/bison/bison.mk
+++ b/package/bison/bison.mk
@@ -33,6 +33,7 @@ $(BISON_DIR)/.configured: $(BISON_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/boa/boa.mk b/package/boa/boa.mk
index d01986c48..275cd8e8c 100644
--- a/package/boa/boa.mk
+++ b/package/boa/boa.mk
@@ -38,6 +38,7 @@ $(BOA_WORKDIR)/Makefile: $(BOA_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/bridge/bridge.mk b/package/bridge/bridge.mk
index 92359b1aa..a753ff491 100644
--- a/package/bridge/bridge.mk
+++ b/package/bridge/bridge.mk
@@ -30,6 +30,7 @@ $(BRIDGE_BUILD_DIR)/.configured: $(BRIDGE_BUILD_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/cairo/cairo.mk b/package/cairo/cairo.mk
index 7e1eba5c6..7259c296a 100644
--- a/package/cairo/cairo.mk
+++ b/package/cairo/cairo.mk
@@ -30,7 +30,6 @@ $(CAIRO_DIR)/.unpacked: $(DL_DIR)/$(CAIRO_SOURCE)
$(CAIRO_DIR)/.configured: $(CAIRO_DIR)/.unpacked
(cd $(CAIRO_DIR); rm -rf config.cache; \
$(TARGET_CONFIGURE_OPTS) \
- PKG_CONFIG=$(STAGING_DIR)/usr/bin/pkg-config \
ac_cv_c_bigendian=$(CAIRO_BE) \
ac_cv_func_posix_getpwuid_r=yes \
glib_cv_stack_grows=no \
@@ -90,25 +89,26 @@ $(CAIRO_DIR)/.configured: $(CAIRO_DIR)/.unpacked
gl_cv_c_restrict=no \
ac_cv_path_GLIB_GENMARSHAL=/usr/bin/glib-genmarshal \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
--enable-static \
--with-x \
- --x-includes=$(STAGING_DIR)/usr/X11R6/include \
- --x-libraries=$(STAGING_DIR)/usr/X11R6/lib \
+ --x-includes=$(STAGING_DIR)/include \
+ --x-libraries=$(STAGING_DIR)/lib \
--enable-ps=yes \
--enable-pdf=yes \
--enable-svg=no \
@@ -124,21 +124,10 @@ $(CAIRO_DIR)/src/.libs/$(CAIRO_BINARY): $(CAIRO_DIR)/.configured
touch -c $(CAIRO_DIR)/src/.libs/$(CAIRO_BINARY)
$(STAGING_DIR)/lib/$(CAIRO_BINARY): $(CAIRO_DIR)/src/.libs/$(CAIRO_BINARY)
- $(MAKE) prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
- datadir=$(STAGING_DIR)/share \
- sysconfdir=$(STAGING_DIR)/etc \
- sharedstatedir=$(STAGING_DIR)/com \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- includedir=$(STAGING_DIR)/include \
- oldincludedir=$(STAGING_DIR)/include \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- -C $(CAIRO_DIR) install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(CAIRO_DIR) install;
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libcairo.la
+ $(SED) "s, x11 ,,g" $(STAGING_DIR)/lib/pkgconfig/cairo.pc
+ $(SED) "s, x11 ,,g" $(STAGING_DIR)/lib/pkgconfig/cairo-xlib.pc
touch -c $(STAGING_DIR)/lib/$(CAIRO_BINARY)
$(TARGET_DIR)/lib/libcairo.so.2.9.3: $(STAGING_DIR)/lib/$(CAIRO_BINARY)
diff --git a/package/cairo/libdir-la.patch b/package/cairo/libdir-la.patch
new file mode 100644
index 000000000..c352997d6
--- /dev/null
+++ b/package/cairo/libdir-la.patch
@@ -0,0 +1,77 @@
+--- cairo/ltmain.sh.orig 2004-11-23 09:19:19.000000000 -0700
++++ cairo/ltmain.sh 2007-01-13 14:36:53.000000000 -0700
+@@ -231,8 +231,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2279,8 +2280,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ else
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+@@ -2754,6 +2761,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5141,6 +5158,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5459,10 +5480,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/coreutils/coreutils.mk b/package/coreutils/coreutils.mk
index 7d3408922..1ece80e24 100644
--- a/package/coreutils/coreutils.mk
+++ b/package/coreutils/coreutils.mk
@@ -90,6 +90,7 @@ $(COREUTILS_DIR)/.configured: $(COREUTILS_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/cvs/cvs.mk b/package/cvs/cvs.mk
index d4f9936f5..5fc42fa5b 100644
--- a/package/cvs/cvs.mk
+++ b/package/cvs/cvs.mk
@@ -22,7 +22,7 @@ $(CVS_DIR)/.unpacked: $(DL_DIR)/$(CVS_SOURCE)
$(CVS_DIR)/.configured: $(CVS_DIR)/.unpacked
(cd $(CVS_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
cvs_cv_func_printf_ptr=yes \
./configure \
diff --git a/package/diffutils/diffutils.mk b/package/diffutils/diffutils.mk
index 7d12ab76e..00f0260e6 100644
--- a/package/diffutils/diffutils.mk
+++ b/package/diffutils/diffutils.mk
@@ -86,6 +86,7 @@ $(DIFFUTILS_DIR)/.configured: $(DIFFUTILS_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/directfb/directfb.mk b/package/directfb/directfb.mk
index 4fb9a36b7..38a6403a5 100644
--- a/package/directfb/directfb.mk
+++ b/package/directfb/directfb.mk
@@ -27,21 +27,32 @@ $(DIRECTFB_DIR)/.configured: $(DIRECTFB_DIR)/.unpacked
ac_cv_header_linux_wm97xx_h=no \
ac_cv_header_linux_sisfb_h=no \
./configure \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=/usr \
- --with-gfxdrivers=cle266,unichrome \
- --enable-jpeg \
- --enable-png \
- --enable-linux-input \
- --enable-zlib \
- --enable-freetype \
- --enable-sysfs \
- --disable-sdl \
- --disable-video4linux \
- --disable-video4linux2 \
- --disable-fusion );
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/usr/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --with-gfxdrivers=cle266,unichrome \
+ --enable-jpeg \
+ --enable-png \
+ --enable-linux-input \
+ --enable-zlib \
+ --enable-freetype \
+ --enable-sysfs \
+ --disable-sdl \
+ --disable-video4linux \
+ --disable-video4linux2 \
+ --disable-fusion );
touch $(DIRECTFB_DIR)/.configured
$(DIRECTFB_DIR)/.compiled: $(DIRECTFB_DIR)/.configured
@@ -49,7 +60,7 @@ $(DIRECTFB_DIR)/.compiled: $(DIRECTFB_DIR)/.configured
touch $(DIRECTFB_DIR)/.compiled
$(STAGING_DIR)/usr/lib/libdirectfb.so: $(DIRECTFB_DIR)/.compiled
- $(MAKE) -C $(DIRECTFB_DIR) install prefix=$(STAGING_DIR)/usr exec_prefix=$(STAGING_DIR)/usr
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(DIRECTFB_DIR) install
touch -c $(STAGING_DIR)/lib/libdirectfb.so
$(TARGET_DIR)/usr/lib/libdirectfb.so: $(STAGING_DIR)/usr/lib/libdirectfb.so
diff --git a/package/distcc/distcc.mk b/package/distcc/distcc.mk
index d9a88e706..6dc6e5353 100644
--- a/package/distcc/distcc.mk
+++ b/package/distcc/distcc.mk
@@ -22,7 +22,7 @@ $(DISTCC_DIR)/.unpacked: $(DL_DIR)/$(DISTCC_SOURCE)
$(DISTCC_DIR)/.configured: $(DISTCC_DIR)/.unpacked
(cd $(DISTCC_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
@@ -31,6 +31,7 @@ $(DISTCC_DIR)/.configured: $(DISTCC_DIR)/.unpacked
--prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/dm/dm.mk b/package/dm/dm.mk
index 33830a7bd..cf88ccd74 100644
--- a/package/dm/dm.mk
+++ b/package/dm/dm.mk
@@ -62,6 +62,17 @@ $(DM_DIR)/.configured: $(DM_DIR)/.unpacked
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
$(DISABLE_NLS) \
$(DISABLE_LARGEFILE) \
--with-user=$(shell id -un) --with-group=$(shell id -gn) \
@@ -72,8 +83,8 @@ $(DM_DIR)/$(DM_BINARY): dm-build
$(DM_DIR)/$(DM_LIBRARY): dm-build
$(DM_STAGING_BINARY) $(DM_STAGING_LIBRARY): $(DM_DIR)/.configured
- $(MAKE) CC=$(TARGET_CC) DESTDIR=$(STAGING_DIR) -C $(DM_DIR)
- $(MAKE) -C $(DM_DIR) install prefix=$(STAGING_DIR)
+ $(MAKE) CC=$(TARGET_CC) -C $(DM_DIR)
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(DM_DIR) install
# Install dmsetup from staging to target
$(DM_TARGET_BINARY): $(DM_STAGING_BINARY)
diff --git a/package/dmalloc/dmalloc.mk b/package/dmalloc/dmalloc.mk
index 360a66f7e..31aea34b7 100644
--- a/package/dmalloc/dmalloc.mk
+++ b/package/dmalloc/dmalloc.mk
@@ -34,6 +34,17 @@ $(DMALLOC_DIR)/.configured: $(DMALLOC_DIR)/.unpacked
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--enable-threads \
--enable-shlib \
);
@@ -43,12 +54,7 @@ $(DMALLOC_DIR)/$(DMALLOC_BINARY): $(DMALLOC_DIR)/.configured
$(MAKE) -C $(DMALLOC_DIR)
$(TARGET_DIR)/$(DMALLOC_TARGET_BINARY): $(DMALLOC_DIR)/$(DMALLOC_BINARY)
- $(MAKE) prefix=$(STAGING_DIR)/usr \
- exec_prefix=$(TARGET_DIR)/usr \
- libdir=$(STAGING_DIR)/usr/lib \
- shlibdir=$(TARGET_DIR)/usr/lib \
- includedir=$(STAGING_DIR)/include \
- -C $(DMALLOC_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(DMALLOC_DIR) install
(cd $(STAGING_DIR)/usr/lib; \
mv libdmalloc*.so $(TARGET_DIR)/usr/lib);
touch $(TARGET_DIR)/$(DMALLOC_TARGET_BINARY)
diff --git a/package/dropbear/dropbear.mk b/package/dropbear/dropbear.mk
index 870cacfc2..16da531fd 100644
--- a/package/dropbear/dropbear.mk
+++ b/package/dropbear/dropbear.mk
@@ -35,6 +35,7 @@ $(DROPBEAR_DIR)/.configured: $(DROPBEAR_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk
index 29147e268..deee42b0f 100644
--- a/package/e2fsprogs/e2fsprogs.mk
+++ b/package/e2fsprogs/e2fsprogs.mk
@@ -39,6 +39,7 @@ $(E2FSPROGS_DIR)/.configured: $(E2FSPROGS_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/bin \
--sbindir=/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/expat/expat.mk b/package/expat/expat.mk
index d14d3674f..82708978c 100644
--- a/package/expat/expat.mk
+++ b/package/expat/expat.mk
@@ -29,13 +29,15 @@ $(EXPAT_DIR)/.configured: $(EXPAT_DIR)/.unpacked
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
- --bindir=$(STAGING_DIR)/usr/bin \
- --sbindir=$(STAGING_DIR)/usr/sbin \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
- --mandir=$(STAGING_DIR)/man \
+ --includedir=/include \
+ --mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
);
@@ -46,8 +48,8 @@ $(EXPAT_DIR)/.libs/libexpat.a: $(EXPAT_DIR)/.configured
touch -c $(EXPAT_DIR)/.libs/libexpat.a
$(STAGING_DIR)/lib/libexpat.so.1: $(EXPAT_DIR)/.libs/libexpat.a
- $(MAKE) -C $(EXPAT_DIR) prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) mandir=$(STAGING_DIR)/man install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(EXPAT_DIR) install
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libexpat.la
touch -c $(STAGING_DIR)/lib/libexpat.so.1
$(TARGET_DIR)/lib/libexpat.so.1: $(STAGING_DIR)/lib/libexpat.so.1
@@ -56,7 +58,7 @@ $(TARGET_DIR)/lib/libexpat.so.1: $(STAGING_DIR)/lib/libexpat.so.1
-$(STRIP) --strip-unneeded $(TARGET_DIR)/lib/libexpat.so.0.5.0
touch -c $(TARGET_DIR)/lib/libexpat.so.1
-expat: uclibc $(TARGET_DIR)/lib/libexpat.so.1
+expat: uclibc pkgconfig $(TARGET_DIR)/lib/libexpat.so.1
expat-clean:
rm -f $(EXPAT_DIR)/.configured
diff --git a/package/expat/libdir-la.patch b/package/expat/libdir-la.patch
new file mode 100644
index 000000000..1c8930ea6
--- /dev/null
+++ b/package/expat/libdir-la.patch
@@ -0,0 +1,77 @@
+--- expat-2.0.0/conftools/ltmain.sh.orig 2007-01-13 14:39:51.000000000 -0700
++++ expat-2.0.0/conftools/ltmain.sh 2007-01-13 14:39:56.000000000 -0700
+@@ -273,8 +273,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2404,8 +2405,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -2886,6 +2893,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5598,6 +5615,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5919,10 +5940,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/file/file.mk b/package/file/file.mk
index 37806c6ff..3837bcf99 100644
--- a/package/file/file.mk
+++ b/package/file/file.mk
@@ -69,6 +69,7 @@ $(FILE_DIR2)/.configured: $(FILE_SOURCE_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share/misc \
diff --git a/package/findutils/findutils.mk b/package/findutils/findutils.mk
index c04d4ab1a..f1d60fef4 100644
--- a/package/findutils/findutils.mk
+++ b/package/findutils/findutils.mk
@@ -35,6 +35,7 @@ $(FINDUTILS_DIR)/.configured: $(FINDUTILS_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib/locate \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/flex/flex.mk b/package/flex/flex.mk
index ba7c48017..c1ea1ba79 100644
--- a/package/flex/flex.mk
+++ b/package/flex/flex.mk
@@ -36,6 +36,7 @@ $(FLEX_DIR)/.configured: $(FLEX_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/freetype/freetype.mk b/package/freetype/freetype.mk
index d397c5a77..c6b8eacf4 100644
--- a/package/freetype/freetype.mk
+++ b/package/freetype/freetype.mk
@@ -3,7 +3,7 @@
# freetype
#
#############################################################
-FREETYPE_VERSION:=2.1.9
+FREETYPE_VERSION:=2.2.1
FREETYPE_SOURCE:=freetype-$(FREETYPE_VERSION).tar.bz2
FREETYPE_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/freetype
FREETYPE_CAT:=$(BZCAT)
@@ -22,26 +22,45 @@ $(FREETYPE_DIR)/.configured: $(FREETYPE_DIR)/.unpacked
(cd $(FREETYPE_DIR); \
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS) " \
+ CCexe="$(HOSTCC)" \
./configure \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) );
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ );
touch $(FREETYPE_DIR)/.configured
$(FREETYPE_DIR)/.compiled: $(FREETYPE_DIR)/.configured
- $(MAKE) -C $(FREETYPE_DIR)
+ $(MAKE) CCexe="$(HOSTCC)" -C $(FREETYPE_DIR)
touch $(FREETYPE_DIR)/.compiled
$(STAGING_DIR)/lib/libfreetype.so: $(FREETYPE_DIR)/.compiled
- $(MAKE) -C $(FREETYPE_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(FREETYPE_DIR) install
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libfreetype.la
+ $(SED) "s,^prefix=.*,prefix=\'$(STAGING_DIR)\',g" \
+ -e "s,^exec_prefix=.*,exec_prefix=\'$(STAGING_DIR)/usr\',g" \
+ -e "s,^includedir=.*,includedir=\'$(STAGING_DIR)/include\',g" \
+ "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" \
+ $(STAGING_DIR)/usr/bin/freetype-config
touch -c $(STAGING_DIR)/lib/libfreetype.so
$(TARGET_DIR)/lib/libfreetype.so: $(STAGING_DIR)/lib/libfreetype.so
cp -dpf $(STAGING_DIR)/lib/libfreetype.so* $(TARGET_DIR)/lib/
-$(STRIP) --strip-unneeded $(TARGET_DIR)/lib/libfreetype.so
-freetype: uclibc $(TARGET_DIR)/lib/libfreetype.so
+freetype: uclibc pkgconfig $(TARGET_DIR)/lib/libfreetype.so
freetype-clean:
$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FREETYPE_DIR) uninstall
diff --git a/package/freetype/libdir-la.patch b/package/freetype/libdir-la.patch
new file mode 100644
index 000000000..ffe5741d2
--- /dev/null
+++ b/package/freetype/libdir-la.patch
@@ -0,0 +1,77 @@
+--- freetype-2.2.1/builds/unix/ltmain.sh.orig 2006-04-20 08:27:27.000000000 -0600
++++ freetype-2.2.1/builds/unix/ltmain.sh 2007-01-13 14:26:01.000000000 -0700
+@@ -273,8 +273,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2404,8 +2405,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -2886,6 +2893,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5598,6 +5615,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5919,10 +5940,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/gawk/gawk.mk b/package/gawk/gawk.mk
index cfe4e90c1..ae88f8827 100644
--- a/package/gawk/gawk.mk
+++ b/package/gawk/gawk.mk
@@ -34,6 +34,7 @@ $(GAWK_DIR)/.configured: $(GAWK_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/gettext/gettext.mk b/package/gettext/gettext.mk
index eb73d8aa5..3da4cd9e1 100644
--- a/package/gettext/gettext.mk
+++ b/package/gettext/gettext.mk
@@ -82,10 +82,18 @@ $(GETTEXT_DIR)/.configured: $(GETTEXT_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/bin \
+ --sbindir=/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--disable-libasprintf \
);
touch $(GETTEXT_DIR)/.configured
@@ -95,9 +103,17 @@ $(GETTEXT_DIR)/$(GETTEXT_BINARY): $(GETTEXT_DIR)/.configured
touch -c $(GETTEXT_DIR)/$(GETTEXT_BINARY)
$(STAGING_DIR)/$(GETTEXT_TARGET_BINARY): $(GETTEXT_DIR)/$(GETTEXT_BINARY)
- $(MAKE) -C $(GETTEXT_DIR) install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(GETTEXT_DIR) install
+ $(SED) 's,/lib/,$(STAGING_DIR)/lib/,g' $(STAGING_DIR)/lib/libgettextlib.la
+ $(SED) 's,/lib/,$(STAGING_DIR)/lib/,g' $(STAGING_DIR)/lib/libgettextpo.la
+ $(SED) 's,/lib/,$(STAGING_DIR)/lib/,g' $(STAGING_DIR)/lib/libgettextsrc.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libgettextlib.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libgettextpo.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libgettextsrc.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libintl.la
+ touch -c $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY)
-gettext: uclibc $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY)
+gettext: uclibc pkgconfig $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY)
gettext-clean:
$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GETTEXT_DIR) uninstall
@@ -114,17 +130,17 @@ gettext-dirclean:
gettext-target: $(GETTEXT_DIR)/$(GETTEXT_BINARY)
$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GETTEXT_DIR) install
- chmod +x $(TARGET_DIR)/usr/lib/libintl.so.3.4.3 # identify as needing to be stipped
+ chmod +x $(TARGET_DIR)/lib/libintl.so.3.4.3 # identify as needing to be stipped
rm -rf $(TARGET_DIR)/usr/info \
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc \
$(TARGET_DIR)/usr/doc $(TARGET_DIR)/usr/share/aclocal \
$(TARGET_DIR)/usr/include/libintl.h
-rmdir $(TARGET_DIR)/usr/include
-libintl: $(TARGET_DIR)/usr/lib/libintl.so
+libintl: $(TARGET_DIR)/lib/libintl.so
-$(TARGET_DIR)/usr/lib/libintl.so: $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY)
- cp -a $(STAGING_DIR)/usr/lib/libintl.so* $(TARGET_DIR)/usr/lib
+$(TARGET_DIR)/lib/libintl.so: $(STAGING_DIR)/$(GETTEXT_TARGET_BINARY)
+ cp -a $(STAGING_DIR)/lib/libintl.so* $(TARGET_DIR)/lib
touch $@
#############################################################
diff --git a/package/gettext/libdir-la.patch b/package/gettext/libdir-la.patch
new file mode 100644
index 000000000..d5076c11a
--- /dev/null
+++ b/package/gettext/libdir-la.patch
@@ -0,0 +1,154 @@
+--- gettext-0.14.6/autoconf-lib-link/build-aux/ltmain.sh.orig 2007-01-13 14:33:23.000000000 -0700
++++ gettext-0.14.6/autoconf-lib-link/build-aux/ltmain.sh 2007-01-13 14:35:10.000000000 -0700
+@@ -234,8 +234,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2324,8 +2325,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -2800,6 +2807,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5210,6 +5227,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5528,10 +5549,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+--- gettext-0.14.6/build-aux/ltmain.sh.orig 2005-05-20 15:03:38.000000000 -0600
++++ gettext-0.14.6/build-aux/ltmain.sh 2007-01-13 14:34:27.000000000 -0700
+@@ -234,8 +234,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2324,8 +2325,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -2800,6 +2807,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5210,6 +5227,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5528,10 +5549,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/gmp/gmp.mk b/package/gmp/gmp.mk
index ff5015074..3fad0b1e1 100644
--- a/package/gmp/gmp.mk
+++ b/package/gmp/gmp.mk
@@ -31,22 +31,22 @@ $(GMP_DIR)/.unpacked: $(DL_DIR)/$(GMP_SOURCE)
$(GMP_DIR)/.configured: $(GMP_DIR)/.unpacked
(cd $(GMP_DIR); rm -rf config.cache; \
$(TARGET_CONFIGURE_OPTS) \
- CC_FOR_BUILD="$(HOSTCC)" \
CFLAGS="$(TARGET_CFLAGS)" \
ac_cv_c_bigendian=$(GMP_BE) \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
@@ -62,7 +62,7 @@ $(STAGING_DIR)/lib/$(GMP_BINARY): $(GMP_DIR)/.libs/$(GMP_BINARY)
exec_prefix=$(STAGING_DIR) \
bindir=$(STAGING_DIR)/bin \
sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
+ libexecdir=$(STAGING_DIR)/bin \
datadir=$(STAGING_DIR)/share \
sysconfdir=$(STAGING_DIR)/etc \
sharedstatedir=$(STAGING_DIR)/com \
@@ -72,7 +72,7 @@ $(STAGING_DIR)/lib/$(GMP_BINARY): $(GMP_DIR)/.libs/$(GMP_BINARY)
oldincludedir=$(STAGING_DIR)/include \
infodir=$(STAGING_DIR)/info \
mandir=$(STAGING_DIR)/man \
- -C $(GMP_DIR) install;
+ -C $(GMP_DIR) install
$(TARGET_DIR)/lib/libgmp.so.$(GMP_LIBVERSION): $(STAGING_DIR)/lib/$(GMP_BINARY)
cp -a $(STAGING_DIR)/lib/libgmp.so* $(STAGING_DIR)/lib/libgmp.a \
@@ -103,16 +103,19 @@ $(GMP_DIR2)/.configured: $(GMP_DIR)/.unpacked
CC="$(HOSTCC)" \
CFLAGS="$(HOST_CFLAGS)" \
$(GMP_DIR)/configure \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/usr/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
diff --git a/package/grep/grep.mk b/package/grep/grep.mk
index 9cc2b3de6..87b8a93ec 100644
--- a/package/grep/grep.mk
+++ b/package/grep/grep.mk
@@ -35,6 +35,7 @@ $(GNUGREP_DIR)/.configured: $(GNUGREP_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/gzip/gzip.mk b/package/gzip/gzip.mk
index 712dad790..e08eb9e02 100644
--- a/package/gzip/gzip.mk
+++ b/package/gzip/gzip.mk
@@ -33,6 +33,7 @@ $(GZIP_DIR)/.configured: $(GZIP_DIR)/.unpacked
--exec-prefix=/ \
--bindir=/bin \
--sbindir=/bin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share/misc \
diff --git a/package/jpeg/jpeg.mk b/package/jpeg/jpeg.mk
index 24cebfbd6..5ef3b4134 100644
--- a/package/jpeg/jpeg.mk
+++ b/package/jpeg/jpeg.mk
@@ -43,7 +43,18 @@ $(JPEG_DIR)/.configured: $(JPEG_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--enable-shared \
--enable-static \
--without-x \
@@ -55,7 +66,7 @@ $(JPEG_DIR)/.libs/libjpeg.a: $(JPEG_DIR)/.configured
touch -c $(JPEG_DIR)/.libs/libjpeg.a
$(STAGING_DIR)/lib/libjpeg.a: $(JPEG_DIR)/.libs/libjpeg.a
- $(MAKE) -C $(JPEG_DIR) install-headers install-lib
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(JPEG_DIR) install-headers install-lib
rm $(STAGING_DIR)/lib/libjpeg.la
touch -c $(STAGING_DIR)/lib/libjpeg.a
diff --git a/package/kexec/kexec.mk b/package/kexec/kexec.mk
index 9bc0c55a6..f9582a5df 100644
--- a/package/kexec/kexec.mk
+++ b/package/kexec/kexec.mk
@@ -42,7 +42,7 @@ endif
$(KEXEC_DIR)/.configured: $(KEXEC_DIR)/.unpacked
(cd $(KEXEC_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--host=$(GNU_TARGET_NAME) \
diff --git a/package/libcgi/libcgi.mk b/package/libcgi/libcgi.mk
index 141100889..b7ea5c186 100644
--- a/package/libcgi/libcgi.mk
+++ b/package/libcgi/libcgi.mk
@@ -26,8 +26,18 @@ $(LIBCGI_DIR)/.configured: $(LIBCGI_DIR)/.source
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
--sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
);
touch $(LIBCGI_DIR)/.configured;
@@ -35,7 +45,7 @@ $(LIBCGI_DIR)/$(LIBCGI_LIBRARY): $(LIBCGI_DIR)/.configured
$(MAKE) CC=$(TARGET_CC) -C $(LIBCGI_DIR)
$(STAGING_DIR)/lib/libcgi.so: $(LIBCGI_DIR)/$(LIBCGI_LIBRARY)
- $(MAKE) -C $(LIBCGI_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBCGI_DIR) install
touch -c $(STAGING_DIR)/lib/libcgi.so
$(TARGET_DIR)/$(LIBCGI_TARGET_LIBRARY): $(STAGING_DIR)/lib/libcgi.so
diff --git a/package/libcgicc/libcgicc.mk b/package/libcgicc/libcgicc.mk
index ed8461f33..2de095973 100644
--- a/package/libcgicc/libcgicc.mk
+++ b/package/libcgicc/libcgicc.mk
@@ -27,7 +27,18 @@ $(LIBCGICC_DIR)/.configured: $(LIBCGICC_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
);
touch $(LIBCGICC_DIR)/.configured
@@ -36,7 +47,7 @@ $(LIBCGICC_DIR)/.compiled: $(LIBCGICC_DIR)/.configured
touch $(LIBCGICC_DIR)/.compiled
$(STAGING_DIR)/lib/libcgicc.so: $(LIBCGICC_DIR)/.compiled
- $(MAKE) -C $(LIBCGICC_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBCGICC_DIR) install
touch -c $(STAGING_DIR)/lib/libcgicc.so
$(TARGET_DIR)/usr/lib/libcgicc.so: $(STAGING_DIR)/lib/libcgicc.so
diff --git a/package/libdaemon/libdaemon.mk b/package/libdaemon/libdaemon.mk
index ad1cda585..766cfa309 100644
--- a/package/libdaemon/libdaemon.mk
+++ b/package/libdaemon/libdaemon.mk
@@ -41,13 +41,14 @@ $(LIBDAEMON_DIR)/.configured: $(LIBDAEMON_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
- --libexecdir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
- --includedir=$(STAGING_DIR)/include \
$(DISABLE_NLS) \
$(DISABLE_LARGEFILE) \
--disable-lynx \
@@ -60,13 +61,7 @@ $(LIBDAEMON_DIR)/.compiled: $(LIBDAEMON_DIR)/.configured
touch $(LIBDAEMON_DIR)/.compiled
$(STAGING_DIR)/lib/libdaemon.a: $(LIBDAEMON_DIR)/.compiled
- $(MAKE) \
- -C $(LIBDAEMON_DIR) \
- prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- datadir=$(STAGING_DIR)/share \
- install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBDAEMON_DIR) install
touch -c $(STAGING_DIR)/lib/libdaemon.a
#$(TARGET_DIR)/usr/lib/libdaemon.a: $(STAGING_DIR)/lib/libdaemon.a
diff --git a/package/libglib12/libglib12.mk b/package/libglib12/libglib12.mk
index f70e34475..0e628a01a 100644
--- a/package/libglib12/libglib12.mk
+++ b/package/libglib12/libglib12.mk
@@ -31,18 +31,19 @@ $(LIBGLIB12_DIR)/.configured: $(LIBGLIB12_DIR)/.unpacked
$(TARGET_CONFIGURE_OPTS) \
ac_cv_c_bigendian=$(LIBGLIB12_BE) \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
@@ -58,7 +59,7 @@ $(STAGING_DIR)/lib/$(LIBGLIB12_BINARY): $(LIBGLIB12_DIR)/.libs/$(LIBGLIB12_BINAR
exec_prefix=$(STAGING_DIR) \
bindir=$(STAGING_DIR)/bin \
sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
+ libexecdir=$(STAGING_DIR)/bin \
datadir=$(STAGING_DIR)/share \
sysconfdir=$(STAGING_DIR)/etc \
sharedstatedir=$(STAGING_DIR)/com \
diff --git a/package/libglib2/libdir-la.patch b/package/libglib2/libdir-la.patch
new file mode 100644
index 000000000..4bbd67021
--- /dev/null
+++ b/package/libglib2/libdir-la.patch
@@ -0,0 +1,77 @@
+--- glib/ltmain.sh.orig 2006-07-13 01:12:13.000000000 -0600
++++ glib/ltmain.sh 2007-01-13 13:59:13.000000000 -0700
+@@ -283,8 +283,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2434,8 +2435,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -2918,6 +2925,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5641,6 +5658,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5962,10 +5983,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk
index d8b502cf5..abf03968e 100644
--- a/package/libglib2/libglib2.mk
+++ b/package/libglib2/libglib2.mk
@@ -90,18 +90,19 @@ $(LIBGLIB2_DIR)/.configured: $(LIBGLIB2_DIR)/.unpacked
gl_cv_c_restrict=no \
ac_cv_path_GLIB_GENMARSHAL=/usr/bin/glib-genmarshal \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
@@ -115,21 +116,11 @@ $(LIBGLIB2_DIR)/glib/.libs/$(LIBGLIB2_BINARY): $(LIBGLIB2_DIR)/.configured
touch -c $(LIBGLIB2_DIR)/glib/.libs/$(LIBGLIB2_BINARY)
$(STAGING_DIR)/lib/$(LIBGLIB2_BINARY): $(LIBGLIB2_DIR)/glib/.libs/$(LIBGLIB2_BINARY)
- $(MAKE) prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
- datadir=$(STAGING_DIR)/share \
- sysconfdir=$(STAGING_DIR)/etc \
- sharedstatedir=$(STAGING_DIR)/com \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- includedir=$(STAGING_DIR)/include \
- oldincludedir=$(STAGING_DIR)/include \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- -C $(LIBGLIB2_DIR) install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBGLIB2_DIR) install;
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libglib-2.0.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libgmodule-2.0.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libgobject-2.0.la
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libgthread-2.0.la
$(TARGET_DIR)/lib/libglib-2.0.so.0.1200.6: $(STAGING_DIR)/lib/$(LIBGLIB2_BINARY)
cp -a $(STAGING_DIR)/lib/libglib-2.0.so $(TARGET_DIR)/lib/
diff --git a/package/libgtk12/libgtk12.mk b/package/libgtk12/libgtk12.mk
index 07f5524cc..a96971a8d 100644
--- a/package/libgtk12/libgtk12.mk
+++ b/package/libgtk12/libgtk12.mk
@@ -27,18 +27,19 @@ $(LIBGTK12_DIR)/.configured: $(LIBGTK12_DIR)/.unpacked
GLIB_CONFIG=$(STAGING_DIR)/bin/glib-config \
ac_cv_func_mmap_fixed_mapped=yes \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
$(DISABLE_NLS) \
@@ -60,7 +61,7 @@ $(STAGING_DIR)/lib/$(LIBGTK12_BINARY): $(LIBGTK12_DIR)/gtk/.libs/$(LIBGTK12_BINA
exec_prefix=$(STAGING_DIR) \
bindir=$(STAGING_DIR)/bin \
sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
+ libexecdir=$(STAGING_DIR)/bin \
datadir=$(STAGING_DIR)/share \
sysconfdir=$(STAGING_DIR)/etc \
sharedstatedir=$(STAGING_DIR)/com \
diff --git a/package/libgtk2/libdir-la.patch b/package/libgtk2/libdir-la.patch
new file mode 100644
index 000000000..9df1c88ab
--- /dev/null
+++ b/package/libgtk2/libdir-la.patch
@@ -0,0 +1,77 @@
+--- gtk/ltmain.sh.orig 2004-11-23 09:19:19.000000000 -0700
++++ gtk/ltmain.sh 2007-01-13 14:36:53.000000000 -0700
+@@ -231,8 +231,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2279,8 +2280,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ else
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+@@ -2754,6 +2761,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5141,6 +5158,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5459,10 +5480,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/libgtk2/libgtk2.mk b/package/libgtk2/libgtk2.mk
index babd31e92..78845973c 100644
--- a/package/libgtk2/libgtk2.mk
+++ b/package/libgtk2/libgtk2.mk
@@ -25,7 +25,6 @@ $(LIBGTK2_DIR)/.unpacked: $(DL_DIR)/$(LIBGTK2_SOURCE)
$(LIBGTK2_DIR)/.configured: $(LIBGTK2_DIR)/.unpacked
(cd $(LIBGTK2_DIR); rm -rf config.cache; \
$(TARGET_CONFIGURE_OPTS) \
- PKG_CONFIG=$(STAGING_DIR)/usr/bin/pkg-config \
GLIB_CONFIG=$(STAGING_DIR)/bin/glib-config \
ac_cv_func_mmap_fixed_mapped=yes \
ac_cv_func_posix_getpwuid_r=yes \
@@ -87,18 +86,19 @@ $(LIBGTK2_DIR)/.configured: $(LIBGTK2_DIR)/.unpacked
ac_cv_path_GLIB_GENMARSHAL=/usr/bin/glib-genmarshal \
ac_cv_path_CUPS_CONFIG=no \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
@@ -124,7 +124,7 @@ $(STAGING_DIR)/lib/$(LIBGTK2_BINARY): $(LIBGTK2_DIR)/gtk/.libs/$(LIBGTK2_BINARY)
exec_prefix=$(STAGING_DIR) \
bindir=$(STAGING_DIR)/bin \
sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
+ libexecdir=$(STAGING_DIR)/bin \
datadir=$(STAGING_DIR)/share \
sysconfdir=$(STAGING_DIR)/etc \
sharedstatedir=$(STAGING_DIR)/com \
diff --git a/package/libpcap/libpcap.mk b/package/libpcap/libpcap.mk
index d73c98511..4e657f302 100644
--- a/package/libpcap/libpcap.mk
+++ b/package/libpcap/libpcap.mk
@@ -48,6 +48,18 @@ $(LIBPCAP_DIR)/.configured: $(LIBPCAP_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--with-build-cc="$(HOSTCC)" \
--disable-yydebug \
--prefix=/usr \
@@ -56,19 +68,12 @@ $(LIBPCAP_DIR)/.configured: $(LIBPCAP_DIR)/.unpacked
touch $(LIBPCAP_DIR)/.configured
$(LIBPCAP_DIR)/libpcap.a: $(LIBPCAP_DIR)/.configured
- $(MAKE) \
- CC="$(TARGET_CC)" \
+ $(MAKE) CC="$(TARGET_CC)" \
AR="$(TARGET_CROSS)ar" \
-C $(LIBPCAP_DIR)
$(STAGING_DIR)/lib/libpcap.a: $(LIBPCAP_DIR)/libpcap.a
- $(MAKE) \
- -C $(LIBPCAP_DIR) \
- prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- datadir=$(STAGING_DIR)/share \
- install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBPCAP_DIR) install
libpcap: uclibc zlib $(STAGING_DIR)/lib/libpcap.a
diff --git a/package/libpng/libdir-la.patch b/package/libpng/libdir-la.patch
new file mode 100644
index 000000000..d2bce4a33
--- /dev/null
+++ b/package/libpng/libdir-la.patch
@@ -0,0 +1,77 @@
+--- libpng-1.2.12/ltmain.sh.orig 2006-06-05 09:12:42.000000000 -0600
++++ libpng-1.2.12/ltmain.sh 2007-01-13 14:39:14.000000000 -0700
+@@ -322,8 +322,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2453,8 +2454,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -2935,6 +2942,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5659,6 +5676,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -6028,10 +6049,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk
index df1470aa6..88f19dfa7 100644
--- a/package/libpng/libpng.mk
+++ b/package/libpng/libpng.mk
@@ -38,22 +38,30 @@ $(LIBPNG_DIR)/.unpacked: $(DL_DIR)/$(LIBPNG_SOURCE)
$(LIBPNG_DIR)/.configured: $(LIBPNG_DIR)/.unpacked
(cd $(LIBPNG_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
- ./configure \
ac_cv_func_memcmp_working=yes \
ac_cv_have_decl_malloc=yes \
gl_cv_func_malloc_0_nonnull=yes \
ac_cv_func_malloc_0_nonnull=yes \
ac_cv_func_calloc_0_nonnull=yes \
ac_cv_func_realloc_0_nonnull=yes \
+ ./configure \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--without-libpng-compat \
--without-x \
);
@@ -64,28 +72,20 @@ $(LIBPNG_DIR)/.compiled: $(LIBPNG_DIR)/.configured
touch $(LIBPNG_DIR)/.compiled
$(STAGING_DIR)/lib/libpng.so: $(LIBPNG_DIR)/.compiled
- $(MAKE) prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
- datadir=$(STAGING_DIR)/share \
- sysconfdir=$(STAGING_DIR)/etc \
- sharedstatedir=$(STAGING_DIR)/com \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- includedir=$(STAGING_DIR)/include \
- oldincludedir=$(STAGING_DIR)/include \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- -C $(LIBPNG_DIR) install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBPNG_DIR) install;
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libpng12.la
+ $(SED) "s,^prefix=.*,prefix=\'$(STAGING_DIR)\',g" \
+ -e "s,^exec_prefix=.*,exec_prefix=\'$(STAGING_DIR)/usr\',g" \
+ -e "s,^includedir=.*,includedir=\'$(STAGING_DIR)/include/libpng12\',g" \
+ "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" \
+ $(STAGING_DIR)/usr/bin/libpng12-config
touch -c $(STAGING_DIR)/lib/libpng.so
$(TARGET_DIR)/usr/lib/libpng.so: $(STAGING_DIR)/lib/libpng.so
cp -dpf $(STAGING_DIR)/lib/libpng*.so* $(TARGET_DIR)/usr/lib/
-$(STRIP) --strip-unneeded $(TARGET_DIR)/usr/lib/libpng.so
-png libpng: uclibc zlib $(TARGET_DIR)/usr/lib/libpng.so
+png libpng: uclibc zlib pkgconfig $(TARGET_DIR)/usr/lib/libpng.so
libpng-clean:
-$(MAKE) -C $(LIBPNG_DIR) clean
diff --git a/package/libraw1394/libraw1394.mk b/package/libraw1394/libraw1394.mk
index 5eaf80d65..bc9620490 100644
--- a/package/libraw1394/libraw1394.mk
+++ b/package/libraw1394/libraw1394.mk
@@ -18,13 +18,24 @@ $(LIBRAW1394_DIR)/.source: $(DL_DIR)/$(LIBRAW1394_SOURCE)
$(LIBRAW1394_DIR)/.configured: $(LIBRAW1394_DIR)/.source
(cd $(LIBRAW1394_DIR); \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
);
touch $(LIBRAW1394_DIR)/.configured;
@@ -33,7 +44,7 @@ $(LIBRAW1394_DIR)/.compiled: $(LIBRAW1394_DIR)/.configured
touch $(LIBRAW1394_DIR)/.compiled
$(STAGING_DIR)/lib/libraw1394.so: $(LIBRAW1394_DIR)/.compiled
- make -C $(LIBRAW1394_DIR)/src install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBRAW1394_DIR)/src install
$(TARGET_DIR)/usr/lib/libraw1394.so: $(STAGING_DIR)/lib/libraw1394.so
cp -dpf $(STAGING_DIR)/lib/libraw1394.so* $(TARGET_DIR)/usr/lib/
diff --git a/package/libtool/libtool.mk b/package/libtool/libtool.mk
index 1d0d7d635..b977cd116 100644
--- a/package/libtool/libtool.mk
+++ b/package/libtool/libtool.mk
@@ -32,6 +32,7 @@ $(LIBTOOL_DIR)/.configured: $(LIBTOOL_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/libusb/libusb.mk b/package/libusb/libusb.mk
index 043a0b970..cafabcb05 100644
--- a/package/libusb/libusb.mk
+++ b/package/libusb/libusb.mk
@@ -29,7 +29,7 @@ $(LIBUSB_DIR)/.unpacked: $(DL_DIR)/$(LIBUSB_SOURCE)
$(LIBUSB_DIR)/.configured: $(LIBUSB_DIR)/.unpacked
(cd $(LIBUSB_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
ac_cv_header_regex_h=no \
ac_cv_c_bigendian=$(LIBUSB_BE) \
diff --git a/package/lighttpd/lighttpd.mk b/package/lighttpd/lighttpd.mk
index 18d840483..a3840e431 100644
--- a/package/lighttpd/lighttpd.mk
+++ b/package/lighttpd/lighttpd.mk
@@ -35,6 +35,7 @@ $(LIGHTTPD_DIR)/.configured: $(LIGHTTPD_DIR)/.unpacked
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--localstatedir=/var \
diff --git a/package/links/links.mk b/package/links/links.mk
index df06111dc..6f4e6aa26 100644
--- a/package/links/links.mk
+++ b/package/links/links.mk
@@ -28,6 +28,7 @@ $(LINKS_DIR)/.configured: $(LINKS_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/lrzsz/lrzsz.mk b/package/lrzsz/lrzsz.mk
index 5cfe6f898..8ca73920b 100644
--- a/package/lrzsz/lrzsz.mk
+++ b/package/lrzsz/lrzsz.mk
@@ -45,6 +45,7 @@ $(LRZSZ_DIR)/.configured: $(LRZSZ_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/ltt/ltt.mk b/package/ltt/ltt.mk
index 9198997ac..4fddae3b7 100644
--- a/package/ltt/ltt.mk
+++ b/package/ltt/ltt.mk
@@ -77,6 +77,7 @@ $(LTT_DIR2)/.configured: $(LTT_DIR2)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/make/make.mk b/package/make/make.mk
index 22f9b7e8f..c568575ab 100644
--- a/package/make/make.mk
+++ b/package/make/make.mk
@@ -35,6 +35,7 @@ $(GNUMAKE_DIR)/.configured: $(GNUMAKE_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/mpfr/mpfr.mk b/package/mpfr/mpfr.mk
index e3bd3c624..bab52974a 100644
--- a/package/mpfr/mpfr.mk
+++ b/package/mpfr/mpfr.mk
@@ -40,18 +40,19 @@ $(MPFR_DIR)/.configured: $(MPFR_DIR)/.unpacked $(STAGING_DIR)/lib/$(GMP_BINARY)
CFLAGS="$(TARGET_CFLAGS)" \
ac_cv_c_bigendian=$(MPFR_BE) \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
@@ -68,7 +69,7 @@ $(STAGING_DIR)/lib/$(MPFR_BINARY): $(MPFR_DIR)/.libs/$(MPFR_BINARY)
exec_prefix=$(STAGING_DIR) \
bindir=$(STAGING_DIR)/bin \
sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
+ libexecdir=$(STAGING_DIR)/bin \
datadir=$(STAGING_DIR)/share \
sysconfdir=$(STAGING_DIR)/etc \
sharedstatedir=$(STAGING_DIR)/com \
@@ -115,6 +116,7 @@ $(MPFR_DIR2)/.configured: $(MPFR_DIR)/.unpacked $(GMP_HOST_DIR)/lib/$(GMP_BINARY
--includedir=$(STAGING_DIR)/include \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/nano/nano.mk b/package/nano/nano.mk
index fa0e8a811..0c6ce2b06 100644
--- a/package/nano/nano.mk
+++ b/package/nano/nano.mk
@@ -22,7 +22,7 @@ $(NANO_DIR)/.unpacked: $(DL_DIR)/$(NANO_SOURCE)
$(NANO_DIR)/.configured: $(NANO_DIR)/.unpacked
(cd $(NANO_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
ac_cv_header_regex_h=no \
./configure \
diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk
index ac9f8ad48..11cc87c7b 100644
--- a/package/ncurses/ncurses.mk
+++ b/package/ncurses/ncurses.mk
@@ -48,20 +48,22 @@ $(NCURSES_DIR)/.configured: $(NCURSES_DIR)/.dist
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
+ --host=$(REAL_GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--with-terminfo-dirs=/usr/share/terminfo \
--with-default-terminfo-dir=/usr/share/terminfo \
- --libdir=$(STAGING_DIR)/lib \
--with-shared --without-cxx --without-cxx-binding \
--without-ada --without-progs $(DISABLE_NLS) \
--without-profile --without-debug --disable-rpath \
diff --git a/package/newt/newt.mk b/package/newt/newt.mk
index 58b6592d5..f48956959 100644
--- a/package/newt/newt.mk
+++ b/package/newt/newt.mk
@@ -33,6 +33,7 @@ $(NEWT_DIR)/.configured: $(NEWT_DIR)/.source
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/ntp/ntp.mk b/package/ntp/ntp.mk
index 3fa122d0f..afdbdb74f 100644
--- a/package/ntp/ntp.mk
+++ b/package/ntp/ntp.mk
@@ -36,6 +36,7 @@ $(NTP_DIR)/.configured: $(NTP_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk
index 059552146..8b47cb920 100644
--- a/package/openssh/openssh.mk
+++ b/package/openssh/openssh.mk
@@ -29,6 +29,7 @@ $(OPENSSH_DIR)/.configured: $(OPENSSH_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/sbin \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/openvpn/openvpn.mk b/package/openvpn/openvpn.mk
index 2a7ba5ce4..d0cedf100 100644
--- a/package/openvpn/openvpn.mk
+++ b/package/openvpn/openvpn.mk
@@ -44,6 +44,7 @@ $(OPENVPN_DIR)/.configured: $(OPENVPN_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/pango/libdir-la.patch b/package/pango/libdir-la.patch
new file mode 100644
index 000000000..35d977685
--- /dev/null
+++ b/package/pango/libdir-la.patch
@@ -0,0 +1,77 @@
+--- pango/ltmain.sh.orig 2004-11-23 09:19:19.000000000 -0700
++++ pango/ltmain.sh 2007-01-13 14:36:53.000000000 -0700
+@@ -231,8 +231,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2279,8 +2280,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ else
+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+@@ -2754,6 +2761,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5141,6 +5158,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5459,10 +5480,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/pango/no-tests.patch b/package/pango/no-tests.patch
index b38212612..52d2ffa01 100644
--- a/package/pango/no-tests.patch
+++ b/package/pango/no-tests.patch
@@ -9,7 +9,7 @@
## Process this file with automake to create Makefile.in.
-SUBDIRS= pango modules examples docs tools tests
-+SUBDIRS= pango modules examples docs tools
++SUBDIRS= pango modules tools
EXTRA_DIST = \
pango.pc.in \
diff --git a/package/pango/pango.mk b/package/pango/pango.mk
index 683622c7d..bae8d02bd 100644
--- a/package/pango/pango.mk
+++ b/package/pango/pango.mk
@@ -4,10 +4,9 @@
#
#############################################################
PANGO_VERSION:=1.13.5
-#PANGO_VERSION:=1.14.8
+#PANGO_VERSION:=1.15.3
PANGO_SOURCE:=pango-$(PANGO_VERSION).tar.bz2
-#PANGO_SITE:=ftp://ftp.gtk.org/pub/pango/1.14
-PANGO_SITE:=ftp://ftp.gtk.org/pub/pango/1.13
+PANGO_SITE:=http://ftp.gnome.org/pub/GNOME/sources/pango/1.13
PANGO_CAT:=$(BZCAT)
PANGO_DIR:=$(BUILD_DIR)/pango-$(PANGO_VERSION)
PANGO_BINARY:=libpango-1.0.a
@@ -19,7 +18,6 @@ PANGO_BE:=no
endif
PANGO_BUILD_ENV=$(TARGET_CONFIGURE_OPTS) \
- PKG_CONFIG=$(STAGING_DIR)/usr/bin/pkg-config \
ac_cv_c_bigendian=$(PANGO_BE) \
ac_cv_func_posix_getpwuid_r=yes \
glib_cv_stack_grows=no \
@@ -78,7 +76,7 @@ PANGO_BUILD_ENV=$(TARGET_CONFIGURE_OPTS) \
ac_use_included_regex=no \
gl_cv_c_restrict=no \
ac_cv_path_GLIB_GENMARSHAL=/usr/bin/glib-genmarshal \
- ac_cv_path_FREETYPE_CONFIG=$(STAGING_DIR)/bin/freetype-config
+ ac_cv_path_FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config
$(DL_DIR)/$(PANGO_SOURCE):
$(WGET) -P $(DL_DIR) $(PANGO_SITE)/$(PANGO_SOURCE)
@@ -95,25 +93,26 @@ $(PANGO_DIR)/.configured: $(PANGO_DIR)/.unpacked
(cd $(PANGO_DIR); rm -rf config.cache; \
$(PANGO_BUILD_ENV) \
./configure \
- --host=$(REAL_GNU_TARGET_NAME) \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
- --exec_prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
+ --prefix=/usr \
+ --exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
+ --includedir=/include \
--mandir=/usr/man \
--infodir=/usr/info \
--enable-shared \
--enable-static \
--with-x \
- --x-includes=$(STAGING_DIR)/usr/X11R6/include \
- --x-libraries=$(STAGING_DIR)/usr/X11R6/lib \
+ --x-includes=$(STAGING_DIR)/include \
+ --x-libraries=$(STAGING_DIR)/lib \
--disable-glibtest \
--enable-explicit-deps=no \
--disable-debug \
@@ -125,21 +124,8 @@ $(PANGO_DIR)/pango/.libs/$(PANGO_BINARY): $(PANGO_DIR)/.configured
touch -c $(PANGO_DIR)/pango/.libs/$(PANGO_BINARY)
$(STAGING_DIR)/lib/$(PANGO_BINARY): $(PANGO_DIR)/pango/.libs/$(PANGO_BINARY)
- $(MAKE) prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/libexec \
- datadir=$(STAGING_DIR)/share \
- sysconfdir=$(STAGING_DIR)/etc \
- sharedstatedir=$(STAGING_DIR)/com \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- includedir=$(STAGING_DIR)/include \
- oldincludedir=$(STAGING_DIR)/include \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- -C $(PANGO_DIR) install;
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(PANGO_DIR) install;
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libpango.la
$(TARGET_DIR)/lib/libpango-1.0.so.0: $(STAGING_DIR)/lib/$(PANGO_BINARY)
cp -a $(STAGING_DIR)/lib/libpango-1.0.so $(TARGET_DIR)/lib/
diff --git a/package/patch/patch.mk b/package/patch/patch.mk
index 33456be5f..f0b47e4e8 100644
--- a/package/patch/patch.mk
+++ b/package/patch/patch.mk
@@ -31,6 +31,7 @@ $(GNUPATCH_DIR)/.configured: $(GNUPATCH_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/pppd/pppd.mk b/package/pppd/pppd.mk
index aeeae46ca..66f7d0868 100644
--- a/package/pppd/pppd.mk
+++ b/package/pppd/pppd.mk
@@ -39,6 +39,7 @@ $(PPPD_DIR)/.configured: $(PPPD_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/psmisc/psmisc.mk b/package/psmisc/psmisc.mk
index 354c66662..acc651669 100644
--- a/package/psmisc/psmisc.mk
+++ b/package/psmisc/psmisc.mk
@@ -19,7 +19,7 @@ $(PSMISC_DIR)/.unpacked: $(DL_DIR)/$(PSMISC_SOURCE)
$(PSMISC_DIR)/.configured: $(PSMISC_DIR)/.unpacked
(cd $(PSMISC_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
diff --git a/package/qte/qte.mk b/package/qte/qte.mk
index fbc75a189..8e434bae5 100644
--- a/package/qte/qte.mk
+++ b/package/qte/qte.mk
@@ -136,7 +136,7 @@ $(QTE_QTOPIA_DIR)/.unpacked: $(DL_DIR)/$(QTE_QTOPIA_SOURCE)
$(QTE_QTE_DIR)/.configured: $(QTE_QTE_DIR)/.unpacked $(QTE_TMAKE_DIR)/.unpacked $(QTE_QTE_DIR)/$(QTE_UIC_BINARY) $(QTE_QTE_DIR)/$(QTE_QVFB_BINARY) $(QTE_QTOPIA_DIR)/.unpacked
cp $(QTE_QTOPIA_DIR)/src/qt/qconfig-qpe.h $(QTE_QTE_DIR)/src/tools/
(cd $(@D); export QTDIR=`pwd`; export TMAKEPATH=$(QTE_TMAKE_DIR)/lib/qws/linux-x86-g++; export PATH=$(STAGING_DIR)/bin:$$QTDIR/bin:$$PATH; export LD_LIBRARY_PATH=$$QTDIR/lib:$$LD_LIBRARY_PATH; echo 'yes' | \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
$(QTE_QTE_CONFIGURE) -qconfig qpe -keypad-mode -qvfb -depths 4,8,16,32 -xplatform $(BR2_QTE_CROSS_PLATFORM) \
@@ -156,7 +156,7 @@ endif
$(QTE_QVFB_DIR)/.configured: $(QTE_QVFB_DIR)/.unpacked $(QTE_TMAKE_DIR)/.unpacked
(cd $(@D); export QTDIR=`pwd`; export TMAKEPATH=$(QTE_TMAKE_DIR)/lib/linux-g++; export $$QTDIR/bin:$$PATH; export LD_LIBRARY_PATH=$$QTDIR/lib:$$LD_LIBRARY_PATH; echo 'yes' | \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
$(QTE_QVFB_CONFIGURE) \
@@ -171,7 +171,7 @@ $(QTE_QVFB_DIR)/.configured: $(QTE_QVFB_DIR)/.unpacked $(QTE_TMAKE_DIR)/.unpacke
$(QTE_QTOPIA_DIR)/.configured: $(QTE_QTOPIA_DIR)/.unpacked $(QTE_TMAKE_DIR)/.unpacked $(QTE_QTE_DIR)/$(QTE_UIC_BINARY) $(QTE_QTE_DIR)/$(QTE_QVFB_BINARY) $(QTE_QT3_DIR)/.configured
(cd $(@D); export QTDIR=$(QTE_QTE_DIR); export QPEDIR=$(QTE_QTOPIA_DIR); export PATH=$(STAGING_DIR)/bin:$$QTDIR/bin:$$PATH; QT3DIR=$(QTE_QTE_DIR); echo 'yes' | \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
$(QTE_QTOPIA_CONFIGURE) --edition phone -no-qtopiadesktop -dqt $(QTE_QT3_DIR) -arch generic -displaysize 160-240 -languages en_US \
diff --git a/package/raidtools/raidtools.mk b/package/raidtools/raidtools.mk
index 28dbf8e10..235b74760 100644
--- a/package/raidtools/raidtools.mk
+++ b/package/raidtools/raidtools.mk
@@ -30,6 +30,7 @@ $(RAIDTOOLS2_DIR)/.configured: $(RAIDTOOLS2_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share/misc \
diff --git a/package/readline/readline.mk b/package/readline/readline.mk
index ff0a683ec..17f6c6386 100644
--- a/package/readline/readline.mk
+++ b/package/readline/readline.mk
@@ -22,13 +22,24 @@ $(READLINE_DIR)/.unpacked: $(DL_DIR)/$(READLINE_SOURCE)
$(READLINE_DIR)/.configured: $(READLINE_DIR)/.unpacked
(cd $(READLINE_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
);
touch $(READLINE_DIR)/.configured
@@ -43,30 +54,14 @@ $(STAGING_DIR)/$(READLINE_TARGET_BINARY): $(READLINE_DIR)/.configured
# Install to Staging area
$(STAGING_DIR)/include/readline/readline.h: $(READLINE_DIR)/$(READLINE_BINARY)
BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" CC=$(TARGET_CC) \
- $(MAKE1) \
- prefix=$(STAGING_DIR) \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/lib \
- datadir=$(STAGING_DIR)/usr/share \
- sysconfdir=$(STAGING_DIR)/etc \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/lib \
- infodir=$(STAGING_DIR)/info \
- mandir=$(STAGING_DIR)/man \
- includedir=$(STAGING_DIR)/include \
- -C $(READLINE_DIR) install;
+ $(MAKE1) DESTDIR=$(STAGING_DIR) -C $(READLINE_DIR) install;
touch -c $(STAGING_DIR)/include/readline/readline.h
# Install only run-time to Target directory
$(TARGET_DIR)/include/readline/readline.h: $(READLINE_DIR)/$(READLINE_BINARY)
BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" CC=$(TARGET_CC) \
- $(MAKE1) \
- prefix=$(TARGET_DIR) \
- libdir=$(TARGET_DIR)/lib \
- -C $(READLINE_DIR) install-shared
+ $(MAKE1) DESTDIR=$(TARGET_DIR) -C $(READLINE_DIR) install-shared
touch -c $(TARGET_DIR)/include/readline/readline.h
readline: $(STAGING_DIR)/include/readline/readline.h
diff --git a/package/rsync/rsync.mk b/package/rsync/rsync.mk
index 90dbfe634..aed105cda 100644
--- a/package/rsync/rsync.mk
+++ b/package/rsync/rsync.mk
@@ -23,7 +23,7 @@ $(RSYNC_DIR)/.unpacked: $(DL_DIR)/$(RSYNC_SOURCE)
$(RSYNC_DIR)/.configured: $(RSYNC_DIR)/.unpacked
(cd $(RSYNC_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
diff --git a/package/ruby/ruby.mk b/package/ruby/ruby.mk
index 46366a106..9ec020190 100644
--- a/package/ruby/ruby.mk
+++ b/package/ruby/ruby.mk
@@ -33,6 +33,7 @@ $(RUBY_DIR)/.configured: $(RUBY_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/sdl/sdl.mk b/package/sdl/sdl.mk
index 66ca6bbc1..e25d60acb 100644
--- a/package/sdl/sdl.mk
+++ b/package/sdl/sdl.mk
@@ -23,14 +23,25 @@ $(SDL_DIR)/.configured: $(SDL_DIR)/.unpacked
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR)/usr \
- --disable-arts \
- --disable-esd \
- --disable-nasm \
- --disable-video-x11 );
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-arts \
+ --disable-esd \
+ --disable-nasm \
+ --disable-video-x11 );
touch $(SDL_DIR)/.configured
$(SDL_DIR)/.compiled: $(SDL_DIR)/.configured
@@ -38,7 +49,7 @@ $(SDL_DIR)/.compiled: $(SDL_DIR)/.configured
touch $(SDL_DIR)/.compiled
$(STAGING_DIR)/usr/lib/libSDL.so: $(SDL_DIR)/.compiled
- $(MAKE) -C $(SDL_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(SDL_DIR) install;
touch -c $(STAGING_DIR)/usr/lib/libSDL.so
$(TARGET_DIR)/usr/lib/libSDL.so: $(STAGING_DIR)/usr/lib/libSDL.so
diff --git a/package/sed/sed.mk b/package/sed/sed.mk
index 1c98ab13f..875689d8e 100644
--- a/package/sed/sed.mk
+++ b/package/sed/sed.mk
@@ -112,6 +112,7 @@ $(SED_DIR2)/.configured: $(SED_DIR2)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/smartmontools/smartmontools.mk b/package/smartmontools/smartmontools.mk
index f167a0f34..df749b7c0 100644
--- a/package/smartmontools/smartmontools.mk
+++ b/package/smartmontools/smartmontools.mk
@@ -35,6 +35,7 @@ $(SMARTMONTOOLS_DIR)/.configured: $(SMARTMONTOOLS_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/socat/socat.mk b/package/socat/socat.mk
index 77e68c84f..7c6239235 100644
--- a/package/socat/socat.mk
+++ b/package/socat/socat.mk
@@ -37,6 +37,7 @@ $(SOCAT_WORKDIR)/Makefile: $(SOCAT_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk
index 254abbd5e..8946577d4 100644
--- a/package/sqlite/sqlite.mk
+++ b/package/sqlite/sqlite.mk
@@ -30,7 +30,17 @@ $(SQLITE_DIR)/.configured: $(SQLITE_DIR)/.unpacked
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
--sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--enable-shared \
--enable-static \
--disable-tcl \
@@ -44,7 +54,7 @@ $(SQLITE_DIR)/sqlite3: $(SQLITE_DIR)/.configured
$(MAKE) -C $(SQLITE_DIR)
$(STAGING_DIR)/bin/sqlite3: $(SQLITE_DIR)/sqlite3
- $(MAKE) prefix=$(STAGING_DIR) -C $(SQLITE_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(SQLITE_DIR) install
$(TARGET_DIR)/usr/bin/sqlite3: $(STAGING_DIR)/bin/sqlite3
cp -a $(STAGING_DIR)/bin/sqlite3 $(TARGET_DIR)/usr/bin
diff --git a/package/strace/strace.mk b/package/strace/strace.mk
index f4e8dfb9f..00aa2482d 100644
--- a/package/strace/strace.mk
+++ b/package/strace/strace.mk
@@ -33,6 +33,7 @@ $(STRACE_DIR)/.configured: $(STRACE_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/stunnel/stunnel.mk b/package/stunnel/stunnel.mk
index 7665e6be4..bc1e81067 100644
--- a/package/stunnel/stunnel.mk
+++ b/package/stunnel/stunnel.mk
@@ -36,6 +36,7 @@ $(STUNNEL_DIR)/.configured: $(STUNNEL_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk
index 26216512d..2de748ac4 100644
--- a/package/sudo/sudo.mk
+++ b/package/sudo/sudo.mk
@@ -32,6 +32,7 @@ $(SUDO_DIR)/.configured: $(SUDO_DIR)/.unpacked $(SUDO_CONFIG_FILE)
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/tar/tar.mk b/package/tar/tar.mk
index 754d04c03..b8986a601 100644
--- a/package/tar/tar.mk
+++ b/package/tar/tar.mk
@@ -35,6 +35,7 @@ $(GNUTAR_DIR)/.configured: $(GNUTAR_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/tcpdump/dhcpdump.mk b/package/tcpdump/dhcpdump.mk
index 7585b0749..3c6283214 100644
--- a/package/tcpdump/dhcpdump.mk
+++ b/package/tcpdump/dhcpdump.mk
@@ -31,10 +31,19 @@ $(DHCPDUMP_DIR)/.configured: $(DHCPDUMP_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--with-build-cc="$(HOSTCC)" \
- --prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
)
touch $(DHCPDUMP_DIR)/.configured
diff --git a/package/tcpdump/tcpdump.mk b/package/tcpdump/tcpdump.mk
index 0cadc786f..456e9dc8b 100644
--- a/package/tcpdump/tcpdump.mk
+++ b/package/tcpdump/tcpdump.mk
@@ -32,23 +32,31 @@ $(TCPDUMP_DIR)/.configured: $(TCPDUMP_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--with-build-cc="$(HOSTCC)" \
- --prefix=$(STAGING_DIR) \
- --libdir=$(STAGING_DIR)/lib \
- --includedir=$(STAGING_DIR)/include \
--without-crypto \
)
$(SED) '/HAVE_PCAP_DEBUG/d' $(TCPDUMP_DIR)/config.h
touch $(TCPDUMP_DIR)/.configured
$(TCPDUMP_DIR)/tcpdump: $(TCPDUMP_DIR)/.configured
- $(MAKE) \
- CC="$(TARGET_CC)" \
+ $(MAKE) CC="$(TARGET_CC)" \
LDFLAGS="-L$(STAGING_DIR)/lib" \
LIBS="-lpcap" \
INCLS="-I. -I$(STAGING_DIR)/include" \
-C $(TCPDUMP_DIR)
-
+
$(TARGET_DIR)/sbin/tcpdump: $(TCPDUMP_DIR)/tcpdump
cp -af $< $@
diff --git a/package/tftpd/tftpd.mk b/package/tftpd/tftpd.mk
index 451ae9a9c..6bd901df7 100644
--- a/package/tftpd/tftpd.mk
+++ b/package/tftpd/tftpd.mk
@@ -33,6 +33,7 @@ $(TFTP_HPA_DIR)/.configured: $(TFTP_HPA_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/thttpd/thttpd.mk b/package/thttpd/thttpd.mk
index f4db49110..6bb7263ad 100644
--- a/package/thttpd/thttpd.mk
+++ b/package/thttpd/thttpd.mk
@@ -24,7 +24,7 @@ $(THTTPD_DIR)/.unpacked: $(DL_DIR)/$(THTTPD_SOURCE)
$(THTTPD_DIR)/.configured: $(THTTPD_DIR)/.unpacked
(cd $(THTTPD_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
diff --git a/package/tiff/tiff.mk b/package/tiff/tiff.mk
index d2e2883d2..c47415ddd 100644
--- a/package/tiff/tiff.mk
+++ b/package/tiff/tiff.mk
@@ -27,7 +27,18 @@ $(TIFF_DIR)/.configured: $(TIFF_DIR)/.unpacked
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
- --prefix=$(STAGING_DIR) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libdir=/lib \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --includedir=/include \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
--enable-shared \
--enable-static \
--disable-cxx \
@@ -44,7 +55,8 @@ $(TIFF_DIR)/libtiff/.libs/libtiff.a: $(TIFF_DIR)/.configured
touch -c $(TIFF_DIR)/libtiff/.libs/libtiff.a
$(STAGING_DIR)/lib/libtiff.so.$(TIFF_VER): $(TIFF_DIR)/libtiff/.libs/libtiff.a
- $(MAKE) -C $(TIFF_DIR) install
+ $(MAKE) DESTDIR=$(STAGING_DIR) -C $(TIFF_DIR) install
+ $(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/lib\',g" $(STAGING_DIR)/lib/libtiff.la
touch -c $(STAGING_DIR)/lib/libtiff.so.$(TIFF_VER)
$(TARGET_DIR)/lib/libtiff.so.$(TIFF_VER): $(STAGING_DIR)/lib/libtiff.so.$(TIFF_VER)
diff --git a/package/tn5250/tn5250.mk b/package/tn5250/tn5250.mk
index 8477bebbf..8f19c64fc 100644
--- a/package/tn5250/tn5250.mk
+++ b/package/tn5250/tn5250.mk
@@ -21,6 +21,7 @@ $(TN5250_DIR)/.configured: $(TN5250_DIR)/.dist
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/usbutils/usbutils.mk b/package/usbutils/usbutils.mk
index 25656fc08..392c232b0 100644
--- a/package/usbutils/usbutils.mk
+++ b/package/usbutils/usbutils.mk
@@ -23,7 +23,7 @@ $(USBUTILS_DIR)/.unpacked: $(DL_DIR)/$(USBUTILS_SOURCE)
$(USBUTILS_DIR)/.configured: $(USBUTILS_DIR)/.unpacked
(cd $(USBUTILS_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS) -I$(TARGET_DIR)/usr/include" \
LDFLAGS="-L$(TARGET_DIR)/usr/lib" \
ac_cv_func_malloc_0_nonnull=yes \
diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk
index 45774f148..a7fd1bcb6 100644
--- a/package/util-linux/util-linux.mk
+++ b/package/util-linux/util-linux.mk
@@ -8,8 +8,8 @@ UTIL-LINUX_SOURCE:=util-linux-$(UTIL-LINUX_VER).tar.bz2
UTIL-LINUX_SITE:=http://www.kernel.org/pub/linux/utils/util-linux
UTIL-LINUX_DIR:=$(BUILD_DIR)/util-linux-$(UTIL-LINUX_VER)
UTIL-LINUX_CAT:=$(BZCAT)
-UTIL-LINUX_BINARY:=$(UTIL-LINUX_DIR)/misc-utils/mcookie
-UTIL-LINUX_TARGET_BINARY:=$(TARGET_DIR)/usr/bin/mcookie
+UTIL-LINUX_BINARY:=$(UTIL-LINUX_DIR)/misc-utils/chkdupexe
+UTIL-LINUX_TARGET_BINARY:=$(TARGET_DIR)/usr/bin/chkdupexe
$(DL_DIR)/$(UTIL-LINUX_SOURCE):
$(WGET) -P $(DL_DIR) $(UTIL-LINUX_SITE)/$(UTIL-LINUX_SOURCE)
@@ -32,6 +32,7 @@ $(UTIL-LINUX_DIR)/.configured: $(UTIL-LINUX_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk
index a147dc664..f96517cb0 100644
--- a/package/valgrind/valgrind.mk
+++ b/package/valgrind/valgrind.mk
@@ -32,6 +32,7 @@ $(VALGRIND_DIR)/.configured: $(VALGRIND_DIR)/.patched
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/vtun/vtun.mk b/package/vtun/vtun.mk
index 4a51a9ea3..a002af4dc 100644
--- a/package/vtun/vtun.mk
+++ b/package/vtun/vtun.mk
@@ -35,6 +35,7 @@ $(VTUN_DIR)/.configured: $(VTUN_DIR)/.unpacked
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
+ --libdir=/lib \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
diff --git a/package/wget/wget.mk b/package/wget/wget.mk
index c2273549a..c266afcb4 100644
--- a/package/wget/wget.mk
+++ b/package/wget/wget.mk
@@ -22,7 +22,7 @@ $(WGET_DIR)/.unpacked: $(DL_DIR)/$(WGET_SOURCE)
$(WGET_DIR)/.configured: $(WGET_DIR)/.unpacked
(cd $(WGET_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
diff --git a/package/which/which.mk b/package/which/which.mk
index 0bec96543..c284f7978 100644
--- a/package/which/which.mk
+++ b/package/which/which.mk
@@ -22,7 +22,7 @@ $(WHICH_DIR)/.unpacked: $(DL_DIR)/$(WHICH_SOURCE)
$(WHICH_DIR)/.configured: $(WHICH_DIR)/.unpacked
(cd $(WHICH_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD="$(HOSTCC)" \
+ $(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
diff --git a/package/xorg/Config.in b/package/xorg/Config.in
index 5dec3e94c..7b35c1980 100644
--- a/package/xorg/Config.in
+++ b/package/xorg/Config.in
@@ -4,8 +4,8 @@ config BR2_PACKAGE_XORG
depends !BR2_PACKAGE_TINYX
select BR2_PACKAGE_ZLIB
select BR2_PACKAGE_LIBPNG
- select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_EXPAT
+ select BR2_PACKAGE_FONTCONFIG
select BR2_PACKAGE_PKGCONFIG
help
The official X Window system and server.
diff --git a/package/xorg/libXfont-1.1.0-noftinternals.patch b/package/xorg/libXfont-1.1.0-noftinternals.patch
new file mode 100644
index 000000000..846410dc7
--- /dev/null
+++ b/package/xorg/libXfont-1.1.0-noftinternals.patch
@@ -0,0 +1,294 @@
+diff -urbN libXfont-1.1.0/src/FreeType/ftfuncs.c libXfont-1.1.0.new/src/FreeType/ftfuncs.c
+--- xc/lib/font/FreeType/ftfuncs.c 2005-10-24 02:32:05.000000000 +0800
++++ xc/lib/font/FreeType/ftfuncs.c 2006-06-25 10:56:24.221147322 +0800
+@@ -54,10 +54,7 @@
+ #include FT_TYPE1_TABLES_H
+ #include FT_XFREE86_H
+ #include FT_BBOX_H
+-#include FT_INTERNAL_TRUETYPE_TYPES_H
+ #include FT_TRUETYPE_TAGS_H
+-#include FT_INTERNAL_SFNT_H
+-#include FT_INTERNAL_STREAM_H
+ /*
+ * If you want to use FT_Outline_Get_CBox instead of
+ * FT_Outline_Get_BBox, define here.
+@@ -123,6 +120,25 @@
+ };
+
+
++/* read 2-byte value from a SFNT table */
++static FT_UShort
++sfnt_get_ushort( FT_Face face,
++ FT_ULong table_tag,
++ FT_ULong table_offset )
++{
++ FT_Byte buff[2];
++ FT_ULong len = sizeof(buff);
++ FT_UShort result = 0;
++
++ if ( !FT_Load_Sfnt_Table( face, table_tag, table_offset, buff, &len ) );
++ result = (FT_UShort)( (buff[0] << 8) | buff[1] );
++
++ return result;
++}
++
++#define sfnt_get_short(f,t,o) ((FT_Short)sfnt_get_ushort((f),(t),(o)))
++
++
+ static int ftypeInitP = 0; /* is the engine initialised? */
+ FT_Library ftypeLibrary;
+
+@@ -211,6 +227,10 @@
+ if(maxp && maxp->maxContours == 0)
+ face->bitmap = 1;
+ }
++
++ face->num_hmetrics = (FT_UInt) sfnt_get_ushort( face->face,
++ TTAG_hhea, 34 );
++
+ /* Insert face in hashtable and return it */
+ face->next = faceTable[bucket];
+ faceTable[bucket] = face;
+@@ -462,6 +482,34 @@
+ }
+
+ if( FT_IS_SFNT( face->face ) ) {
++#if 1
++ FT_F26Dot6 tt_char_width, tt_char_height, tt_dim_x, tt_dim_y;
++ FT_UInt nn;
++
++ instance->strike_index=0xFFFFU;
++
++ tt_char_width = (FT_F26Dot6)(trans->scale*(1<<6) + 0.5);
++ tt_char_height = (FT_F26Dot6)(trans->scale*(1<<6) + 0.5);
++
++ tt_dim_x = FLOOR64( ( tt_char_width * trans->xres + 36 ) / 72 + 32 );
++ tt_dim_y = FLOOR64( ( tt_char_height * trans->yres + 36 ) / 72 + 32 );
++
++ if ( tt_dim_x && !tt_dim_y )
++ tt_dim_y = tt_dim_x;
++ else if ( !tt_dim_x && tt_dim_y )
++ tt_dim_x = tt_dim_y;
++
++ for ( nn = 0; nn < face->face->num_fixed_sizes; nn++ )
++ {
++ FT_Bitmap_Size* sz = &face->face->available_sizes[nn];
++
++ if ( tt_dim_x == FLOOR64(sz->x_ppem + 32) && tt_dim_y == FLOOR64(sz->y_ppem + 32) )
++ {
++ instance->strike_index = nn;
++ break;
++ }
++ }
++#else
+ /* See Set_Char_Sizes() in ttdriver.c */
+ FT_Error err;
+ TT_Face tt_face;
+@@ -486,6 +534,7 @@
+ sfnt = (SFNT_Service)tt_face->sfnt;
+ err = sfnt->set_sbit_strike(tt_face,tt_x_ppem,tt_y_ppem,&instance->strike_index);
+ if ( err ) instance->strike_index=0xFFFFU;
++#endif
+ }
+
+ /* maintain a linked list of instances */
+@@ -803,31 +852,61 @@
+ * parse the htmx field in TrueType font.
+ */
+
+-/* from src/truetype/ttgload.c */
+ static void
+-tt_get_metrics( TT_HoriHeader* header,
++tt_get_metrics( FT_Face face,
+ FT_UInt idx,
++ FT_UInt num_hmetrics,
+ FT_Short* bearing,
+ FT_UShort* advance )
+-/* Copyright 1996-2001, 2002 by */
+-/* David Turner, Robert Wilhelm, and Werner Lemberg. */
+ {
+- TT_LongMetrics longs_m;
+- FT_UShort k = header->number_Of_HMetrics;
++ /* read the metrics directly from the horizontal header, we
++ * parse the SFNT table directly through the standard FreeType API.
++ * this works with any version of the library and doesn't need to
++ * peek at its internals. Maybe a bit less
++ */
++ FT_UInt count = num_hmetrics;
++ FT_ULong length = 0;
++ FT_ULong offset = 0;
++ FT_Error error;
+
+- if ( k == 0 ) {
+- *bearing = *advance = 0;
+- return;
+- }
++ error = FT_Load_Sfnt_Table( face, TTAG_hmtx, 0, NULL, &length );
+
+- if ( idx < (FT_UInt)k ) {
+- longs_m = (TT_LongMetrics )header->long_metrics + idx;
+- *bearing = longs_m->bearing;
+- *advance = longs_m->advance;
++ if ( count == 0 || error )
++ {
++ *advance = 0;
++ *bearing = 0;
++ }
++ else if ( idx < count )
++ {
++ offset = idx * 4L;
++ if ( offset + 4 > length )
++ {
++ *advance = 0;
++ *bearing = 0;
++ }
++ else
++ {
++ *advance = sfnt_get_ushort( face, TTAG_hmtx, offset );
++ *bearing = sfnt_get_short ( face, TTAG_hmtx, offset+2 );
++ }
++ }
++ else
++ {
++ offset = 4L * (count - 1);
++ if ( offset + 4 > length )
++ {
++ *advance = 0;
++ *bearing = 0;
++ }
++ else
++ {
++ *advance = sfnt_get_ushort ( face, TTAG_hmtx, offset );
++ offset += 4 + 2 * ( idx - count );
++ if ( offset + 2 > length)
++ *bearing = 0;
++ else
++ *bearing = sfnt_get_short ( face, TTAG_hmtx, offset );
+ }
+- else {
+- *bearing = ((TT_ShortMetrics*)header->short_metrics)[idx - k];
+- *advance = ((TT_LongMetrics )header->long_metrics)[k - 1].advance;
+ }
+ }
+
+@@ -835,6 +914,7 @@
+ ft_get_very_lazy_bbox( FT_UInt index,
+ FT_Face face,
+ FT_Size size,
++ FT_UInt num_hmetrics,
+ double slant,
+ FT_Matrix *matrix,
+ FT_BBox *bbox,
+@@ -842,15 +922,14 @@
+ FT_Long *vertAdvance)
+ {
+ if ( FT_IS_SFNT( face ) ) {
+- TT_Face ttface = (TT_Face)face;
+ FT_Size_Metrics *smetrics = &size->metrics;
+ FT_Short leftBearing = 0;
+ FT_UShort advance = 0;
+ FT_Vector p0, p1, p2, p3;
+
+ /* horizontal */
+- tt_get_metrics(&ttface->horizontal, index,
+- &leftBearing, &advance);
++ tt_get_metrics( face, index, num_hmetrics,
++ &leftBearing, &advance );
+
+ #if 0
+ fprintf(stderr,"x_scale=%f y_scale=%f\n",
+@@ -910,7 +989,27 @@
+ FT_UShort glyph_index, FT_Glyph_Metrics *metrics_return,
+ int *sbitchk_incomplete_but_exist )
+ {
+-#if (FREETYPE_VERSION >= 2001008)
++#if 1
++ if ( strike_index != 0xFFFFU && ft_face->available_sizes != NULL )
++ {
++ FT_Error error;
++ FT_Bitmap_Size* sz = &ft_face->available_sizes[strike_index];
++
++ error = FT_Set_Pixel_Sizes( ft_face, sz->x_ppem/64, sz->y_ppem/64 );
++ if ( !error )
++ {
++ error = FT_Load_Glyph( ft_face, glyph_index, FT_LOAD_SBITS_ONLY );
++ if ( !error )
++ {
++ if ( metrics_return != NULL )
++ *metrics_return = ft_face->glyph->metrics;
++
++ return 0;
++ }
++ }
++ }
++ return -1;
++#elif (FREETYPE_VERSION >= 2001008)
+ SFNT_Service sfnt;
+ TT_Face face;
+ FT_Error error;
+@@ -1043,6 +1142,7 @@
+ if( bitmap_metrics == NULL ) {
+ if ( sbitchk_incomplete_but_exist==0 && (instance->ttcap.flags & TTCAP_IS_VERY_LAZY) ) {
+ if( ft_get_very_lazy_bbox( idx, face->face, instance->size,
++ face->num_hmetrics,
+ instance->ttcap.vl_slant,
+ &instance->transformation.matrix,
+ &bbox, &outline_hori_advance,
+@@ -1207,10 +1307,27 @@
+ }
+
+ if( face->face->glyph->format != FT_GLYPH_FORMAT_BITMAP ) {
++#ifdef USE_GET_CBOX
++ FT_Outline_Get_CBox(&face->face->glyph->outline, &bbox);
++ ftrc = 0;
++#else
++ ftrc = FT_Outline_Get_BBox(&face->face->glyph->outline, &bbox);
++#endif
++ if( ftrc != 0 ) return FTtoXReturnCode(ftrc);
++ bbox.yMin = FLOOR64( bbox.yMin );
++ bbox.yMax = CEIL64 ( bbox.yMax );
++ ht_actual = ( bbox.yMax - bbox.yMin ) >> 6;
++ /* FreeType think a glyph with 0 height control box is invalid.
++ * So just let X to create a empty bitmap instead. */
++ if ( ht_actual == 0 )
++ is_outline = -1;
++ else
++ {
+ ftrc = FT_Render_Glyph(face->face->glyph,FT_RENDER_MODE_MONO);
+ if( ftrc != 0 ) return FTtoXReturnCode(ftrc);
+ is_outline = 1;
+ }
++ }
+ else{
+ is_outline=0;
+ }
+@@ -1221,6 +1338,7 @@
+ if( is_outline == 1 ){
+ if( correct ){
+ if( ft_get_very_lazy_bbox( idx, face->face, instance->size,
++ face->num_hmetrics,
+ instance->ttcap.vl_slant,
+ &instance->transformation.matrix,
+ &bbox, &outline_hori_advance,
+diff -urbN libXfont-1.1.0/src/FreeType/ftfuncs.h libXfont-1.1.0.new/src/FreeType/ftfuncs.h
+--- xc/lib/font/FreeType/ftfuncs.h 2005-07-07 22:59:47.000000000 +0800
++++ xc/lib/font/FreeType/ftfuncs.h 2006-06-21 21:05:28.533849804 +0800
+@@ -47,6 +47,7 @@
+ char *filename;
+ FT_Face face;
+ int bitmap;
++ FT_UInt num_hmetrics;
+ struct _FTInstance *instances;
+ struct _FTInstance *active_instance;
+ struct _FTFace *next; /* link to next face in bucket */
+diff -urbN libXfont-1.1.0/src/FreeType/ftsystem.c libXfont-1.1.0.new/src/FreeType/ftsystem.c
+--- xc/lib/font/FreeType/ftsystem.c 2005-07-09 14:36:10.000000000 +0800
++++ xc/lib/font/FreeType/ftsystem.c 2006-06-21 21:05:28.534849622 +0800
+@@ -35,7 +35,6 @@
+ #endif
+ #include <ft2build.h>
+ #include FT_CONFIG_CONFIG_H
+-#include FT_INTERNAL_DEBUG_H
+ #include FT_SYSTEM_H
+ #include FT_ERRORS_H
+ #include FT_TYPES_H
diff --git a/package/xorg/libdir-la.patch b/package/xorg/libdir-la.patch
new file mode 100644
index 000000000..90b0444c6
--- /dev/null
+++ b/package/xorg/libdir-la.patch
@@ -0,0 +1,153 @@
+--- xc/lib/Xft/ltmain.sh.orig 2004-04-23 12:43:42.000000000 -0600
++++ xc/lib/Xft/ltmain.sh 2007-01-13 15:04:20.000000000 -0700
+@@ -548,7 +548,7 @@
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+ $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit 1
++ #exit 1
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -1652,7 +1652,7 @@
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+ $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit 1
++ #exit 1
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -5362,10 +5362,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit 1
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ #if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit 1
++ #fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+--- xc/extras/fontconfig/ltmain.sh.orig 2004-04-23 12:43:42.000000000 -0600
++++ xc/extras/fontconfig/ltmain.sh 2007-01-13 15:04:20.000000000 -0700
+@@ -548,7 +548,7 @@
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+ $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit 1
++ #exit 1
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -1652,7 +1652,7 @@
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+ $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit 1
++ #exit 1
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -5362,10 +5362,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit 1
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ #if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit 1
++ #fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+--- xc/extras/freetype2/builds/unix/ltmain.sh.orig 2007-01-13 15:05:47.000000000 -0700
++++ xc/extras/freetype2/builds/unix/ltmain.sh 2007-01-13 15:07:55.000000000 -0700
+@@ -226,8 +226,9 @@
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+- $echo "$modename: specify a tag with \`--tag'" 1>&2
+- exit $EXIT_FAILURE
++ $echo "$modename: defaulting to \`CC'"
++ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
++# exit $EXIT_FAILURE
+ # else
+ # $echo "$modename: using $tagname tagged configuration"
+ fi
+@@ -2147,8 +2148,14 @@
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ else
+ dir="$ladir/$objdir"
+@@ -2615,6 +2622,16 @@
+ esac
+ if grep "^installed=no" $deplib > /dev/null; then
+ path="$absdir/$objdir"
++# This interferes with crosscompilation. -CL
++# else
++# eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
++# if test -z "$libdir"; then
++# $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
++# exit 1
++# fi
++# if test "$absdir" != "$libdir"; then
++# $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
++# fi
+ else
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+@@ -5165,6 +5182,10 @@
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
++ # Replacing uninstalled with installed can easily break crosscompilation,
++ # since the installed path is generally the wrong architecture. -CL
++ newdependency_libs="$newdependency_libs $deplib"
++ continue
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+@@ -5483,10 +5504,13 @@
+ # At present, this check doesn't affect windows .dll's that
+ # are installed into $libdir/../bin (currently, that works fine)
+ # but it's something to keep an eye on.
+- if test "$inst_prefix_dir" = "$destdir"; then
+- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+- exit $EXIT_FAILURE
+- fi
++ #
++ # This breaks install into our staging area. -PB
++ #
++ # if test "$inst_prefix_dir" = "$destdir"; then
++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
++ # exit $EXIT_FAILURE
++ # fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
diff --git a/package/xorg/xorg-config.patch b/package/xorg/xorg-config.patch
index 9bfd56726..389801e1d 100644
--- a/package/xorg/xorg-config.patch
+++ b/package/xorg/xorg-config.patch
@@ -1,6 +1,6 @@
--- xc/config/cf/host.def~ Thu May 12 15:28:01 MDT 2005
+++ xc/config/cf/host.def Thu May 12 15:28:01 MDT 2005
-@@ -0,0 +1,44 @@
+@@ -0,0 +1,45 @@
+#define KDriveXServer YES
+#define TinyXServer YES
+#define XfbdevServer YES
@@ -10,7 +10,8 @@
+
+#define HasFreetype2 YES
+#define Freetype2Dir REPLACE_STAGING_DIR
-+#define HasFontconfig NO
++#define HasFontconfig YES
++#define FontconfigDir REPLACE_STAGING_DIR
+#define HasLibpng YES
+#define HasZlib YES
+#define HaveLib64 NO
diff --git a/package/xorg/xorg.mk b/package/xorg/xorg.mk
index 7477a4606..3f913458a 100644
--- a/package/xorg/xorg.mk
+++ b/package/xorg/xorg.mk
@@ -12,7 +12,7 @@ XORG_APPS:=xlsfonts/xlsfonts xmodmap/xmodmap xinit/startx \
mkfontscale/mkfontscale mkfontdir/mkfontdir \
#xterm/xterm
-XORG_LIBS:= Xft fontconfig Xrender Xaw Xmu Xt \
+XORG_LIBS:= Xft Xrender Xaw Xmu Xt \
SM ICE Xpm Xp Xext X11 Xmuu Xxf86misc
@@ -73,9 +73,12 @@ endif
$(DL_DIR)/$(XORG_SOURCE):
$(WGET) -P $(DL_DIR) $(XORG_SITE)/$(XORG_SOURCE)
-$(XORG_DIR)/.configured: $(DL_DIR)/$(XORG_SOURCE)
+$(XORG_DIR)/.unpacked: $(DL_DIR)/$(XORG_SOURCE)
$(XORG_CAT) $(DL_DIR)/$(XORG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
toolchain/patch-kernel.sh $(XORG_DIR) package/xorg/ \*.patch
+ touch $(XORG_DIR)/.unpacked
+
+$(XORG_DIR)/.configured: $(XORG_DIR)/.unpacked
$(SED) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' $(XORG_HOST_DEF)
$(SED) 's:REPLACE_GCCINC_DIR:$(shell $(TARGET_CROSS)gcc -print-file-name=include):g' $(XORG_CF)
$(SED) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' $(XORG_CF)
@@ -98,10 +101,10 @@ $(XORG_XSERVER): $(XORG_DIR)/.configured
$(STAGING_DIR)$(TARGET_LIBX)/libX11.so.6.2: $(XORG_XSERVER)
-mkdir -p $(STAGING_DIR)/usr/X11R6
+ ln -fs ../../include $(STAGING_DIR)/usr/X11R6/include
ln -fs ../../lib $(STAGING_DIR)$(TARGET_LIBX)
( cd $(XORG_DIR); $(MAKE) \
DESTDIR=$(STAGING_DIR) install XCURSORGEN=xcursorgen MKFONTSCALE=mkfontscale )
- $(SED) 's,/usr/X11R6,$(STAGING_DIR)/usr/X11R6,' $(STAGING_DIR)/usr/X11R6/lib/pkgconfig/*.pc
touch -c $(STAGING_DIR)$(TARGET_LIBX)/libX11.so.6.2
$(TARGET_XSERVER): $(XORG_XSERVER)
@@ -146,8 +149,7 @@ $(XORG_LIBX)/libX11.so.6.2: $(TARGET_XSERVER)
$(TARGET_DIR)/usr/bin/mcookie: package/xorg/mcookie.c
$(TARGET_CROSS)gcc -Wall -Os -s package/xorg/mcookie.c -o $(TARGET_DIR)/usr/bin/mcookie
-xorg: zlib png pkgconfig expat freetype \
- $(STAGING_DIR)$(TARGET_LIBX)/libX11.so.6.2 \
+xorg: zlib png pkgconfig expat fontconfig $(STAGING_DIR)$(TARGET_LIBX)/libX11.so.6.2 \
$(XORG_LIBX)/libX11.so.6.2 $(TARGET_DIR)/usr/bin/mcookie
xorg-source: $(DL_DIR)/$(XORG_SOURCE)