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);