Freeglut needs migration to multiarch

Bug #885652 reported by Guilllermo Andrade B.
54
This bug affects 16 people
Affects Status Importance Assigned to Milestone
freeglut (Debian)
Fix Released
Unknown
freeglut (Ubuntu)
Fix Released
Low
Unassigned
Precise
Fix Released
Medium
Unassigned
ia32-libs (Ubuntu)
Won't Fix
Medium
Unassigned
Precise
Won't Fix
Undecided
Unassigned

Bug Description

[Impact]
Please transition freeglut to support multiarch. This package is used by third party games, notably one of the recent Humble Bundle titles.

[Test Case]
Install both i386 and amd64 versions of the lib at the same time and verify that you can run both i386 and amd64 bit dependencies.

[Regression Potential]
Low, but all reverse dependencies need to have a testbuild in the https://launchpad.net/~mvo/+archive/freeglut-multiarch/+packages test repo.

Revision history for this message
Steve Langasek (vorlon) wrote :

This was done deliberately, and is documented in the NEWS.Debian file for this package:

  * In addition, some libraries have been dropped from this package despite
    not yet being multiarch-ready because it's not clear why they were
    included. If you have 32-bit programs that require one of these
    libraries, please file a bug report with 'ubuntu-bug ia32-libs' explaining
    which library you need and what application you need it for, so that
    the library can be readded.

    - freeglut3

What is your use case for 32-bit libglut?

Changed in ia32-libs (Ubuntu):
status: New → Incomplete
Revision history for this message
Guilllermo Andrade B. (guillermo-andrade-barroso) wrote :

I need libglut.so for "FoldIt" program. The binaries for linux are only in 32 bits http://fold.it/portal/

Revision history for this message
Steve Langasek (vorlon) wrote :

Ok. This is certainly an argument for adding it back to ia32-libs (probably via a dependency on the i386 package in precise).

As a workaround, you can probably just run 'sudo apt-get install freeglut3:i386' on your system with no adverse side effects, since you are unlikely to have a need for the 64-bit freeglut library at the same time.

Changed in ia32-libs (Ubuntu):
status: Incomplete → Triaged
Revision history for this message
Steve Langasek (vorlon) wrote :

And freeglut should be made multiarch-coinstallable for precise as well.

Changed in freeglut (Ubuntu):
status: New → Triaged
importance: Undecided → Low
Changed in ia32-libs (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Guilllermo Andrade B. (guillermo-andrade-barroso) wrote :

thanks for your answer.
I'm unlucky : I need freeglut both 64bits and now 32 bits. So I'd manually unpacked freeglut3:i386 and copied libs on /usr/lib32.

Revision history for this message
rew (r-e-wolff) wrote :

Bug #885652 and Bug #859038 seem awfully similar.

Changed in ia32-libs (Ubuntu):
status: Triaged → Won't Fix
tags: added: multiarch
summary: - missing /usr/lib32/libglut.so
+ Freeglut needs migration to multiarch
Changed in freeglut (Debian):
status: Unknown → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package freeglut - 2.6.0-4ubuntu1

---------------
freeglut (2.6.0-4ubuntu1) quantal; urgency=low

  * Merge from Debian unstable (LP: #1035732, #885652); remaining changes:
    - Build-depend on libxxf86vm-dev

freeglut (2.6.0-4) unstable; urgency=low

  [ Anton Gladky ]
  * [8100d04] [861ed2a] Install dbg-file into correct place. (Closes: #681513)

  [ Sebastian Ramacher ]
  * [4083802] Fix buffer overflow. (Closes: #430160)

freeglut (2.6.0-3) unstable; urgency=low

  [ Anton Gladky ]
  * [14a5bb4] Use compat-level 9.
  * [9adaee5] Implement multiarch. (Closes: #677735)
  * [3b4bc1a] Fix path to dbg-libraries. (Closes: #331244)
  * [a515c32] Set DM-Upload-Allowed to yes.
  * [3439f5b] Disable *fghJoystickWalkUSBdev on kfreeBSD* systems.
              Prevents FTBFS on those platforms. (Closes: #678571)

  [ Michael Gilbert ]
  * [68e563b] Automatically handle build flags via debhelper 9.

freeglut (2.6.0-2) unstable; urgency=low

  * [58daa57] Simplify debian/rules, use dh 8.
  * [994c8be] Add myself as maintainer. (Closes: #674870)
  * [8d9ff8a] Move git-repository to collab-maint.
  * [1949549] Fix hardcoded list of kFreeBSD architectures. (Closes: #634674)

freeglut (2.6.0-1.1) unstable; urgency=low

  * Non-maintainer upload.
  * FTBFS with binutils-gold (Closes: #554405)
    - debian/patches/04_ld_no_add_needed.diff
    - debian/patches/05_gold.diff
      thanks to Matthias Klose <email address hidden>.
 -- Chow Loong Jin <email address hidden> Mon, 13 Aug 2012 17:03:39 +0100

Changed in freeglut (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Michael Vogt (mvo) wrote :

I added a precise task for this to do a SRU for a multiarch freeglut similar to the SRU done for libbonobo (#977947).

Changed in ia32-libs (Ubuntu Precise):
status: New → Won't Fix
Changed in freeglut (Ubuntu Precise):
status: New → In Progress
importance: Undecided → Medium
Revision history for this message
Michael Vogt (mvo) wrote :

Created a test PPA here: https://launchpad.net/~mvo/+archive/freeglut-multiarch

The amd64 version tells me that the build will start in 4 days, I hope its lying.

description: updated
tags: added: ca-escalated
Revision history for this message
Selene ToyKeeper (toykeeper) wrote :

This is the reason the Fieldrunners game (part of the new HIB a3 promotion) is not installable in 64-bit Ubuntu.

If you are affected by this because of Fieldrunners, feel free to subscribe to this bug for updates but please don't comment. We can't make the fix happen any faster.

tags: added: os-support
Revision history for this message
Michael Vogt (mvo) wrote :

I uploaded the updated library into precise-proposed now and its waiting in the SRU queue for review.

I also uploaded the rdependencies to the PPA for test, please do not use this PPA for real stuff, its just there to test the rebuilds.

Revision history for this message
Michael Vogt (mvo) wrote :

Fwiw, all amd64 rdepends in the PPA are build now without a issue.

Revision history for this message
Steve Langasek (vorlon) wrote :

Hi Michael,

diff -Nru freeglut-2.6.0/debian/compat freeglut-2.6.0/debian/compat
--- freeglut-2.6.0/debian/compat 2010-03-27 12:02:35.000000000 +0000
+++ freeglut-2.6.0/debian/compat 2012-08-16 15:23:33.000000000 +0000
@@ -1 +1 @@
-7
+9

This change is not needed for multiarch because the package does not use dh(1) for building - it passes --libdir in debian/rules instead. It's best to not include this change in an SRU - and easier than verifying that there are no other behavior changes.

@@ -46,7 +49,9 @@
        dh_testroot
        dh_prep
        $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
- rm -f $(CURDIR)/debian/tmp/usr/lib/libglut.la
+ mkdir -p $(CURDIR)/debian/freeglut3-dbg/usr/lib/debug/usr/lib/$(DEB_HOST_MULTIARCH)
+ cp $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libglut.so.3.9.0 $(CURDIR)/debian/freeglut3-dbg/usr/lib/debug/usr/lib/$(DEB_HOST_MULTIARCH)
+ rm -f $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libglut.la

 binary-indep: build install

This doesn't look like a very correct way to implement a debugging package. Debugging packages should normally contain only the detached symbols, where this seems to be including a complete .so?

Revision history for this message
Michael Vogt (mvo) wrote :

Thanks for the review Steve!

AFAICT one of the changes is necessary to make the mutlarch transition work. We have the following options

(1) remove the debian/rules "cp" AND switch compat level 9:
  this will result in ./usr/lib/debug/.build-id/f4/7892f47cb94a3d0023eead658b8da482b90f84.debug in the freeglut3-dbg package which is what debian/sid and quantal are having (size 269979)

(2) keep the debian/rules cp AND revert to compat level 7:
  - this will result in ./usr/lib/debug/usr/lib/x86_64-linux-gnu/libglut.so.3.9.0 in freeglut3-dbg, so a proper multiarch path

(3) revert both changes: this will result in a non-multiarch path /usr/lib/debug/usr/lib/libglut.so.3.9.0 in the freeglut3-dbg package for all architecture so its not a option

I like option (2) best but I'm happy with option (1) as well. Whatever is less risky and more likely to get accepted in the SRU.

Revision history for this message
Steve Langasek (vorlon) wrote :

I wouldn't say it's not an option to not revert both changes. In that case the freeglut3-dbg package would just not be marked Multi-Arch: same.

But in any case, reverting both those changes gets me a -dbg package with these contents:

-rw-r--r-- root/root 508467 2012-08-23 00:54 ./usr/lib/debug/usr/lib/x86_64-linux-gnu/libglut.so.3.9.0

That looks like a correctly arch-qualified path already to me.

Revision history for this message
Michael Vogt (mvo) wrote :

Thanks again Steve, you are right, reverting both changes results in the -dbg package that contains the right multiarch path. I re-uploaded a new version with these changes to precise-proposed now.

Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Guilllermo, or anyone else affected,

Accepted freeglut into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/freeglut/2.6.0-1ubuntu3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in freeglut (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Michael Vogt (mvo) wrote :

Steve, you simply rock! Thanks a lot for your review and help with this.

Revision history for this message
Dave Morley (davmor2) wrote :

Confirmed this is now working with Fieldrunners on 64bit precise with the fix in place.

Revision history for this message
Scott Kitterman (kitterman) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package freeglut - 2.6.0-1ubuntu3

---------------
freeglut (2.6.0-1ubuntu3) precise-proposed; urgency=low

  * Port to multiarch, based on the debian and quantal changes
    LP: #885652
 -- Michael Vogt <email address hidden> Thu, 23 Aug 2012 13:41:42 +0200

Changed in freeglut (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.