Package: gimp-plugin-registry
Severity: minor
Tags: patch
User: [email protected]
Usertags: clang-ftbfs

Hello,

Using the rebuild infrastructure, your package fails to build with clang 
(instead of gcc).

We detected this kinf of error:
http://clang.debian.net/status.php?version=3.5.0rc1&key=NOT_ALLOWED_HERE

Full build log is available here:
http://clang.debian.net/logs/2014-06-16/gimp-plugin-registry_7.20140602_unstable_clang.log

Thanks,
Alexander

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
--- ./refocus/refocus-0.9.1/src/fwlapack.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./refocus/refocus-0.9.1/src/fwlapack.h	2014-08-17 01:11:32.306044065 +0400
@@ -20,12 +20,17 @@
 #ifndef FWLAPACK_H_INCLUDED
 #include <glib.h>
 
+#include "f2c.h"
+
 G_BEGIN_DECLS
 
 /* Wrapper function for lapack dgesv function */
 int dgesv (const int N, const int NRHS, double *A, const int lda,
            double *B, const int ldb);
 
+extern int dgesv_(integer *n, integer *nrhs, doublereal *a, integer 
+	*lda, integer *ipiv, doublereal *b, integer *ldb, integer *info);
+
 G_END_DECLS
 #define FWLAPACK_H_INCLUDED (1)
 #endif
--- ./refocus/refocus-0.9.1/src/gimppreview.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./refocus/refocus-0.9.1/src/gimppreview.h	2014-08-17 01:11:32.282044480 +0400
@@ -20,8 +20,8 @@
  * Version $Id: gimppreview.h,v 1.1.1.1 2003/01/30 21:30:18 ernstl Exp $
  */
 
-#ifndef GIMP_PREVIEW_H
-#define GIMP_PREVIEW_H
+#ifndef RF_GIMP_PREVIEW_H
+#define RF_GIMP_PREVIEW_H
 
 #include <gtk/gtk.h>
 #include <gdk-pixbuf/gdk-pixbuf.h>
@@ -33,10 +33,10 @@
 #define PREVIEW_FIXED_SIZE           0
 #define PREVIEW_DEFAULT_SIZE         -1
 #define GIMP_TYPE_PREVIEW            (gimp_preview_get_type ())
-#define GIMP_PREVIEW(obj)            (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, RefocusPreview))
-#define GIMP_PREVIEW_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, RefocusPreviewClass))
-#define GIMP_IS_PREVIEW(obj)         (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PREVIEW))
-#define GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW))
+#define RF_GIMP_PREVIEW(obj)            (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, RefocusPreview))
+#define RF_GIMP_PREVIEW_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, RefocusPreviewClass))
+#define RF_GIMP_IS_PREVIEW(obj)         (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PREVIEW))
+#define RF_GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW))
 typedef struct _RefocusPreview RefocusPreview;
 typedef struct _RefocusPreviewClass RefocusPreviewClass;
 typedef struct _RefocusPreviewEvent RefocusPreviewEvent;
@@ -131,4 +131,4 @@
                                              double fraction);
 
 G_END_DECLS
-#endif /* __GIMP_PREVIEW_H__ */
+#endif /* __RF_GIMP_PREVIEW_H__ */
--- ./refocus/build/fwlapack.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./refocus/build/fwlapack.h	2014-08-17 01:11:32.306044065 +0400
@@ -20,12 +20,17 @@
 #ifndef FWLAPACK_H_INCLUDED
 #include <glib.h>
 
+#include "f2c.h"
+
 G_BEGIN_DECLS
 
 /* Wrapper function for lapack dgesv function */
 int dgesv (const int N, const int NRHS, double *A, const int lda,
            double *B, const int ldb);
 
+extern int dgesv_(integer *n, integer *nrhs, doublereal *a, integer 
+	*lda, integer *ipiv, doublereal *b, integer *ldb, integer *info);
+
 G_END_DECLS
 #define FWLAPACK_H_INCLUDED (1)
 #endif
--- ./refocus/build/gimppreview.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./refocus/build/gimppreview.h	2014-08-17 01:11:32.282044480 +0400
@@ -20,8 +20,8 @@
  * Version $Id: gimppreview.h,v 1.1.1.1 2003/01/30 21:30:18 ernstl Exp $
  */
 
-#ifndef GIMP_PREVIEW_H
-#define GIMP_PREVIEW_H
+#ifndef RF_GIMP_PREVIEW_H
+#define RF_GIMP_PREVIEW_H
 
 #include <gtk/gtk.h>
 #include <gdk-pixbuf/gdk-pixbuf.h>
@@ -33,10 +33,10 @@
 #define PREVIEW_FIXED_SIZE           0
 #define PREVIEW_DEFAULT_SIZE         -1
 #define GIMP_TYPE_PREVIEW            (gimp_preview_get_type ())
-#define GIMP_PREVIEW(obj)            (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, RefocusPreview))
-#define GIMP_PREVIEW_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, RefocusPreviewClass))
-#define GIMP_IS_PREVIEW(obj)         (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PREVIEW))
-#define GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW))
+#define RF_GIMP_PREVIEW(obj)            (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, RefocusPreview))
+#define RF_GIMP_PREVIEW_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, RefocusPreviewClass))
+#define RF_GIMP_IS_PREVIEW(obj)         (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PREVIEW))
+#define RF_GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW))
 typedef struct _RefocusPreview RefocusPreview;
 typedef struct _RefocusPreviewClass RefocusPreviewClass;
 typedef struct _RefocusPreviewEvent RefocusPreviewEvent;
@@ -131,4 +131,4 @@
                                              double fraction);
 
 G_END_DECLS
-#endif /* __GIMP_PREVIEW_H__ */
+#endif /* __RF_GIMP_PREVIEW_H__ */
--- ./focus-blur/focusblur-3.2.6/src/interface.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/interface.h	2014-08-17 01:11:32.206045814 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_INTERFACE_H__
 #define __FOCUSBLUR_INTERFACE_H__
 
-#include <glib/gtypes.h>
+#include <glib.h>
 
 #include "focusblurtypes.h"
 
--- ./focus-blur/focusblur-3.2.6/src/aaa.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/aaa.h	2014-08-17 01:11:32.202045882 +0400
@@ -19,8 +19,7 @@
 #ifndef __AAA_H__
 #define __AAA_H__
 
-#include <glib/gmacros.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 
 
 G_BEGIN_DECLS
--- ./focus-blur/focusblur-3.2.6/src/focusblur.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/focusblur.h	2014-08-17 01:11:32.206045814 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_H__
 #define __FOCUSBLUR_H__
 
-#include <glib/gmacros.h>
+#include <glib.h>
 
 G_BEGIN_DECLS
 
--- ./focus-blur/focusblur-3.2.6/src/source.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/source.h	2014-08-17 01:11:32.206045814 +0400
@@ -24,7 +24,7 @@
 
 #include "config.h"
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <libgimp/gimptypes.h>
 
 #include "focusblurtypes.h"
--- ./focus-blur/focusblur-3.2.6/src/fftblurbuffer.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/fftblurbuffer.h	2014-08-17 01:11:32.202045882 +0400
@@ -28,8 +28,7 @@
 #endif
 #include <fftw3.h>
 
-#include <glib/gmacros.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <gtk/gtkstyle.h>
 #include <libgimp/gimptypes.h>
 #include <libgimpwidgets/gimpwidgetstypes.h>
--- ./focus-blur/focusblur-3.2.6/src/diffusion.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/diffusion.h	2014-08-17 01:11:32.202045882 +0400
@@ -23,7 +23,7 @@
 #define __FOCUSBLUR_DIFFUSION_H__
 
 
-#include <glib/gtypes.h>
+#include <glib.h>
 
 #include "focusblur.h"
 #include "focusblurtypes.h"
--- ./focus-blur/focusblur-3.2.6/src/depthmap.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/depthmap.h	2014-08-17 01:11:32.202045882 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_DEPTHMAP_H__
 #define __FOCUSBLUR_DEPTHMAP_H__
 
-#include <glib/gtypes.h>
+#include <glib.h>
 
 #include "focusblurtypes.h"
 #include "focusblurenums.h"
--- ./focus-blur/focusblur-3.2.6/src/focusblurparam.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/focusblurparam.h	2014-08-17 01:11:32.206045814 +0400
@@ -22,8 +22,7 @@
 #ifndef __FOCUSBLUR_PARAM_H__
 #define __FOCUSBLUR_PARAM_H__
 
-#include <glib/gmacros.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <gtk/gtkstyle.h>
 #include <libgimp/gimptypes.h>
 
--- ./focus-blur/focusblur-3.2.6/src/brush.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/brush.h	2014-08-17 01:11:32.202045882 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_BRUSH_H__
 #define __FOCUSBLUR_BRUSH_H__
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include "focusblurtypes.h"
 
 G_BEGIN_DECLS
--- ./focus-blur/focusblur-3.2.6/src/fftblur.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/fftblur.h	2014-08-17 01:11:32.202045882 +0400
@@ -23,8 +23,7 @@
 #define __FOCUSBLUR_FFTBLUR_H__
 
 
-#include <glib/gmacros.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <libgimpwidgets/gimpwidgetstypes.h>
 
 #include "focusblurparam.h"
--- ./focus-blur/focusblur-3.2.6/src/shine.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/shine.h	2014-08-17 01:11:32.206045814 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_SHINE_H__
 #define __FOCUSBLUR_SHINE_H__
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <libgimp/gimptypes.h>
 
 #include "focusblurtypes.h"
--- ./focus-blur/focusblur-3.2.6/src/focusblurstock.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/focusblurstock.h	2014-08-17 01:11:32.206045814 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_STOCK_H__
 #define __FOCUSBLUR_STOCK_H__
 
-#include <glib/gtypes.h>
+#include <glib.h>
 
 G_BEGIN_DECLS
 
--- ./focus-blur/focusblur-3.2.6/src/render.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/render.h	2014-08-17 01:11:32.206045814 +0400
@@ -24,7 +24,7 @@
 
 #include "config.h"
 
-#include <glib/gtypes.h>
+#include <glib.h>
 //#include <libgimp/gimp.h>
 #include <libgimp/gimpui.h>
 
--- ./focus-blur/focusblur-3.2.6/src/focusblurtypes.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/focusblurtypes.h	2014-08-17 01:11:32.206045814 +0400
@@ -22,7 +22,7 @@
 #ifndef __FOCUSBLUR_TYPES_H__
 #define __FOCUSBLUR_TYPES_H__
 
-#include <glib/gmacros.h>
+#include <glib.h>
 
 
 G_BEGIN_DECLS
--- ./focus-blur/focusblur-3.2.6/src/fftblurproc.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./focus-blur/focusblur-3.2.6/src/fftblurproc.h	2014-08-17 01:11:32.202045882 +0400
@@ -23,8 +23,7 @@
 #define __FOCUSBLUR_FFTBLUR_PROC_H__
 
 
-#include <glib/gmacros.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 
 #include "focusblurtypes.h"
 
--- ./resynthesizer/resynthesizer-master/src/refinerThreaded.h	2014-06-03 01:43:20.000000000 +0400
+++ ../gimp-plugin-registry-7.20140602-my/./resynthesizer/resynthesizer-master/src/refinerThreaded.h	2014-08-17 01:21:35.515442084 +0400
@@ -235,6 +235,45 @@
 #endif
 }
 
+static guint completedPixelCount = 0;  // use atomic add
+static guint estimatedPixelCountToCompletion = 0;
+static guint priorReportedPercentComplete = 0; // use mutexProgress
+static GStaticMutex mutexProgress;
+static void *contextInfo_ = NULL;
+static void (*progressCallback_)(int, void*);
+
+/*
+Nested function is gcc extension.
+Called from inside synthesize() every 4k target pixels.
+Convert to a percent of estimated total pixels to synthesis.
+Callback invoking process every 1 percent.
+Engine may quit early (not complete all passes): then progress makes a large jump.
+
+This function has local variables that are threadsafe, but the global variables are in the parent thread
+and must be synchronized.
+*/
+void
+deepProgressCallback()
+{
+  guint percentComplete;
+
+  // Nonsynchronized: completedPixelCount += IMAGE_SYNTH_CALLBACK_COUNT;
+  (void)__sync_add_and_fetch(&completedPixelCount, IMAGE_SYNTH_CALLBACK_COUNT);
+  percentComplete = ((float)completedPixelCount/estimatedPixelCountToCompletion)*100;
+  if ( percentComplete > priorReportedPercentComplete )
+  {
+    // mutex lock for two reasons:
+    // 1) calls to libgmp, gdk, gtk which are thread aware but not thread safe
+    // 2) incrementing global variable priorReportedPercentComplete
+    // Note threads can still underreport percent complete but it is inconsequential.
+    g_static_mutex_lock(&mutexProgress);
+    // Alternatively, use gdk_thread_enter()
+    progressCallback_((int) percentComplete, contextInfo_);  // Forward deep progress callback to calling process
+    priorReportedPercentComplete = percentComplete;
+    g_static_mutex_unlock(&mutexProgress);
+  }
+}
+
 // Alternative 1
 
 static void 
@@ -259,7 +298,8 @@
 {
   guint pass;
   TRepetionParameters repetition_params;
-  
+  contextInfo_ = contextInfo;
+  progressCallback_ = progressCallback;
 
   // Synthesize in threads.  Note proxies in glibProxy.h for POSIX threads
 #ifdef SYNTH_USE_GLIB_THREADS
@@ -268,7 +308,7 @@
   pthread_t threads[THREAD_LIMIT];
 #endif
   // If not using glib proxied to pthread by glibProxy.h
-  GStaticMutex mutexProgress;
+
   g_static_mutex_init(&mutex);  // defined in synthesize.h
   g_static_mutex_init(&mutexProgress);
 
@@ -277,46 +317,15 @@
 
 
   // For progress
-  guint estimatedPixelCountToCompletion;
+
   // !!! These are global (in the parent) updated by child threads executing callback function deepProgressCallback.
   // The callback must synchronize over them.
-  guint completedPixelCount = 0;  // use atomic add
-  guint priorReportedPercentComplete = 0; // use mutexProgress
   
-  /*
-  Nested function is gcc extension.
-  Called from inside synthesize() every 4k target pixels.
-  Convert to a percent of estimated total pixels to synthesis.
-  Callback invoking process every 1 percent.
-  Engine may quit early (not complete all passes): then progress makes a large jump.
-   
-  This function has local variables that are threadsafe, but the global variables are in the parent thread
-  and must be synchronized.
-  */
-  void
-  deepProgressCallback()
-  {
-    guint percentComplete;
-    
-    // Nonsynchronized: completedPixelCount += IMAGE_SYNTH_CALLBACK_COUNT;
-    (void)__sync_add_and_fetch(&completedPixelCount, IMAGE_SYNTH_CALLBACK_COUNT);
-    percentComplete = ((float)completedPixelCount/estimatedPixelCountToCompletion)*100;
-    if ( percentComplete > priorReportedPercentComplete )
-    {
-      // mutex lock for two reasons:
-      // 1) calls to libgmp, gdk, gtk which are thread aware but not thread safe
-      // 2) incrementing global variable priorReportedPercentComplete
-      // Note threads can still underreport percent complete but it is inconsequential.
-      g_static_mutex_lock(&mutexProgress);       
-      // Alternatively, use gdk_thread_enter()
-      progressCallback((int) percentComplete, contextInfo);  // Forward deep progress callback to calling process
-      priorReportedPercentComplete = percentComplete;
-      g_static_mutex_unlock(&mutexProgress);
-    }
-  }
 
 
+#if !GLIB_CHECK_VERSION (2, 31, 0)
   g_thread_init(NULL);  // Init threading system, not necessary after glib 2.32
+#endif
 
   prepare_repetition_parameters(repetition_params, targetPoints->len);
   estimatedPixelCountToCompletion = estimatePixelsToSynth(repetition_params);
@@ -455,8 +464,9 @@
     }
   }
 
-
+#if !GLIB_CHECK_VERSION (2, 31, 0)
   g_thread_init(NULL);
+#endif
 
   prepare_repetition_parameters(repetition_params, targetPoints->len);
   estimatedPixelCountToCompletion = estimatePixelsToSynth(repetition_params);

Reply via email to