Added gcc4 fix from Fedora.
authorJoseph Jezak <josejx@gentoo.org>
Wed, 2 Nov 2005 18:43:04 +0000 (18:43 +0000)
committerJoseph Jezak <josejx@gentoo.org>
Wed, 2 Nov 2005 18:43:04 +0000 (18:43 +0000)
Package-Manager: portage-2.0.53_rc6

sys-fs/hfsplusutils/ChangeLog
sys-fs/hfsplusutils/Manifest
sys-fs/hfsplusutils/files/hfsplusutils-1.0.4-gcc4.patch [new file with mode: 0644]
sys-fs/hfsplusutils/hfsplusutils-1.0.4-r1.ebuild

index fb203df2816a5005f76325b75a4398b06d5656a6..c0f1deb635f955aea535a5fda8cc1fa2edcc39a8 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for sys-fs/hfsplusutils
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/hfsplusutils/ChangeLog,v 1.4 2005/02/16 09:59:37 lu_zero Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/hfsplusutils/ChangeLog,v 1.5 2005/11/02 18:43:04 josejx Exp $
+
+  02 Nov 2005; Joseph Jezak <josejx@gentoo.org>
+  +files/hfsplusutils-1.0.4-gcc4.patch, hfsplusutils-1.0.4-r1.ebuild:
+  Added gcc4 fix from Fedora.
 
   16 Feb 2005; Luca Barbato <lu_zero@gentoo.org>
   hfsplusutils-1.0.4-r1.ebuild:
index fd1653358344e2fd81f5036a8a3a0a6f92254cb1..7b779a1ee4e484cb7ef30a5eeb70880e9532e081 100644 (file)
@@ -1,8 +1,19 @@
-MD5 52f9d8e98c8931645c57a3de1c36727d metadata.xml 156
-MD5 cb4b1a654bec4c228f15dc28fc17e54c hfsplusutils-1.0.4-r1.ebuild 1238
-MD5 6dda2bbfdd8ed9f4343a257774242144 ChangeLog 1560
-MD5 95ca097cbec83084b6470a520c23f60e hfsplusutils-1.0.4.ebuild 1029
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+MD5 59428bf8fe96bf6147e6ef6ded0c0cb3 ChangeLog 1708
 MD5 4d95cf7ea2995218d48dbf18375f0673 files/digest-hfsplusutils-1.0.4 70
-MD5 55d48aa8e0ed10af513c1ccf3afeb25f files/hfsplusutils-1.0.4-errno.patch 445
 MD5 4d95cf7ea2995218d48dbf18375f0673 files/digest-hfsplusutils-1.0.4-r1 70
+MD5 55d48aa8e0ed10af513c1ccf3afeb25f files/hfsplusutils-1.0.4-errno.patch 445
+MD5 f45b66e6839b6543e0e50d725f4b63ee files/hfsplusutils-1.0.4-gcc4.patch 6221
 MD5 04d73b3a534085a657c52eee99c5e1d4 files/hfsplusutils-1.0.4-glob.patch 288
+MD5 4b1af0fc26c9a73fe18539952b50e818 hfsplusutils-1.0.4-r1.ebuild 1287
+MD5 95ca097cbec83084b6470a520c23f60e hfsplusutils-1.0.4.ebuild 1029
+MD5 52f9d8e98c8931645c57a3de1c36727d metadata.xml 156
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.2 (GNU/Linux)
+
+iD8DBQFDaQjGcsIHjyDViGQRAgPzAJ9p73okM4b/pzxSmAxMIuGPVe9BWQCfXeBn
+vbYiwJjXL1Ss9UWS+aguPO4=
+=1miG
+-----END PGP SIGNATURE-----
diff --git a/sys-fs/hfsplusutils/files/hfsplusutils-1.0.4-gcc4.patch b/sys-fs/hfsplusutils/files/hfsplusutils-1.0.4-gcc4.patch
new file mode 100644 (file)
index 0000000..0472444
--- /dev/null
@@ -0,0 +1,132 @@
+--- hfsplus-1.0.4/libhfsp/src/btree.c~ 2002-03-05 19:50:28.000000000 +0000
++++ hfsplus-1.0.4/libhfsp/src/btree.c  2005-04-30 12:48:48.000000000 +0100
+@@ -393,7 +393,7 @@ static int btree_init(btree* bt, volume*
+       {
+           p = volume_readfromfork(vol, nodebuf, fork, 0, bt->blkpernode,
+                HFSP_EXTENT_DATA, bt->cnid);
+-          ((char*) p) += HEADER_RESERVEDOFFSET; // skip header
++          p += HEADER_RESERVEDOFFSET; // skip header
+       }
+       
+       bt->alloc_bits = malloc(alloc_size);
+--- hfsplus-1.0.4/libhfsp/src/swab.h~  2002-03-05 19:50:29.000000000 +0000
++++ hfsplus-1.0.4/libhfsp/src/swab.h   2005-04-30 12:48:05.000000000 +0100
+@@ -36,28 +36,28 @@
+ 
+ #define bswabU16(val) bswap_16(val)
+ 
+-#define bswabU16_inc(ptr) bswap_16(*((UInt16*) (ptr))++)
+-#define bswabU32_inc(ptr) bswap_32(*((UInt32*) (ptr))++)
+-#define bswabU64_inc(ptr) bswap_64(*((UInt64*) (ptr))++)
+-
+-#define bstoreU16_inc(ptr, val) (*((UInt16*) (ptr))++) = bswap_16(val)
+-#define bstoreU32_inc(ptr, val) (*((UInt32*) (ptr))++) = bswap_32(val)
+-#define bstoreU64_inc(ptr, val) (*((UInt64*) (ptr))++) = bswap_64(val)
++#define bswabU16_inc(ptr) bswap_16(*(*((UInt16**) (void *)(&ptr)))++)
++#define bswabU32_inc(ptr) bswap_32(*(*((UInt32**) (void *)(&ptr)))++)
++#define bswabU64_inc(ptr) bswap_64(*(*((UInt64**) (void *)(&ptr)))++)
++
++#define bstoreU16_inc(ptr, val) (*(*((UInt16**) (void *)(&ptr)))++) = bswap_16(val)
++#define bstoreU32_inc(ptr, val) (*(*((UInt32**) (void *)(&ptr)))++) = bswap_32(val)
++#define bstoreU64_inc(ptr, val) (*(*((UInt64**) (void *)(&ptr)))++) = bswap_64(val)
+ 
+ #else // BYTE_ORDER == BIG_ENDIAN
+ 
+ #define bswabU16(val) val
+ 
+-#define bswabU16_inc(ptr) (*((UInt16*) (ptr))++)
+-#define bswabU32_inc(ptr) (*((UInt32*) (ptr))++)
+-#define bswabU64_inc(ptr) (*((UInt64*) (ptr))++)
+-
+-#define bstoreU16_inc(ptr, val) (*((UInt16*) (ptr))++) = val
+-#define bstoreU32_inc(ptr, val) (*((UInt32*) (ptr))++) = val
+-#define bstoreU64_inc(ptr, val) (*((UInt64*) (ptr))++) = val
++#define bswabU16_inc(ptr) (*(*((UInt16**) (void *)(&ptr)))++)
++#define bswabU32_inc(ptr) (*(*((UInt32**) (void *)(&ptr)))++)
++#define bswabU64_inc(ptr) (*(*((UInt64**) (void *)(&ptr)))++)
++
++#define bstoreU16_inc(ptr, val) (*(*((UInt16**) (void *)(&ptr)))++) = val
++#define bstoreU32_inc(ptr, val) (*(*((UInt32**) (void *)(&ptr)))++) = val
++#define bstoreU64_inc(ptr, val) (*(*((UInt64**) (void *)(&ptr)))++) = val
+ 
+ #endif
+ 
+ /* for the sake of compleetness and readability */
+-#define bswabU8_inc(ptr)      (*((UInt8*) (ptr))++)
+-#define bstoreU8_inc(ptr,val) (*((UInt8*) (ptr))++) = val
++#define bswabU8_inc(ptr)      (*(*((UInt8**) (void *)(&ptr)))++)
++#define bstoreU8_inc(ptr,val) (*(*((UInt8**) (void *)(&ptr)))++) = val
+--- hfsplus-1.0.4/libhfsp/src/btreecheck.c~    2002-03-05 19:50:29.000000000 +0000
++++ hfsplus-1.0.4/libhfsp/src/btreecheck.c     2005-04-30 12:49:22.000000000 +0100
+@@ -264,7 +264,7 @@ static int fscheck_btree_init(btree* bt,
+       {
+           p = volume_readfromfork(vol, nodebuf, fork, 0, bt->blkpernode,
+                HFSP_EXTENT_DATA, bt->cnid);
+-          ((char*) p) += HEADER_RESERVEDOFFSET; // skip header
++          p += HEADER_RESERVEDOFFSET; // skip header
+       }
+       
+       bt->alloc_bits = malloc(alloc_size);
+--- hfsplus-1.0.4/libhfsp/src/fscheck.c~       2002-03-25 15:48:37.000000000 +0000
++++ hfsplus-1.0.4/libhfsp/src/fscheck.c        2005-04-30 12:50:26.000000000 +0100
+@@ -230,7 +230,7 @@ static int fscheck_volume_readbuf(volume
+     vh->write_count   = bswabU32_inc(p);
+     vh->encodings_bmp = bswabU64_inc(p);
+     memcpy(vh->finder_info, p, 32); 
+-    ((char*) p) += 32; // So finderinfo must be swapped later, ***
++    p += 32; // So finderinfo must be swapped later, ***
+     p = volume_readfork(p, &vh->alloc_file );
+     p = volume_readfork(p, &vh->ext_file   );
+     p = volume_readfork(p, &vh->cat_file   );
+@@ -277,12 +277,12 @@ static int fscheck_read_wrapper(volume *
+           printf("Volume is wrapped in HFS volume "
+                  " (use hfsck to check this)\n");
+ 
+-      ((char*) p) += 0x12;            /* skip unneded HFS vol fields */
++      p += 0x12;              /* skip unneded HFS vol fields */
+       drAlBlkSiz = bswabU32_inc(p);   /* offset 0x14 */
+-      ((char*) p) += 0x4;             /* skip unneded HFS vol fields */
++      p += 0x4;               /* skip unneded HFS vol fields */
+       drAlBlSt    = bswabU16_inc(p);  /* offset 0x1C */
+       
+-      ((char*) p) += 0x5E;            /* skip unneded HFS vol fields */
++      p += 0x5E;              /* skip unneded HFS vol fields */
+       signature = bswabU16_inc(p);    /* offset 0x7C, drEmbedSigWord */
+       if (signature != HFSP_VOLHEAD_SIG)
+           HFSP_ERROR(-1, "This looks like a normal HFS volume");
+--- hfsplus-1.0.4/libhfsp/src/volume.c~        2002-03-26 18:00:29.000000000 +0000
++++ hfsplus-1.0.4/libhfsp/src/volume.c 2005-04-30 12:51:41.000000000 +0100
+@@ -345,7 +345,7 @@ static int volume_readbuf(hfsp_vh* vh, v
+     vh->write_count   = bswabU32_inc(p);
+     vh->encodings_bmp = bswabU64_inc(p);
+     memcpy(vh->finder_info, p, 32); 
+-    ((char*) p) += 32; // finderinfo is not used by now
++    p += 32; // finderinfo is not used by now
+     p = volume_readfork(p, &vh->alloc_file );
+     p = volume_readfork(p, &vh->ext_file   );
+     p = volume_readfork(p, &vh->cat_file   );
+@@ -381,7 +381,7 @@ static int volume_writebuf(hfsp_vh* vh, 
+     bstoreU32_inc(p, vh->write_count  );
+     bstoreU64_inc(p, vh->encodings_bmp        );
+     memcpy(p, vh->finder_info, 32); 
+-    ((char*) p) += 32; // finderinfo is not used by now
++    p += 32; // finderinfo is not used by now
+     p = volume_writefork(p, &vh->alloc_file );
+     p = volume_writefork(p, &vh->ext_file   );
+     p = volume_writefork(p, &vh->cat_file   );
+@@ -417,12 +417,12 @@ static int volume_read_wrapper(volume * 
+   
+       UInt16  embeds, embedl;         /* Start/lenght of embedded area in blocks */
+       
+-      ((char*) p) += 0x12;            /* skip unneeded HFS vol fields */
++      p += 0x12;              /* skip unneeded HFS vol fields */
+       drAlBlkSiz = bswabU32_inc(p);   /* offset 0x14 */
+-      ((char*) p) += 0x4;             /* skip unneeded HFS vol fields */
++      p += 0x4;               /* skip unneeded HFS vol fields */
+       drAlBlSt    = bswabU16_inc(p);  /* offset 0x1C */
+       
+-      ((char*) p) += 0x5E;            /* skip unneeded HFS vol fields */
++      p += 0x5E;              /* skip unneeded HFS vol fields */
+       signature = bswabU16_inc(p);    /* offset 0x7C, drEmbedSigWord */
+       if (signature != HFSP_VOLHEAD_SIG)
+           HFSP_ERROR(-1, "This looks like a normal HFS volume");
index 412bbe7a178587ac18ef4931c37b18fdd63c6a3a..b3a7da9a6b38023ef797e7b7178260f309a93137 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2005 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/hfsplusutils/hfsplusutils-1.0.4-r1.ebuild,v 1.8 2005/02/16 09:59:37 lu_zero Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/hfsplusutils/hfsplusutils-1.0.4-r1.ebuild,v 1.9 2005/11/02 18:43:04 josejx Exp $
 
 inherit eutils libtool
 
@@ -26,6 +26,7 @@ src_unpack() {
        cd ${S}
        epatch ${FILESDIR}/hfsplusutils-1.0.4-glob.patch
        epatch ${FILESDIR}/hfsplusutils-1.0.4-errno.patch
+       epatch ${FILESDIR}/hfsplusutils-1.0.4-gcc4.patch
        #let's avoid the Makefile.cvs since isn't working for us
        export WANT_AUTOCONF=2.5
        export WANT_AUTOMAKE=1.6