Pull request for branch misc-build-fixes
The following changes since commit a67a62c296103f50bff9f9e6bcfb90def2b8d62e:
Sagaert Johan (1):
qt: fix javscriptcore/multimedia build with uClibc
are available in the git repository at:
git://git.busybox.net/~tpetazzoni/git/buildroot misc-build-fixes
Thomas Petazzoni (5):
Bump dhcp to 4.1.1-P1 and convert to autotools Update defconfigs after DHCP option rename Bump MySQL to 5.1.47 and fix build
Fix Qt build with MySQL
sdl: fix build of other sdl components
configs/arm_toolchain_defconfig | 2 +- configs/at91rm9200df_ext_bare_defconfig | 2 +- configs/at91sam9260dfc_ext_bare_defconfig | 2 +- configs/at91sam9260pf_defconfig | 2 +- configs/at91sam9261ek_ext_bare_defconfig | 2 +- configs/at91sam9263ek_ext_bare_defconfig | 2 +- configs/at91sam9g20dfc_ext_bare_defconfig | 2 +- configs/atstk100x_defconfig | 2 +- configs/kb9202_defconfig | 2 +- configs/v100sc2_defconfig | 2 +- package/dhcp/Config.in | 8 +- package/dhcp/dhcp.mk | 126 ++---- package/dhcp/dhcp_xecute.patch | 452 -------------------- .../mysql_client-5.1.47-ac_cache_check.patch | 151 +++++++ ...ql_client-5.1.47-configure-ps-cache-check.patch | 35 ++ ...ysql_client-5.1.47-use-new-readline-iface.patch | 17 + package/mysql_client/mysql_client.mk | 18 +- package/qt/Config.sql.in | 1 + package/qt/qt.mk | 14 +- package/sdl/sdl.mk | 14 +- 20 files changed, 290 insertions(+), 566 deletions(-) delete mode 100644 package/dhcp/dhcp_xecute.patch create mode 100644 package/mysql_client/mysql_client-5.1.47-ac_cache_check.patch create mode 100644 package/mysql_client/mysql_client-5.1.47-configure-ps-cache-check.patch create mode 100644 package/mysql_client/mysql_client-5.1.47-use-new-readline-iface.patch
Thanks,
Signature · 1 line
Thomas Petazzoni
PATCH 1/5 Bump dhcp to 4.1.1-P1 and convert to autotools
dhcp 3.0.5 was causing build issues due to its build system not based on the autotools. Instead of work-arounding dhcp 3.0.5 issues, this commit bumps to 4.1.1 which uses the autotools as the build system. The package is therefore converted to the autotools infrastructure.
The dhcp_xecute patch is no longer needed, this feature seems to have been merged into the upstream dhcp (according to the manpage).
--- package/dhcp/Config.in | 8 +- package/dhcp/dhcp.mk | 126 ++++-------- package/dhcp/dhcp_xecute.patch | 452 ---------------------------------------- 3 files changed, 41 insertions(+), 545 deletions(-) delete mode 100644 package/dhcp/dhcp_xecute.patch
package/dhcp/Config.in +4 -4
@@ -1,4 +1,4 @@ -config BR2_PACKAGE_ISC_DHCP +config BR2_PACKAGE_DHCP bool "DHCP support" help DHCP relay agent from the ISC DHCP distribution.
@@ -7,21 +7,21 @@ config BR2_PACKAGE_ISC_DHCP config BR2_PACKAGE_DHCP_SERVER bool "dhcp server" - depends on BR2_PACKAGE_ISC_DHCP + depends on BR2_PACKAGE_DHCP help DHCP server from the ISC DHCP distribution. config BR2_PACKAGE_DHCP_RELAY bool "dhcp relay" - depends on BR2_PACKAGE_ISC_DHCP + depends on BR2_PACKAGE_DHCP help DHCP relay agent from the ISC DHCP distribution. config BR2_PACKAGE_DHCP_CLIENT bool "dhcp client" - depends on BR2_PACKAGE_ISC_DHCP + depends on BR2_PACKAGE_DHCP help DHCP client from the ISC DHCP distribution.
package/dhcp/dhcp.mk +37 -89
145 lines not on this page · raw message
package/dhcp/dhcp_xecute.patch deleted +0 -452
452 lines not on this page · raw message
Signature · 1 line
1.7.0.4
PATCH 2/5 Update defconfigs after DHCP option rename
In reply to Thomas Petazzoni--- configs/arm_toolchain_defconfig | 2 +- configs/at91rm9200df_ext_bare_defconfig | 2 +- configs/at91sam9260dfc_ext_bare_defconfig | 2 +- configs/at91sam9260pf_defconfig | 2 +- configs/at91sam9261ek_ext_bare_defconfig | 2 +- configs/at91sam9263ek_ext_bare_defconfig | 2 +- configs/at91sam9g20dfc_ext_bare_defconfig | 2 +- configs/atstk100x_defconfig | 2 +- configs/kb9202_defconfig | 2 +- configs/v100sc2_defconfig | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-)
configs/arm_toolchain_defconfig +1 -1
@@ -408,7 +408,7 @@ BR2_CROSS_TOOLCHAIN_TARGET_UTILS=y # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/at91rm9200df_ext_bare_defconfig +1 -1
@@ -329,7 +329,7 @@ BR2_TARGET_OPTIMIZATION="-Os -pipe" # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/at91sam9260dfc_ext_bare_defconfig +1 -1
@@ -329,7 +329,7 @@ BR2_TOOLCHAIN_EXTERNAL_PREFIX="$(ARCH)-linux" # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/at91sam9260pf_defconfig +1 -1
@@ -330,7 +330,7 @@ BR2_NETWORK_SUPPORT=y # BR2_PACKAGE_BRIDGE is not set # BR2_PACKAGE_CURL is not set # BR2_PACKAGE_LIBCURL is not set -BR2_PACKAGE_ISC_DHCP=y +BR2_PACKAGE_DHCP=y # BR2_PACKAGE_DHCP_SERVER is not set # BR2_PACKAGE_DHCP_RELAY is not set BR2_PACKAGE_DHCP_CLIENT=y
configs/at91sam9261ek_ext_bare_defconfig +1 -1
@@ -332,7 +332,7 @@ BR2_TARGET_OPTIMIZATION="-Os -pipe" # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/at91sam9263ek_ext_bare_defconfig +1 -1
@@ -331,7 +331,7 @@ BR2_TARGET_OPTIMIZATION="-Os -pipe" # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/at91sam9g20dfc_ext_bare_defconfig +1 -1
@@ -329,7 +329,7 @@ BR2_TARGET_OPTIMIZATION="-Os -pipe" # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/atstk100x_defconfig +1 -1
@@ -376,7 +376,7 @@ BR2_PACKAGE_AVAHI_AUTOIPD=y # BR2_PACKAGE_BOA is not set # BR2_PACKAGE_BIND is not set # BR2_PACKAGE_BRIDGE is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set BR2_PACKAGE_DROPBEAR=y # BR2_PACKAGE_ETHTOOL is not set
configs/kb9202_defconfig +1 -1
@@ -360,7 +360,7 @@ BR2_NETWORK_SUPPORT=y # BR2_PACKAGE_BRIDGE is not set # BR2_PACKAGE_CURL is not set # BR2_PACKAGE_LIBCURL is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set # BR2_PACKAGE_DROPBEAR is not set # BR2_PACKAGE_ETHTOOL is not set
configs/v100sc2_defconfig +1 -1
@@ -335,7 +335,7 @@ BR2_NETWORK_SUPPORT=y # BR2_PACKAGE_BRIDGE is not set # BR2_PACKAGE_CURL is not set # BR2_PACKAGE_LIBCURL is not set -# BR2_PACKAGE_ISC_DHCP is not set +# BR2_PACKAGE_DHCP is not set # BR2_PACKAGE_DNSMASQ is not set BR2_PACKAGE_DROPBEAR=y # BR2_PACKAGE_ETHTOOL is not set
Signature · 1 line
1.7.0.4
PATCH 3/5 Bump MySQL to 5.1.47 and fix build
In reply to Thomas PetazzoniMySQL build has been broken for quite some time due to the ./configure inability to find out how to use 'ps' to find the PID of a running program. This commit bumps MySQL to the latest version and adds a few patches to fix various build issues, including the 'ps' issue.
--- .../mysql_client-5.1.47-ac_cache_check.patch | 151 ++++++++++++++++++++ ...ql_client-5.1.47-configure-ps-cache-check.patch | 35 +++++ ...ysql_client-5.1.47-use-new-readline-iface.patch | 17 +++ package/mysql_client/mysql_client.mk | 18 ++- 4 files changed, 216 insertions(+), 5 deletions(-) create mode 100644 package/mysql_client/mysql_client-5.1.47-ac_cache_check.patch create mode 100644 package/mysql_client/mysql_client-5.1.47-configure-ps-cache-check.patch create mode 100644 package/mysql_client/mysql_client-5.1.47-use-new-readline-iface.patch
package/mysql_client/mysql_client-5.1.47-ac_cache_check.patch new file +151 -0
@@ -0,0 +1,151 @@ +Patch borrowed from +http://code.google.com/p/minimyth/source/browse/trunk/gar-minimyth/script/db/mysql/files/mysql-5.1.47-ac_cache_check.patch?r=6493. + +It allows to override through ac_cv_* variables various checks that +cannot be performed when cross-compiling. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +diff -Naur mysql-5.1.47-old/storage/innodb_plugin/plug.in mysql-5.1.47-new/storage/innodb_plugin/plug.in +--- mysql-5.1.47-old/storage/innodb_plugin/plug.in 2010-05-20 09:55:10.000000000 -0700 ++++ mysql-5.1.47-new/storage/innodb_plugin/plug.in 2010-05-20 09:56:12.000000000 -0700 +@@ -53,9 +53,10 @@ + esac + AC_SUBST(INNODB_DYNAMIC_CFLAGS) + +- AC_MSG_CHECKING(whether GCC atomic builtins are available) ++ AC_CACHE_CHECK([whether GCC atomic builtins are available], ++ [ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS], + # either define HAVE_IB_GCC_ATOMIC_BUILTINS or not +- AC_TRY_RUN( ++ [AC_TRY_RUN( + [ + int main() + { +@@ -95,18 +96,23 @@ + } + ], + [ +- AC_DEFINE([HAVE_IB_GCC_ATOMIC_BUILTINS], [1], +- [GCC atomic builtins are available]) + AC_MSG_RESULT(yes) ++ ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS=yes + ], + [ + AC_MSG_RESULT(no) ++ ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS=no + ] +- ) ++ )]) ++ if test "x$ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS"= "xyes" ; then ++ AC_DEFINE([HAVE_IB_GCC_ATOMIC_BUILTINS], [1], ++ [GCC atomic builtins are available]) ++ fi + +- AC_MSG_CHECKING(whether pthread_t can be used by GCC atomic builtins) ++ AC_CACHE_CHECK([whether pthread_t can be used by GCC atomic builtins], ++ [ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC], + # either define HAVE_IB_ATOMIC_PTHREAD_T_GCC or not +- AC_TRY_RUN( ++ [AC_TRY_RUN( + [ + #include <pthread.h> + #include <string.h> +@@ -126,14 +132,18 @@ + } + ], + [ +- AC_DEFINE([HAVE_IB_ATOMIC_PTHREAD_T_GCC], [1], +- [pthread_t can be used by GCC atomic builtins]) + AC_MSG_RESULT(yes) ++ ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC=yes + ], + [ + AC_MSG_RESULT(no) ++ ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC=no + ] +- ) ++ )]) ++ if test "x$ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC"= "xyes" ; then ++ AC_DEFINE([HAVE_IB_ATOMIC_PTHREAD_T_GCC], [1], ++ [pthread_t can be used by GCC atomic builtins]) ++ fi + + AC_MSG_CHECKING(whether Solaris libc atomic functions are available) + # either define HAVE_IB_SOLARIS_ATOMICS or not +@@ -147,9 +157,10 @@ + are available]) + ) + +- AC_MSG_CHECKING(whether pthread_t can be used by Solaris libc atomic functions) ++ AC_CACHE_CHECK([whether pthread_t can be used by Solaris libc atomic functions], ++ [ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS], + # either define HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS or not +- AC_TRY_RUN( ++ [AC_TRY_RUN( + [ + #include <pthread.h> + #include <string.h> +@@ -180,28 +191,33 @@ + } + ], + [ +- AC_DEFINE([HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS], [1], +- [pthread_t can be used by solaris atomics]) + AC_MSG_RESULT(yes) ++ ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS=yes + ], + [ + AC_MSG_RESULT(no) ++ ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS=no + ] +- ) ++ )]) ++ if test "x$ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS"= "xyes" ; then ++ AC_DEFINE([HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS], [1], ++ [pthread_t can be used by solaris atomics]) ++ fi + + # this is needed to know which one of atomic_cas_32() or atomic_cas_64() + # to use in the source + AC_CHECK_SIZEOF([pthread_t], [], [#include <pthread.h>]) + + # Check for x86 PAUSE instruction +- AC_MSG_CHECKING(for x86 PAUSE instruction) ++ AC_CACHE_CHECK([for x86 PAUSE instruction], ++ [ac_cv_have_decl_HAVE_IB_PAUSE_INSTRUCTION], + # We have to actually try running the test program, because of a bug + # in Solaris on x86_64, where it wrongly reports that PAUSE is not + # supported when trying to run an application. See + # http://bugs.opensolaris.org/bugdatabase/printableBug.do?bug_id=6478684 + # We use ib_ prefix to avoid collisoins if this code is added to + # mysql's configure.in. +- AC_TRY_RUN( ++ [AC_TRY_RUN( + [ + int main() { + __asm__ __volatile__ ("pause"); +@@ -209,16 +225,21 @@ + } + ], + [ +- AC_DEFINE([HAVE_IB_PAUSE_INSTRUCTION], [1], [Does x86 PAUSE instruction exist]) + AC_MSG_RESULT(yes) ++ ac_cv_have_decl_HAVE_IB_PAUSE_INSTRUCTION=yes + ], + [ + AC_MSG_RESULT(no) ++ ac_cv_have_decl_HAVE_IB_PAUSE_INSTRUCTION=no + ], + [ + AC_MSG_RESULT(no) ++ ac_cv_have_decl_HAVE_IB_PAUSE_INSTRUCTION=no + ] +- ) ++ )]) ++ if test "x$ac_cv_have_decl_HAVE_IB_PAUSE_INSTRUCTION"= "xyes" ; then ++ AC_DEFINE([HAVE_IB_PAUSE_INSTRUCTION], [1], [Does x86 PAUSE instruction exist]) ++ fi + ]) + + # vim: set ft=config:
package/mysql_client/mysql_client-5.1.47-configure-ps-cache-check.patch new file +35 -0
@@ -0,0 +1,35 @@ +Patch borrowed from +http://cgit.openembedded.org/cgit.cgi/openembedded/tree/recipes/mysql/files/configure-ps-cache-check.patch + +It allows to specify through ac_cv_FIND_PROC how ps should be used on +the target to find the PID of a program. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: mysql-4.1.22/configure.in +=================================================================== +--- mysql-4.1.22.orig/configure.in 2009-01-28 16:33:28.000000000 +0000 ++++ mysql-4.1.22/configure.in 2009-01-28 16:43:26.000000000 +0000 +@@ -471,8 +471,8 @@ + + # Lock for PS + AC_PATH_PROG(PS, ps, ps) +-AC_MSG_CHECKING("how to check if pid exists") +-PS=$ac_cv_path_PS ++AC_CACHE_CHECK([how to check if pid exists], [ac_cv_FIND_PROC], ++[ + # Linux style + if $PS p $$ 2> /dev/null | grep $0 > /dev/null + then +@@ -511,8 +511,9 @@ + AC_MSG_ERROR([Could not find the right ps switches. Which OS is this ?. See the Installation chapter in the Reference Manual.]) + esac + fi +-AC_SUBST(FIND_PROC) +-AC_MSG_RESULT("$FIND_PROC") ++ac_cv_FIND_PROC="$FIND_PROC" ++]) ++AC_SUBST([FIND_PROC], [$ac_cv_FIND_PROC]) + + # Check if a pid is valid + AC_PATH_PROG(KILL, kill, kill)
package/mysql_client/mysql_client-5.1.47-use-new-readline-iface.patch new file +17 -0
@@ -0,0 +1,17 @@ +Tell MySQL to use the new readline interface even when an external +readline is being used. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: mysql_client-5.1.47/configure.in +=================================================================== +--- mysql_client-5.1.47.orig/configure.in 2010-07-15 23:49:35.000000000 +0200 ++++ mysql_client-5.1.47/configure.in 2010-07-15 23:50:03.000000000 +0200 +@@ -2700,6 +2700,7 @@ + # this way we avoid linking commercial source with GPL readline + readline_link="-lreadline" + want_to_use_readline="yes" ++ AC_DEFINE_UNQUOTED(USE_NEW_READLINE_INTERFACE, 1) + elif [test "$mysql_cv_libedit_interface" = "yes"] + then + # Use libedit
package/mysql_client/mysql_client.mk +13 -5
@@ -3,23 +3,31 @@ # MySQL 5.1 Client # ############################################################# -MYSQL_CLIENT_VERSION = 5.1.23-rc +MYSQL_CLIENT_VERSION = 5.1.47 MYSQL_CLIENT_SOURCE = mysql-$(MYSQL_CLIENT_VERSION).tar.gz -MYSQL_CLIENT_SITE = http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.1 +MYSQL_CLIENT_SITE = http://downloads.mysql.com/archives/mysql-5.1/ MYSQL_CLIENT_INSTALL_TARGET = YES MYSQL_CLIENT_INSTALL_STAGING = YES MYSQL_CLIENT_DEPENDENCIES = readline ncurses +MYSQL_CLIENT_AUTORECONF=YES + +MYSQL_CLIENT_CONF_ENV = \ + ac_cv_sys_restartable_syscalls=yes \ + ac_cv_path_PS=/bin/ps \ + ac_cv_FIND_PROC="/bin/ps p \$\$PID | grep -v grep | grep mysqld > /dev/null" \ + ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC=yes \ + ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS=no \ + ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS=yes \ + mysql_cv_new_rl_interface=yes -MYSQL_CLIENT_CONF_ENV = ac_cv_sys_restartable_syscalls=yes MYSQL_CLIENT_CONF_OPT = \ --program-prefix="" \ --without-ndb-binlog \ --without-server \ --without-docs \ --without-man \ - --without-readline \ --without-libedit \ - --with-readline=$(STAGING_DIR)/usr \ + --without-readline \ --with-low-memory \ --enable-thread-safe-client \ $(ENABLE_DEBUG)
Signature · 1 line
1.7.0.4
PATCH 4/5 Fix Qt build with MySQL
In reply to Thomas PetazzoniSeveral issues were preventing the Qt MySQL support to build properly:
* In Config.sql.in, missing selection of the MYSQL_CLIENT package when the Qt MySQL driver is enabled
* In qt.mk :
- Missing dependency on mysql_client
- As MySQL installs headers in $(STAGING_DIR)/usr/include/mysql and libs in $(STAGING_DIR)/usr/lib/mysql, additional -I and -L options need to be passed.
--- package/qt/Config.sql.in | 1 + package/qt/qt.mk | 14 +++++++++++--- 2 files changed, 12 insertions(+), 3 deletions(-)
package/qt/Config.sql.in +1 -0
@@ -6,6 +6,7 @@ menuconfig BR2_PACKAGE_QT_SQL_MODULE if BR2_PACKAGE_QT_SQL_MODULE config BR2_PACKAGE_QT_MYSQL bool "MySQL Driver" + select BR2_PACKAGE_MYSQL_CLIENT help Build MySQL driver If unsure, say n.
package/qt/qt.mk +11 -3
@@ -18,6 +18,10 @@ QT_SITE:=http://get.qt.nokia.com/qt/source QT_CAT:=$(ZCAT) QT_TARGET_DIR:=$(BUILD_DIR)/qt-everywhere-opensource-src-$(QT_VERSION) +QT_TARGET_CFLAGS=$(TARGET_CFLAGS) +QT_TARGET_CXXFLAGS=$(TARGET_CXXFLAGS) +QT_TARGET_LDFLAGS=$(TARGET_LDFLAGS) + QT_CONFIGURE:=#empty ifeq ($(BR2_PACKAGE_QT_LICENSE_APPROVED),y)
@@ -273,6 +277,10 @@ QT_CONFIGURE+= -qt-sql-ibase endif ifeq ($(BR2_PACKAGE_QT_MYSQL),y) QT_CONFIGURE+= -qt-sql-mysql +QT_DEP_LIBS+=mysql_client +QT_TARGET_CFLAGS+=-I$(STAGING_DIR)/usr/include/mysql +QT_TARGET_CXXFLAGS+=-I$(STAGING_DIR)/usr/include/mysql +QT_TARGET_LDFLAGS+=-L$(STAGING_DIR)/usr/lib/mysql endif ifeq ($(BR2_PACKAGE_QT_ODBC),y) QT_CONFIGURE+= -qt-sql-odbc
@@ -487,9 +495,9 @@ endif $(call QT_QMAKE_SET,OBJCOPY,$(TARGET_OBJCOPY)) $(call QT_QMAKE_SET,RANLIB,$(TARGET_RANLIB)) $(call QT_QMAKE_SET,STRIP,$(TARGET_STRIP)) - $(call QT_QMAKE_SET,CFLAGS,$(TARGET_CFLAGS)) - $(call QT_QMAKE_SET,CXXFLAGS,$(TARGET_CXXFLAGS)) - $(call QT_QMAKE_SET,LFLAGS,$(TARGET_LDFLAGS)) + $(call QT_QMAKE_SET,CFLAGS,$(QT_TARGET_CFLAGS)) + $(call QT_QMAKE_SET,CXXFLAGS,$(QT_TARGET_CXXFLAGS)) + $(call QT_QMAKE_SET,LFLAGS,$(QT_TARGET_LDFLAGS)) -[ -f $(QT_QCONFIG_FILE) ] && cp $(QT_QCONFIG_FILE) \ $(QT_TARGET_DIR)/$(QT_QCONFIG_FILE_LOCATION) # Don't use TARGET_CONFIGURE_OPTS here, qmake would be compiled for the target
Signature · 1 line
1.7.0.4
PATCH 5/5 sdl: fix build of other sdl components
In reply to Thomas PetazzoniThe post installation hook of SDL was not being executed, due to an incorrect usage of the infrastructure. Moreover, it did not patch prefix/exec_prefix in sdl-config as is needed. In addition to that, we remove the -Wl,-rpath option from sdl-config, since it is not needed.
This fixes at least the build of sdl_image, and probably of other sdl components as well.
--- package/sdl/sdl.mk | 14 +++++++++++--- 1 files changed, 11 insertions(+), 3 deletions(-)
package/sdl/sdl.mk +11 -3
@@ -46,11 +46,19 @@ SDL_CONF_OPT += --enable-pulseaudio=no \ --disable-esd \ --disable-nasm -define SDL_POST_INSTALL_STAGING_HOOKS - $(SED) 's^libdir=\$${exec_prefix}^libdir=/usr^' \ - $(STAGING_DIR)/usr/bin/sdl-config +# Fixup prefix= and exec_prefix= in sdl-config, and remove the +# -Wl,-rpath option. +define SDL_FIXUP_SDL_CONFIG + $(SED) 's%prefix=/usr%prefix=$(STAGING_DIR)/usr%' \ + $(STAGING_DIR)/usr/bin/sdl-config + $(SED) 's%exec_prefix=/usr%exec_prefix=$(STAGING_DIR)/usr%' \ + $(STAGING_DIR)/usr/bin/sdl-config + $(SED) 's%-Wl,-rpath,\$${libdir}%%' \ + $(STAGING_DIR)/usr/bin/sdl-config endef +SDL_POST_INSTALL_STAGING_HOOKS+=SDL_FIXUP_SDL_CONFIG + define SDL_INSTALL_TARGET_CMDS cp -dpf $(STAGING_DIR)/usr/lib/libSDL*.so* $(TARGET_DIR)/usr/lib/ endef
Signature · 1 line
1.7.0.4
PATCH 5/5 sdl: fix build of other sdl components
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> The post installation hook of SDL was not being executed, due to an Thomas> incorrect usage of the infrastructure. Moreover, it did not patch Thomas> prefix/exec_prefix in sdl-config as is needed. In addition to that, we Thomas> remove the -Wl,-rpath option from sdl-config, since it is not needed.
Hmm, I don't think that's right - It all build fine for me without this patch (is it for ext toolchain?), and now the libraries have a rpath to the staging dir:
powerpc-linux-readelf -a libSDL_gfx.so.13.5.1|grep RPATH
0x0000000f (RPATH) Library rpath: [/home/peko/source/buildroot/output/staging/usr/lib]
Signature · 1 line
Bye, Peter Korsgaard
PATCH 5/5 sdl: fix build of other sdl components
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
"Peter" == Peter Korsgaard <[email protected]> writes:
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Thomas> The post installation hook of SDL was not being executed, due to an Thomas> incorrect usage of the infrastructure. Moreover, it did not patch Thomas> prefix/exec_prefix in sdl-config as is needed. In addition to that, we Thomas> remove the -Wl,-rpath option from sdl-config, since it is not needed.
Peter> Hmm, I don't think that's right - It all build fine for me without this Peter> patch (is it for ext toolchain?), and now the libraries have a rpath to Peter> the staging dir:
Peter> powerpc-linux-readelf -a libSDL_gfx.so.13.5.1|grep RPATH
Peter> 0x0000000f (RPATH) Library rpath: [/home/peko/source/buildroot/output/staging/usr/lib]
Nevermind, we also had the rpath in the past, and it doesn't "really" harm anything. I just did a testbuild of prboom and ran it in qemu without problems.
Committed all patches except for the qt one.
Signature · 1 line
Bye, Peter Korsgaard