Blob Blame History Raw
--- configure.ac	2009-06-08 00:24:52.604753218 +0300
+++ configure.ac	2009-06-08 00:25:05.257753171 +0300
@@ -404,19 +404,7 @@ fi
 
 # fribidi-config
 
-AC_PATH_PROGS([FRIBIDI_CONFIG], [fribidi-config], [none])
-
-if test "x$FRIBIDI_CONFIG" = "xnone"; then
-    fribidifound=no
-    AC_MSG_WARN([*** FRIBIDI not found.])
-else
-    fribidifound=yes
-    FRIBIDI_CFLAGS=`$FRIBIDI_CONFIG --cflags`
-    FRIBIDI_LIBS=`$FRIBIDI_CONFIG --libs`
-fi
-
-AC_SUBST([FRIBIDI_CFLAGS])
-AC_SUBST([FRIBIDI_LIBS])
+PKG_CHECK_MODULES([FRIBIDI], [fribidi],[fribidifound=yes],[fribidifound=no])
 AM_CONDITIONAL([FRIBIDI], [test "x$fribidifound" = xyes -a "x$fribidi" = xyes ])
 
 # python
--- src/font.cpp	2009-03-15 18:50:42.000000000 +0200
+++ src/font.cpp	2009-06-08 00:19:56.884753434 +0300
@@ -50,9 +50,6 @@ 
 
 #ifdef	HAVE_FRIBIDI
 #include <fribidi/fribidi.h>
-
-#else
-
 #endif
 
 namespace {
@@ -467,16 +464,16 @@ private:
 void text_surface::bidi_cvt()
 {
 	char		*c_str = const_cast<char *>(str_.c_str());	// fribidi forgot const...
-	int		len = str_.length();
+	FriBidiStrIndex	len = str_.length();
 	FriBidiChar	*bidi_logical = new FriBidiChar[len + 2];
 	FriBidiChar	*bidi_visual = new FriBidiChar[len + 2];
 	char		*utf8str = new char[4*len + 1];	//assume worst case here (all 4 Byte characters)
 	FriBidiCharType	base_dir = FRIBIDI_TYPE_ON;
-	int n;
+	FriBidiStrIndex	n;
 
-	n = fribidi_utf8_to_unicode (c_str, len, bidi_logical);
+	n = fribidi_charset_to_unicode(FRIBIDI_CHAR_SET_UTF8, c_str, len, bidi_logical);
 	fribidi_log2vis(bidi_logical, n, &base_dir, bidi_visual, NULL, NULL, NULL);
-	fribidi_unicode_to_utf8 (bidi_visual, n, utf8str);
+	fribidi_unicode_to_charset(FRIBIDI_CHAR_SET_UTF8, bidi_visual, n, utf8str);
 	is_rtl_ = base_dir == FRIBIDI_TYPE_RTL;
 	str_ = std::string(utf8str);
 	delete[] bidi_logical;