Re: gcc 3.2 transition in unstable
On Sun, Jan 05, 2003 at 02:35:09PM -0800, Ryan Murray wrote:
> * If you have workarounds to build with a specific gcc version on
> certain architectures, these should be removed (gcc-3.0 will not
> be staying in the archive for long). Also if there are specific
> optimization settings that have been used to workaround compiler
> bugs, these should be removed, if possible.
May I suggest the following reformatting/reordering/clarification?
I've added a short not about shlibs-file, too.
> * If you maintain a library or program written in C++ that is
> not part of the qt2 dependency chain (this includes
> programs/libraries using qt3)
> + Wait until all of your dependencies have been uploaded in
> `c102' versions, and rebuilt on all architectures.
> + if the respective package is a library:
> o add a `c102' to the end of the name of your .deb, eg
> libdb4.0++.deb -> libdb4.0++c102.deb. This is similar in
> spirit to the glibc transition adding `g' to the end of
> o You should not add a `c102' to your -dev package.
> o The exact placement of the `c102' can be tricky. It's
> not terribly important; the important thing is that the
> new package conflicts with the old and has a different
> name. Stylistically, we prefer to keep the `c102'
> adjacent to the soname number, e.g. libqt3c102-mt-odbc,
> but if your package ends in a ++, put the `c102' after
> o Add a Conflict with the non-`c102' version of the
> o Ensure that you're using g++-3.2 to build. You should
> have g++ (>= 2:3.2) installed on the system you build
> o Change the shlibs-file to reflect the new package name.
> (Usually not necessary if you are using dh_makeshlibs)
> o Optionally, you may wish to add a note in your package
> description that this version of your library is for use
> with GCC 3.2.
> + If your Depends: line isn't generated automatically, you'll
> need to change it too. But you should be using dpkg-shlibdeps
> anyway ;-)
> + Upload and rejoice!
> * Otherwise if your program/library depends, either directly or indirectly,
> on libqt2:
> * Build using libqt3, if possible, and see the previous
> * Otherwise, change the package to build-depend on
> gcc-2.95 [!hppa !ia64], g++-2.95 [!hppa !ia64], gcc-2.96
> [ia64], g++-2.96 [ia64], gcc-3.0 [hppa], g++-3.0 [hppa]
> * Change the package to use gcc-2.95 and g++-2.95 in the
> build process for most archs, -3.0 on hppa, and -2.96 on
> * These packages will be staying with the old ABI that we
> have already shipped with. Many of these packages are
> part of KDE, and will be replaced with KDE3/QT3 versions
[End of modification, context for vdiff follows.
> * If your package contains no C++, do nothing more. You'll start
> building with the new gcc on your next upload.
> You should not rename your package to remove the `c102' suffix until
> upstream changes their soname.