rpms/icewm/F-10 icewm-fribidi.patch, NONE, 1.1 icewm-configure.patch, 1.1, 1.2 icewm.spec, 1.15, 1.16

Gilboa Davara gilboa at fedoraproject.org
Thu Sep 24 22:23:27 UTC 2009


Author: gilboa

Update of /cvs/pkgs/rpms/icewm/F-10
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv1799

Modified Files:
	icewm-configure.patch icewm.spec 
Added Files:
	icewm-fribidi.patch 
Log Message:


icewm-fribidi.patch:
 configure.in    |   14 ++++++++++++++
 src/yfontxft.cc |   40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+)

--- NEW FILE icewm-fribidi.patch ---
--- src/yfontxft.cc.old	2009-09-25 00:07:51.000000000 +0300
+++ src/yfontxft.cc	2009-09-25 00:18:09.000000000 +0300
@@ -6,6 +6,11 @@
 #include "ypaint.h"
 #include "yxapp.h"
 #include "intl.h"
+#include <stdio.h>
+
+#ifdef CONFIG_FRIBIDI
+    #include <fribidi/fribidi.h>
+#endif
 
 /******************************************************************************/
 
@@ -68,10 +73,45 @@
                            char_t * str, size_t len)
     {
         XftColor *c = *g.color();
+
+#ifdef CONFIG_FRIBIDI
+
+#define STATIS_STRING_SIZE	256
+
+		// Based around upstream (1.3.2) patch with some optimization
+		//   on my end. (reduce unnecessary memory allocation)
+		// - Gilboa
+
+		char_t static_str[STATIS_STRING_SIZE];
+		char_t *vis_str = static_str;
+
+		if (len >= STATIS_STRING_SIZE)
+		{
+			vis_str = new char_t[len+1];
+			if (!vis_str)
+				return;
+		}
+
+		FriBidiCharType pbase_dir = FRIBIDI_TYPE_N;
+		fribidi_log2vis(str, len, &pbase_dir, //input
+						vis_str, // output
+						NULL, NULL, NULL // "statistics" that we don't need
+						);
+		str = vis_str;
+#endif
+
         XftDrawString(g.handleXft(), c, font,
                       x - g.xorigin(),
                       y - g.yorigin(),
                       str, len);
+
+#ifdef CONFIG_FRIBIDI
+
+		if (vis_str != static_str)
+			delete[] str;
+
+#endif
+
     }
 
     static void textExtents(XftFont * font, char_t * str, size_t len,
--- configure.in.old	2009-09-25 00:05:08.000000000 +0300
+++ configure.in	2009-09-25 00:07:14.000000000 +0300
@@ -307,6 +307,20 @@
       features="${features} i18n"
 fi
 
+dnl =================================================== Right to left support ===
+dnl
+AC_ARG_ENABLE(fribidi,
+  [  --disable-fribidi       Disable right to left support])
+      
+if test "$enable_fribidi" != "no" && test "$enable_i18n" != "no"; then
+  PKG_CHECK_MODULES(FRIBIDI, fribidi)
+
+  AC_DEFINE(CONFIG_FRIBIDI,1, [Define to enable fribidi support])
+        
+  CORE_CFLAGS="${CORE_CFLAGS} ${FRIBIDI_CFLAGS}"
+  CORE_LIBS="${CORE_LIBS} ${FRIBIDI_LIBS}"
+fi
+
 dnl ============================================================ NLS Support ===
 dnl
 AC_ARG_ENABLE(nls,

icewm-configure.patch:
 configure.in |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Index: icewm-configure.patch
===================================================================
RCS file: /cvs/pkgs/rpms/icewm/F-10/icewm-configure.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- icewm-configure.patch	15 Feb 2007 09:55:58 -0000	1.1
+++ icewm-configure.patch	24 Sep 2009 22:23:26 -0000	1.2
@@ -1,17 +1,16 @@
 --- icewm-1.2.30/configure.in.old	2007-01-16 16:12:51.000000000 +0200
 +++ icewm-1.2.30/configure.in	2007-01-16 16:13:31.000000000 +0200
-@@ -814,7 +814,7 @@
- 	APPLICATIONS="${APPLICATIONS} icewm-menu-gnome2"
- 	GNOME2_PREFIX=`pkg-config --variable=prefix gnome-desktop-2.0`
- 	GWMDIR="${GNOME2_PREFIX}/share/gnome/wm-properties/"
--	CONFIG_GNOME2_MENU_DIR="${GNOME2_PREFIX}/share/gnome/vfolders/"
-+	CONFIG_GNOME2_MENU_DIR="${GNOME2_PREFIX}/share/desktop-directories/
-       fi
+@@ -820,15 +820,15 @@
+     
+       if test "${PKG_CONFIG}" != ""; then
+ 	GNOME_VER=2
+-	GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0`
+-	GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0`
++	GNOME2_CFLAGS=`pkg-config --cflags gnome-desktop-2.0 libgnomeui-2.0`
++	GNOME2_LIBS=`pkg-config --libs gnome-desktop-2.0 libgnomeui-2.0`
+ 
+ 	AC_DEFINE(CONFIG_GNOME_MENUS, 1, [Define to make IceWM more GNOME-friendly])
  
-       if test "${GNOME2_CFLAGS}" = ""; then
---- icewm-1.2.30/configure.old	2007-01-16 17:44:10.000000000 +0200
-+++ icewm-1.2.30/configure	2007-01-16 17:44:31.000000000 +0200
-@@ -12000,7 +12000,7 @@
  	APPLICATIONS="${APPLICATIONS} icewm-menu-gnome2"
  	GNOME2_PREFIX=`pkg-config --variable=prefix gnome-desktop-2.0`
  	GWMDIR="${GNOME2_PREFIX}/share/gnome/wm-properties/"


Index: icewm.spec
===================================================================
RCS file: /cvs/pkgs/rpms/icewm/F-10/icewm.spec,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -p -r1.15 -r1.16
--- icewm.spec	16 Jul 2009 11:06:31 -0000	1.15
+++ icewm.spec	24 Sep 2009 22:23:26 -0000	1.16
@@ -1,6 +1,6 @@
 Name:			icewm
 Version:		1.2.37
-Release:		1%{?dist}
+Release:		5%{?dist}
 Summary:		Light and configurable window manager
 
 Group:			User Interface/Desktops
@@ -29,6 +29,7 @@ BuildRequires:	libXft-devel
 BuildRequires:	libICE-devel
 BuildRequires:	gettext
 BuildRequires:	gnome-desktop-devel
+BuildRequires:	fribidi-devel
 %if 0%{?fedora} > 10
 BuildRequires:	libgnomeui-devel
 BuildRequires:	gnome-vfs2-devel
@@ -46,6 +47,7 @@ Patch0:			icewm-configure.patch
 Patch1:			icewm-menu.patch
 Patch2:			icewm-toolbar.patch
 Patch3:			icewm-keys.patch
+Patch4:			icewm-fribidi.patch
 
 
 %description
@@ -95,13 +97,16 @@ older Fedora releases and RHEL.
 %patch1 -p1 -b .menu
 %patch2 -p1 -b .toolbar
 %patch3 -p1 -b .keys
+%patch4 -p0 -b .fribidi
 
 
 %build
 # Configure sets the CXXFLAGS to: -fpermissive -fno-exceptions -fno-rtti -Wxxx...
 # In general it doesn't seem to break anything. BZ# if you hit something bad.
+./autogen.sh
 %configure --enable-gradients 					\
 			--enable-antialiasing				\
+			--enable-i18n						\
 			--enable-menus-gnome2				\
 			--disable-menus-gnome1				\
 			--with-cfgdir=%{_sysconfdir}/icewm
@@ -201,6 +206,12 @@ rm -rf $RPM_BUILD_ROOT
 
 
 %changelog
+* Wed Sep 24 2009 Gilboa Davara <gilboad[AT]gmail.com> - 1.2.37-5
+- Patch in missing fribidi support. (#515134)
+
+* Fri Jul 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.2.37-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
 * Wed Jul 15 2009 Gilboa Davara <gilboad[AT]gmail.com> - 1.2.37-1
 - 1.2.37.
 - Fix missing directory ownership. (#483346)




More information about the fedora-extras-commits mailing list