massive cleanup of toolchain/
[openwrt-10.03/.git] / toolchain / gdb / Makefile
index f122881a741c6f416ba428aeddd5fe67083e5da3..538ef512072195705cc26d1bd644e4c58c4ad0ca 100644 (file)
@@ -1,35 +1,21 @@
-# $Id$
-
 include $(TOPDIR)/rules.mk
 
-GDB_NAME:=gdb
-GDB_SITE:=http://ftp.gnu.org/gnu/gdb
-GDB_VERSION:=6.3
-GDB_SOURCE:=$(GDB_NAME)-$(GDB_VERSION).tar.bz2
-GDB_CAT:=bzcat
-
-GDB_DIR:=$(TOOL_BUILD_DIR)/$(GDB_NAME)-$(GDB_VERSION)
+PKG_NAME:=gdb
+PKG_VERSION:=6.3
 
-$(DL_DIR)/$(GDB_SOURCE):
-       $(WGET) -P $(DL_DIR) $(GDB_SITE)/$(GDB_SOURCE)
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_MD5SUM:=05b928f41fa5b482e49ca2c24762a0ae
+PKG_SOURCE_URL:=http://ftp.gnu.org/gnu/gdb
+PKG_CAT:=bzcat
 
-$(GDB_DIR)/.patched: $(DL_DIR)/$(GDB_SOURCE)
-       $(GDB_CAT) $(DL_DIR)/$(GDB_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
-       $(PATCH) $(GDB_DIR) ./patches
-       # Copy a config.sub from gcc.  This is only necessary until
-       # gdb's config.sub supports <arch>-linux-uclibc tuples.
-       # Should probably integrate this into the patch.
-       touch  $(GDB_DIR)/.patched
+PKG_BUILD_DIR:=$(TOOL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 
-# gdb client
+include $(INCLUDE_DIR)/host-build.mk
 
-GDB_CLIENT_DIR:=$(TOOL_BUILD_DIR)/gdbclient-$(GDB_VERSION)
-
-$(GDB_CLIENT_DIR)/.configured: $(GDB_DIR)/.patched
-       mkdir -p $(GDB_CLIENT_DIR)
-       (cd $(GDB_CLIENT_DIR); \
+define Build/Configure
+       (cd $(PKG_BUILD_DIR); \
                gdb_cv_func_sigsetjmp=yes \
-               $(GDB_DIR)/configure \
+               $(PKG_BUILD_DIR)/configure \
                --prefix=$(STAGING_DIR) \
                --build=$(GNU_HOST_NAME) \
                --host=$(GNU_HOST_NAME) \
@@ -40,20 +26,17 @@ $(GDB_CLIENT_DIR)/.configured: $(GDB_DIR)/.patched
                --without-included-gettext \
                --enable-threads \
        );
-       touch  $(GDB_CLIENT_DIR)/.configured
+endef
 
-$(GDB_CLIENT_DIR)/gdb/gdb: $(GDB_CLIENT_DIR)/.configured
-       $(MAKE) -C $(GDB_CLIENT_DIR)
-       strip $(GDB_CLIENT_DIR)/gdb/gdb
+define Build/Compile
+       $(MAKE) -C $(PKG_BUILD_DIR)
+       strip $(PKG_BUILD_DIR)/gdb/gdb
+endef
 
-$(TARGET_CROSS)gdb: $(GDB_CLIENT_DIR)/gdb/gdb
-       install -c $(GDB_CLIENT_DIR)/gdb/gdb $(TARGET_CROSS)gdb
+define Build/Install
+       install -c $(PKG_BUILD_DIR)/gdb/gdb $(TARGET_CROSS)gdb
        cd $(STAGING_DIR)/bin && \
-       ln -fs $(TARGET_CROSS)gdb $(GNU_TARGET_NAME)-gdb
-
-source: $(DL_DIR)/$(GDB_SOURCE)
-prepare: $(GDB_DIR)/.patched
-compile: 
-install: $(TARGET_CROSS)gdb
-clean: FORCE
-       rm -rf $(GDB_CLIENT_DIR) $(GDB_DIR)
+               ln -fs $(TARGET_CROSS)gdb $(GNU_TARGET_NAME)-gdb
+endef
+
+$(eval $(call HostBuild))