cleanup; replace .PHONY with FORCE; disable gdb by default
[openwrt-10.03/.git] / toolchain / gdb / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 GDB_NAME:=gdb
6 GDB_SITE:=http://ftp.gnu.org/gnu/gdb
7 GDB_VERSION:=6.3
8 GDB_SOURCE:=$(GDB_NAME)-$(GDB_VERSION).tar.bz2
9 GDB_CAT:=bzcat
10
11 GDB_DIR:=$(TOOL_BUILD_DIR)/$(GDB_NAME)-$(GDB_VERSION)
12
13 $(DL_DIR)/$(GDB_SOURCE):
14         $(WGET) -P $(DL_DIR) $(GDB_SITE)/$(GDB_SOURCE)
15
16 $(GDB_DIR)/.patched: $(DL_DIR)/$(GDB_SOURCE)
17         $(GDB_CAT) $(DL_DIR)/$(GDB_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
18         $(PATCH) $(GDB_DIR) ./patches
19         # Copy a config.sub from gcc.  This is only necessary until
20         # gdb's config.sub supports <arch>-linux-uclibc tuples.
21         # Should probably integrate this into the patch.
22         touch  $(GDB_DIR)/.patched
23
24 # gdb client
25
26 GDB_CLIENT_DIR:=$(TOOL_BUILD_DIR)/gdbclient-$(GDB_VERSION)
27
28 $(GDB_CLIENT_DIR)/.configured: $(GDB_DIR)/.patched
29         mkdir -p $(GDB_CLIENT_DIR)
30         (cd $(GDB_CLIENT_DIR); \
31                 gdb_cv_func_sigsetjmp=yes \
32                 $(GDB_DIR)/configure \
33                 --prefix=$(STAGING_DIR) \
34                 --build=$(GNU_HOST_NAME) \
35                 --host=$(GNU_HOST_NAME) \
36                 --target=$(REAL_GNU_TARGET_NAME) \
37                 $(DISABLE_NLS) \
38                 --without-uiout --disable-gdbmi \
39                 --disable-tui --disable-gdbtk --without-x \
40                 --without-included-gettext \
41                 --enable-threads \
42         );
43         touch  $(GDB_CLIENT_DIR)/.configured
44
45 $(GDB_CLIENT_DIR)/gdb/gdb: $(GDB_CLIENT_DIR)/.configured
46         $(MAKE) -C $(GDB_CLIENT_DIR)
47         strip $(GDB_CLIENT_DIR)/gdb/gdb
48
49 $(TARGET_CROSS)gdb: $(GDB_CLIENT_DIR)/gdb/gdb
50         install -c $(GDB_CLIENT_DIR)/gdb/gdb $(TARGET_CROSS)gdb
51         cd $(STAGING_DIR)/bin && \
52         ln -fs $(TARGET_CROSS)gdb $(GNU_TARGET_NAME)-gdb
53
54 source: $(DL_DIR)/$(GDB_SOURCE)
55 prepare: $(GDB_DIR)/.patched
56 compile: 
57 install: $(TARGET_CROSS)gdb
58 clean: FORCE
59         rm -rf $(GDB_CLIENT_DIR) $(GDB_DIR)