summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2004-11-30 13:45:49 +0000
committerMarc Kleine-Budde <mkl@pengutronix.de>2004-11-30 13:45:49 +0000
commit4ea05dcee663b0e351812206933a551e2639296d (patch)
tree30c5e3f649c7ff093cb3fa69bbad6c37e7fb22bd
parent68f2b9ed1b6dbd03def28c0b4e8779f6f264c340 (diff)
downloadptxdist-4ea05dcee663b0e351812206933a551e2639296d.tar.gz
ptxdist-4ea05dcee663b0e351812206933a551e2639296d.tar.xz
* upgraded gdb 6.0 -> 6.3
* added a bit of select magic :) git-svn-id: https://svn.pengutronix.de/svn/ptxdist/trunks/ptxdist-0.7-trunk@2069 33e552b5-05e3-0310-8538-816dae2090ed
-rw-r--r--Makefile2
-rw-r--r--rules/bash.in1
-rw-r--r--rules/gdb-wrapper.make8
-rw-r--r--rules/gdb.in15
-rw-r--r--rules/gdb.make52
-rw-r--r--rules/glibc.in2
-rw-r--r--rules/termcap.in1
7 files changed, 31 insertions, 50 deletions
diff --git a/Makefile b/Makefile
index 5abf9eecd..051336fe7 100644
--- a/Makefile
+++ b/Makefile
@@ -255,7 +255,7 @@ oldconfig: ptx_kconfig scripts/kconfig/conf
echo "using config file \"$$CFG\""; \
cp $$CFG $(TOPDIR)/.config; \
else \
- echo "could not find config file \"$$CFG\""; \
+ echo "could not find config file \"$@\""; \
fi; \
echo
diff --git a/rules/bash.in b/rules/bash.in
index 81c2d6e36..ca412e3df 100644
--- a/rules/bash.in
+++ b/rules/bash.in
@@ -3,6 +3,7 @@ menu "Bash "
config BASH
bool
prompt "Bash"
+ select GLIBC_DL
config BASH_SHLIKE
bool
diff --git a/rules/gdb-wrapper.make b/rules/gdb-wrapper.make
index c731a5f31..51b884f02 100644
--- a/rules/gdb-wrapper.make
+++ b/rules/gdb-wrapper.make
@@ -68,13 +68,13 @@ gdb-wrapper_install: $(STATEDIR)/gdb-wrapper.install
$(STATEDIR)/gdb-wrapper.install:
@$(call targetinfo, $@)
- # let gdb find the target libraries for remote cross debugging
+# let gdb find the target libraries for remote cross debugging
install -d $(PTXCONF_PREFIX)/etc
rm -f $(PTXCONF_PREFIX)/etc/gdbrc
echo "set solib-search-path $(ROOTDIR)/lib:$(ROOTDIR)/usr/lib" >> $(PTXCONF_PREFIX)/etc/gdbrc
echo "set solib-absolute-prefix $(ROOTDIR)" >> $(PTXCONF_PREFIX)/etc/gdbrc
- # make gdb wrapper
+# make gdb wrapper
install -d $(PTXCONF_PREFIX)/bin
rm -f $(PTXCONF_PREFIX)/bin/$(PTXCONF_GNU_TARGET)-crossgdb
echo "#!/bin/sh" >> \
@@ -82,8 +82,8 @@ $(STATEDIR)/gdb-wrapper.install:
echo "$(PTXCONF_GNU_TARGET)-gdb -x $(PTXCONF_PREFIX)/etc/gdbrc \$$@" >> \
$(PTXCONF_PREFIX)/bin/$(PTXCONF_GNU_TARGET)-crossgdb
chmod 755 $(PTXCONF_PREFIX)/bin/$(PTXCONF_GNU_TARGET)-crossgdb
-
- # make ddd wrapper
+
+# make ddd wrapper
rm -f $(PTXCONF_PREFIX)/bin/$(PTXCONF_GNU_TARGET)-crossddd
echo "#!/bin/sh" >> \
$(PTXCONF_PREFIX)/bin/$(PTXCONF_GNU_TARGET)-crossddd
diff --git a/rules/gdb.in b/rules/gdb.in
index f7bcb8282..2ad9b579f 100644
--- a/rules/gdb.in
+++ b/rules/gdb.in
@@ -3,30 +3,21 @@ config XGDB
config GDBSERVER
bool "Build gdbserver for target"
- depends on !ARCH_SPARC
-
-comment "building gdbserver static, install libthreads_db on target (see C Library) to enable shared"
- depends on GDBSERVER
- depends on !GDBSERVER_SHARED && !(GLIBC_THREAD_DB || UCLIBC_PTHREAD)
config GDBSERVER_SHARED
bool "Build shared"
default y
depends on GDBSERVER
- depends on GLIBC_THREAD_DB || UCLIBC_PTHREAD
+ select GLIBC_THREAD_DB
config GDB
bool "Build GDB for target"
-comment "building GDB static, install libm on target (see C Library) to enables shared"
- depends on GDB
- depends on !GDB_SHARED && ! (GLIBC_LIBM || UCLIBC_M)
-
config GDB_SHARED
bool "Build shared"
default y
depends on GDB
- depends on GLIBC_LIBM || UCLIBC_M
+ select GLIBC_LIBM
choice
prompt "Select term library"
@@ -35,9 +26,11 @@ choice
config GDB_TERMCAP
bool "termcap"
+ select TERMCAP
config GDB_NCURSES
bool "ncurses"
+ select NCURSES
endchoice
config GDB_WRAPPERS
diff --git a/rules/gdb.make b/rules/gdb.make
index 3a452a771..3789f6d99 100644
--- a/rules/gdb.make
+++ b/rules/gdb.make
@@ -18,24 +18,13 @@ PACKAGES += gdb
endif
#
-# We depend on this package
-#
-ifdef PTXCONF_GDB_TERMCAP
-PACKAGES += termcap
-endif
-
-ifdef PTXCONF_GDB_NCURSES
-PACKAGES += ncurses
-endif
-
-#
# Paths and names
#
-GDB_VERSION = 6.0
+GDB_VERSION = 6.3
GDB = gdb-$(GDB_VERSION)
-GDB_SUFFIX = tar.gz
+GDB_SUFFIX = tar.bz2
GDB_URL = ftp://ftp.gnu.org/pub/gnu/gdb/$(GDB).$(GDB_SUFFIX)
-GDB_SOURCE = $(SRCDIR)/$(GDB).tar.gz
+GDB_SOURCE = $(SRCDIR)/$(GDB).$(GDB_SUFFIX)
GDB_DIR = $(BUILDDIR)/$(GDB)
GDB_BUILDDIR = $(BUILDDIR)/$(GDB)-build
@@ -112,45 +101,46 @@ $(STATEDIR)/gdb.prepare: $(gdb_prepare_deps)
$(GDB_PATH) $(GDB_ENV) \
$(GDB_DIR)/configure $(GDB_AUTOCONF)
- # RSC: nobody seems to have tried to _crosscompile_ gdb yet -
- # everybody seems to build cross-gdbs only. So we have to
- # prepare libiberty first with the cross options to avoid that
- # it runs the configure stages automatically and with the wrong
- # options (host) during the compile stage
+# RSC: nobody seems to have tried to _crosscompile_ gdb yet -
+# everybody seems to build cross-gdbs only. So we have to
+# prepare libiberty first with the cross options to avoid that
+# it runs the configure stages automatically and with the wrong
+# options (host) during the compile stage
mkdir -p $(GDB_BUILDDIR)/libiberty
+ mkdir -p $(GDB_BUILDDIR)/build-$(GNU_HOST)
ln -s $(GDB_BUILDDIR)/libiberty $(GDB_BUILDDIR)/build-$(GNU_HOST)/libiberty
cd $(GDB_BUILDDIR)/libiberty && \
$(GDB_PATH) $(GDB_ENV) \
$(GDB_DIR)/libiberty/configure $(GDB_AUTOCONF)
- # same with sim/
+# same with sim/
mkdir -p $(GDB_BUILDDIR)/sim
cd $(GDB_BUILDDIR)/sim && \
$(GDB_PATH) $(GDB_ENV) \
$(GDB_DIR)/sim/configure $(GDB_AUTOCONF)
-
- # same with gdb/
+
+# same with gdb/
mkdir -p $(GDB_BUILDDIR)/gdb
cd $(GDB_BUILDDIR)/gdb && \
$(GDB_PATH) $(GDB_ENV) \
$(GDB_DIR)/gdb/configure $(GDB_AUTOCONF)
- #
- # RSC: we seem to need a tweek here: normally
- # $(INTERNAL_LDFLAGS) is used for linking gdb; it contains
- # $(LDFLAGS) with the correct -L path. But somehow $(LDFLAGS)
- # got lost when it is used, the variable is just empty.
- # No idea why this happens...
- #
-
+#
+# RSC: we seem to need a tweek here: normally
+# $(INTERNAL_LDFLAGS) is used for linking gdb; it contains
+# $(LDFLAGS) with the correct -L path. But somehow $(LDFLAGS)
+# got lost when it is used, the variable is just empty.
+# No idea why this happens...
+#
+
if [ -z `grep "# PTXdist: tweaked!" $(GDB_BUILDDIR)/gdb/Makefile` ]; then \
perl -i -p -e 's/^LDFLAGS(.*)$$/LDFLAGS$$1\nMY_LDFLAGS$$1/g' $(GDB_BUILDDIR)/gdb/Makefile; \
perl -i -p -e 's/^INTERNAL_LDFLAGS(.*)\(LDFLAGS\)(.*)$$/INTERNAL_LDFLAGS$$1\(MY_LDFLAGS\)$$2/g' \
$(GDB_BUILDDIR)/gdb/Makefile; \
echo "# PTXdist: tweaked!" >> $(GDB_BUILDDIR)/gdb/Makefile; \
fi;
-
+
touch $@
# ----------------------------------------------------------------------------
diff --git a/rules/glibc.in b/rules/glibc.in
index 3874ecad8..49d7f72e0 100644
--- a/rules/glibc.in
+++ b/rules/glibc.in
@@ -62,7 +62,6 @@ config GLIBC_LIBRT
config GLIBC_DL
bool
prompt "Install libdl on the target"
- default y if BASH || BUILD_GDBSERVER
depends on GLIBC && LIBC
config GLIBC_CRYPT
@@ -78,7 +77,6 @@ config GLIBC_UTIL
config GLIBC_LIBM
bool
prompt "Install libm on the target"
- default y if BUILD_GDB
depends on GLIBC && LIBC
config GLIBC_NSS_DNS
diff --git a/rules/termcap.in b/rules/termcap.in
index 259b7f9ed..c896c45a3 100644
--- a/rules/termcap.in
+++ b/rules/termcap.in
@@ -2,7 +2,6 @@ menu "termcap "
config TERMCAP
bool "Compile termcap"
- depends on !GDB_TERMCAP
config TERMCAP
default y