[backfire] cleanup: remove refs to unsupported "gemini" target
[openwrt-10.03/.git] / package / compcache / Makefile
index a4d845100818b66b75770bbb1ac44132852bb9a7..7eb19b6dafb30db4f9c1d80cb761b6ee15b71da1 100644 (file)
@@ -1,21 +1,19 @@
 #
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2009 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id: Makefile 6562 2009-01-21 11:19:24 ghd $
+# $Id: Makefile 6562 2009-10-05 08:30:14 ghd $
 
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=compcache
-PKG_VERSION:=0.5
-PKG_RELEASE:=$(PKG_VERSION)-1
+PKG_VERSION:=0.6.2
+PKG_RELEASE:=1
 PKG_SOURCE_URL:=http://compcache.googlecode.com/files/
-PKG_MD5SUM:=eea73324e9e69178866f6c0fbc852f1f
-
-#PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)
+PKG_MD5SUM:=27aec78dc50e34fb800c74e879057743
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 
@@ -26,34 +24,44 @@ define KernelPackage/compcache
   DEPENDS:=@LINUX_2_6 @BUSYBOX_CONFIG_SWAPONOFF
   TITLE:=Driver for compressed ram swap device
   VERSION:=$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)+$(PKG_RELEASE)
-  FILES:=$(PKG_BUILD_DIR)/compcache.$(LINUX_KMOD_SUFFIX) \
-         $(PKG_BUILD_DIR)/sub-projects/compression/lzo-kmod/lzo1x.$(LINUX_KMOD_SUFFIX) \
-        $(PKG_BUILD_DIR)/sub-projects/allocators/xvmalloc-kmod/xvmalloc.$(LINUX_KMOD_SUFFIX)
-#  AUTOLOAD:=$(call AutoLoad,10,xvmalloc lzo1x compcache+compcache_size_kbytes=2048)
+  FILES:=$(PKG_BUILD_DIR)/ramzswap.$(LINUX_KMOD_SUFFIX) \
+        $(PKG_BUILD_DIR)/sub-projects/compression/lzo-kmod/lzo1x.$(LINUX_KMOD_SUFFIX)
+  MENU:=1
 endef
 
-BUILDFLAGS:=-DCONFIG_BLK_DEV_COMPCACHE_DEBUG=0 \
-           -DCONFIG_BLK_DEV_COMPCACHE_STATS=1 \
-           -DCONFIG_XV_DEBUG=0 \
-           -DCONFIG_XV_STATS=1 \
-           -g -Wall
 
+include $(INCLUDE_DIR)/kernel-defaults.mk
+
+LZO = sub-projects/compression/lzo-kmod
+RZSC = sub-projects/rzscontrol
+
+BUILDFLAGS:=-DCONFIG_RAMZSWAP_STATS \
+           -I$(PKG_BUILD_DIR)/$(LZO) \
+           -Wall
+
+RZSCFLAGS:=-I$(PKG_BUILD_DIR)/$(RZSC)/../include \
+          -I$(PKG_BUILD_DIR)/$(RZSC)/../..
 
 define Build/Compile
-       $(MAKE) -C "$(LINUX_DIR)" \
-               CROSS_COMPILE="$(KERNEL_CROSS)" \
-               CC="$(KERNEL_CC)" \
-               ARCH="$(LINUX_KARCH)" \
-               SUBDIRS="$(PKG_BUILD_DIR)" \
-               EXTRA_CFLAGS="$(BUILDFLAGS)" \
-               modules
+       $(MAKE) $(KERNEL_MAKEOPTS) EXTRA_CFLAGS="$(BUILDFLAGS)" M="$(PKG_BUILD_DIR)" modules
+       $(TARGET_CC) $(TARGET_CFLAGS) $(RZSCFLAGS) $(PKG_BUILD_DIR)/$(RZSC)/rzscontrol.c -o $(PKG_BUILD_DIR)/rzscontrol
 endef
 
 define KernelPackage/compcache/install
        $(INSTALL_DIR) $(1)/etc/config
        $(INSTALL_DATA) ./files/compcache.config $(1)/etc/config/compcache
+       $(SED) 's,%ENABLED%,$(if $(CONFIG_COMPCACHE_ENABLE),1,0),g' \
+             -e 's,%RAM_REPORTED%,$(call qstrip,$(CONFIG_COMPCACHE_RAM_REPORTED)),g' \
+             -e 's,%BACKUP_DEV%,$(call qstrip,$(CONFIG_COMPCACHE_BACKUP_DEV)),g' \
+             $(1)/etc/config/compcache
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/compcache.init $(1)/etc/init.d/compcache
+       $(INSTALL_DIR) $(1)/sbin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/rzscontrol $(1)/sbin/rzscontrol
+endef
+
+define KernelPackage/compcache/config
+       source "$(SOURCE)/Config.in"
 endef
 
 $(eval $(call KernelPackage,compcache))