qmake.conf needs to be tweaked to make QT use the correct toolchain for
building, but the current approach relies on the fact that the selected
platform qmake.conf has QMAKE_{CC,CXX,LINK,LINK_SHLIB,AR,OBJCOPY,RANLIB,STRIP}
lines that are then adapted to the correct settings.
This is true for some configs (namely arm and avr32), but not for others -
Causing the build to fail (or build for the host).
Instead add a QTOPIA4_QMAKE_SET macro which removes any existing lines
and add the correct lines to the qmake.conf, so it works no matter if the
platform provides them or not.
Revert r25827 and instead copy over the host aclocal files of the stuff
needed for auto* (libtool + pkgconfig). These logically belong with the
target stuff, as they are used for the target auto* toolchain.
Long term we should probably consider using
aclocal --acdir=$(STAGING_DIR)/usr/share/aclocal, so the host .m4 files
cannot interfere with the target build.
Change the definition of TARGET_LDFLAGS to use --sysroot
$(STAGING_DIR) instead of -L$(STAGING_DIR)/lib
-L$(STAGING_DIR)/usr/lib. It fixes the following failure while trying
to build mtd-utils :
/usr/local/xtools/arm-unknown-linux-uclibcgnueabi/bin/arm-unknown-linux-uclibcgnueabi-gcc -L/home/thomas/local/buildroot-output/build_arm/staging_dir/lib -L/home/thomas/local/buildroot-output/build_arm/staging_dir/usr/lib -o /home/thomas/local/buildroot-output/build_arm/mtd_orig/flash_eraseall /home/thomas/local/buildroot-output/build_arm/mtd_orig/crc32.o /home/thomas/local/buildroot-output/build_arm/mtd_orig/flash_eraseall.o
/usr/local/xtools/arm-unknown-linux-uclibcgnueabi/lib/gcc/arm-unknown-linux-uclibcgnueabi/4.3.2/../../../../arm-unknown-linux-uclibcgnueabi/bin/ld: cannot find /lib/libc.so.0
collect2: ld returned 1 exit status
make[1]: *** [/home/thomas/local/buildroot-output/build_arm/mtd_orig/flash_eraseall] Error 1
At the same time, simplify the definition of TARGET_CFLAGS, because
the -I$(STAGING_DIR)/include -I$(STAGING_DIR)/usr/include
-I$(TOOLCHAIN_EXTERNAL_PATH)/$(TOOLCHAIN_EXTERNAL_PREFIX)/include are
no longer necessary since we sysroot the toolchain in $(SYSROOT_DIR).
This patch has no effect on non-external toolchain builds.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
LIVE555 was installed on the build system and was recognized by configure:
Checking for LIVE555 Streaming Media libraries ... yes (using distribution version)
Later this led to a linker error:
ld: cannot find -lliveMedia
Disable LIVE555, since it's not available in Buildroot.
Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>