Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Oct 2013 03:48:05 GMT
From:      AN <andy@neu.net>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/183144: compiz broken on 11-current
Message-ID:  <201310210348.r9L3m5Oi095565@oldred.freebsd.org>
Resent-Message-ID: <201310210350.r9L3o0TE008678@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         183144
>Category:       ports
>Synopsis:       compiz broken on 11-current
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 21 03:50:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     AN
>Release:        11-current
>Organization:
>Environment:
FreeBSD FBSD11 11.0-CURRENT FreeBSD 11.0-CURRENT #1 r256799: Sun Oct 20 14:58:19  2013     root@FBSD11:/usr/obj/usr/src/sys/MYKERNEL  amd64

>Description:
compiz-plugins-main needs several patches on current.  It compiles and installs successfully, but when you start compiz there are no window decorations or borders.  Starting compiz on the command line produces the following error message:

/usr/local/lib/compiz/libanimation.so: Undefined symbol "animGetI"
>How-To-Repeat:
Install compiz, execute the following command:
#! /bin/sh
compiz --replace --sm-disable --ignore-desktop-hints ccp &
gtk-window-decorator --replace &


>Fix:
Attached patch was written by Dimitry Andric.  I confirm the patches fix the problem for me, compiz is working normally.  (Thanks for the fix Dimitry!)

The message from Dimitry is archived here:
http://www.mail-archive.com/freebsd-ports@freebsd.org/msg45807.html

"Please try applying the attached patch (easiest is to use svn patch from
the root of your ports tree).  This fixes a number of problems with
inline functions in compiz-plugins-main."

Index: x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h

Dimitry broke the single patch into 4 patches that I put into x11-wm/compiz-plugins-main/files and reinstalled.  I tried to attach the 4 separate files but the form would not let me, so I attached the single patch.  I can upload the separate patches somewhere if necessary, please let me know.



Patch attached with submission follows:

Index: x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h	(working copy)
@@ -0,0 +1,81 @@
+--- include/compiz-animation.h.orig	2009-10-14 03:01:42.000000000 +0200
++++ include/compiz-animation.h	2012-12-10 00:51:30.000000000 +0100
+@@ -215,7 +215,7 @@ typedef struct _AnimBaseFunctions {
+ 
+ #define OPTION_GETTERS(extensionBaseFunctions,				\
+ 		       extensionPluginInfo, firstEffectOption)		\
+-static inline CompOptionValue *						\
++extern inline CompOptionValue *						\
+ animGetOptVal (CompWindow *w,						\
+ 	       int optionId)						\
+ {									\
+@@ -223,35 +223,35 @@ animGetOptVal (CompWindoIndex: x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h	(working copy)
@@ -0,0 +1,81 @@
+--- include/compiz-animation.h.orig	2009-10-14 03:01:42.000000000 +0200
++++ include/compiz-animation.h	2012-12-10 00:51:30.000000000 +0100
+@@ -215,7 +215,7 @@ typedef struct _AnimBaseFunctions {
+ 
+ #define OPTION_GETTERS(extensionBaseFunctions,				\
+ 		       extensionPluginInfo, firstEffectOption)		\
+-static inline CompOptionValue *						\
++extern inline CompOptionValue *						\
+ animGetOptVal (CompWindow *w,						\
+ 	       int optionId)						\
+ {									\
+@@ -223,35 +223,35 @@ animGetOptVal (CompWindow *w,						\
+     	(w, (extensionPluginInfo), optionId - (firstEffectOption));	\
+ }						\
+ 						\
+-inline Bool					\
++extern inline Bool				\
+ animGetB (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->b;	\
+ }						\
+ 						\
+-inline int					\
++extern inline int				\
+ animGetI (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->i;	\
+ }						\
+ 						\
+-inline float					\
++extern inline float				\
+ animGetF (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->f;	\
+ }						\
+ 						\
+-inline char *					\
++extern inline char *				\
+ animGetS (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->s;	\
+ }						\
+ 						\
+-inline unsigned short *				\
++extern inline unsigned short *			\
+ animGetC (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+@@ -260,23 +260,23 @@ animGetC (CompWindow *w,			\
+ 
+ #define OPTION_GETTERS_HDR			\
+ 						\
+-inline Bool					\
++extern inline Bool				\
+ animGetB (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline int					\
++extern inline int				\
+ animGetI (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline float					\
++extern inline float				\
+ animGetF (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline char *					\
++extern inline char *				\
+ animGetS (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline unsigned short *				\
++extern inline unsigned short *			\
+ animGetC (CompWindow *w,			\
+ 	  int optionId);
+ 
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h	(working copy)
@@ -0,0 +1,20 @@
+--- src/animation/animation-internal.h.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/animation-internal.h	2012-12-10 00:55:13.000000000 +0100
+@@ -429,7 +429,7 @@ applyPerspectiveSkew (CompOutput *output
+ 		      CompTransform *transform,
+ 		      Point *center);
+ 
+-inline void
++extern inline void
+ applyTransform (CompTransform *wTransform,
+ 		CompTransform *transform);
+ 
+@@ -616,7 +616,7 @@ fxZoomInit (CompWindow * w);
+ void
+ applyZoomTransform (CompWindow * w);
+ 
+-void
++extern inline void
+ getZoomCenterScale (CompWindow *w,
+ 		    Point *pCurCenter, Point *pCurScale);
+ 
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c	(working copy)
@@ -0,0 +1,11 @@
+--- src/animation/animation.c.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/animation.c	2012-12-10 00:46:15.000000000 +0100
+@@ -742,7 +742,7 @@ defaultUpdateWindowTransform (CompWindow
+ }
+ 
+ // Apply transform to wTransform
+-inline void
++extern inline void
+ applyTransform (CompTransform *wTransform,
+ 		CompTransform *transform)
+ {
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c	(working copy)
@@ -0,0 +1,11 @@
+--- src/animation/zoomside.c.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/zoomside.c	2012-12-10 00:55:13.000000000 +0100
+@@ -303,7 +303,7 @@ getZoomCenterScaleFull (CompWindow *w,
+ 	*pRotateProgress = rotateProgress;
+ }
+ 
+-inline void
++extern inline void
+ getZoomCenterScale (CompWindow *w,
+ 		    Point *pCurCenter, Point *pCurScale)
+ {Index: x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-include__compiz-animation.h	(working copy)
@@ -0,0 +1,81 @@
+--- include/compiz-animation.h.orig	2009-10-14 03:01:42.000000000 +0200
++++ include/compiz-animation.h	2012-12-10 00:51:30.000000000 +0100
+@@ -215,7 +215,7 @@ typedef struct _AnimBaseFunctions {
+ 
+ #define OPTION_GETTERS(extensionBaseFunctions,				\
+ 		       extensionPluginInfo, firstEffectOption)		\
+-static inline CompOptionValue *						\
++extern inline CompOptionValue *						\
+ animGetOptVal (CompWindow *w,						\
+ 	       int optionId)						\
+ {									\
+@@ -223,35 +223,35 @@ animGetOptVal (CompWindow *w,						\
+     	(w, (extensionPluginInfo), optionId - (firstEffectOption));	\
+ }						\
+ 						\
+-inline Bool					\
++extern inline Bool				\
+ animGetB (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->b;	\
+ }						\
+ 						\
+-inline int					\
++extern inline int				\
+ animGetI (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->i;	\
+ }						\
+ 						\
+-inline float					\
++extern inline float				\
+ animGetF (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->f;	\
+ }						\
+ 						\
+-inline char *					\
++extern inline char *				\
+ animGetS (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->s;	\
+ }						\
+ 						\
+-inline unsigned short *				\
++extern inline unsigned short *			\
+ animGetC (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+@@ -260,23 +260,23 @@ animGetC (CompWindow *w,			\
+ 
+ #define OPTION_GETTERS_HDR			\
+ 						\
+-inline Bool					\
++extern inline Bool				\
+ animGetB (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline int					\
++extern inline int				\
+ animGetI (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline float					\
++extern inline float				\
+ animGetF (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline char *					\
++extern inline char *				\
+ animGetS (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline unsigned short *				\
++extern inline unsigned short *			\
+ animGetC (CompWindow *w,			\
+ 	  int optionId);
+ 
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h	(working copy)
@@ -0,0 +1,20 @@
+--- src/animation/animation-internal.h.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/animation-internal.h	2012-12-10 00:55:13.000000000 +0100
+@@ -429,7 +429,7 @@ applyPerspectiveSkew (CompOutput *output
+ 		      CompTransform *transform,
+ 		      Point *center);
+ 
+-inline void
++extern inline void
+ applyTransform (CompTransform *wTransform,
+ 		CompTransform *transform);
+ 
+@@ -616,7 +616,7 @@ fxZoomInit (CompWindow * w);
+ void
+ applyZoomTransform (CompWindow * w);
+ 
+-void
++extern inline void
+ getZoomCenterScale (CompWindow *w,
+ 		    Point *pCurCenter, Point *pCurScale);
+ 
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c	(working copy)
@@ -0,0 +1,11 @@
+--- src/animation/animation.c.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/animation.c	2012-12-10 00:46:15.000000000 +0100
+@@ -742,7 +742,7 @@ defaultUpdateWindowTransform (CompWindow
+ }
+ 
+ // Apply transform to wTransform
+-inline void
++extern inline void
+ applyTransform (CompTransform *wTransform,
+ 		CompTransform *transform)
+ {
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c	(working copy)
@@ -0,0 +1,11 @@
+--- src/animation/zoomside.c.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/zoomside.c	2012-12-10 00:55:13.000000000 +0100
+@@ -303,7 +303,7 @@ getZoomCenterScaleFull (CompWindow *w,
+ 	*pRotateProgress = rotateProgress;
+ }
+ 
+-inline void
++extern inline void
+ getZoomCenterScale (CompWindow *w,
+ 		    Point *pCurCenter, Point *pCurScale)
+ {w *w,						\
+     	(w, (extensionPluginInfo), optionId - (firstEffectOption));	\
+ }						\
+ 						\
+-inline Bool					\
++extern inline Bool				\
+ animGetB (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->b;	\
+ }						\
+ 						\
+-inline int					\
++extern inline int				\
+ animGetI (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->i;	\
+ }						\
+ 						\
+-inline float					\
++extern inline float				\
+ animGetF (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->f;	\
+ }						\
+ 						\
+-inline char *					\
++extern inline char *				\
+ animGetS (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+     return animGetOptVal (w, optionId)->s;	\
+ }						\
+ 						\
+-inline unsigned short *				\
++extern inline unsigned short *			\
+ animGetC (CompWindow *w,			\
+ 	  int optionId)				\
+ {						\
+@@ -260,23 +260,23 @@ animGetC (CompWindow *w,			\
+ 
+ #define OPTION_GETTERS_HDR			\
+ 						\
+-inline Bool					\
++extern inline Bool				\
+ animGetB (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline int					\
++extern inline int				\
+ animGetI (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline float					\
++extern inline float				\
+ animGetF (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline char *					\
++extern inline char *				\
+ animGetS (CompWindow *w,			\
+ 	  int optionId);			\
+ 						\
+-inline unsigned short *				\
++extern inline unsigned short *			\
+ animGetC (CompWindow *w,			\
+ 	  int optionId);
+ 
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__animation-internal.h	(working copy)
@@ -0,0 +1,20 @@
+--- src/animation/animation-internal.h.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/animation-internal.h	2012-12-10 00:55:13.000000000 +0100
+@@ -429,7 +429,7 @@ applyPerspectiveSkew (CompOutput *output
+ 		      CompTransform *transform,
+ 		      Point *center);
+ 
+-inline void
++extern inline void
+ applyTransform (CompTransform *wTransform,
+ 		CompTransform *transform);
+ 
+@@ -616,7 +616,7 @@ fxZoomInit (CompWindow * w);
+ void
+ applyZoomTransform (CompWindow * w);
+ 
+-void
++extern inline void
+ getZoomCenterScale (CompWindow *w,
+ 		    Point *pCurCenter, Point *pCurScale);
+ 
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__animation.c	(working copy)
@@ -0,0 +1,11 @@
+--- src/animation/animation.c.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/animation.c	2012-12-10 00:46:15.000000000 +0100
+@@ -742,7 +742,7 @@ defaultUpdateWindowTransform (CompWindow
+ }
+ 
+ // Apply transform to wTransform
+-inline void
++extern inline void
+ applyTransform (CompTransform *wTransform,
+ 		CompTransform *transform)
+ {
Index: x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c
===================================================================
--- x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c	(revision 0)
+++ x11-wm/compiz-plugins-main/files/patch-src__animation__zoomside.c	(working copy)
@@ -0,0 +1,11 @@
+--- src/animation/zoomside.c.orig	2009-10-14 03:01:42.000000000 +0200
++++ src/animation/zoomside.c	2012-12-10 00:55:13.000000000 +0100
+@@ -303,7 +303,7 @@ getZoomCenterScaleFull (CompWindow *w,
+ 	*pRotateProgress = rotateProgress;
+ }
+ 
+-inline void
++extern inline void
+ getZoomCenterScale (CompWindow *w,
+ 		    Point *pCurCenter, Point *pCurScale)
+ {


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310210348.r9L3m5Oi095565>