[cuneiform] Fix #836706.

Dmitrij S. Kryzhevich krege at fedoraproject.org
Thu Jul 26 06:38:24 UTC 2012


commit e38810dec83efa8f7bbb1a1cdede8e3c5bb2a0db
Author: Dmitrij S. Kryzhevich <krege at land.ru>
Date:   Thu Jul 26 13:38:07 2012 +0700

    Fix #836706.

 cuneiform-size4to5.patch |  218 ++++++++++++++++++++++++++++++++++++++++++++++
 cuneiform.spec           |   22 ++---
 2 files changed, 227 insertions(+), 13 deletions(-)
---
diff --git a/cuneiform-size4to5.patch b/cuneiform-size4to5.patch
new file mode 100644
index 0000000..7b52608
--- /dev/null
+++ b/cuneiform-size4to5.patch
@@ -0,0 +1,218 @@
+diff --git a/cuneiform_src/Kern/fon/src/dist_bou.c b/cuneiform_src/Kern/fon/src/dist_bou.c
+index 415ef36..4b16045 100644
+--- a/cuneiform_src/Kern/fon/src/dist_bou.c
++++ b/cuneiform_src/Kern/fon/src/dist_bou.c
+@@ -1549,7 +1549,7 @@ static int GetAsRecRaster(uchar *inBuf,int xbit,int yrow,
+ }
+ ///////////////
+ // from rcm.c
+-uchar decode_ASCII_to_[256][4]=
++uchar decode_ASCII_to_[256][5]=
+ {
+ /*       0    1      2      3      4      5      6      7      8      9      a      b      c      d      e      f  */
+ /* 0*/ "\x00","\x01","\x02","\x03","\x04","\x05","\x06","\x07","\x08","\x09","\x0a","\x0b","\x0c","\x0d","\x0e","\x0f",
+diff --git a/cuneiform_src/Kern/hrkint/baldefs.h b/cuneiform_src/Kern/hrkint/baldefs.h
+index 2e83fe4..b1e1d6c 100644
+--- a/cuneiform_src/Kern/hrkint/baldefs.h
++++ b/cuneiform_src/Kern/hrkint/baldefs.h
+@@ -84,7 +84,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+       uchar *let_linshape;
+       uchar *let_sans_acc;          // [257]
+       uchar *letters_pidx_table;    // 512
+-      uchar *decode_ASCII_to_;      // [256][4]
++      uchar *decode_ASCII_to_;      // [256][5]
+ 	  Handle skew_corr;
+ 	  Handle rast_is_BOX_solid;
+ 
+diff --git a/cuneiform_src/Kern/rbal/src/lin_ext.c b/cuneiform_src/Kern/rbal/src/lin_ext.c
+index fc9049e..d882cca 100644
+--- a/cuneiform_src/Kern/rbal/src/lin_ext.c
++++ b/cuneiform_src/Kern/rbal/src/lin_ext.c
+@@ -119,7 +119,7 @@ uchar *let_linpos = &let_linempty[0];
+ uchar *let_linshape = &let_linempty[0];
+ uchar *let_sans_acc = &let_linempty[0]; // [257]
+ uchar *letters_pidx_table = &let_linempty[0]; // 512
+-uchar decode_ASCII_to_[256][4] = { 0 };
++uchar decode_ASCII_to_[256][5] = { 0 };
+ 
+ ///////////////////////////////
+ CSTR_rast cell_f() {
+@@ -689,7 +689,7 @@ static void GetRstrGlobals(BAL_RSTR_GLOBALS *rstrGlob) {
+ 	letters_pidx_table = rstrGlob->letters_pidx_table;
+ 	// 512
+ 
+-	memcpy(&decode_ASCII_to_[0][0], rstrGlob->decode_ASCII_to_, 256* 4 );
++	memcpy(&decode_ASCII_to_[0][0], rstrGlob->decode_ASCII_to_, 256* 5 );
+ 	// [256][4]
+ 
+ 	RSTR_skew_corr = rstrGlob->skew_corr;
+diff --git a/cuneiform_src/Kern/rstr/src/acc_tabs.c b/cuneiform_src/Kern/rstr/src/acc_tabs.c
+index 8b701c3..4308325 100644
+--- a/cuneiform_src/Kern/rstr/src/acc_tabs.c
++++ b/cuneiform_src/Kern/rstr/src/acc_tabs.c
+@@ -818,7 +818,7 @@ static void list_turkish_letters();	// 20.05.2002 E.P.
+ 
+ void    correct_let_tables(void) // used in EMBBOX.C: load_BOX()
+ {
+-extern  uchar    decode_ASCII_to_[256][4];
++extern  uchar    decode_ASCII_to_[256][5];
+ extern  uchar    decode_rus_ASCII_to_[256][4];
+ extern  uchar    CodePages[];
+ extern  char    alphabet[256];
+@@ -2989,7 +2989,7 @@ uchar tab[] = {
+ 0};
+ 
+ uchar *p;
+-extern  uchar    decode_ASCII_to_[256][4];
++extern  uchar    decode_ASCII_to_[256][5];
+ 
+ 	// Çäåñü íóæíî îñòàâèòü êîä áåç èçìåíåíèÿ,
+ 	// à âîò â ROUT/CodeTables.cpp ôóíêöèÿ fromcp1250_to_cp852()
+@@ -3031,7 +3031,7 @@ uchar tab[] = {
+ 0};
+ 
+ uchar *p;
+-extern  uchar    decode_ASCII_to_[256][4];
++extern  uchar    decode_ASCII_to_[256][5];
+ 
+ 	for (p = tab; *p; p++)
+ 		{
+@@ -3059,7 +3059,7 @@ uchar tab[] = {
+ 0};
+ 
+ uchar *p;
+-extern  uchar    decode_ASCII_to_[256][4];
++extern  uchar    decode_ASCII_to_[256][5];
+ 
+ 	for (p = tab; *p; p++)
+ 		{
+diff --git a/cuneiform_src/Kern/rstr/src/erect2.c b/cuneiform_src/Kern/rstr/src/erect2.c
+index 99e1fd3..19b89af 100644
+--- a/cuneiform_src/Kern/rstr/src/erect2.c
++++ b/cuneiform_src/Kern/rstr/src/erect2.c
+@@ -81,7 +81,7 @@ extern  int16_t   erect_get_global(void);
+ extern  int16_t   erect_get_represent(void);
+ extern  int16_t   erect_get_words(void);
+ // RCM.C
+-extern uchar decode_ASCII_to_[256][4];
++extern uchar decode_ASCII_to_[256][5];
+ extern uchar line_tabcell;
+ // p2_cour.c
+ extern Bool32   p2_msk_inc(CSTR_rast    rst);
+diff --git a/cuneiform_src/Kern/rstr/src/erection.c b/cuneiform_src/Kern/rstr/src/erection.c
+index 8ebf1ca..8be3adf 100644
+--- a/cuneiform_src/Kern/rstr/src/erection.c
++++ b/cuneiform_src/Kern/rstr/src/erection.c
+@@ -101,7 +101,7 @@ static uchar extr[4];
+   extern int16_t  nIncline        ;    // global page incline
+   extern int16_t  pitchsize       ;    // string pitch
+   extern uchar erection_enable ;
+-  extern uchar    decode_ASCII_to_[256][4];
++  extern uchar    decode_ASCII_to_[256][5];
+   extern uchar line_scale, p2_active;
+ 
+   extern int16_t LeftDistance(uchar *RASTER, int16_t NWIDTH);
+diff --git a/cuneiform_src/Kern/rstr/src/match_wd.c b/cuneiform_src/Kern/rstr/src/match_wd.c
+index 7a8c7f5..651697b 100644
+--- a/cuneiform_src/Kern/rstr/src/match_wd.c
++++ b/cuneiform_src/Kern/rstr/src/match_wd.c
+@@ -484,7 +484,7 @@ static Bool  make_str_raster(cell *wb, cell *we, StrRaster *str_raster)
+   str_raster->w=(int32_t)(right-left);
+   str_raster->h=(int32_t)(bottom-top);
+ 
+-  if (str_raster->w > LINE_WIDTH || str_raster->h > LINE_HEIGHT)
++  if ((str_raster->w+7) > LINE_WIDTH || str_raster->h > LINE_HEIGHT)
+     return FALSE;
+ 
+   memset(&str_raster->pict,0,(str_raster->w+7)/8*str_raster->h);
+diff --git a/cuneiform_src/Kern/rstr/src/p2_cour.c b/cuneiform_src/Kern/rstr/src/p2_cour.c
+index e9ebbe8..e2997d7 100644
+--- a/cuneiform_src/Kern/rstr/src/p2_cour.c
++++ b/cuneiform_src/Kern/rstr/src/p2_cour.c
+@@ -77,7 +77,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include "ctb.h"
+ #include "linutil.h"
+ extern  char    alphabet[256];
+-extern  uchar    decode_ASCII_to_[256][4];
++extern  uchar    decode_ASCII_to_[256][5];
+ static  int            HndTab=0, HndTabInc=0;
+ static  char    alpha_str[]="ÉÖÓÊÅÍÃØÙÇÕÚÔÛÂÀÏÐÎËÄÆÝß×ÑÌÈÒÜÁÞ/0123456789éöóêåíãøùçõúôûâàïðîëäæýÿ÷ñìèòüáþ#%^()";
+ static  char    alpha_str_lat[]="QWERTYUIOPASDFGHJKLZXCVBNM/0123456789qwertyuiopasdfghjklzxcvbnm#%^()";
+diff --git a/cuneiform_src/Kern/rstr/src/pass3.c b/cuneiform_src/Kern/rstr/src/pass3.c
+index 6119869..b6af913 100644
+--- a/cuneiform_src/Kern/rstr/src/pass3.c
++++ b/cuneiform_src/Kern/rstr/src/pass3.c
+@@ -136,7 +136,7 @@ extern int16_t bs_got;
+ extern int16_t flag_cut_point;
+ extern uchar language;
+ extern uchar CodePages[];
+-extern uchar decode_ASCII_to_[256][4];
++extern uchar decode_ASCII_to_[256][5];
+ extern char alphabet[256];
+ int16_t    page_nIncline;
+ uchar   pass2;
+diff --git a/cuneiform_src/Kern/rstr/src/passe.c b/cuneiform_src/Kern/rstr/src/passe.c
+index bf3c4a1..a683e94 100644
+--- a/cuneiform_src/Kern/rstr/src/passe.c
++++ b/cuneiform_src/Kern/rstr/src/passe.c
+@@ -77,7 +77,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include "minmax.h"
+ 
+ extern uchar db_trace_flag;
+-extern uchar decode_ASCII_to_[256][4];
++extern uchar decode_ASCII_to_[256][5];
+ extern uchar valid_word_number;
+ extern int16_t  text_findstat(char * w);
+ extern int16_t  text_findstat_aux(char * w);
+diff --git a/cuneiform_src/Kern/rstr/src/rcm.c b/cuneiform_src/Kern/rstr/src/rcm.c
+index 0659b69..959fc4a 100644
+--- a/cuneiform_src/Kern/rstr/src/rcm.c
++++ b/cuneiform_src/Kern/rstr/src/rcm.c
+@@ -181,7 +181,7 @@ uint16_t actual_resolution = 300; // setup in RSTR_SetOptions
+ #define MAX_LINE_COUNT 5000
+ STRLN page_lines[MAX_LINE_COUNT];
+ int32_t num_of_lines;
+-uchar decode_ASCII_to_[256][4] = {
++uchar decode_ASCII_to_[256][5] = {
+ /*       0      1      2      3      4      5      6      7      8      9      a      b      c      d      e      f  */
+ /* 0*/"\x00", "\x01", "\x02", "\x03", "\x04", "\x05", "\x06", "\x07", "\x08",
+ 		"\x09", "\x0a", "\x0b", "\x0c", "\x0d", "\x0e", "\x0f",/* 0*/
+diff --git a/cuneiform_src/Kern/rstr/src/rstr_bl.c b/cuneiform_src/Kern/rstr/src/rstr_bl.c
+index 0fc8477..69a570e 100644
+--- a/cuneiform_src/Kern/rstr/src/rstr_bl.c
++++ b/cuneiform_src/Kern/rstr/src/rstr_bl.c
+@@ -82,7 +82,7 @@ extern int16_t  prop_l_delta, prop_r_delta;
+ extern uchar  db_pass;
+ 
+ extern uchar *letters_pidx_table;  // 512
+-extern uchar decode_ASCII_to_[256][4];
++extern uchar decode_ASCII_to_[256][5];
+ 
+ 
+ int16_t     minrow,mincol, maxrow, maxcol;
+diff --git a/cuneiform_src/Kern/rstr/src/rstr_p2.c b/cuneiform_src/Kern/rstr/src/rstr_p2.c
+index 1cd1c47..b927a41 100644
+--- a/cuneiform_src/Kern/rstr/src/rstr_p2.c
++++ b/cuneiform_src/Kern/rstr/src/rstr_p2.c
+@@ -106,7 +106,7 @@ int CopyVers2CSTR(RecVersions *ver, cell *c);    // pass3
+ //======== EXTERN BUFFERS
+ extern Handle hSnapLEO;
+ extern puchar kit_curr, kit_end;
+-extern uchar decode_ASCII_to_[256][4];
++extern uchar decode_ASCII_to_[256][5];
+ extern uchar CodePages[];
+ extern uchar fon_alphabet_language[3][256];
+ 
+diff --git a/cuneiform_src/Kern/rstr/src/snap.c b/cuneiform_src/Kern/rstr/src/snap.c
+index 42c9e56..09a4b7b 100644
+--- a/cuneiform_src/Kern/rstr/src/snap.c
++++ b/cuneiform_src/Kern/rstr/src/snap.c
+@@ -108,7 +108,7 @@ extern int32_t  EVNRecogCharPRN(   RecRaster  * rRaster,
+       RecVersions* EVNres       );
+ // from RCM.C
+ extern  void    ErrorExit(int Code);
+-extern  uchar    decode_ASCII_to_[256][4];
++extern  uchar    decode_ASCII_to_[256][5];
+ extern  char    StopPoint;
+ extern  uchar    CodePages[];
+ //extern  int16_t     gbCol1,gbCol2;
diff --git a/cuneiform.spec b/cuneiform.spec
index 3701b4f..617ced6 100644
--- a/cuneiform.spec
+++ b/cuneiform.spec
@@ -2,7 +2,7 @@ Name:           cuneiform
 License:        BSD
 Group:          Applications/Productivity
 Version:        1.1.0
-Release:        8%{?dist}
+Release:        9%{?dist}
 Summary:        Command-line OCR system
 
 Source:         http://launchpad.net/cuneiform-linux/1.1/1.1/+download/%{name}-linux-%{version}.tar.bz2
@@ -10,6 +10,8 @@ URL:            http://launchpad.net/cuneiform-linux
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
+Patch0:         cuneiform-size4to5.patch
+
 BuildRequires:  ImageMagick-c++-devel
 BuildRequires:  cmake
 
@@ -28,23 +30,13 @@ Requires:       %{name}%{?_isa} = %{version}-%{release}
 
 %prep
 %setup -qn %{name}-linux-%{version}
+%patch0 -p1 -b .size4to5
 
 %build
 
-export CFLAGS=`echo %{optflags} | sed -e s,-O2,,`
-export CXXFLAGS=`echo %{optflags} | sed -e s,-O2,,`
-export FFLAGS=`echo %{optflags} | sed -e s,-O2,,`
-
 mkdir %{_target_platform}
 pushd %{_target_platform}
-# old build string
-#%%{cmake} -DCMAKE_BUILD_TYPE=relwithdebinfo ..
-/usr/bin/cmake \
-    -DCMAKE_VERBOSE_MAKEFILE=ON \
-    -DCMAKE_INSTALL_PREFIX:PATH=/usr \
-    ..
-# "relwithdebinfo" will add -O2 to flags
-#    -DCMAKE_BUILD_TYPE=relwithdebinfo \
+%{cmake} -DCMAKE_BUILD_TYPE=relwithdebinfo ..
 make
 popd
 
@@ -73,6 +65,10 @@ rm -rf %{buildroot}
 %{_libdir}/lib*.so
 
 %changelog
+* Thu Jul 26 2012 Dmitrij S. Kryzhevich <krege at land.ru> - 1.1.0-9
+- Add size 4to5size patch (Ubuntu bz #978183).
+- Switch to relwithdebinfo again.
+
 * Wed Jul 18 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.1.0-8
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
 


More information about the scm-commits mailing list