[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#319388: marked as done ([libglu1-xorg] should hide C++ interfaces)



Your message dated Wed, 27 Aug 2008 18:47:14 +0000
with message-id <E1KYQ30-00009V-Tt@ries.debian.org>
and subject line Bug#319388: fixed in mesa 7.1-1
has caused the Debian Bug report #319388,
regarding [libglu1-xorg] should hide C++ interfaces
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
319388: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=319388
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: libglu1-xorg
Version: 6.8.2.dfsg.1-3
Severity: wishlist
Tags: patch

The X.org implementation of libGLU is coded in C++, but it is intended
to expose only C interfaces.  At present, many of the internal
interfaces are visible in the dynamic symbol table of the shared library,
which means that people may accidentally use them.  A version script should
be applied to hide these internal symbols.  [This is true for all
the X libraries, but it's especially important for libGLU because Debian
is assuming that libGLU need not participate in the C++ ABI transition
because the C++ symbols are internal only.]

I have prepared a crude patch which does this; please find attached
064_libGLU_symbol_versions.diff.  It uses the existing list of exports
(GLU-def.cpp) to generate the version script, which may well be wrong;
someone who knows what libGLU's external interfaces are should check this
carefully.  Also, my Imake-fu is nonexistent, so I have kludged the
map generation and application into xc/lib/GLU/Imakefile rather than doing
something that could be applied to the other libraries.  For these reasons
I don't suggest applying this verbatim; please consider it a starting point.
(Sequence number 064 was arbitrarily chosen, by the way.  It doesn't much
matter - nothing else seems to touch those files.)

zw
diff -Nru3 xc-old/lib/GLU/Imakefile xc/lib/GLU/Imakefile
--- xc-old/lib/GLU/Imakefile	2005-07-21 06:04:53.000000000 +0000
+++ xc/lib/GLU/Imakefile	2005-07-21 06:04:08.000000000 +0000
@@ -109,12 +109,17 @@
 #endif
 
 #if SharedLibGlu
+SHLIBLDFLAGS += -Wl,--version-script,libglu.ver
 #ifdef SharedDepCplusplusLibraryTarget
-SharedDepCplusplusLibraryTarget($(LIBNAME),$(SOREV),$(SUBDIRS) $(DONES),$(SHARED_OBJS),.,.)
+SharedDepCplusplusLibraryTarget($(LIBNAME),$(SOREV),$(SUBDIRS) $(DONES) libglu.ver,$(SHARED_OBJS),.,.)
 #else
-SharedDepLibraryTarget($(LIBNAME),$(SOREV),$(SUBDIRS) $(DONES),$(SHARED_OBJS),.,.)
+SharedDepLibraryTarget($(LIBNAME),$(SOREV),$(SUBDIRS) $(DONES) libglu.ver,$(SHARED_OBJS),.,.)
 #endif
 InstallSharedLibrary($(LIBNAME),$(SOREV),$(SHLIBDIR))
+
+libglu.ver: def2ver.sed GLU-def.cpp
+	sed -f $^ > $@T
+	mv -f $@T $@
 #endif
 
 #if DebugLibGlu
diff -Nru3 xc-old/lib/GLU/def2ver.sed xc/lib/GLU/def2ver.sed
--- xc-old/lib/GLU/def2ver.sed	1970-01-01 00:00:00.000000000 +0000
+++ xc/lib/GLU/def2ver.sed	2005-07-21 05:53:26.000000000 +0000
@@ -0,0 +1,15 @@
+#n
+1i\
+GLU_1.3 {\
+  global:
+/^$/,/^$/{
+  /^$/d
+  /^;/d
+  s/^/    /
+  s/$/;/
+  p
+}
+$a\
+  local:\
+    *;\
+};

--- End Message ---
--- Begin Message ---
Source: mesa
Source-Version: 7.1-1

We believe that the bug you reported is fixed in the latest version of
mesa, which is due to be installed in the Debian FTP archive:

libgl1-mesa-dev_7.1-1_all.deb
  to pool/main/m/mesa/libgl1-mesa-dev_7.1-1_all.deb
libgl1-mesa-dri-dbg_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-dri-dbg_7.1-1_i386.deb
libgl1-mesa-dri_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-dri_7.1-1_i386.deb
libgl1-mesa-glx-dbg_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-glx-dbg_7.1-1_i386.deb
libgl1-mesa-glx_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-glx_7.1-1_i386.deb
libgl1-mesa-swx11-dbg_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-swx11-dbg_7.1-1_i386.deb
libgl1-mesa-swx11-dev_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-swx11-dev_7.1-1_i386.deb
libgl1-mesa-swx11-i686_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-swx11-i686_7.1-1_i386.deb
libgl1-mesa-swx11_7.1-1_i386.deb
  to pool/main/m/mesa/libgl1-mesa-swx11_7.1-1_i386.deb
libglu1-mesa-dev_7.1-1_i386.deb
  to pool/main/m/mesa/libglu1-mesa-dev_7.1-1_i386.deb
libglu1-mesa_7.1-1_i386.deb
  to pool/main/m/mesa/libglu1-mesa_7.1-1_i386.deb
libglw1-mesa-dev_7.1-1_i386.deb
  to pool/main/m/mesa/libglw1-mesa-dev_7.1-1_i386.deb
libglw1-mesa_7.1-1_i386.deb
  to pool/main/m/mesa/libglw1-mesa_7.1-1_i386.deb
libosmesa6-dev_7.1-1_i386.deb
  to pool/main/m/mesa/libosmesa6-dev_7.1-1_i386.deb
libosmesa6_7.1-1_i386.deb
  to pool/main/m/mesa/libosmesa6_7.1-1_i386.deb
mesa-common-dev_7.1-1_all.deb
  to pool/main/m/mesa/mesa-common-dev_7.1-1_all.deb
mesa-utils_7.1-1_i386.deb
  to pool/main/m/mesa/mesa-utils_7.1-1_i386.deb
mesa_7.1-1.diff.gz
  to pool/main/m/mesa/mesa_7.1-1.diff.gz
mesa_7.1-1.dsc
  to pool/main/m/mesa/mesa_7.1-1.dsc
mesa_7.1.orig.tar.gz
  to pool/main/m/mesa/mesa_7.1.orig.tar.gz



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 319388@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Julien Cristau <jcristau@debian.org> (supplier of updated mesa package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Wed, 27 Aug 2008 19:52:24 +0200
Source: mesa
Binary: libgl1-mesa-swx11 libgl1-mesa-swx11-dbg libgl1-mesa-swx11-i686 libgl1-mesa-swx11-dev libgl1-mesa-glx libgl1-mesa-glx-dbg libgl1-mesa-dri libgl1-mesa-dri-dbg libgl1-mesa-dev mesa-common-dev libosmesa6 libosmesa6-dev libglu1-mesa libglu1-mesa-dev libglw1-mesa libglw1-mesa-dev mesa-utils
Architecture: source all i386
Version: 7.1-1
Distribution: experimental
Urgency: low
Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
Changed-By: Julien Cristau <jcristau@debian.org>
Description: 
 libgl1-mesa-dev - A free implementation of the OpenGL API -- GLX development files
 libgl1-mesa-dri - A free implementation of the OpenGL API -- DRI modules
 libgl1-mesa-dri-dbg - Debugging symbols for the Mesa DRI modules
 libgl1-mesa-glx - A free implementation of the OpenGL API -- GLX runtime
 libgl1-mesa-glx-dbg - Debugging symbols for the Mesa GLX runtime
 libgl1-mesa-swx11 - A free implementation of the OpenGL API -- runtime
 libgl1-mesa-swx11-dbg - A free implementation of the OpenGL API -- debugging symbols
 libgl1-mesa-swx11-dev - A free implementation of the OpenGL API -- development files
 libgl1-mesa-swx11-i686 - Mesa OpenGL runtime [i686 optimized]
 libglu1-mesa - The OpenGL utility library (GLU)
 libglu1-mesa-dev - The OpenGL utility library -- development files
 libglw1-mesa - A free implementation of the OpenGL API -- runtime
 libglw1-mesa-dev - A free implementation of the OpenGL API -- development files
 libosmesa6 - Mesa Off-screen rendering extension
 libosmesa6-dev - Mesa Off-screen rendering extension -- development files
 mesa-common-dev - Developer documentation for Mesa
 mesa-utils - Miscellaneous Mesa GL utilities
Closes: 319388
Changes: 
 mesa (7.1-1) experimental; urgency=low
 .
   * Add parallel build support.
   * New upstream development release
     + libGLU now only exports its public interface (closes: #319388)
   * Some more parallel build updates.
Checksums-Sha1: 
 6d7d83c1b364b8748e66107b986c9ad59fa3ea0f 1801 mesa_7.1-1.dsc
 b7cf20985fcdfd0e8014b80791c71597b3f322d8 6466148 mesa_7.1.orig.tar.gz
 e3e40a790e4044d4654e44df37e083a464cd8845 730178 mesa_7.1-1.diff.gz
 12b4d660064534a8bfb848e3355d715eadf58e20 26434 libgl1-mesa-dev_7.1-1_all.deb
 6fccce615dc634aeadf4b673e93e9688d0e93e1d 190936 mesa-common-dev_7.1-1_all.deb
 dd0d5e0fd3c76494a8b7392d67c08fa6bc915875 912360 libgl1-mesa-swx11_7.1-1_i386.deb
 ee0c35001d3a272b0c2e4a5aa9fcc7551e379b3c 5126080 libgl1-mesa-swx11-dbg_7.1-1_i386.deb
 fea7649e888d213ee9435a4e0fd71dc314ee8127 909634 libgl1-mesa-swx11-i686_7.1-1_i386.deb
 ff984da5210b9e18791700fc3437e4c98a8196f9 8412166 libgl1-mesa-swx11-dev_7.1-1_i386.deb
 c7ce9296c4faf0f442da56906315c3c44d901540 150106 libgl1-mesa-glx_7.1-1_i386.deb
 b47c335eaa176812b29c687eae64080d8496e6c1 592776 libgl1-mesa-glx-dbg_7.1-1_i386.deb
 5c924ac37388fca1f81eae4f393146528b790e60 13312964 libgl1-mesa-dri_7.1-1_i386.deb
 96d8f63f6b0a99eb0de093c83cf6fb6ad1b8daaf 85682468 libgl1-mesa-dri-dbg_7.1-1_i386.deb
 493074a30e8a1cbb718e43a7d6590ed6f15eb072 2393216 libosmesa6_7.1-1_i386.deb
 100d61f233a0ef325662717c2809260734cb9579 24784520 libosmesa6-dev_7.1-1_i386.deb
 61005a714093c0e4bfdae3c4db721e466c558b4a 214170 libglu1-mesa_7.1-1_i386.deb
 eca325809288dd344dd67ce38605263f6f9448a6 262556 libglu1-mesa-dev_7.1-1_i386.deb
 37c51911b9b5259375f1c47986c463bef3c63449 31288 libglw1-mesa_7.1-1_i386.deb
 1262cf70bf5657b7f531b50cfb6ae145451134d4 31938 libglw1-mesa-dev_7.1-1_i386.deb
 da7697edd1605ffaaced3e3da38c44702c7a6458 48580 mesa-utils_7.1-1_i386.deb
Checksums-Sha256: 
 98956dd7b17966d2b63463384d290f92b6dc75e36bde7c7b72318812225c6e0d 1801 mesa_7.1-1.dsc
 29d61b9d71d137f8f3f7829b176037f1b6b48b0b551d58f97e0090134ed1f6c3 6466148 mesa_7.1.orig.tar.gz
 b04c70bfdf5ecd05bcc13fc33664e6560be3ba67f0cdc9336046669b28222370 730178 mesa_7.1-1.diff.gz
 a31d0aba03e1bcf06990e2cfd4db63d192f129758854691944d8cd14e1c60b19 26434 libgl1-mesa-dev_7.1-1_all.deb
 16b320e2c437bd4b025256548c0451e14e870edb08e4e3e11e0b72c40003c6e0 190936 mesa-common-dev_7.1-1_all.deb
 99a1caf75dbff840262eb1c1edd294b1d4b4f399fa974bb8cca37661f0602040 912360 libgl1-mesa-swx11_7.1-1_i386.deb
 052102d9dfbde6d4334288cd8d340faaa6664a251c838c40c7226e24cb7ab89a 5126080 libgl1-mesa-swx11-dbg_7.1-1_i386.deb
 506862a68daf1aa3bfa0fa355142cc4fdbe7c9f6ca6bb13242fb383de951a0a8 909634 libgl1-mesa-swx11-i686_7.1-1_i386.deb
 4baa88555434b8801a71447cd1f890c7feea84a77263c54f44f7f86012b5754f 8412166 libgl1-mesa-swx11-dev_7.1-1_i386.deb
 1e1aab3519b78ac83d22745b752ff22ee9277f50492745678d6433a3c07066ce 150106 libgl1-mesa-glx_7.1-1_i386.deb
 5a348ea762f3f0b3f57854580c80a413beaf753f246b899850027082a2fe91b8 592776 libgl1-mesa-glx-dbg_7.1-1_i386.deb
 938cc907cf47f82c29251ad380c226d132e523fa8c230adaaee30a347482ef24 13312964 libgl1-mesa-dri_7.1-1_i386.deb
 033df3c7b3705d59800406b6637c8bb6886a83f227f1b5100c29c864b50c5c43 85682468 libgl1-mesa-dri-dbg_7.1-1_i386.deb
 fa37de8e0a091be8719449ae1648d2f1247070deadbe0483286e96c941df515f 2393216 libosmesa6_7.1-1_i386.deb
 9d6fc4daf67790f2b4c14105b8753ef36aeb7034881b891857ab9d5f9ab14846 24784520 libosmesa6-dev_7.1-1_i386.deb
 3d85b71c314a05f9abbd46cc7b0b280f0c166c4e00a0f8e595e97b567390c9f7 214170 libglu1-mesa_7.1-1_i386.deb
 5a04a11517587e68262164999c908016f99697cbecf05109db2defe4e98e6d71 262556 libglu1-mesa-dev_7.1-1_i386.deb
 90ff20378b72a13aac478922e371549cedc551b23cb869f44b001885bcd5c356 31288 libglw1-mesa_7.1-1_i386.deb
 231f7f9ccacffbb9fd0d8d956ab9b732589c95fff01f75f6e1b17ca0e529d327 31938 libglw1-mesa-dev_7.1-1_i386.deb
 ff9ab01e39f4426d98e63ac4c14b57f9260e78208132c1d369cda303cd0424db 48580 mesa-utils_7.1-1_i386.deb
Files: 
 ebddf2e093824a0205921b9e0fbaa6dc 1801 graphics optional mesa_7.1-1.dsc
 41331b808d33808dc0c8147f441f9443 6466148 graphics optional mesa_7.1.orig.tar.gz
 767aa713fc806e8a76456c41421020f9 730178 graphics optional mesa_7.1-1.diff.gz
 0fcf82f6c98ecaf21e29c811fdbb4726 26434 libdevel optional libgl1-mesa-dev_7.1-1_all.deb
 f174126e1aa6c963690e3d932ea251b0 190936 libdevel optional mesa-common-dev_7.1-1_all.deb
 6b28e4070a34de319a1479d784d73fd5 912360 libs extra libgl1-mesa-swx11_7.1-1_i386.deb
 faf685c2c2f0f1a059ff77c87c7bd773 5126080 libdevel extra libgl1-mesa-swx11-dbg_7.1-1_i386.deb
 c66f17c696313dcc9c65e93aaeb1c952 909634 libs extra libgl1-mesa-swx11-i686_7.1-1_i386.deb
 7ff3d71450cb0aae77a193b2a4182556 8412166 libdevel extra libgl1-mesa-swx11-dev_7.1-1_i386.deb
 e188b8455ff745cac8ee4f9af2ae63cc 150106 libs optional libgl1-mesa-glx_7.1-1_i386.deb
 f81b169d02856299cb4d0935528210cc 592776 libdevel extra libgl1-mesa-glx-dbg_7.1-1_i386.deb
 5ac9badd1e5dbb5ae3b7101896058d71 13312964 libs optional libgl1-mesa-dri_7.1-1_i386.deb
 32a773ea81fd98e6b86ea9f32eaea340 85682468 libdevel extra libgl1-mesa-dri-dbg_7.1-1_i386.deb
 d5923610b8f9e6fe6ab1fb69ef52354e 2393216 libs optional libosmesa6_7.1-1_i386.deb
 dd996dc0de115862fb7c290337bbb2fe 24784520 libdevel optional libosmesa6-dev_7.1-1_i386.deb
 68611b534338b7874af4e9de98e008b8 214170 libs optional libglu1-mesa_7.1-1_i386.deb
 f7c6048a1dc73bcf58057ae2bea37a68 262556 libdevel optional libglu1-mesa-dev_7.1-1_i386.deb
 c34ec5a74a3a330405981f54bece3fb4 31288 libs optional libglw1-mesa_7.1-1_i386.deb
 871c0fcc2da4c2c1ba722f891626722d 31938 libdevel optional libglw1-mesa-dev_7.1-1_i386.deb
 d847c79e51f6b260c79eabc60df6e74b 48580 x11 optional mesa-utils_7.1-1_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAki1nTEACgkQmEvTgKxfcAySNwCghXvlinf/09XykhMS1roUgbS3
OMUAmwZQ1WZWf/ftWYOohMxgC6xU0nW7
=1Vbz
-----END PGP SIGNATURE-----



--- End Message ---

Reply to: