summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--toolchain/Config.in8
-rw-r--r--toolchain/Makefile2
-rw-r--r--toolchain/insight/Makefile54
-rw-r--r--toolchain/insight/patches/600-fix-compile-flag-mismatch.patch31
4 files changed, 94 insertions, 1 deletions
diff --git a/toolchain/Config.in b/toolchain/Config.in
index d62489b..6fc7b6f 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 61a74b8..456b731 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 0000000..34e6867
--- /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 0000000..13b72bb
--- /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 <stdio.h>
+@@ -3077,7 +3077,7 @@
+
+
+
+-subdirs="$subdirs doc testsuite"
++subdirs="$subdirs doc"
+
+
+ # Provide defaults for some variables set by the per-host and per-target