New revision, patches rename, conversion to linux-mod, correct linux-headers 2.4...
authorStefan Schweizer <genstef@gentoo.org>
Wed, 12 Jan 2005 18:11:53 +0000 (18:11 +0000)
committerStefan Schweizer <genstef@gentoo.org>
Wed, 12 Jan 2005 18:11:53 +0000 (18:11 +0000)
13 files changed:
sys-fs/cloop/ChangeLog
sys-fs/cloop/Manifest
sys-fs/cloop/cloop-0.68.ebuild
sys-fs/cloop/cloop-1.0.ebuild
sys-fs/cloop/cloop-1.02.ebuild
sys-fs/cloop/cloop-2.00.ebuild
sys-fs/cloop/cloop-2.01.5-r1.ebuild [new file with mode: 0644]
sys-fs/cloop/cloop-2.01.5.ebuild
sys-fs/cloop/files/cloop.fix-7z-syntax-for-gcc-3.4.patch [new file with mode: 0644]
sys-fs/cloop/files/cloop.fix-Makefile-for-kernel-2.6-and-amd64.patch [new file with mode: 0644]
sys-fs/cloop/files/cloop.fix-create_compressed_fs-segfault-on-amd64.patch [new file with mode: 0644]
sys-fs/cloop/files/cloop.fix-incompatible-kernel-2.6.7-and-later.patch [new file with mode: 0644]
sys-fs/cloop/files/digest-cloop-2.01.5-r1 [new file with mode: 0644]

index b3d7104e7ec13b8449de306e399b592fb747cfe3..ca89d540c5e3a8277bdfaf3a7c1c9de7704ab1df 100644 (file)
@@ -1,6 +1,17 @@
 # ChangeLog for sys-fs/cloop
-# Copyright 2000-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/ChangeLog,v 1.5 2004/12/11 17:17:07 dsd Exp $
+# Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/ChangeLog,v 1.6 2005/01/12 18:11:53 genstef Exp $
+
+*cloop-2.01.5-r1 (12 Jan 2005)
+
+  12 Jan 2005; Stefan Schweizer <genstef@gentoo.org>
+  +files/cloop.fix-7z-syntax-for-gcc-3.4.patch,
+  +files/cloop.fix-Makefile-for-kernel-2.6-and-amd64.patch,
+  +files/cloop.fix-create_compressed_fs-segfault-on-amd64.patch,
+  +files/cloop.fix-incompatible-kernel-2.6.7-and-later.patch,
+  +cloop-2.01.5-r1.ebuild:
+  New revision, patches rename, conversion to linux-mod, correct linux-headers
+  2.4 check
 
   11 Dec 2004; Daniel Drake <dsd@gentoo.org> cloop-2.01.5.ebuild:
   Fix 2.4 compilation
index b5208814a1ab87264768cf961a28cda528ca8c87..e576d9a72497d586be4a6d2dd87913d140dc61d6 100644 (file)
@@ -1,12 +1,18 @@
-MD5 a9c58ce17c978363b0aa5e2e6545c7ba cloop-0.68.ebuild 2110
-MD5 92cbdba7a8888eb362afae91b159eb32 cloop-2.01.5.ebuild 2202
-MD5 f921e57967efb1fc6c2cb4ccb0dcbb92 cloop-2.00.ebuild 2027
-MD5 7498bc7803ebc9010d29cecefc3079b6 cloop-1.0.ebuild 1832
-MD5 7636ead76228a9c0e164d2bc204df35e ChangeLog 2224
-MD5 4bb124b6d8e7842a97dd4b5fc87c545a cloop-1.02.ebuild 1938
+MD5 b02731be50a3f6b895beb20334cfc0fc cloop-0.68.ebuild 2110
+MD5 eb2ca8c00f25cff50852fb48c1812371 cloop-2.01.5.ebuild 2206
+MD5 d895a0b470390f70c2a1214d4ef9ad88 cloop-2.00.ebuild 2027
+MD5 26bc632a6b93205cbf4054806dc65b84 cloop-1.0.ebuild 1832
+MD5 ac537b5daa87b11c7cb4fa8cd4c5b8f1 cloop-2.01.5-r1.ebuild 1938
+MD5 c4d3065a97c32dc368a7d148a3b8a008 ChangeLog 2667
+MD5 e02f84b6f36c43050600baee50e6cccb cloop-1.02.ebuild 1938
 MD5 2d8e24e9e409e35ee446ec8d59f23c8d metadata.xml 269
+MD5 a2d63d27b9964865fe89d44549587504 files/cloop.fix-create_compressed_fs-segfault-on-amd64.patch 1091
+MD5 eba344b1fcf93c086a762d9f059adf84 files/digest-cloop-2.01.5-r1 64
+MD5 4666ce65a6ce33f0a2c449fcec7e0488 files/cloop.fix-7z-syntax-for-gcc-3.4.patch 2071
 MD5 fddd6265f57fe660c663a7b5b673f7f7 files/kernel-2.6.8-fs_h-fix.patch 759
 MD5 a2d63d27b9964865fe89d44549587504 files/cloop.zlib-amd64.patch 1091
+MD5 6ae2fe661ad5deb5e98a50537d06b43f files/cloop.fix-incompatible-kernel-2.6.7-and-later.patch 995
+MD5 ab48f2b1094c297eaa04e42906bf652b files/cloop.fix-Makefile-for-kernel-2.6-and-amd64.patch 2121
 MD5 35d772e2810697ea7458e58d4cd8dac1 files/digest-cloop-1.0 62
 MD5 aeb66341a09c65ce27293e9bc8867e7c files/digest-cloop-0.68 64
 MD5 012e4f17d0612ece27ca653c7af35662 files/digest-cloop-1.02 63
index ac8b3ec99c1be3772f5c8b56e6cf2c286acf614e..4177f9f34e3c191d02f22e9eea763b78bcfb4ec1 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-0.68.ebuild,v 1.1 2004/11/23 22:36:14 genstef Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-0.68.ebuild,v 1.2 2005/01/12 18:11:53 genstef Exp $
 
 inherit kernel-mod
 
index ead54168f93d6bf06a9efae0f4da07cc10576cd5..07eff6eacf1e625abf27c66a429dc6c3bc282312 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-1.0.ebuild,v 1.1 2004/11/23 22:36:14 genstef Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-1.0.ebuild,v 1.2 2005/01/12 18:11:53 genstef Exp $
 
 inherit kernel-mod
 
index 9654452a8108023b1f330db263dc2af5a69dd2fd..4293dcfe7a2a2bba4e5a31a215aa42f8a1c598d9 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-1.02.ebuild,v 1.1 2004/11/23 22:36:14 genstef Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-1.02.ebuild,v 1.2 2005/01/12 18:11:53 genstef Exp $
 
 inherit kernel-mod
 
index 7d7a2d947e316fa317de839e85f9cf740dab5cbe..ccbdcd9261a0f4aa5efcb6764638c4c536681e37 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-2.00.ebuild,v 1.1 2004/11/23 22:36:14 genstef Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-2.00.ebuild,v 1.2 2005/01/12 18:11:53 genstef Exp $
 
 inherit kernel-mod
 
diff --git a/sys-fs/cloop/cloop-2.01.5-r1.ebuild b/sys-fs/cloop/cloop-2.01.5-r1.ebuild
new file mode 100644 (file)
index 0000000..2a1553a
--- /dev/null
@@ -0,0 +1,69 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-2.01.5-r1.ebuild,v 1.1 2005/01/12 18:11:53 genstef Exp $
+
+inherit linux-mod eutils versionator
+
+DESCRIPTION="Compressed filesystem loopback kernel module"
+HOMEPAGE="http://www.knopper.net/knoppix/"
+SRC_URI="http://developer.linuxtag.net/knoppix/sources/${PN}_$(replace_version_separator 2 '-').tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+
+S=${WORKDIR}/${PN}-$(get_version_component_range 1-2)
+
+pkg_setup() {
+       CONFIG_CHECK="ZLIB_INFLATE"
+       if kernel_is 2 4
+       then
+               CONFIG_CHECK="${CONFIG_CHECK} ZLIB_DEFLATE"
+       fi
+       MODULE_NAMES="cloop(fs:)"
+       BUILD_TARGETS="all"
+       BUILD_PARAMS="KVERSION=${KV_FULL} KERNEL_DIR=${KV_DIR}"
+       linux-mod_pkg_setup
+}
+
+src_unpack() {
+       unpack ${A}
+       epatch ${FILESDIR}/cloop.fix-Makefile-for-kernel-2.6-and-amd64.patch
+       epatch ${FILESDIR}/cloop.fix-incompatible-kernel-2.6.7-and-later.patch
+       cd ${S}
+       epatch ${FILESDIR}/cloop.fix-7z-syntax-for-gcc-3.4.patch
+       epatch ${FILESDIR}/cloop.fix-create_compressed_fs-segfault-on-amd64.patch
+
+       # Debian uses conf.vars, everyone else uses .config
+       sed -i "s:conf.vars:.config:" Makefile
+
+       # Remove erroneous 2.4 include
+       has_version =sys-kernel/linux-headers-2.4.* && \
+               sed -i "s:#include <netinet/in.h>::" advancecomp-1.9_create_compressed_fs/advfs.cc
+}
+
+src_install() {
+       linux-mod_src_install
+
+       dobin create_compressed_fs extract_compressed_fs
+       cp debian/create_compressed_fs.1 debian/extract_compressed_fs.1
+       doman debian/create_compressed_fs.1 debian/extract_compressed_fs.1
+       dodoc CHANGELOG README
+}
+
+pkg_postinst () {
+       if kernel_is 2 4
+       then
+               einfo "Adding /dev/cloop devices"
+               if [ -e /dev/cloop ] ; then
+                       rm -f /dev/cloop
+               fi
+               mknod /dev/cloop b 240 0 || die
+               if [ -e /dev/cloop1 ] ; then
+                       rm -f /dev/cloop1
+               fi
+               mknod /dev/cloop1 b 240 1 || die
+       fi
+
+       linux-mod_pkg_postinst
+}
index 8a6cad73ea4e8c8242aa2f94e1016c743ecabc78..717fe31fd4603efebbf61ae035e368e2f4dbd4b7 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-2.01.5.ebuild,v 1.3 2004/12/11 17:17:07 dsd Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/cloop/cloop-2.01.5.ebuild,v 1.4 2005/01/12 18:11:53 genstef Exp $
 
 inherit kernel-mod eutils versionator
 
diff --git a/sys-fs/cloop/files/cloop.fix-7z-syntax-for-gcc-3.4.patch b/sys-fs/cloop/files/cloop.fix-7z-syntax-for-gcc-3.4.patch
new file mode 100644 (file)
index 0000000..7b92064
--- /dev/null
@@ -0,0 +1,43 @@
+diff -urN ../tmp-orig/cloop-2.01.4/advancecomp-1.9_create_compressed_fs/7z/AriBitCoder.h ./advancecomp-1.9_create_compressed_fs/7z/AriBitCoder.h
+--- ../tmp-orig/cloop-2.01.4/advancecomp-1.9_create_compressed_fs/7z/AriBitCoder.h     2003-02-10 20:25:06.000000000 +0100
++++ ./advancecomp-1.9_create_compressed_fs/7z/AriBitCoder.h    2004-07-10 15:27:58.225214667 +0200
+@@ -51,13 +51,13 @@
+ public:
+   void Encode(CRangeEncoder *aRangeEncoder, UINT32 aSymbol)
+   {
+-    aRangeEncoder->EncodeBit(m_Probability, kNumBitModelTotalBits, aSymbol);
+-    UpdateModel(aSymbol);
++    aRangeEncoder->EncodeBit(this->m_Probability, kNumBitModelTotalBits, aSymbol);
++    this->UpdateModel(aSymbol);
+   }
+   UINT32 GetPrice(UINT32 aSymbol) const
+   {
+     return g_PriceTables.m_StatePrices[
+-      (((m_Probability - aSymbol) ^ ((-(int)aSymbol))) & (kBitModelTotal - 1)) >> kNumMoveReducingBits];
++      (((this->m_Probability - aSymbol) ^ ((-(int)aSymbol))) & (kBitModelTotal - 1)) >> kNumMoveReducingBits];
+   }
+ };
+ 
+@@ -68,11 +68,11 @@
+ public:
+   UINT32 Decode(CRangeDecoder *aRangeDecoder)
+   {
+-    UINT32 aNewBound = (aRangeDecoder->m_Range >> kNumBitModelTotalBits) * m_Probability;
++    UINT32 aNewBound = (aRangeDecoder->m_Range >> kNumBitModelTotalBits) * this->m_Probability;
+     if (aRangeDecoder->m_Code < aNewBound)
+     {
+       aRangeDecoder->m_Range = aNewBound;
+-      m_Probability += (kBitModelTotal - m_Probability) >> aNumMoveBits;
++      this->m_Probability += (kBitModelTotal - this->m_Probability) >> aNumMoveBits;
+       if (aRangeDecoder->m_Range < kTopValue)
+       {
+         aRangeDecoder->m_Code = (aRangeDecoder->m_Code << 8) | aRangeDecoder->m_Stream.ReadByte();
+@@ -84,7 +84,7 @@
+     {
+       aRangeDecoder->m_Range -= aNewBound;
+       aRangeDecoder->m_Code -= aNewBound;
+-      m_Probability -= (m_Probability) >> aNumMoveBits;
++      this->m_Probability -= (this->m_Probability) >> aNumMoveBits;
+       if (aRangeDecoder->m_Range < kTopValue)
+       {
+         aRangeDecoder->m_Code = (aRangeDecoder->m_Code << 8) | aRangeDecoder->m_Stream.ReadByte();
diff --git a/sys-fs/cloop/files/cloop.fix-Makefile-for-kernel-2.6-and-amd64.patch b/sys-fs/cloop/files/cloop.fix-Makefile-for-kernel-2.6-and-amd64.patch
new file mode 100644 (file)
index 0000000..464915a
--- /dev/null
@@ -0,0 +1,69 @@
+diff -ru cloop-2.01/Makefile cloop-2.01.new/Makefile
+--- cloop-2.01/Makefile        2004-05-14 14:17:51.000000000 -0500
++++ cloop-2.01.new/Makefile    2004-07-21 16:26:59.167257880 -0500
+@@ -1,18 +1,51 @@
+ #!/usr/bin/make
+ 
+-KERNEL_DIR=/usr/src/linux
++KVERSION=$(shell uname -r)
++MACHINE=$(shell uname -m)
++KERNEL_DIR=/lib/modules/$(KVERSION)/build
++KERNEL_INCLUDE=$(KERNEL_DIR)/include
++INCLUDE_26:=-include $(KERNEL_INCLUDE)/config/modversions.h -include $(KERNEL_INCLUDE)/linux/version.h
++INCLUDE_24:=-include $(KERNEL_INCLUDE)/linux/modversions.h
++
++file_exist=$(shell test -f $(1) && echo yes || echo no)
++
++# test for 2.6 or 2.4 kernel
++ifeq ($(call file_exist,$(KERNEL_DIR)/Rules.make), yes)
++PATCHLEVEL:=4
++else
++PATCHLEVEL:=6
++endif
+ 
+ ifdef APPSONLY
+ CFLAGS:=-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -s -I. -fno-strict-aliasing -fno-common -fomit-frame-pointer 
+ else
+-include $(KERNEL_DIR)/.config
++ifeq ($(PATCHLEVEL),4)
+ include $(KERNEL_DIR)/conf.vars
++else
++include $(KERNEL_DIR)/.config
++endif
+ endif
+ 
+ CKERNOPS:=-D__KERNEL__ -DMODULE -fno-builtin -nostdlib -DKBUILD_MODNAME="cloop" -DKBUILD_BASENAME="cloop"
+ 
++# I needed this for my amd64 system running 2.6.7
++# it maybe required for 2.6, so I add it here
++ifeq ($(PATCHLEVEL),6)
++CKERNOPS+= -D__OPTIMIZE__
++endif
++
++# check for amd64
++ifeq ($(MACHINE),x86_64)
++CKERNOPS+=-mno-red-zone -mcmodel=kernel
++endif
++
+ ifdef CONFIG_MODVERSIONS
+-MODVERSIONS:= -DMODVERSIONS -include $(KERNEL_DIR)/include/linux/modversions.h
++MODVERSIONS:= -DMODVERSIONS
++ifeq ($(PATCHLEVEL),4)
++MODVERSIONS+=$(INCLUDE_24)
++else
++MODVERSIONS+=$(INCLUDE_26)
++endif
+ CKERNOPS += $(MODVERSIONS)
+ endif
+ 
+diff -ru cloop-2.01/advancecomp-1.9_create_compressed_fs/advfs.cc cloop-2.01.new/advancecomp-1.9_create_compressed_fs/advfs.cc
+--- cloop-2.01/advancecomp-1.9_create_compressed_fs/advfs.cc   2004-04-18 15:33:29.000000000 -0500
++++ cloop-2.01.new/advancecomp-1.9_create_compressed_fs/advfs.cc       2004-07-20 11:55:28.000000000 -0500
+@@ -30,6 +30,7 @@
+ #include "utility.h"
+ #include "compress.h"
+ #include "siglock.h"
++#define __OPTIMIZE__
+ #include <netinet/in.h>
+ 
+ #include "lib/mng.h"
diff --git a/sys-fs/cloop/files/cloop.fix-create_compressed_fs-segfault-on-amd64.patch b/sys-fs/cloop/files/cloop.fix-create_compressed_fs-segfault-on-amd64.patch
new file mode 100644 (file)
index 0000000..f6f0245
--- /dev/null
@@ -0,0 +1,21 @@
+--- cloop-2.01/advancecomp-1.9_create_compressed_fs/advfs.cc   2004-04-18 16:33:29.000000000 -0400
++++ cloop-2.01.new/advancecomp-1.9_create_compressed_fs/advfs.cc       2004-11-23 18:04:49.859941344 -0500
+@@ -81,7 +81,7 @@
+   {
+    int z_error;
+    unsigned long total=0;
+-   unsigned len[maxalg];
++   uLong len[maxalg];
+    unsigned int best;
+    //memset(compressed,0,len); memset(uncompressed,0,blocksize);
+    for(j=0; j<maxalg; j++) memset(compressed[j],0,maxlen), len[j]=maxlen;
+@@ -111,7 +111,8 @@
+       }
+ 
+      /* Try 7ZIP compression now. */
+-     if(!compress_zlib(shrink_extreme, (unsigned char *)compressed[maxalg-1], len[maxalg-1], (unsigned char *)uncompressed, blocksize))
++     unsigned zlib_length=(unsigned int)len[maxalg-1];
++     if(!compress_zlib(shrink_extreme, (unsigned char *)compressed[maxalg-1], zlib_length, (unsigned char *)uncompressed, blocksize))
+       {
+        fprintf(stderr, "*** Error %d compressing block %lu! (compressed=%p, len=%lu, uncompressed=%p, blocksize=%lu)\n", z_error, i, compressed,len,uncompressed,blocksize);
+        goto error_free_cb_list;
diff --git a/sys-fs/cloop/files/cloop.fix-incompatible-kernel-2.6.7-and-later.patch b/sys-fs/cloop/files/cloop.fix-incompatible-kernel-2.6.7-and-later.patch
new file mode 100644 (file)
index 0000000..980e159
--- /dev/null
@@ -0,0 +1,29 @@
+This patch is taken from debian and fixes some incompatible kernel changes
+in 2.6.7 and later linux-kernels.
+
+--- cloop-2.01/compressed_loop.c.orig  2004-05-14 15:22:47.000000000 -0400
++++ cloop-2.01/compressed_loop.c       2004-11-22 11:32:45.772837000 -0500
+@@ -202,7 +202,11 @@
+                           unsigned long offset, unsigned long size)
+ {
+  char *kaddr;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,7)
++ struct clo_read_data *p = (struct clo_read_data*)desc->arg.buf;
++#else
+  struct clo_read_data *p = (struct clo_read_data*)desc->buf;
++#endif
+  unsigned long count = desc->count;
+  if (size > count) size = count;
+  kaddr = kmap(page);
+@@ -228,7 +232,11 @@
+    read_descriptor_t desc;
+    desc.written = 0;
+    desc.count   = size;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,7)
++   desc.arg.buf = (char*)&cd;
++#else
+    desc.buf     = (char*)&cd;
++#endif
+    desc.error   = 0;
+ #ifdef REDHAT_KERNEL /* Greenshoe Linux */
+    do_generic_file_read(f, &pos, &desc, clo_read_actor, 0);
diff --git a/sys-fs/cloop/files/digest-cloop-2.01.5-r1 b/sys-fs/cloop/files/digest-cloop-2.01.5-r1
new file mode 100644 (file)
index 0000000..cc0eb18
--- /dev/null
@@ -0,0 +1 @@
+MD5 38daf7faba0427fed469137bca917c1c cloop_2.01-5.tar.gz 428324