diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ed89bfe --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +xxdiff-3.2-noscreenshots.tar.bz2 diff --git a/dead.package b/dead.package deleted file mode 100644 index 5204a84..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -Orphaned for 6+ weeks diff --git a/sources b/sources new file mode 100644 index 0000000..a1f5b51 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +a61422a89f9ad5aab1c69d3995bbaded xxdiff-3.2-noscreenshots.tar.bz2 diff --git a/xxdiff-3.2-bison3.patch b/xxdiff-3.2-bison3.patch new file mode 100644 index 0000000..e5b95af --- /dev/null +++ b/xxdiff-3.2-bison3.patch @@ -0,0 +1,103 @@ +Backport of proposed patch in upstream bugtracker: + +https://sourceforge.net/p/xxdiff/bugs/229/ + +diff --git a/src/resParser.cpp b/src/resParser.cpp +index e0b6023..63faad9 100644 +--- a/src/resParser.cpp ++++ b/src/resParser.cpp +@@ -73,7 +73,7 @@ extern int resParserparse( void* ); + + //------------------------------------------------------------------------------ + // +-void resParsererror( const char* msg ) ++void resParsererror( void* resources __attribute__((__unused__)), const char* msg ) + { + // Send errors to stdout so we can filter out the debug info shmeglu while + // debugging parser. +@@ -786,7 +786,7 @@ int parseFromKeywordList( + QString os; + QTextOStream oss( &os ); + oss << "Unknown " << errmsg << ": " << name << flush; +- resParsererror( os.latin1() ); ++ resParsererror( NULL, os.latin1() ); + } + num = ERROR_TOKEN; + return ERROR_TOKEN; +diff --git a/src/resParser.l b/src/resParser.l +index 51c7f30..961ad3f 100644 +--- a/src/resParser.l ++++ b/src/resParser.l +@@ -298,7 +298,7 @@ iddot [a-zA-Z][a-zA-Z0-9\.]* + QString os; + QTextOStream oss( &os ); + oss << "ignoring char: " << yytext << flush; +- yyerror( os.latin1() ); ++ yyerror( resources, os.latin1() ); + */ + } + } +diff --git a/src/resParser.y b/src/resParser.y +index 716ed40..bae21cf 100644 +--- a/src/resParser.y ++++ b/src/resParser.y +@@ -39,12 +39,11 @@ + + // The parser input is the resources object to fill in. + #define RESOURCES ( static_cast(resources) ) +-#define YYPARSE_PARAM resources + + // Declare lexer from other compilation unit. + int resParserlex( YYSTYPE* yylval ); + +-void resParsererror( const char* msg ); ++void resParsererror( void *resources, const char* msg ); + + // Declare some parser functions and data defined in resParser.cpp + namespace XxResParserNS { +@@ -58,6 +57,9 @@ using namespace XxResParserNS; // Make sure we can use the above. + + %} + ++/* The parser input is the resources object to fill in. */ ++%parse-param { void *resources } ++ + /* generate header file */ + %defines + +@@ -144,7 +146,7 @@ using namespace XxResParserNS; // Make sure we can use the above. + %type boolkwd + + %start xxdiffrc +-%pure_parser ++%pure-parser + + %% + xxdiffrc : stmts +@@ -188,7 +190,7 @@ prefgeometry : PREFGEOMETRY COLON GEOMSPEC + RESOURCES->setPreferredGeometry( geometry ); + } + else { +- yyerror( "Bad geometry specification." ); ++ yyerror( resources, "Bad geometry specification." ); + // Should never happen, the lexer regexp should be tough + // enough. + } +@@ -216,7 +218,7 @@ style : STYLE COLON STRING + err += QString( "\nValid styles are: " ); + err += styles.join( ", " ); + #endif +- yyerror( err.latin1() ); ++ yyerror( resources, err.latin1() ); + #if (QT_VERSION >= 0x030000) + } + #endif +@@ -230,7 +232,7 @@ accel : ACCEL DOT ACCELNAME COLON STRING + char buf[2048]; + ::snprintf( buf, 2048, + "Unrecognized accelerator: %s\n", $5 ); +- yyerror( buf ); ++ yyerror( resources, buf ); + } + } + ; diff --git a/xxdiff-3.2-c-linkage.patch b/xxdiff-3.2-c-linkage.patch new file mode 100644 index 0000000..4839a42 --- /dev/null +++ b/xxdiff-3.2-c-linkage.patch @@ -0,0 +1,10 @@ +--- src/main.h ++++ src/main.h +@@ -35,6 +35,6 @@ + * PUBLIC DECLARATIONS + *============================================================================*/ + +-extern char** environ; ++extern "C" char** environ; + + #endif diff --git a/xxdiff-3.2-string-constants.patch b/xxdiff-3.2-string-constants.patch new file mode 100644 index 0000000..7e30504 --- /dev/null +++ b/xxdiff-3.2-string-constants.patch @@ -0,0 +1,258 @@ +--- xxdiff-3.2/src/pixmaps/xxdiff.xpm 2005-10-31 07:17:33.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/xxdiff.xpm 2009-06-17 11:11:54.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * xxdiff_xpm[] = { ++static const char * xxdiff_xpm[] = { + "190 75 2931 2", + " c None", + ". c #B8CFDD", +--- xxdiff-3.2/src/pixmaps/next_difference.xpm 2005-10-31 07:17:33.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/next_difference.xpm 2009-06-17 11:19:26.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * next_difference_xpm[] = { ++static const char * next_difference_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/next_unselected_difference.xpm 2005-10-31 07:17:33.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/next_unselected_difference.xpm 2009-06-17 11:20:20.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * next_unselected_difference_xpm[] = { ++static const char * next_unselected_difference_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/previous_difference.xpm 2009-06-17 11:21:58.000000000 +0100 ++++ xxdiff-3.2/src/pixmaps/previous_difference.xpm 2009-06-17 11:21:23.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * previous_difference_xpm[] = { ++static const char * previous_difference_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/previous_unselected_difference.xpm 2005-10-31 07:17:33.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/previous_unselected_difference.xpm 2009-06-17 11:22:49.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * previous_unselected_difference_xpm[] = { ++static const char * previous_unselected_difference_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/search.xpm 2005-10-31 07:17:33.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/search.xpm 2009-06-17 11:23:45.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * search_xpm[] = { ++static const char * search_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/search_backward.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/search_backward.xpm 2009-06-17 11:25:06.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * search_backward_xpm[] = { ++static const char * search_backward_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/search_forward.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/search_forward.xpm 2009-06-17 11:25:57.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * search_forward_xpm[] = { ++static const char * search_forward_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/select_region_left.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/select_region_left.xpm 2009-06-17 11:26:53.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * select_region_left_xpm[] = { ++static const char * select_region_left_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/select_region_middle.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/select_region_middle.xpm 2009-06-17 11:28:24.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * select_region_middle_xpm[] = { ++static const char * select_region_middle_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/select_region_neither.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/select_region_neither.xpm 2009-06-17 11:29:34.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * select_region_neither_xpm[] = { ++static const char * select_region_neither_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/select_region_right.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/select_region_right.xpm 2009-06-17 11:27:40.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * select_region_right_xpm[] = { ++static const char * select_region_right_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/select_region_unselect.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/select_region_unselect.xpm 2009-06-17 11:30:32.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * select_region_unselect_xpm[] = { ++static const char * select_region_unselect_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/split_swap_join.xpm 2005-10-31 07:17:37.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/split_swap_join.xpm 2009-06-17 11:31:36.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * split_swap_join_xpm[] = { ++static const char * split_swap_join_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/diff_files.xpm 2005-10-31 07:18:48.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/diff_files.xpm 2009-06-17 11:32:31.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * diff_files_xpm[] = { ++static const char * diff_files_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/diff_files_next.xpm 2005-10-31 07:18:48.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/diff_files_next.xpm 2009-06-17 11:33:30.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * diff_files_next_xpm[] = { ++static const char * diff_files_next_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/save_as_left.xpm 2005-10-31 07:18:01.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/save_as_left.xpm 2009-06-17 11:34:17.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * save_as_left_xpm[] = { ++static const char * save_as_left_xpm[] = { + "32 32 52 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/save_as_middle.xpm 2005-10-31 07:18:01.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/save_as_middle.xpm 2009-06-17 11:35:06.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * save_as_middle_xpm[] = { ++static const char * save_as_middle_xpm[] = { + "32 32 52 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/save_as_right.xpm 2005-10-31 07:18:01.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/save_as_right.xpm 2009-06-17 11:35:48.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * save_as_right_xpm[] = { ++static const char * save_as_right_xpm[] = { + "32 32 52 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/save_as_merged.xpm 2005-10-31 07:18:01.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/save_as_merged.xpm 2009-06-17 11:37:14.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * save_as_merged_xpm[] = { ++static const char * save_as_merged_xpm[] = { + "32 32 52 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/save_as.xpm 2005-10-31 07:18:01.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/save_as.xpm 2009-06-17 11:38:08.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * save_as_xpm[] = { ++static const char * save_as_xpm[] = { + "32 32 52 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/return_accept.xpm 2005-10-31 07:18:48.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/return_accept.xpm 2009-06-17 11:39:08.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * return_accept_xpm[] = { ++static const char * return_accept_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/return_reject.xpm 2005-10-31 07:18:48.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/return_reject.xpm 2009-06-17 11:39:53.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * return_reject_xpm[] = { ++static const char * return_reject_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/pixmaps/return_merged.xpm 2005-10-31 07:18:48.000000000 +0000 ++++ xxdiff-3.2/src/pixmaps/return_merged.xpm 2009-06-17 11:40:37.000000000 +0100 +@@ -1,5 +1,5 @@ + /* XPM */ +-static char * return_merged_xpm[] = { ++static const char * return_merged_xpm[] = { + "32 32 2 1", + " c None", + ". c #000000", +--- xxdiff-3.2/src/resParser.cpp 2006-06-11 22:12:33.000000000 +0100 ++++ xxdiff-3.2/src/resParser.cpp 2009-06-17 11:51:51.000000000 +0100 +@@ -1074,7 +1074,7 @@ + XxCommandSwitch bo = XxCommandSwitch(commandSwitchList[ii]._token); + int b1 = res1.getInitSwitch( bo ); + XX_CHECK( -1 <= b1 && b1 <= 1 ); +- char* bmap[3] = { "Nop", "False", "True" }; ++ const char* bmap[3] = { "Nop", "False", "True" }; + if ( b1 != res2.getInitSwitch( bo ) ) { + os << initSwitchStr << "." << commandSwitchList[ii]._name << ": " + << bmap[b1+1] << endl; +@@ -1250,7 +1250,7 @@ + XxCommandSwitch bo = XxCommandSwitch(commandSwitchList[ii]._token); + int b1 = res.getInitSwitch( bo ); + XX_CHECK( -1 <= b1 && b1 <= 1 ); +- char* bmap[3] = { "Nop", "False", "True" }; ++ const char* bmap[3] = { "Nop", "False", "True" }; + os << initSwitchStr << "." << commandSwitchList[ii]._name << ": " + << bmap[b1+1] << endl; + } +@@ -1558,7 +1558,7 @@ + XxCommandSwitch bo = XxCommandSwitch(commandSwitchList[ii]._token); + int b1 = res.getInitSwitch( bo ); + XX_CHECK( -1 <= b1 && b1 <= 1 ); +- char* bmap[3] = { "Nop", "False", "True" }; ++ const char* bmap[3] = { "Nop", "False", "True" }; + os << tok->_name << "." << commandSwitchList[ii]._name << ": " + << bmap[b1+1] << "" << endl; + } +--- xxdiff-3.2/src/util.cpp 2006-06-11 22:12:33.000000000 +0100 ++++ xxdiff-3.2/src/util.cpp 2009-06-17 12:15:48.000000000 +0100 +@@ -789,8 +789,8 @@ + } + if ( pid == 0 ) { + char* argv[4]; +- argv[0] = "sh"; +- argv[1] = "-c"; ++ argv[0] = strdup("sh"); ++ argv[1] = strdup("-c"); + argv[2] = const_cast( command.latin1() ); + argv[3] = 0; + execve( "/bin/sh", argv, environ ); diff --git a/xxdiff-fix-cstdlib_h.patch b/xxdiff-fix-cstdlib_h.patch new file mode 100644 index 0000000..006640c --- /dev/null +++ b/xxdiff-fix-cstdlib_h.patch @@ -0,0 +1,13 @@ +Index: xxdiff/xxdiff-3.2/src/resources.inline.h +=================================================================== +--- xxdiff.orig/xxdiff-3.2/src/resources.inline.h 2005-10-31 01:18:48.000000000 -0600 ++++ xxdiff/xxdiff-3.2/src/resources.inline.h 2008-03-08 22:31:12.000000000 -0600 +@@ -20,6 +20,8 @@ + * + ******************************************************************************/ + ++#include ++ + /*============================================================================== + * EXTERNAL DECLARATIONS + *============================================================================*/ diff --git a/xxdiff.spec b/xxdiff.spec new file mode 100644 index 0000000..fd44c7e --- /dev/null +++ b/xxdiff.spec @@ -0,0 +1,173 @@ +Summary: Graphical file and directories comparator and merge tool +Name: xxdiff +Version: 3.2 +Release: 23%{?dist} +License: GPLv2+ +Group: Development/Tools +URL: http://furius.ca/xxdiff/ +# The orginal tar can be found at http://furius.ca/downloads/xxdiff/releases/xxdiff-%{version}.tar.bz2 +# We remove the screenshots directory since the images in there can not be redistributed without permission. +Source0: xxdiff-%{version}-noscreenshots.tar.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: qt3-devel < 1:4.0, bison, flex + +Patch0: %{name}-fix-cstdlib_h.patch +Patch1: xxdiff-3.2-c-linkage.patch +Patch2: xxdiff-3.2-string-constants.patch +Patch3: xxdiff-3.2-bison3.patch + +%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} + +%description +xxdiff is a graphical browser for viewing the differences between two or three +files, or between two directories, and can be used to produce a merged version. + +%package tools +Summary: Tools for xxdiff +Group: Development/Tools +URL: http://furius.ca/xxdiff/doc/xxdiff-scripts.html +Requires: xxdiff +BuildRequires: python-devel + +%description tools +Tools for xxdiff + +%prep +%setup -q +%patch0 -p2 + +# Fix FTBFS with gcc 4.7 +%patch1 + +# Fix the multitude of warnings about string constants converted to 'char*' +%patch2 -p1 + +# Fix FTBFS with bison-3.x, https://sf.net/p/xxdiff/bugs/229/ +%patch3 -p1 + +%build +if [ -z "$QTDIR" ]; then + . /etc/profile.d/qt.sh +fi + +CFLAGS="${CFLAGS:-$RPM_OPT_FLAGS}" +CXXFLAGS="${CFLAGS:-$RPM_OPT_FLAGS}" +export CFLAGS +export CXXFLAGS + +%{__make} -C src -f Makefile.bootstrap makefile +%{__sed} -i -e "s/^CFLAGS\s*=/CFLAGS +=/g" src/Makefile +%{__sed} -i -e "s/^CXXFLAGS\s*=/CXXFLAGS +=/g" src/Makefile +%{__make} -C src %{?_smp_mflags} +%{__python} setup.py build + +find ./build -name \*.py -print -exec %{__sed} -i "1{/^#\!/d}" {} \; + +%install +%{__rm} -rf %{buildroot} +%{__mkdir_p} %{buildroot}%{_bindir} +%{__install} -m 755 bin/xxdiff %{buildroot}%{_bindir} +%{__python} setup.py install -O1 --skip-build --root=%{buildroot} --install-lib=%{python_sitelib} + +%clean +%{__rm} -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%doc doc index.html +%doc CHANGES COPYING README TODO VERSION +%{_bindir}/xxdiff + +%files tools +%defattr(-,root,root,-) +%doc doc index.html +%{python_sitelib}/* +%{_bindir}/svn-foreign +%{_bindir}/xx-cond-replace +%{_bindir}/xx-cvs-diff +%{_bindir}/xx-cvs-revcmp +%{_bindir}/xx-diff-proxy +%{_bindir}/xx-encrypted +%{_bindir}/xx-filter +%{_bindir}/xx-find-grep-sed +%{_bindir}/xx-match +%{_bindir}/xx-pyline +%{_bindir}/xx-rename +%{_bindir}/xx-sql-schemas +%{_bindir}/xx-svn-diff +%{_bindir}/xx-svn-resolve + +%changelog +* Mon Aug 18 2014 Fedora Release Engineering - 3.2-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Fri Jun 13 2014 Yaakov Selkowitz - 3.2-22 +- Fix FTBFS with bison-3.x (#1107365) + +* Sun Jun 08 2014 Fedora Release Engineering - 3.2-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 3.2-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Fri Feb 15 2013 Fedora Release Engineering - 3.2-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sun Jul 22 2012 Fedora Release Engineering - 3.2-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sun Apr 22 2012 Paul Howarth - 3.2-17 +- Fix FTBFS with gcc 4.7 + +* Tue Feb 28 2012 Fedora Release Engineering - 3.2-16 +- Rebuilt for c++ ABI breakage + +* Sat Jan 14 2012 Fedora Release Engineering - 3.2-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Feb 08 2011 Fedora Release Engineering - 3.2-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Mon Nov 15 2010 Russell Cattelan - 3.2-13 +- Change BuildRequires from qt-devel to qt3-devel + +* Thu Jul 22 2010 David Malcolm - 3.2-12 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Mon Jul 27 2009 Fedora Release Engineering - 3.2-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Thu Feb 26 2009 Fedora Release Engineering - 3.2-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 3.2-9 +- Rebuild for Python 2.6 + +* Mon Jun 9 2008 Russell Cattelan - 3.2-8 +- Create a new tar ball without the restricted copyrighted screen shots + +* Thu May 29 2008 Russell Cattelan - 3.2-7 +- Remove desktop file, since xxdiff need files at least 2 files specified on +- the cmd line. +- It is confusing to have a menu option that does not work without +- dragging and dropping at least two files. + +* Tue May 27 2008 Russell Cattelan - 3.2-6 +- Add desktop file + +* Tue May 6 2008 Russell Cattelan - 3.2-5 +- Remove python from the main package Requires. +- Make sure the build picks rpm defined CFLAGS + +* Mon Apr 28 2008 Russell Cattelan 3.2-4 +- Split out script into tools package +- Minor changes to build process and python lib handling + +* Sun Mar 30 2008 Russell Cattelan 3.2-3 +- Minor fixups based on review comments + +* Sat Mar 29 2008 Russell Cattelan 3.2-2 +- Added helper utilites + +* Sat Mar 8 2008 Russell Cattelan 3.2-1 +- Initial Revision