lmbench: convert to generic package infrastructure
authorKelvin Cheung <keguang.zhang@gmail.com>
Tue, 8 Jun 2010 05:30:26 +0000 (13:30 +0800)
committerPeter Korsgaard <jacmet@sunsite.dk>
Tue, 8 Jun 2010 20:37:28 +0000 (22:37 +0200)
Closes #1753

Signed-off-by: Kelvin Cheung <keguang.zhang@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
CHANGES
package/lmbench/lmbench.mk

diff --git a/CHANGES b/CHANGES
index 365cb3ebfd520cf819f7fd5c501855a1bc415966..226ffdf50dc45dea54ac520a27f489323d2270cd 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -8,13 +8,14 @@
        luasocket, rings, wsapi, xavante
 
        Updated/fixed packages: cdrkit, file, gawk, intltool,
-       iptables, libidn, netperf, openssl, php, qt, sqlite, tn5250,
-       usbutils
+       iptables, libidn, lmbench, netperf, openssl, php, qt, sqlite,
+       tn5250, usbutils
 
        Removed packages: modutils
 
        Issues resolved (http://bugs.uclibc.org):
 
+       #1753: lmbench: convert to generic package infrastructure
        #1771: Fakeroot and the target/generic/device_table.txt create bad...
        #1807: LZMA 4.32.7, Required header file(s) are missing
        #1879: Bump iptables to 1.4.8
index 7083527de7916c1f34a6b3d7d9982e1236a56716..c271ffbdeb2e078283c456579d00b039d488116b 100644 (file)
@@ -6,42 +6,25 @@
 LMBENCH_VERSION:=3.0-a9
 LMBENCH_SOURCE:=lmbench-$(LMBENCH_VERSION).tgz
 LMBENCH_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/project/lmbench/development/lmbench-3.0-a9/
-LMBENCH_CAT:=$(ZCAT)
-LMBENCH_DIR:=$(BUILD_DIR)/lmbench-$(LMBENCH_VERSION)
-LMBENCH_BIN:=lmbench
-LMBENCH_TARGET_BIN:=usr/bin/$(LMBENCH_BIN)
 
-$(DL_DIR)/$(LMBENCH_SOURCE):
-       $(call DOWNLOAD,$(LMBENCH_SITE),$(LMBENCH_SOURCE))
-
-$(LMBENCH_DIR)/.unpacked: $(DL_DIR)/$(LMBENCH_SOURCE)
-       $(LMBENCH_CAT) $(DL_DIR)/$(LMBENCH_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-       toolchain/patch-kernel.sh $(LMBENCH_DIR) package/lmbench lmbench-$(LMBENCH_VERSION)\*.patch
-       $(CONFIG_UPDATE) $(LMBENCH_DIR)
-       sed -i 's/CFLAGS=/CFLAGS+=/g' $(LMBENCH_DIR)/src/Makefile
+define LMBENCH_CONFIGURE_CMDS
+       $(CONFIG_UPDATE) $(@D)
+       sed -i 's/CFLAGS=/CFLAGS+=/g' $(@D)/src/Makefile
+       sed -i '/cd .*doc/d' $(@D)/src/Makefile
+       sed -i '/include/d' $(@D)/src/Makefile
        touch $@
+endef
 
-$(LMBENCH_DIR)/bin/$(ARCH)/$(LMBENCH_BIN): $(LMBENCH_DIR)/.unpacked
-       $(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC=$(TARGET_CC) -C $(LMBENCH_DIR)/src
-
-$(TARGET_DIR)/$(LMBENCH_TARGET_BIN): $(LMBENCH_DIR)/bin/$(ARCH)/$(LMBENCH_BIN)
-       $(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC=$(TARGET_CC) BASE=$(TARGET_DIR)/usr -C $(LMBENCH_DIR)/src install
-
-lmbench: $(TARGET_DIR)/$(LMBENCH_TARGET_BIN)
-
-lmbench-source: $(DL_DIR)/$(LMBENCH_SOURCE)
+define LMBENCH_BUILD_CMDS
+       $(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC=$(TARGET_CC) -C $(@D)/src
+endef
 
-lmbench-clean:
-       -$(MAKE) -C $(LMBENCH_DIR)/src clean
+define LMBENCH_INSTALL_TARGET_CMDS
+       $(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC=$(TARGET_CC) BASE=$(TARGET_DIR)/usr -C $(@D)/src install
+endef
 
-lmbench-dirclean:
-       rm -rf $(LMBENCH_DIR)
+define LMBENCH_CLEAN_CMDS
+       $(MAKE) -C $(@D)/src clean
+endef
 
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_LMBENCH),y)
-TARGETS+=lmbench
-endif
+$(eval $(call GENTARGETS,package,lmbench))