Merge lp:~adam-stokes/ubuntu/quantal/gnome-vfs/lp977940-multiarch into lp:ubuntu/quantal/gnome-vfs
| Status: | Merged |
|---|---|
| Merge reported by: | Stéphane Graber |
| Merged at revision: | not available |
| Proposed branch: | lp:~adam-stokes/ubuntu/quantal/gnome-vfs/lp977940-multiarch |
| Merge into: | lp:ubuntu/quantal/gnome-vfs |
| Diff against target: |
223 lines (+50/-17) 7 files modified
debian/changelog (+13/-0) debian/control (+11/-3) debian/control.in (+13/-4) debian/libgnomevfs2-0.install (+3/-3) debian/libgnomevfs2-dev.install (+5/-5) debian/libgnomevfs2-extra.install (+1/-1) debian/rules (+4/-1) |
| To merge this branch: | bzr merge lp:~adam-stokes/ubuntu/quantal/gnome-vfs/lp977940-multiarch |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Adam Stokes | Needs Information on 2012-08-07 | ||
| Jamie Strandboge | Needs Information on 2012-07-23 | ||
| Ubuntu branches | 2012-07-10 | Pending | |
|
Review via email:
|
|||
Description of the Change
- Forces libgnomevfs2-common to be replaced in order to clean out older files from libgnomevfs2-extra in a previous non multiarch package.
- Rebuilt with multi-arch support (LP: #977940)
| Adam Stokes (adam-stokes) wrote : | # |
> While I have not done multiarch transitions myself, I read through the various
> documentation and wonder why libgnomevfs2-bin uses 'Multi-Arch: foreign'.
> Shouldn't this be 'Multi-Arch: same' because libgnomevfs2-bin provides
> binaries in /usr/bin (and in debian/control* uses 'Architecture: any' as
> opposed to 'all') and therfore does not meet the "one copy of this package, of
> any architecture, is sufficient to satisfy the needs of the runtime library
> package of every architecture" as per http://
> ntation#
>
> Otherwise, it looks like there is an approporiate use of Breaks, Replaces,
> Pre-Depends, etc. The files install to the correct places and the pc files
> look ok by visual inspection.
I'm still a little unclear behind the Multi-Arch: same vs. foreign. As I see it we mark the binary package as foreign stating that "The package is not co-installable with itself, but should be allowed to satisfy the dependencies of a package of a different arch from itself."
I'm probably mis-reading the documentation but if someone could verify Jamie's question I can make modifications if necessary.
| Stéphane Graber (stgraber) wrote : | # |
From the wiki:
Multi-Arch: same
This package is co-installable with itself, but it must not be used to satisfy the dependency of any package of a different architecture from itself.
Multi-Arch: foreign
The package is not co-installable with itself, but should be allowed to satisfy the dependencies of a package of a different arch from itself.
If a package is declared Multi-Arch: foreign, preference should be given to a package for the native architecture if available; if it is not available, the package manager may automatically install any available package, regardless of architecture, or it may choose to make this an option controlled by user configuration.
Multi-Arch: allowed
This permits the reverse-
Multi-Arch: same should only be used when the package is co-installable with itself from another architecture, so it'd be wrong to use it for a package shipping stuff in /usr/bin.
Multi-Arch: foreign is however the right choice for a package shipping binaries in /usr/bin and that doesn't contain any library.
| Adam Stokes (adam-stokes) wrote : | # |
Waiting on rdepends testing to finish, it is suggested to wait for those results before ack.
| Adam Stokes (adam-stokes) wrote : | # |
rdeps tests:
./gnome-
./gst-plugins-
./shotwell_
./gnome-
./inkscape_
./libgnomeui_
./libgnome_
./libgsf_
| Stéphane Graber (stgraber) wrote : | # |
Can you make sure all changes are covered in the changelog?
The Breaks/Replaces change isn't currently covered and neither is the versioned dependency on cdbs and dh (thouh these might have been required for the multi-arch pre-depends?)
- 36. By Adam Stokes on 2012-08-10
-
* Add breaks for libgnomevfs2-common << 2.24.4
* In addition to breaking on earlier versions we
force libgnomevfs2-common to be reinstalled
this ensures all library locations are properly created and files
exist in their architecture specific installation.
* Update build deps version to receive the full support of multi-arch
processing.


While I have not done multiarch transitions myself, I read through the various documentation and wonder why libgnomevfs2-bin uses 'Multi-Arch: foreign'. Shouldn't this be 'Multi-Arch: same' because libgnomevfs2-bin provides binaries in /usr/bin (and in debian/control* uses 'Architecture: any' as opposed to 'all') and therfore does not meet the "one copy of this package, of any architecture, is sufficient to satisfy the needs of the runtime library package of every architecture" as per http:// wiki.debian. org/Multiarch/ Implementation# Converting_ your_package_ for_multiarch?
Otherwise, it looks like there is an approporiate use of Breaks, Replaces, Pre-Depends, etc. The files install to the correct places and the pc files look ok by visual inspection.