From 88bb46340741bcfdfd2700d2c87193402bf65675 Mon Sep 17 00:00:00 2001 From: Dan Horák Date: Sep 06 2010 13:47:39 +0000 Subject: - Add fixes for big-endian machines --- diff --git a/squashfs-swap-fixes.patch b/squashfs-swap-fixes.patch new file mode 100644 index 0000000..7e87e19 --- /dev/null +++ b/squashfs-swap-fixes.patch @@ -0,0 +1,48 @@ +diff -up squashfs-tools/squashfs_swap.h.orig squashfs-tools/squashfs_swap.h +--- squashfs-tools/squashfs_swap.h.orig 2010-09-06 14:35:56.259431382 +0200 ++++ squashfs-tools/squashfs_swap.h 2010-09-06 14:41:40.341931345 +0200 +@@ -217,23 +217,23 @@ extern void inswap_le64_num(long long *, + } + + #define _SQUASHFS_SWAP_XATTR_VAL(s, d, SWAP_FUNC) {\ +- SWAP_FUNC(32, vsize, squashfs_xattr_val);\ ++ SWAP_FUNC(32, s, d, vsize, squashfs_xattr_val);\ + } + + #define _SQUASHFS_SWAP_XATTR_VAL_OOL(s, d, SWAP_FUNC) {\ +- SWAP_FUNC(32, vsize, squashfs_xattr_val_ool);\ +- SWAP_FUNC(64, xattr, squashfs_xattr_val_ool);\ ++ SWAP_FUNC(32, s, d, vsize, squashfs_xattr_val_ool);\ ++ SWAP_FUNC(64, s, d, xattr, squashfs_xattr_val_ool);\ + } + + #define _SQUASHFS_SWAP_XATTR_ID(s, d, SWAP_FUNC) {\ +- _SWAP_FUNC(64, xattr, squashfs_xattr_id);\ +- _SWAP_FUNC(32, count, squashfs_xattr_id);\ +- _SWAP_FUNC(32, size, squashfs_xattr_id);\ ++ SWAP_FUNC(64, s, d, xattr, squashfs_xattr_id);\ ++ SWAP_FUNC(32, s, d, count, squashfs_xattr_id);\ ++ SWAP_FUNC(32, s, d, size, squashfs_xattr_id);\ + } + + #define _SQUASHFS_SWAP_XATTR_TABLE(s, d, SWAP_FUNC) {\ +- _SWAP_FUNC(64, xattr_table_start, squashfs_xattr_table);\ +- _SWAP_FUNC(32, xattr_ids, squashfs_xattr_table);\ ++ SWAP_FUNC(64, s, d, xattr_table_start, squashfs_xattr_table);\ ++ SWAP_FUNC(32, s, d, xattr_ids, squashfs_xattr_table);\ + } + + #define SQUASHFS_SWAP_SUPER_BLOCK(s, d) \ +diff -up squashfs-tools/xattr.h.orig squashfs-tools/xattr.h +--- squashfs-tools/xattr.h.orig 2010-09-06 15:24:48.391931905 +0200 ++++ squashfs-tools/xattr.h 2010-09-06 15:23:24.769431618 +0200 +@@ -22,6 +22,9 @@ + * xattr.h + */ + ++typedef struct squashfs_xattr_entry squashfs_xattr_entry; ++typedef struct squashfs_xattr_val squashfs_xattr_val; ++ + #define XATTR_VALUE_OOL SQUASHFS_XATTR_VALUE_OOL + #define XATTR_PREFIX_MASK SQUASHFS_XATTR_PREFIX_MASK + diff --git a/squashfs-tools.spec b/squashfs-tools.spec index 88b2bb2..d7338da 100644 --- a/squashfs-tools.spec +++ b/squashfs-tools.spec @@ -1,7 +1,7 @@ Summary: Utility for the creation of squashfs filesystems Name: squashfs-tools Version: 4.1 -Release: 0.4.20100827%{?dist} +Release: 0.5.20100827%{?dist} License: GPLv2+ Group: System Environment/Base URL: http://squashfs.sf.net @@ -9,6 +9,8 @@ URL: http://squashfs.sf.net Source0: squashfs-4.1.tar.bz2 Patch0: squashfs-cflags.patch Patch1: squashfs-xz.patch +# https://sourceforge.net/tracker/?func=detail&aid=3060400&group_id=63835&atid=505343 +Patch2: squashfs-swap-fixes.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: zlib-devel BuildRequires: xz-devel @@ -22,6 +24,7 @@ contains the utilities for manipulating squashfs filesystems. %setup -q -n squashfs %patch0 -p0 %patch1 -p0 +%patch2 -p0 %build pushd squashfs-tools @@ -43,6 +46,9 @@ rm -rf $RPM_BUILD_ROOT %{_sbindir}/unsquashfs %changelog +* Mon Sep 6 2010 Dan Horák - 4.1-0.5.20100827 +- Add fixes for big-endian machines + * Sat Aug 28 2010 Bruno Wolff III - 4.1-0.4.20100827 - Rebase to latest upstream. - The main reason is to pick up a fix for large xattr similar to the large inode fix. This doesn't need to get backported as 4.0 doesn't have xattr support.