[Debian-med-packaging] Endianness of libsis-base [Was: failed powerpc build of libsis-base-java 14.12.0-2]

Bernd Rinn brinn at ethz.ch
Wed Dec 9 22:22:27 UTC 2015


Hi Andreas,

I don't have a big endian machine running Debian at hand for testing,
but your patch looks good to me.

All the best,

Bernd

On 2015-12-09 23:18, Andreas Tille wrote:
> Hi Bernd,
> 
> thanks a lot for your wuick and precise response.
> 
> I think I was able to fix this by the following patch against the helper
> Makefile.am craftet by the other Debian developers:
> 
> $ git diff HEAD^ Makefile.am 
> diff --git a/debian/build_native/Makefile.am b/debian/build_native/Makefile.am
> index 494500a..6f00bb8 100644
> --- a/debian/build_native/Makefile.am
> +++ b/debian/build_native/Makefile.am
> @@ -1,4 +1,5 @@
> -AM_CFLAGS=-I/usr/lib/jvm/default-java/include -I/usr/lib/jvm/default-java/include/linux -DMACHINE_BYTE_ORDER=1
> +MBO=$(shell if [ `dpkg-architecture -qDEB_BUILD_ARCH_ENDIAN` = little ] ; then echo 1 ; else echo 2; fi )
> +AM_CFLAGS=-I/usr/lib/jvm/default-java/include -I/usr/lib/jvm/default-java/include/linux -DMACHINE_BYTE_ORDER=$(MBO)
>  
>  lib_LTLIBRARIES = libcisd_unix.la libcisd_nativedata.la
>  libcisd_unix_la_SOURCES = unix.c
> 
> 
> Kind regards
> 
>         Andreas.
> 
> On Wed, Dec 09, 2015 at 08:12:51PM +0100, Bernd Rinn wrote:
>> Hi Andreas,
>>
>> There is no automatic detection of the endiness of a platform in
>> libsis-base, but this is a compile time setting for the C library. I
>> assume that you will find somewhere in your build scripts for PowerPC
>>
>>    -DMACHINE_BYTE_ORDER=1
>>
>> which means: platform is 'little endian', when you actually should have
>> there
>>
>>    -DMACHINE_BYTE_ORDER=2
>>
>> which stands for 'platform is big endian'. The particular test that you
>> found is failing checks whether the platform really has the endiness
>> that was specified in the build file.
> 
> I can confirm that the full build log
> 
>    https://buildd.debian.org/status/fetch.php?pkg=libsis-base-java&arch=powerpc&ver=14.12.0-2&stamp=1449660924&file=log
> 
> exactly shows -DMACHINE_BYTE_ORDER=1.  However, it is not really clear
> to me how to tweak the
> 
>> All the best,
>>
>> Bernd
>>
>> On 2015-12-09 12:57, Andreas Tille wrote:
>>> Hi,
>>>
>>> the build problem is in the test suite:
>>>
>>> Running testPlatformEndiness
>>> Exception in thread "main" java.lang.AssertionError: expected:<LITTLE_ENDIAN> but was:<BIG_ENDIAN>
>>> 	at org.testng.AssertJUnit.fail(AssertJUnit.java:59)
>>> 	at org.testng.AssertJUnit.failNotEquals(AssertJUnit.java:364)
>>> 	at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:80)
>>> 	at org.testng.AssertJUnit.assertEquals(AssertJUnit.java:88)
>>> 	at ch.systemsx.cisd.base.convert.NativeDataTests.testPlatformEndiness(NativeDataTests.java:377)
>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>> 	at java.lang.reflect.Method.invoke(Method.java:606)
>>> 	at ch.systemsx.cisd.base.convert.NativeDataTests.main(NativeDataTests.java:446)
>>> 	at ch.systemsx.cisd.base.AllTests.main(AllTests.java:39)
>>> debian/rules:45: recipe for target 'override_dh_auto_test-arch' failed
>>>
>>> I wonder whether there is any restriction to little endian architectures.
>>>
>>> Kind regards
>>>
>>>      Andreas.
>>>
>>> ----- Forwarded message from Debian buildds <noreply at buildd.debian.org> -----
>>>
>>> From: Debian buildds <noreply at buildd.debian.org>
>>> To: dispatch at tracker.debian.org
>>> Subject: failed powerpc build of libsis-base-java 14.12.0-2
>>>
>>>  * Source package: libsis-base-java
>>>  * Version: 14.12.0-2
>>>  * Architecture: powerpc
>>>  * State: failed
>>>  * Suite: sid
>>>  * Builder: powerpc-unicamp-01.debian.org
>>>  * Build log: https://buildd.debian.org/status/fetch.php?pkg=libsis-base-java&arch=powerpc&ver=14.12.0-2&stamp=1449660924&file=log
>>>
>>> Please note that these notifications do not necessarily mean bug reports
>>> in your package but could also be caused by other packages, temporary
>>> uninstallabilities and arch-specific breakages.  A look at the build log
>>> despite this disclaimer would be appreciated however.
>>>
>>>
>>> ----- End forwarded message -----
>>
> 

-- 
Dr. Bernd Rinn
Scientific IT Services
ETH Zurich IT Services
SIB Swiss Institute of Bioinformatics
Weinbergstr. 11 (WEC D 19), 8092 Zürich, Switzerland, +41 44 632 0608
Mattenstr. 26 (BSB 1.01), 4058 Basel, Switzerland, +41 61 387 3130



More information about the Debian-med-packaging mailing list