Package: raidutils
Version: 0.0.6
Severity: important
Tags: patch

The raidutils package builds on most or all current debian
architectures, but it doesn't work on any 64 bit arch.

This is because the ioctl() interface of the i2o layer in the
kernel isn't 64 bit clean. Neither is the code in raidutils.
Fortunately though, the kernel 32 bit compatibility
layer does work. So, if you run a 32-bit i2o management app 
on a 64-bit kernel, it works just fine.

The patch below builds the raidutils on amd64 in 32-bit mode,
so that it actually works. It does give some build warnings
which probably should be looked at - but it works.

In addition, the patch makes sure that the raidutils package
is built for just i386 and amd64 - it supports only the Adaptec
DPT ZCR controllers, which can only be found on x86 boards
as far as I know.

I'm not sure if the severity of this report should be important
or grave. In my case, not having a working management app means
not being able to monitor the raid status, which could result
in data loss, so 'grave' might be appropriate. I've left it
as 'important' for now.

# ----------------------------------------

diff -ruN t/raidutils-0.0.6/debian/control raidutils-0.0.6/debian/control
--- t/raidutils-0.0.6/debian/control    2008-04-21 00:56:34.000000000 +0200
+++ raidutils-0.0.6/debian/control      2008-04-21 01:20:58.000000000 +0200
@@ -2,12 +2,12 @@
 Section: admin
 Priority: optional
 Maintainer: Barak A. Pearlmutter <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 5), autoconf (>= 2.58), linux-kernel-headers
+Build-Depends: debhelper (>= 5), autoconf (>= 2.58), linux-kernel-headers, 
libc6-dev-i386 [amd64], g++-multilib [amd64]
 Standards-Version: 3.7.3
 Homepage: http://i2o.shadowconnect.com
 
 Package: dpt-i2o-raidutils
-Architecture: any
+Architecture: i386, amd64
 Conflicts: raidutils (<< 0.0.6-6)
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Provides: dtp-i2o-raidutils
@@ -21,7 +21,7 @@
  array, activate/silence the alarm, and query array/disk status.
 
 Package: raidutils
-Architecture: any
+Architecture: i386, amd64
 Depends: dpt-i2o-raidutils
 Description: Transition Package for raidutils rename to dpt-i2o-raidutils
  The package previously named raidutils, used for manipulating some
diff -ruN t/raidutils-0.0.6/debian/rules raidutils-0.0.6/debian/rules
--- t/raidutils-0.0.6/debian/rules      2008-04-21 00:56:34.000000000 +0200
+++ raidutils-0.0.6/debian/rules        2008-04-21 01:24:07.000000000 +0200
@@ -11,9 +11,16 @@
 # from having to guess our platform (since we know it already)
 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-
+DEB_BUILD_ARCH      ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
 
 CFLAGS = -Wall -g
+CXXFLAGS = -Wall -g
+
+# When building on amd64, build 32 bit binaries.
+ifeq (amd64,$(DEB_BUILD_ARCH))
+CFLAGS += -m32
+CXXFLAGS += -m32
+endif
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
@@ -27,7 +34,7 @@
 config.status: configure
        dh_testdir
        # Add here commands to configure the package.
-       CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) 
--build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man 
--infodir=\$${prefix}/share/info
+       CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" ./configure 
--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr 
--mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
 
 
 build: build-stamp






-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to