Subject: Bug#337: X2Go issue (in src:nx-libs) has been marked as closed

From: Mike Gabriel <[email-masked]>
Date: Sat, 4 Jan 2014 21:42:44 +0100 (CET)

close #337
thanks

Hello,

we are very hopeful that X2Go issue #337 reported by you
has been resolved in the new release (2:3.5.0.22) of the
X2Go source project »src:nx-libs«.

You can view the complete changelog entry of src:nx-libs (2:3.5.0.22)
below, and you can use the following link to view all the code changes
between this and the last release of src:nx-libs.

    http://code.x2go.org/gitweb?p=nx-libs.git;a=commitdiff;h=b07b3cca09f5aa4a5c32dc4f75df2978a8aacaac;hp=b2a3143f8a9c2d5aaf20c14408354ef9a712a3ee

If you feel that the issue has not been resolved satisfyingly, feel
free to reopen this bug report or submit a follow-up report with
further observations described based on the new released version
of src:nx-libs.

Thanks a lot for contributing to X2Go!!!

light+love
X2Go Git Admin (on behalf of the sender of this mail)

---
X2Go Component: src:nx-libs
Version: 2:3.5.0.22-0x2go1
Status: RELEASE
Date: Sat, 04 Jan 2014 21:39:17 +0100
Fixes: 314 337 370
Changes: 
 nx-libs (2:3.5.0.22-0x2go1) RELEASED; urgency=low
 .
   [ Mirraz Mirraz ]
   * Add patch: 603_nx-X11_compilation_warnings.full.patch. Fix 3 evident bugs:
     one implicit function declaration issue and two array index out of bounds
     issues. (Fixes: #314).
 .
   [ Mike Gabriel ]
   * Add patch 604_nx-X11_recent-freetype-API.full.patch. Fix FTBFS against
     recent (>= 2.5.0) libfreetype6 API.
   * Refresh patch: 600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch.
   * Improve patch:
     601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch.
     Improvements taken from the current Fedora package. Thanks to Orion
     Paplowski!!! Also adapt roll-tarball.sh do dropping more bundled
     libraries.
   * Rename patch: 302_nxagent_configurable-keystrokes.full.patch to
     320_nxagent_configurable-keystrokes.full.patch.
   * debian/source/format:
     + Switch to format 1.0.
   * debian/control:
     + Add libfreetype6-dev to Build-Depends: field.
     + Drop symlinking libNX_xrandr for setting a custom LD_LIBRARY_PATH. Not in
       use anymore and not recommended at all to have that.
     + Make sure all nx-libs components depend on the very same version.
   * debian/rules:
     + Remove bundled libraries from source tree before building the package.
   * nx-libs.spec:
     + Ship nx-libs.spec (RPM package definitions) in upstream project. (Thanks
       to the Fedora package maintainers). File differs from the Fedora file
       already.
     + Clear (Fedora package) changelog.
     + Use local tarball, don't expect  ,,-full'' in tarball name.
     + The RPM macro for the linker flags does not exist on EPEL. Thus, hardcode
       __global_ldflags macro for EPEL builds.
     + Enable Xinerama support for RPM packages. (Fixes: #370).
 .
   [ Clemens Lang ]
   * Add patch 605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full.patch. Fix
     FTBFS of nx-libs-lite on Mac OS X Mavericks. (Fixes: #337).

---

From: [email-masked] (X2Go Bug Tracking System)
Date: Sat, 04 Jan 2014 20:45:04 +0000

This is an automatic notification regarding your Bug report
which was filed against the nx-libs package:

#337: nxcomp doesn't compile against libc++ STL

It has been closed by Mike Gabriel <[email-masked]>.

Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact Mike Gabriel <[email-masked]> by
replying to this email.

-- 
X2Go Bug Tracking System
Contact [email-masked] with problems

Subject: X2Go issue (in src:nx-libs) has been marked as closed
From: Mike Gabriel <[email-masked]>
To: [email-masked]
Cc: [email-masked], [email-masked]
Date: Sat, 4 Jan 2014 21:42:44 +0100 (CET)

close #337
thanks

Hello,

light+love

---

Subject: nxcomp doesn't compile against libc++ STL
From: Clemens Lang <[email-masked]>
To: [email-masked]
Date: Tue, 5 Nov 2013 02:05:15 +0100

Package: nx-libs
Version: 3.5.0.21

The nx-libs-lite package does not compile on OS X Mavericks because
Apple's clang compilers now default to compiling against the libc++ STL
rather than (their outdated copy of) libstdc++.

While the compiler still allows changing that, we should not rely on
this being possible forever.

The compiler chokes in Types.h, specifically the clear() methods in
subclasses of vectors that use implementation details of the GNU STL.
The attached patch fixes these compilation issues by not overriding the
clear() method when compiling against libc++, since the libc++ headers
seem to do essentially the same as the overriden method.

HTH,
-- 
Clemens Lang
MacPorts Developer

--- Types.h.orig	2013-11-05 01:35:22.000000000 +0100
+++ Types.h	2013-11-05 01:37:30.000000000 +0100
@@ -55,6 +55,9 @@
     return &*(vector < unsigned char >::begin());
   }
 
+  // Avoid overriding clear() when using libc++. Fiddling with STL internals
+  // doesn't really seem like a good idea to me anyway.
+  #ifndef _LIBCPP_VECTOR
   void clear()
   {
     #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H)
@@ -95,12 +98,16 @@
 
     #endif  /* #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) */
   }
+  #endif /* #ifdef _LIBCPP_VECTOR */
 };
 
 class T_messages : public vector < Message * >
 {
   public:
 
+  // Avoid overriding clear() when using libc++. Fiddling with STL internals
+  // doesn't really seem like a good idea to me anyway.
+  #ifndef _LIBCPP_VECTOR
   void clear()
   {
     #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H)
@@ -141,6 +148,7 @@
 
     #endif /* #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) */
   }
+  #endif /* #ifndef _LIBCPP_VECTOR */
 };
 
 typedef md5_byte_t * T_checksum;