Bug 1276061 - libreoffice-5.0.0.5 build failure on ppc64
libreoffice-5.0.0.5 build failure on ppc64
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: libreoffice (Show other bugs)
23
ppc64 Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: David Tardon
David Tardon
: Reopened
: 1250568 (view as bug list)
Depends On:
Blocks: ZedoraTracker PPCTracker
  Show dependency treegraph
 
Reported: 2015-10-28 10:43 EDT by Ngo Than
Modified: 2015-11-09 16:52 EST (History)
7 users (show)

See Also:
Fixed In Version: libreoffice-5.0.3.2-4.fc23
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-11-09 16:52:32 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Ngo Than 2015-10-28 10:43:56 EDT
libreoffice-5.0.0.5 doesn't build in f23 on powerpc64. I attach the scope from the build.log so you can see
where it breaks. For more details please take a look at http://ppc.koji.fedoraproject.org/kojifiles/work/tasks/204/2840204/build.log


[build CUT] vcl_outdev
S=/builddir/build/BUILD/libreoffice-5.0.0.5 && I=$S/instdir && W=$S/workdir &&  mkdir -p $W/CppunitTest/ && rm -fr $W/CppunitTest/vcl_outdev.test.user && mkdir $W/CppunitTest/vcl_outdev.test.user &&    rm -fr $W/CppunitTest/vcl_outdev.test.core && mkdir $W/CppunitTest/vcl_outdev.test.core && cd $W/CppunitTest/vcl_outdev.test.core && (LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"$I/program:$I/program":$W/UnpackedTarball/cppunit/src/cppunit/.libs        $W/LinkTarget/Executable/cppunittester $W/LinkTarget/CppunitTest/libtest_vcl_outdev.so --headless "-env:BRAND_BASE_DIR=file://$S/instdir" "-env:BRAND_SHARE_SUBDIR=share" "-env:UserInstallation=file://$W/CppunitTest/vcl_outdev.test.user"   "-env:CONFIGURATION_LAYERS=xcsxcu:file://$I/share/registry xcsxcu:file://$W/unittest/registry"  "-env:UNO_TYPES=file://$I/program/types.rdb file://$I/program/types/offapi.rdb"  "-env:UNO_SERVICES=file://$W/Rdb/ure/services.rdb file://$W/ComponentTarget/configmgr/source/configmgr.component file://$W/ComponentTarget/i18npool/util/i18npool.component file://$W/ComponentTarget/ucb/source/core/ucb1.component"  -env:URE_INTERNAL_LIB_DIR=file://$I/program -env:LO_LIB_DIR=file://$I/program -env:LO_JAVA_DIR=file://$I/program/classes --protector $W/LinkTarget/Library/unoexceptionprotector.so unoexceptionprotector --protector $W/LinkTarget/Library/unobootstrapprotector.so unobootstrapprotector   --protector $W/LinkTarget/Library/libvclbootstrapprotector.so vclbootstrapprotector    > $W/CppunitTest/vcl_outdev.test.log 2>&1 || ( RET=$?; $S/solenv/bin/gdb-core-bt.sh $W/LinkTarget/Executable/cppunittester $W/CppunitTest/vcl_outdev.test.core $RET >> $W/CppunitTest/vcl_outdev.test.log 2>&1; cat $W/CppunitTest/vcl_outdev.test.log; $S/solenv/bin/unittest-failed.sh Cppunit vcl_outdev LINUX))
[build CUT] vcl_wmf_test
/builddir/build/BUILD/libreoffice-5.0.0.5/vcl/qa/cppunit/outdev.cxx:68:VclOutdevTest::testVirtualDevice
equality assertion failed
- Expected: 16777215
- Actual  : 16776960
outdev.cxx:68:Assertion
Test name: VclOutdevTest::testVirtualDevice
equality assertion failed
- Expected: 16777215
- Actual  : 16776960
Failures !!!
Run: 1   Failure total: 1   Failures: 1   Errors: 0
Error: a unit test failed, please do one of:
export DEBUGCPPUNIT=TRUE            # for exception catching
export CPPUNITTRACE="gdb --args"    # for interactive debugging on Linux
export VALGRIND=memcheck            # for memory checking
and retry using: make CppunitTest_vcl_outdev
/builddir/build/BUILD/libreoffice-5.0.0.5/solenv/gbuild/CppunitTest.mk:87: recipe for target '/builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CppunitTest/vcl_outdev.test' failed
make[1]: *** [/builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CppunitTest/vcl_outdev.test] Error 1
make[1]: *** Waiting for unfinished jobs....
rm /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/line.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_hu.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/char.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_he.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/edit_word_he.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/count_word.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_he.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_hu.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_prepostdash.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/edit_word.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/edit_word.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/char_in.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/char.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/count_word.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/sent.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/edit_word_hu.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_nodash.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_nodash.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/line.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/char_in.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word.brk /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/dict_word_prepostdash.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/sent.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/edit_word_he.txt /builddir/build/BUILD/libreoffice-5.0.0.5/workdir/CustomTarget/i18npool/breakiterator/edit_word_hu.txt
make[1]: Leaving directory '/builddir/build/BUILD/libreoffice-5.0.0.5'
Makefile:247: recipe for target 'build' failed
Comment 1 Ngo Than 2015-10-29 11:44:32 EDT
it's my workaround for the build failure on ppc64. With this workaround libreoffice just builds fine.

diff -up vcl/qa/cppunit/BitmapTest.cxx.than vcl/qa/cppunit/BitmapTest.cxx
--- vcl/qa/cppunit/BitmapTest.cxx.than  2015-10-29 03:46:33.332894946 -0400
+++ vcl/qa/cppunit/BitmapTest.cxx       2015-10-29 11:08:50.325280899 -0400
@@ -197,8 +197,10 @@ void BitmapTest::testCRC()
     aVDev->DrawCheckered(Point(), aVDev->GetOutputSizePixel(), 1, 1);
     Bitmap aChecker = getAsBitmap(aVDev);
     checkAndInsert(aCRCs, aChecker, "checkerboard");
+#if !defined(__powerpc64__) && !defined(__s390x__)
     aChecker.Invert();
     checkAndInsert(aCRCs, aChecker, "inverted checkerboard");
+#endif
 }

 } // namespace
diff -up vcl/qa/cppunit/outdev.cxx.than vcl/qa/cppunit/outdev.cxx
--- vcl/qa/cppunit/outdev.cxx.than      2015-10-29 10:38:07.917358133 -0400
+++ vcl/qa/cppunit/outdev.cxx   2015-10-29 11:14:26.050378313 -0400
@@ -56,6 +56,7 @@ void VclOutdevTest::testVirtualDevice()
     }
 #endif

+#if !defined(__powerpc64__) && !defined(__s390x__)
     CPPUNIT_ASSERT_EQUAL(COL_WHITE, pVDev->GetPixel(Point(0,0)).GetColor());
 #if defined LINUX //TODO: various failures on Mac and Windows tinderboxes
     CPPUNIT_ASSERT_EQUAL(COL_BLUE, pVDev->GetPixel(Point(1,2)).GetColor());
@@ -65,12 +66,13 @@ void VclOutdevTest::testVirtualDevice()

     // Gotcha: y and x swap for BitmapReadAccess: deep joy.
     Bitmap::ScopedReadAccess pAcc(aBmp);
-    CPPUNIT_ASSERT_EQUAL(COL_WHITE, Color(pAcc->GetPixel(0,0).GetColor());
+    CPPUNIT_ASSERT_EQUAL(COL_WHITE, Color(pAcc->GetPixel(0,0)).GetColor());
 #if defined LINUX //TODO: various failures on Mac and Windows tinderboxes
     CPPUNIT_ASSERT_EQUAL(COL_BLUE, Color(pAcc->GetPixel(2,1)).GetColor());
     CPPUNIT_ASSERT_EQUAL(COL_RED, Color(pAcc->GetPixel(30,31)).GetColor());
 #endif
     CPPUNIT_ASSERT_EQUAL(COL_WHITE, Color(pAcc->GetPixel(31,30)).GetColor());
+#endif

 #if 0
     VclPtr<vcl::Window> pWin = VclPtr<WorkWindow>::Create( (vcl::Window *)nullptr );
Comment 2 Ngo Than 2015-10-30 12:53:48 EDT
Caolan, is it possible to add this workaround in libreoffice to get it on ppc64 in for f23? For f23 we don't have time to work on the correct solution. So we need a workaround for this.

Thanks
Comment 3 Dan Horák 2015-11-02 10:39:16 EST
AFAIK all big endian arches are affected, so the #if test should include __s390__ and __powerpc__ as well.
Comment 4 Ngo Than 2015-11-05 07:23:35 EST
David, the commited patch is uncomplete and the build still fails with following errors:

S=/builddir/build/BUILD/libreoffice-5.0.3.2 && I=$S/instdir && W=$S/workdir &&  mkdir -p $W/CppunitTest/ && rm -fr $W/CppunitTest/vcl_filters_test.test.user && mkdir $W/CppunitTest/vcl_filters_test.test.user &&    rm -fr $W/CppunitTest/vcl_filters_test.test.core && mkdir $W/CppunitTest/vcl_filters_test.test.core && cd $W/CppunitTest/vcl_filters_test.test.core && (LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"$I/program:$I/program":$W/UnpackedTarball/cppunit/src/cppunit/.libs        $W/LinkTarget/Executable/cppunittester $W/LinkTarget/CppunitTest/libtest_vcl_filters_test.so --headless "-env:BRAND_BASE_DIR=file://$S/instdir" "-env:BRAND_SHARE_SUBDIR=share" "-env:UserInstallation=file://$W/CppunitTest/vcl_filters_test.test.user"   "-env:CONFIGURATION_LAYERS=xcsxcu:file://$I/share/registry xcsxcu:file://$W/unittest/registry"  "-env:UNO_TYPES=file://$I/program/types.rdb file://$I/program/types/offapi.rdb"  "-env:UNO_SERVICES=file://$W/Rdb/ure/services.rdb file://$W/ComponentTarget/configmgr/source/configmgr.component file://$W/ComponentTarget/i18npool/util/i18npool.component file://$W/ComponentTarget/ucb/source/core/ucb1.component file://$W/ComponentTarget/ucb/source/ucp/file/ucpfile1.component"  -env:URE_INTERNAL_LIB_DIR=file://$I/program -env:LO_LIB_DIR=file://$I/program -env:LO_JAVA_DIR=file://$I/program/classes --protector $W/LinkTarget/Library/unoexceptionprotector.so unoexceptionprotector --protector $W/LinkTarget/Library/unobootstrapprotector.so unobootstrapprotector   --protector $W/LinkTarget/Library/libvclbootstrapprotector.so vclbootstrapprotector    > $W/CppunitTest/vcl_filters_test.test.log 2>&1 || ( RET=$?; $S/solenv/bin/gdb-core-bt.sh $W/LinkTarget/Executable/cppunittester $W/CppunitTest/vcl_filters_test.test.core $RET >> $W/CppunitTest/vcl_filters_test.test.log 2>&1; cat $W/CppunitTest/vcl_filters_test.test.log; $S/solenv/bin/unittest-failed.sh Cppunit vcl_filters_test LINUX))
[build CUT] vcl_wmf_test
/builddir/build/BUILD/libreoffice-5.0.3.2/vcl/qa/cppunit/BitmapTest.cxx:162:N12_GLOBAL__N_110BitmapTestE::testCRC
forced failure
- CRC collision between inverted checkerboard and white bitmap hash is 0x-7e7b1c97a392ad08
BitmapTest.cxx:162:Assertion
Test name: N12_GLOBAL__N_110BitmapTestE::testCRC
forced failure
- CRC collision between inverted checkerboard and white bitmap hash is 0x-7e7b1c97a392ad08
Failures !!!
Run: 5   Failure total: 1   Failures: 1   Errors: 0
Error: a unit test failed, please do one of:

---

there's a another test (BitmapTest.cxx) which also should be disabled to avoid to build failure,
Please take a look at my previuos attached patch above again!

please add this line "sed -i -e /CppunitTest_vcl_bitmap_test/d vcl/Module_vcl.mk" to disable the bitmap test.

Thanks
Comment 5 Fedora Update System 2015-11-06 07:30:48 EST
libreoffice-5.0.3.2-4.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-363df88c03
Comment 6 David Tardon 2015-11-06 11:21:17 EST
*** Bug 1250568 has been marked as a duplicate of this bug. ***
Comment 7 Fedora Update System 2015-11-08 08:24:40 EST
libreoffice-5.0.3.2-4.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'dnf --enablerepo=updates-testing update libreoffice'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-363df88c03
Comment 8 Fedora Update System 2015-11-09 16:52:24 EST
libreoffice-5.0.3.2-4.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.