From: Florian Fainelli Date: Sun, 26 Jul 2009 17:55:50 +0000 (+0000) Subject: add the insight gdb frontend (#4701) X-Git-Tag: reboot~22842 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=3eedb2a7918de9e3dfea0ece649b6eb1f0cd6c05;p=openwrt%2Fopenwrt.git add the insight gdb frontend (#4701) SVN-Revision: 17019 --- diff --git a/toolchain/Config.in b/toolchain/Config.in index d62489b45b..6fc7b6fcec 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -75,6 +75,14 @@ config GDB help Enable if you want to build the gdb +config INSIGHT + bool + prompt "Build insight-gdb" if TOOLCHAINOPTS + select GDB + default n + help + Enable if you want to build insight-gdb + config LARGEFILE bool prompt "Enable large file (files > 2 GB) support?" if TOOLCHAINOPTS diff --git a/toolchain/Makefile b/toolchain/Makefile index 61a74b8d1d..456b731fb8 100644 --- a/toolchain/Makefile +++ b/toolchain/Makefile @@ -28,7 +28,7 @@ curdir:=toolchain # subdirectories to descend into -$(curdir)/builddirs := kernel-headers $(if $(CONFIG_GDB),gdb) $(if $(CONFIG_NATIVE_TOOLCHAIN),,binutils gcc $(LIBC) $(if $(CONFIG_GLIBC_PORTS),glibc-ports)) +$(curdir)/builddirs := kernel-headers $(if $(CONFIG_GDB),gdb) $(if $(CONFIG_INSIGHT),insight) $(if $(CONFIG_NATIVE_TOOLCHAIN),,binutils gcc $(LIBC) $(if $(CONFIG_GLIBC_PORTS),glibc-ports)) $(curdir)/builddirs-compile:=$($(curdir)/builddirs-prepare) $(curdir)/builddirs-install:=$($(curdir)/builddirs-compile) diff --git a/toolchain/insight/Makefile b/toolchain/insight/Makefile new file mode 100644 index 0000000000..34e6867b9f --- /dev/null +++ b/toolchain/insight/Makefile @@ -0,0 +1,54 @@ +# +# Copyright (C) 2006-2009 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +include $(TOPDIR)/rules.mk + +PKG_NAME:=insight +PKG_VERSION:=6.8 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_MD5SUM:=b403972b35520399663c7054e8132ca9 +PKG_SOURCE_URL:=ftp://sourceware.org/pub/insight/releases +PKG_CAT:=bzcat + +STAGING_DIR_HOST:=$(TOOLCHAIN_DIR) +BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN) + +include $(INCLUDE_DIR)/host-build.mk + +define Host/Configure + (cd $(HOST_BUILD_DIR); \ + gdb_cv_func_sigsetjmp=yes \ + CFLAGS="-O2" \ + $(HOST_BUILD_DIR)/configure \ + --prefix=$(TOOLCHAIN_DIR)/usr \ + --build=$(GNU_HOST_NAME) \ + --host=$(GNU_HOST_NAME) \ + --target=$(REAL_GNU_TARGET_NAME) \ + $(DISABLE_NLS) \ + --enable-threads \ + ); +endef + +define Host/Compile + $(MAKE) -C $(HOST_BUILD_DIR) +endef + +define Host/Install + mkdir -p $(TOOLCHAIN_DIR)/usr/bin + $(INSTALL_BIN) $(HOST_BUILD_DIR)/gdb/insight $(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)insight + ln -fs $(TARGET_CROSS)insight $(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)-insight + strip $(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)insight +endef + +define Host/Clean + rm -rf \ + $(HOST_BUILD_DIR) \ + $(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)insight \ + $(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)-insight +endef + +$(eval $(call HostBuild)) diff --git a/toolchain/insight/patches/600-fix-compile-flag-mismatch.patch b/toolchain/insight/patches/600-fix-compile-flag-mismatch.patch new file mode 100644 index 0000000000..13b72bb96d --- /dev/null +++ b/toolchain/insight/patches/600-fix-compile-flag-mismatch.patch @@ -0,0 +1,31 @@ +--- a/gdb/gdbserver/configure ++++ b/gdb/gdbserver/configure +@@ -1239,7 +1239,7 @@ + ac_cache_corrupted=: ;; + ,);; + *) +- if test "x$ac_old_val" != "x$ac_new_val"; then ++ if test "`echo x$ac_old_val`" != "`echo x$ac_new_val`"; then + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 + echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +--- a/gdb/configure ++++ b/gdb/configure +@@ -272,7 +272,7 @@ + PACKAGE_BUGREPORT= + + ac_unique_file="main.c" +-ac_subdirs_all="$ac_subdirs_all doc testsuite" ++ac_subdirs_all="$ac_subdirs_all doc" + # Factoring default headers for most tests. + ac_includes_default="\ + #include +@@ -3077,7 +3077,7 @@ + + + +-subdirs="$subdirs doc testsuite" ++subdirs="$subdirs doc" + + + # Provide defaults for some variables set by the per-host and per-target