build system refactoring in preparation for allowing packages to do host-build steps
[openwrt.git] / toolchain / gdb / Makefile
index 34dca71..4911fae 100644 (file)
@@ -1,5 +1,5 @@
 # 
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2009 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -14,15 +14,17 @@ PKG_MD5SUM:=05b928f41fa5b482e49ca2c24762a0ae
 PKG_SOURCE_URL:=http://ftp.gnu.org/gnu/gdb
 PKG_CAT:=bzcat
 
-PKG_BUILD_DIR:=$(TOOLCHAIN_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+STAGING_DIR_HOST:=$(TOOLCHAIN_DIR)
+BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)
 
 include $(INCLUDE_DIR)/host-build.mk
 
-define Build/Configure
-       (cd $(PKG_BUILD_DIR); \
+define Host/Configure
+       (cd $(HOST_BUILD_DIR); \
                gdb_cv_func_sigsetjmp=yes \
-               $(PKG_BUILD_DIR)/configure \
-               --prefix=$(STAGING_DIR) \
+               CFLAGS="-O2" \
+               $(HOST_BUILD_DIR)/configure \
+               --prefix=$(TOOLCHAIN_DIR)/usr \
                --build=$(GNU_HOST_NAME) \
                --host=$(GNU_HOST_NAME) \
                --target=$(REAL_GNU_TARGET_NAME) \
@@ -34,22 +36,22 @@ define Build/Configure
        );
 endef
 
-define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR)
-       strip $(PKG_BUILD_DIR)/gdb/gdb
+define Host/Compile
+       $(MAKE) -C $(HOST_BUILD_DIR)
 endef
 
-define Build/Install
-       (cd $(STAGING_DIR)/bin; \
-               install -c $(PKG_BUILD_DIR)/gdb/gdb $(TARGET_CROSS)gdb; \
-               ln -fs $(TARGET_CROSS)gdb $(GNU_TARGET_NAME)-gdb; \
-       );
+define Host/Install
+       mkdir -p $(TOOLCHAIN_DIR)/usr/bin
+       $(INSTALL_BIN) $(HOST_BUILD_DIR)/gdb/gdb $(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)gdb
+       ln -fs $(TARGET_CROSS)gdb $(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)-gdb
+       strip $(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)gdb
 endef
 
-define Build/Clean
-       rm -rf $(PKG_BUILD_DIR)
-       rm -f $(STAGING_DIR)/bin/$(TARGET_CROSS)gdb
-       rm -f $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-gdb
+define Host/Clean
+       rm -rf \
+               $(HOST_BUILD_DIR) \
+               $(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)gdb \
+               $(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)-gdb
 endef
 
 $(eval $(call HostBuild))