Compare commits

...
Sign in to create a new pull request.

2 commits

Author SHA1 Message Date
Peng Wu
5cf0b27536 import srpm 2019-10-17 16:29:48 +08:00
Gwyn Ciesla
8eb7e72256 "Adding package.cfg file" 2019-10-15 08:32:28 -05:00
11 changed files with 640 additions and 21 deletions

View file

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
/zinnia-0.06.tar.gz

View file

@ -1,21 +0,0 @@
# Makefile for source rpm: zinnia
# $Id$
NAME := zinnia
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

20
Makefile.tomoe Normal file
View file

@ -0,0 +1,20 @@
TOMOE_MODEL_PATH = /usr/share/tomoe/recognizer/
build: handwriting-ja.model handwriting-zh_CN.model tomoe2s.pl
handwriting-ja.model: $(TOMOE_MODEL_PATH)/handwriting-ja.xml
perl tomoe2s.pl $(TOMOE_MODEL_PATH)/handwriting-ja.xml > handwriting-ja.s
LD_LIBRARY_PATH=.libs/ ./zinnia_learn handwriting-ja.s handwriting-ja.model
LD_LIBRARY_PATH=.libs/ ./zinnia_convert handwriting-ja.model.txt handwriting-ja.model
handwriting-zh_CN.model: $(TOMOE_MODEL_PATH)/handwriting-zh_CN.xml
perl tomoe2s.pl $(TOMOE_MODEL_PATH)/handwriting-zh_CN.xml > handwriting-zh_CN.s
LD_LIBRARY_PATH=.libs/ ./zinnia_learn handwriting-zh_CN.s handwriting-zh_CN.model
LD_LIBRARY_PATH=.libs/ ./zinnia_convert handwriting-zh_CN.model.txt handwriting-zh_CN.model
install: build
install -d $(DESTDIR)/usr/share/zinnia//model/tomoe
install -m 0644 -p handwriting-ja.model handwriting-zh_CN.model $(DESTDIR)/usr/share/zinnia//model/tomoe

View file

@ -0,0 +1,163 @@
From 09f01b0afcb4408af2e1af0294425eac420cd7a5 Mon Sep 17 00:00:00 2001
From: Peng Huang <shawn.p.huang@gmail.com>
Date: Fri, 23 Apr 2010 16:09:07 +0800
Subject: [PATCH] Always store data in little endian format
---
configure.in | 5 +++++
recognizer.cpp | 24 ++++++++++++++++++++++--
trainer.cpp | 48 +++++++++++++++++++++++++++++++++++++-----------
3 files changed, 64 insertions(+), 13 deletions(-)
diff --git a/configure.in b/configure.in
index 2731d36..f25c83a 100644
--- a/configure.in
+++ b/configure.in
@@ -14,6 +14,11 @@ AC_PROG_LIBTOOL
dnl Checks for libraries.
+dnl Checks endian
+AC_C_BIGENDIAN([], [
+ AC_DEFINE(WORDS_LITENDIAN, 1, [Define if target is little endian])
+])
+
dnl Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS(string.h stdlib.h unistd.h fcntl.h \
diff --git a/recognizer.cpp b/recognizer.cpp
index b4d292a..b231607 100644
--- a/recognizer.cpp
+++ b/recognizer.cpp
@@ -5,6 +5,9 @@
//
// Copyright(C) 2008 Taku Kudo <taku@chasen.org>
//
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
#include <iostream>
#include <vector>
#include <cmath>
@@ -23,11 +26,28 @@ static inline char *read_ptr(char **ptr, size_t size) {
return r;
}
-template <class T>
-static inline void read_static(char **ptr, T *value) {
+template <typename T>
+inline void read_static(char **ptr, T *value) {
char *r = read_ptr(ptr, sizeof(T));
memcpy(value, r, sizeof(T));
}
+
+#ifndef WORDS_LITENDIAN
+template <>
+inline void read_static<unsigned int>(char **ptr, unsigned int *value) {
+ unsigned char *buf = reinterpret_cast<unsigned char *>(*ptr);
+ *value = (buf[0]) | (buf[1] << 8) | (buf[2] << 16) | (buf[3] << 24);
+ *ptr += 4;
+}
+
+template <>
+inline void read_static<float>(char **ptr, float *value) {
+ unsigned int x;
+ read_static<unsigned int>(ptr, &x);
+ memcpy(value, &x, sizeof(x));
+}
+#endif
+
}
namespace zinnia {
diff --git a/trainer.cpp b/trainer.cpp
index 287a882..e150760 100644
--- a/trainer.cpp
+++ b/trainer.cpp
@@ -243,6 +243,31 @@ bool Trainer::makeHeader(const char *text_filename,
return true;
}
+template<typename T>
+inline void write_static(std::ofstream & bofs, const T value)
+{
+ bofs.write(reinterpret_cast<const char *>(&value), sizeof(T));
+}
+
+#ifndef WORDS_LITENDIAN
+template<>
+inline void write_static<unsigned int>(std::ofstream & bofs, const unsigned int value)
+{
+ bofs.put ((value) & 0xff);
+ bofs.put ((value >> 8) & 0xff);
+ bofs.put ((value >> 16) & 0xff);
+ bofs.put ((value >> 24) & 0xff);
+}
+
+template<>
+inline void write_static<float>(std::ofstream & bofs, const float value)
+{
+ unsigned int x;
+ memcpy(&x, &value, sizeof(x));
+ write_static<unsigned int>(bofs, x);
+}
+#endif
+
bool Trainer::convert(const char *text_filename,
const char *binary_filename,
double compression_threshold) {
@@ -261,9 +286,9 @@ bool Trainer::convert(const char *text_filename,
unsigned int magic = 0;
const unsigned int version = DIC_VERSION;
unsigned int msize = 0;
- bofs.write(reinterpret_cast<const char *>(&magic), sizeof(magic));
- bofs.write(reinterpret_cast<const char *>(&version), sizeof(version));
- bofs.write(reinterpret_cast<const char *>(&msize), sizeof(msize));
+ write_static<unsigned int> (bofs, magic);
+ write_static<unsigned int> (bofs, version);
+ write_static<unsigned int> (bofs, msize);
std::string line;
const size_t array_size = 8192 * 16;
@@ -277,19 +302,19 @@ bool Trainer::convert(const char *text_filename,
char character[16];
std::strncpy(character, col[0], sizeof(character));
bofs.write(character, sizeof(character));
- bofs.write(reinterpret_cast<const char *>(&bias), sizeof(bias));
+ write_static<float> (bofs, bias);
for (size_t i = 2; i < size; i += 2) {
const int index = std::atoi(col[i]);
const float value = std::atof(col[i + 1]);
if (fabs(value) > compression_threshold) {
- bofs.write(reinterpret_cast<const char *>(&index), sizeof(index));
- bofs.write(reinterpret_cast<const char *>(&value), sizeof(value));
+ write_static<int> (bofs, index);
+ write_static<float> (bofs, value);
}
}
const int index = -1;
const float value = 0.0;
- bofs.write(reinterpret_cast<const char *>(&index), sizeof(index));
- bofs.write(reinterpret_cast<const char *>(&value), sizeof(value));
+ write_static<int> (bofs, index);
+ write_static<float> (bofs, value);
++msize;
}
@@ -297,9 +322,10 @@ bool Trainer::convert(const char *text_filename,
bofs.seekp(0);
magic ^= DIC_MAGIC_ID;
bofs.seekp(0);
- bofs.write(reinterpret_cast<const char *>(&magic), sizeof(magic));
- bofs.write(reinterpret_cast<const char *>(&version), sizeof(version));
- bofs.write(reinterpret_cast<const char *>(&msize), sizeof(msize));
+
+ write_static<unsigned int> (bofs, magic);
+ write_static<unsigned int> (bofs, version);
+ write_static<unsigned int> (bofs, msize);
return true;
}
--
1.7.0.1

View file

@ -0,0 +1 @@
SHA512 (zinnia-0.06.tar.gz) = b9a44dc3664302269c4d8481225964a3188c1921f5af7f136fdccdc452917f6ff934884e266436a0f1e0a32af19d3bea5f5e4416e694a653983039a513277b53

35
tomoe2s.pl Normal file
View file

@ -0,0 +1,35 @@
#!/usr/bin/perl
use utf8;
my $value;
my $stroke;
my $strokes;
while (<>) {
if (/<character>/) {
while (<>) {
if (/<utf8>([^<]+)<\/utf8>/) {
$value = $1;
$value =~ s/^&#x//;
$value = pack("U", hex($value));
utf8::encode($value);
$stroke = "";
$strokes = "";
} elsif (/<point x=\"(\d+)\" y=\"(\d+)\"/) {
my $x = $1;
my $y = $2;
# print "$x $y\n";
$stroke .= "($x $y)";
} elsif (/<\/stroke>/) {
$strokes .= "($stroke)";
$stroke = "";
} elsif (/<\/character>/) {
if ($value !~ /[\(\)]/) {
print "(character (value $value)(width 1000)(height 1000)(strokes $strokes))\n";
}
$value = "";
last;
}
}
}
}

View file

@ -0,0 +1,36 @@
diff -p -up zinnia-0.05/perl/Makefile.PL.bindings zinnia-0.05/perl/Makefile.PL
--- zinnia-0.05/perl/Makefile.PL.bindings 2008-09-13 18:59:36.000000000 +0200
+++ zinnia-0.05/perl/Makefile.PL 2009-11-19 14:17:39.000000000 +0100
@@ -3,8 +3,8 @@ WriteMakefile(
'NAME' => 'zinnia',
'CC' => 'c++',
'LD' => 'c++',
- 'INC' => '',
- 'LIBS' => '-lzinnia',
+ 'INC' => '-I../',
+ 'LIBS' => '-L../.libs -lzinnia',
# 'VERSION' => '0.1',
'OBJECT' => 'zinnia_wrap.o'
);
diff -p -up zinnia-0.05/perl/zinnia_wrap.cxx.bindings zinnia-0.05/perl/zinnia_wrap.cxx
--- zinnia-0.05/perl/zinnia_wrap.cxx.bindings 2009-05-31 06:39:39.000000000 +0200
+++ zinnia-0.05/perl/zinnia_wrap.cxx 2009-11-19 14:18:46.000000000 +0100
@@ -11,6 +11,7 @@
#define SWIGPERL
#define SWIG_CASTRANK_MODE
+#include <cstring>
#ifdef __cplusplus
/* SwigValueWrapper is described in swig.swg */
diff -p -up zinnia-0.05/python/zinnia_wrap.cxx.bindings zinnia-0.05/python/zinnia_wrap.cxx
--- zinnia-0.05/python/zinnia_wrap.cxx.bindings 2009-05-31 06:39:41.000000000 +0200
+++ zinnia-0.05/python/zinnia_wrap.cxx 2009-11-19 14:19:10.000000000 +0100
@@ -11,6 +11,7 @@
#define SWIGPYTHON
#define SWIG_PYTHON_DIRECTOR_NO_VTABLE
+#include <cstring>
#ifdef __cplusplus
/* SwigValueWrapper is described in swig.swg */

View file

@ -0,0 +1,13 @@
Index: zinnia-0.06/feature.cpp
===================================================================
--- zinnia-0.06.orig/feature.cpp
+++ zinnia-0.06/feature.cpp
@@ -42,7 +42,7 @@ float minimum_distance(const Node *first
const float a = last->x - first->x;
const float b = last->y - first->y;
- const float c = last->y * first->x - last->x * first->y;
+ const float c = (double)last->y * first->x - (double)last->x * first->y;
float max = -1.0;
for (const Node *n = first; n != last; ++n) {

View file

@ -0,0 +1,22 @@
Index: zinnia-0.06/trainer.cpp
===================================================================
--- zinnia-0.06.orig/trainer.cpp
+++ zinnia-0.06/trainer.cpp
@@ -93,7 +93,7 @@ class TrainerImpl: public Trainer {
public:
bool add(const Character &character) {
- const std::string y = character.value();
+ std::string y = character.value();
CHECK_FALSE(!y.empty()) << "input character is empty";
Features features;
CHECK_FALSE(features.read(character)) << "cannot read character: " << y;
@@ -103,7 +103,7 @@ class TrainerImpl: public Trainer {
if (!fn) {
return false;
}
- x_.push_back(std::make_pair<std::string, FeatureNode *>(y, fn));
+ x_.push_back(std::make_pair(y, fn));
return true;
}

349
zinnia.spec Normal file
View file

@ -0,0 +1,349 @@
Name: zinnia
Version: 0.06
Release: 46%{?dist}
Summary: Online handwriting recognition system with machine learning
License: BSD
URL: http://zinnia.sourceforge.net/
Source0: http://downloads.sourceforge.net/zinnia/%{name}-%{version}.tar.gz
Source1: http://zinnia.svn.sourceforge.net/viewvc/zinnia/zinnia/tomoe2s.pl
Source2: Makefile.tomoe
Patch0: zinnia-0.05-bindings.patch
Patch1: zinnia-0.06-fixes-ppc-float.patch
Patch2: always-store-data-in-little-endian-format.patch
Patch3: zinnia-fixes-gcc6-compile.patch
BuildRequires: gcc-c++
BuildRequires: libdb-devel, python3-devel
BuildRequires: swig
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: tomoe
BuildRequires: autoconf
%description
Zinnia provides a simple, customizable, and portable dynamic OCR
system for hand-written input, based on Support Vector Machines.
Zinnia simply receives user pen strokes as coordinate data and outputs
the best matching characters sorted by SVM confidence. To maintain
portability, it has no rendering functionality. In addition to
recognition, Zinnia provides a training module capable of creating
highly efficient handwriting recognition models.
This package contains the shared libraries.
%package devel
Summary: Development files for %{name}
Requires: %{name} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package utils
Summary: Utils for the zinnia library
Requires: %{name} = %{version}-%{release}
%description utils
The %{name}-utils package provides utilities for zinnia library that
use %{name}.
%package doc
Summary: Documents for the zinnia library
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description doc
The %{name}-doc package provide documents for zinnia library that
use %{name}.
%package perl
Summary: Perl bindings for %name
Requires: %{name} = %{version}-%{release}
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
%description perl
This package contains perl bindings for %{name}.
%package -n python3-zinnia
%{?python_provide:%python_provide python3-zinnia}
Summary: Python bindings for %{name}
Requires: %{name} = %{version}-%{release}
%description -n python3-zinnia
This package contains python bindings for %{name}.
%package tomoe-ja
Summary: Japanese tomoe model file for %{name}
Requires: %{name} = %{version}-%{release}
Provides: zinnia-tomoe = %{version}-%{release}
Obsoletes: zinnia-tomoe < 0.06-19
%description tomoe-ja
This package contains Japanese tomoe model files for %{name}.
%package tomoe-zh_CN
Summary: Simplified Chinese tomoe model file for %{name}
Requires: %{name} = %{version}-%{release}
Provides: zinnia-tomoe = %{version}-%{release}
Obsoletes: zinnia-tomoe < 0.06-19
%description tomoe-zh_CN
This package contains Simplified Chinese tomoe model files for %{name}.
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1 -b .bindings
%patch1 -p1 -b .ppc
%patch2 -p1 -R -b .little-endian
%patch3 -p1 -b .gcc6
find . -type f -name ChangeLog -size 0c -exec rm -f {} ';'
find . -type f -name "*.pyc" -exec rm -f {} ';'
cp %{SOURCE1} .
cp %{SOURCE2} .
pushd doc
iconv -f latin1 -t utf8 zinnia.css > zinnia.css.bak
mv -f zinnia.css.bak zinnia.css
popd
# re-generate zinnia.py and zinnia_wrap.cxx for python 3.x
pushd swig
make python
popd
%build
autoconf
%configure --disable-static
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{?_smp_mflags}
make -f Makefile.tomoe build
pushd perl
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS"
make %{?_smp_mflags}
popd
pushd python
CFLAGS="$RPM_OPT_FLAGS -I../" LDFLAGS="$RPM_LD_FLAGS -L../.libs" python3 setup.py build
popd
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
make -f Makefile.tomoe install DESTDIR=$RPM_BUILD_ROOT
#install -d -m 0755 -p $RPM_BUILD_ROOT%{_docdir}/%{name}
#cp -pfr doc $RPM_BUILD_ROOT%{_docdir}/%{name}
pushd perl
make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
popd
pushd python
python3 setup.py install --root $RPM_BUILD_ROOT
pushd
#remove something unnecessary
find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {} ';'
find $RPM_BUILD_ROOT -type f -name "*.bs" -size 0c -exec rm -f {} ';'
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
#change the privilege of some files
chmod 0755 $RPM_BUILD_ROOT%{perl_vendorarch}/auto/%{name}/%{name}.so
%ldconfig_scriptlets
%files
%doc README COPYING
%{_libdir}/*.so.*
%files devel
%{_includedir}/*
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%files utils
%{_bindir}/zinnia
%{_bindir}/zinnia_convert
%{_bindir}/zinnia_learn
%files doc
%doc doc/*
%files perl
%{perl_vendorarch}/auto/%{name}/
%{perl_vendorarch}/%{name}.pm
%files -n python3-zinnia
%{python3_sitearch}/_%{name}.*.so
%{python3_sitearch}/%{name}*
%{python3_sitearch}/__pycache__/*
%files tomoe-ja
%dir %{_datadir}/zinnia/model/tomoe/
%{_datadir}/zinnia/model/tomoe/handwriting-ja.model
%files tomoe-zh_CN
%dir %{_datadir}/zinnia/model/tomoe/
%{_datadir}/zinnia/model/tomoe/handwriting-zh_CN.model
%changelog
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 0.06-46
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.06-45
- Rebuilt for Python 3.8
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-44
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu May 30 2019 Jitka Plesnikova <jplesnik@redhat.com> - 0.06-43
- Perl 5.30 rebuild
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-42
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Wed Oct 10 2018 Peng Wu <pwu@redhat.com> - 0.06-41
- Switch from python2 to python3
* Tue Jul 24 2018 Peng Wu <pwu@redhat.com> - 0.06-40
- Use python2
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Jun 27 2018 Jitka Plesnikova <jplesnik@redhat.com> - 0.06-38
- Perl 5.28 rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.06-36
- Add Provides for the old name without %%_isa
* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.06-35
- Python 2 binary package renamed to python2-zinnia
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-34
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-33
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sun Jun 04 2017 Jitka Plesnikova <jplesnik@redhat.com> - 0.06-32
- Perl 5.26 rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-30
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Sun May 15 2016 Jitka Plesnikova <jplesnik@redhat.com> - 0.06-29
- Perl 5.24 rebuild
* Wed Feb 17 2016 Peng Wu <pwu@redhat.com> - 0.06-28
- Fixes compile with gcc 6.0
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.06-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Wed Jun 03 2015 Jitka Plesnikova <jplesnik@redhat.com> - 0.06-25
- Perl 5.22 rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 0.06-24
- Rebuilt for GCC 5 C++11 ABI change
* Thu Dec 11 2014 Peng Wu <pwu@redhat.com> - 0.06-23
- Fixes split issues
* Wed Aug 27 2014 Jitka Plesnikova <jplesnik@redhat.com> - 0.06-22
- Perl 5.20 rebuild
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Tue Jul 29 2014 Peng Wu <pwu@redhat.com> - 0.06-20
- Split zinnia-tomoe sub-package for ibus-handwrite
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Jul 18 2013 Petr Pisar <ppisar@redhat.com> - 0.06-17
- Perl 5.18 rebuild
* Tue Mar 26 2013 Peng Wu <pwu@redhat.com> - 0.06-16
- Fixes aarch64 build
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jun 11 2012 Petr Pisar <ppisar@redhat.com> - 0.06-13
- Perl 5.16 rebuild
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-12
- Rebuilt for c++ ABI breakage
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Fri Jun 17 2011 Marcela Mašláňová <mmaslano@redhat.com> - 0.06-10
- Perl mass rebuild
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.06-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Jul 26 2010 Peng Wu <pwu@redhat.com> - 0.06-8
- Remove noarch from zinnia-tomoe sub-package for Fedora 12 ppc build.
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 0.06-7
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Fri Jul 16 2010 Peng Wu <pwu@redhat.com> - 0.06-6
- revert patch always-store-data-in-little-endian-format.patch for ppc build.
* Tue Jun 08 2010 Liang Suilong <liangsuilong@gmail.com> - 0.06-5
- Force to use default compiling macro
* Fri Jun 04 2010 Peng Wu <pwu@redhat.com> - 0.06-4
- Add a patch(zinnia-0.06-fixes-ppc-float.patch),
to fixes ppc/ppc64 zinnia tomoe model generating error.
* Wed Jun 02 2010 Marcela Maslanova <mmaslano@redhat.com> - 0.06-3
- Mass rebuild with perl-5.12.0
* Thu May 20 2010 Peng Wu <pwu@redhat.com> - 0.06-2
- Auto generate zinnia tomoe model files,
and includes all model files in zinnia-tomoe noarch sub-package.
* Thu May 20 2010 Peng Wu <pwu@redhat.com> - 0.06-1
- Update to version 0.06.
* Wed Mar 10 2010 Liang Suilong <liangsuilong@gmail.com> - 0.05-4
- Fix the bugs of SPEC file
* Fri Mar 04 2010 Liang Suilong <liangsuilong@gmail.com> - 0.05-3
- Fix something wrong of spec file
* Wed Mar 02 2010 Liang Suilong <liangsuilong@gmail.com> - 0.05-2
- Rename Subpackage for perl and python
* Tue Feb 02 2010 Liang Suilong <liangsuilong@gmail.com> - 0.05-1
- Initial Package