Bug#417568: art_misc.h doesn't mark some functions as 'extern "C"'

Roderich Schupp roderich.schupp at googlemail.com
Tue Apr 3 11:41:07 UTC 2007


Package: libart-2.0-dev
Version: 2.3.19-1

Hi,
while trying to rebuild kdelibs it failed beacuse it could not
find the functions art_alloc, art_free etc when linking
(though libart_lgpl.la was correctly specified for "libtool --link ...").
Turns out that these functions where taken as C++ functions
(i.e. with mangled names). art_misc.h is to blame -
functions were not marked as 'extern "C"', suggested patch below.

Cheers, Roderich

--- libart-lgpl-2.3.19-ORIG/art_misc.h  2007-04-03 13:04:00.000000000 +0200
+++ libart-lgpl-2.3.19/art_misc.h       2007-04-03 13:04:40.000000000 +0200
@@ -34,10 +34,6 @@
 #include <libart_lgpl/art_config.h>
 #endif

-void *art_alloc(size_t size);
-void art_free(void *ptr);
-void *art_realloc(void *ptr, size_t size);
-
 /* These aren't, strictly speaking, configuration macros, but they're
    damn handy to have around, and may be worth playing with for
    debugging. */
@@ -78,6 +74,10 @@
 extern "C" {
 #endif

+void *art_alloc(size_t size);
+void art_free(void *ptr);
+void *art_realloc(void *ptr, size_t size);
+
 void ART_GNUC_NORETURN
 art_die (const char *fmt, ...) ART_GNUC_PRINTF (1, 2);





More information about the pkg-gnome-maintainers mailing list