summaryrefslogtreecommitdiff
path: root/debian/patches
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches')
-rw-r--r--debian/patches/0001-fixconfig.diff19
-rw-r--r--debian/patches/0005-autoconf-updates.diff453
-rw-r--r--debian/patches/0100-typo.patch54
-rw-r--r--debian/patches/0105-lesserg.diff282
-rw-r--r--debian/patches/0110-c++-includes.diff38
-rw-r--r--debian/patches/0115-gcc-fixes.diff24
-rw-r--r--debian/patches/0120-fix-types-include.diff30
-rw-r--r--debian/patches/0125-gcc6.patch55
-rw-r--r--debian/patches/0130-typos.patch18
-rw-r--r--debian/patches/0135-replace_gets.patch66
-rw-r--r--debian/patches/0700-ReproducibleBuilds.patch19
-rw-r--r--debian/patches/series11
12 files changed, 1069 insertions, 0 deletions
diff --git a/debian/patches/0001-fixconfig.diff b/debian/patches/0001-fixconfig.diff
new file mode 100644
index 0000000..8ffb5b5
--- /dev/null
+++ b/debian/patches/0001-fixconfig.diff
@@ -0,0 +1,19 @@
+Description: Change LD
+
+Index: trunk/xbase64-config.in
+===================================================================
+--- trunk.orig/xbase64-config.in 2014-08-02 20:45:57.681245919 +0200
++++ trunk/xbase64-config.in 2014-08-02 20:46:09.461487567 +0200
+@@ -5,10 +5,10 @@
+ exec_prefix_set=no
+ CC="@CC@"
+ CXX="@CXX@"
+-LD="@SHARED_LD@"
++LD="@LD@"
+
+ usage="\
+-Usage: xbase-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--libs] [--cflags] [--cc] [--cxx] [--ld]"
++Usage: xbase64-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--libs] [--cflags] [--cc] [--cxx] [--ld]"
+
+ if test $# -eq 0; then
+ echo "${usage}" 1>&2
diff --git a/debian/patches/0005-autoconf-updates.diff b/debian/patches/0005-autoconf-updates.diff
new file mode 100644
index 0000000..02dcfe7
--- /dev/null
+++ b/debian/patches/0005-autoconf-updates.diff
@@ -0,0 +1,453 @@
+Description: patch to run autoconf
+
+Index: b/AUTHORS
+===================================================================
+--- /dev/null
++++ b/AUTHORS
+@@ -0,0 +1,47 @@
++
++This is a list of the people who are or have worked on the xbase64 Library.
++
++Gary Kunkel <gkunkel@zhsac.com> - original author,
++ current maintainer of xbase64
++Larry McCourry <lmccourry@charter.net - memory leak testing
++Sergiy Yakovin <s.yakovin@if.ukrsotsbank.com> - cdx index support
++
++Previous to this library being branced to xbase64, the following AUTHORS have
++supported xbase to the 2.x release level.
++
++
++
++------------------------------------------------------------------------------
++The following list is the AUTHORS file for the xbase library release 2.
++------------------------------------------------------------------------------
++This is a partial list of the people that have helped with the xbase
++project and something specific they worked on. Most have worked on more
++than what is listed.
++
++Derry Bryson <derry@techass.com> - release 2.x maintainer
++Mario Motta - testing and bugfixes
++Serge Smirnov <sw1181@mail.ru> - MSVC stuff and OCAML support
++Frolov Sergey - bugfixes (memory leaks)
++
++------------------------------------------------------------------------------
++The following is the original AUTHORS file for the xbase library
++------------------------------------------------------------------------------
++This is a partial list of the people that have helped with the xbase
++project and something specific they worked on. Most have worked on more
++than what is listed.
++
++
++Bob Cotton <bcotton@synix.com> - Clipper NTX index support
++Denis Braussen <postoffice@mail.dotcom.fr> - general support
++Denis Pershin <dyp@inetlab.com> - provided library enhancements
++Eirk Bachman <ebp@geocities.com> - keeper of definitive Xbase spec
++Gabriel Emerson <egabriel@io.com> - provided logo
++Kehl Hubertus <kehlh@hotmail.com> - Xbase to Xbase C++ Perl Converter
++Michael Bedward <mbedward@ozemail.com.au> - Expression logic support
++Paul Foster <paulf@quillandmouse.com> - general support
++Vitaly Fedrushkov <willy@snowyowl.csu.ac.ru> - TV support and more
++
++------------------------------------------------------------------------------
++
++If you are missing and you should be included in this file, please let me
++know at xbase64-dev@lists.sourceforge.net. Thanks, Gary Kunkel.
+Index: b/NEWS
+===================================================================
+--- /dev/null
++++ b/NEWS
+@@ -0,0 +1,49 @@
++
++Xbase64 (Sept 15, 2003)
++------------------------
++
++Xbase64 was branched off the xbase C++ class lib project and given a new name.
++
++There are significant changes in this release.
++
++1) The original author (Gary Kunkel) has resumed working on the project.
++
++2) The project was branched and renamed to xbase64 with 64 bit file
++ processing capabilities. The xbase name is being used by other projects,
++ so I thought it was time for a new name.
++
++3) Modified the license from LGPL to GPL as recommended by the GNU web site.
++ Files that I have not been able to get permission from the original
++ author for GPL terms have beed deleted from the library.
++
++4) Trimmed the tree: Dropped support for the xbHtml class, the turbo vision
++ interface, and the ybase directory. These are either unused, not working,
++ undocumented, not maintained, or I didn't have authority to change the
++ license from LGPL to GPL.
++
++5) Didn't move make files forward that were not documented or working.
++ These need to be reviewed and brought forward.
++
++6) Worked on the locking logic.
++
++7) Added support for Borland C++ 5.x compiler.
++
++8) Created a new data type of XB_BOOL. Current bool data type was causing
++ issues in certain environments.
++
++9) Dropped support for XB_CASTELLANO dates. Changed the logic to use
++ system locale settings, this supports descriptive dates in different
++ languages.
++
++10) Cleaned up memory leaks.
++
++11) Updates to the documentation.
++
++12) Enhancements to the expression logic
++
++13) Fixed the broken index logic - the ndx and ntx indices are working
++ again.
++
++-----------------------------------------------------------------------
++For a the historical NEWS file history (pre 9/15/03), review the older
++xbase library.
+Index: b/README
+===================================================================
+--- /dev/null
++++ b/README
+@@ -0,0 +1,108 @@
++ Xbase64 Version 3.1.0
++
++
++
++WHAT IS IT?
++-----------
++
++Xbase64 is an xbase (i.e. dBase, FoxPro, etc.) compatible C++ class library
++originally by Gary Kunkel and others (see the AUTHORS file).
++
++Xbase64 is useful for accessing data in legacy dBase 3 and 4 database files as
++well as a general light-weight database engine. It includes support for
++DBF (dBase version 3 and 4) data files, NDX and NTX indexes, and DBT
++(dBase version 3 and 4). It supports file and record locking under *nix
++and Windows.
++
++
++DIRECTORY LAYOUT
++----------------
++
++ /bin contains various utility programs
++ /examples contains various test programs
++ /html contains the original xBase documentation in html format
++ /xbase64 Xbase64 source and header files
++
++
++BUILDING THE LIBRARY ON UNIX/LINUX
++----------------------------------
++
++XBase64 uses autoconf and libtool to manage the build process.
++
++To configure the library for your specific system, run the "configure"
++shell script as follows:
++
++ ./configure
++
++The configure script accepts the following options in addition to the
++normal default options:
++
++ --enable-debug creates debugging code [default=no]
++ --enable-shared build shared libraries [default=yes]
++ --enable-static build static libraries [default=no]
++ --with-gnu-ld assume the C compiler uses GNU ld [default=no]
++ --without-index-ndx turn off .ndx index support
++ --without-index-ntx turn off .ntx index support
++ --without-memo-fields turn off memo fields support
++ --without-expressions turn off expressions support
++ --without-xbase-locking turn off XBase file locking
++ --without-realdelete turn off XBase record deletion
++ --without-xbase-debug turn off XBase specific debug
++ --without-largefile-support turn off XBase largefile support
++
++Once configured, execute make as follows to build the library:
++
++ make
++
++Once compiled (and assuming no errors occurred), use make to install the
++library, header files, and utilities as follows:
++
++ make install
++
++The default install directory is /usr/local.
++
++
++BUILDING THE LIBRARY ON WINDOWS
++-------------------------------
++
++The MINGW32 and CYGWIN compiler support didn't make the first cut to
++Xbase64. They will be migrated forward in a future release of xbase64.
++Any volunteers?
++
++If using the MINGW32 GCC compiler package, use the makefile.g95 make files.
++Edit bin/makefile.g95 xbase/makefile.g95 to change installation directories.
++
++If using the CYGWIN environment, use the makefile.cyg make files (or fix
++the autoconf/automake stuff to work correclty). However, for some reason
++(as yet undetermined) it seems to run very slowly when compiled with the
++cygwin compiler (perhaps the file handing in the cygwin dll is just dog slow?).
++
++
++BUILDING THE LIRARY WITH BORLAND 5.5
++------------------------------------
++
++There are batch files MAKEBCC.BAT which build the xbase libs for
++Borland C++ 5.5.
++
++
++
++DOCUMENTATION
++-------------
++
++The documentation at this point consists of the original xBase documentation
++(in the html directory). It is still very useful as little has changed
++from the original library except bugfixes and a few enhancements.
++
++We are working on incorporating comments into the source to allow
++generation of reference documentation using the Doxygen document generator.
++A small amount has been done already, but we hope to complete this effort
++before the next release.
++
++
++CONTACT
++-------
++
++Please email comments, bug reports, and patches to Gary Kunkel
++xdb-dev@lists.sourceforge.net
++
++
+Index: b/authors
+===================================================================
+--- a/authors
++++ /dev/null
+@@ -1,47 +0,0 @@
+-
+-This is a list of the people who are or have worked on the xbase64 Library.
+-
+-Gary Kunkel <gkunkel@zhsac.com> - original author,
+- current maintainer of xbase64
+-Larry McCourry <lmccourry@charter.net - memory leak testing
+-Sergiy Yakovin <s.yakovin@if.ukrsotsbank.com> - cdx index support
+-
+-Previous to this library being branced to xbase64, the following AUTHORS have
+-supported xbase to the 2.x release level.
+-
+-
+-
+-------------------------------------------------------------------------------
+-The following list is the AUTHORS file for the xbase library release 2.
+-------------------------------------------------------------------------------
+-This is a partial list of the people that have helped with the xbase
+-project and something specific they worked on. Most have worked on more
+-than what is listed.
+-
+-Derry Bryson <derry@techass.com> - release 2.x maintainer
+-Mario Motta - testing and bugfixes
+-Serge Smirnov <sw1181@mail.ru> - MSVC stuff and OCAML support
+-Frolov Sergey - bugfixes (memory leaks)
+-
+-------------------------------------------------------------------------------
+-The following is the original AUTHORS file for the xbase library
+-------------------------------------------------------------------------------
+-This is a partial list of the people that have helped with the xbase
+-project and something specific they worked on. Most have worked on more
+-than what is listed.
+-
+-
+-Bob Cotton <bcotton@synix.com> - Clipper NTX index support
+-Denis Braussen <postoffice@mail.dotcom.fr> - general support
+-Denis Pershin <dyp@inetlab.com> - provided library enhancements
+-Eirk Bachman <ebp@geocities.com> - keeper of definitive Xbase spec
+-Gabriel Emerson <egabriel@io.com> - provided logo
+-Kehl Hubertus <kehlh@hotmail.com> - Xbase to Xbase C++ Perl Converter
+-Michael Bedward <mbedward@ozemail.com.au> - Expression logic support
+-Paul Foster <paulf@quillandmouse.com> - general support
+-Vitaly Fedrushkov <willy@snowyowl.csu.ac.ru> - TV support and more
+-
+-------------------------------------------------------------------------------
+-
+-If you are missing and you should be included in this file, please let me
+-know at xbase64-dev@lists.sourceforge.net. Thanks, Gary Kunkel.
+Index: b/news
+===================================================================
+--- a/news
++++ /dev/null
+@@ -1,49 +0,0 @@
+-
+-Xbase64 (Sept 15, 2003)
+-------------------------
+-
+-Xbase64 was branched off the xbase C++ class lib project and given a new name.
+-
+-There are significant changes in this release.
+-
+-1) The original author (Gary Kunkel) has resumed working on the project.
+-
+-2) The project was branched and renamed to xbase64 with 64 bit file
+- processing capabilities. The xbase name is being used by other projects,
+- so I thought it was time for a new name.
+-
+-3) Modified the license from LGPL to GPL as recommended by the GNU web site.
+- Files that I have not been able to get permission from the original
+- author for GPL terms have beed deleted from the library.
+-
+-4) Trimmed the tree: Dropped support for the xbHtml class, the turbo vision
+- interface, and the ybase directory. These are either unused, not working,
+- undocumented, not maintained, or I didn't have authority to change the
+- license from LGPL to GPL.
+-
+-5) Didn't move make files forward that were not documented or working.
+- These need to be reviewed and brought forward.
+-
+-6) Worked on the locking logic.
+-
+-7) Added support for Borland C++ 5.x compiler.
+-
+-8) Created a new data type of XB_BOOL. Current bool data type was causing
+- issues in certain environments.
+-
+-9) Dropped support for XB_CASTELLANO dates. Changed the logic to use
+- system locale settings, this supports descriptive dates in different
+- languages.
+-
+-10) Cleaned up memory leaks.
+-
+-11) Updates to the documentation.
+-
+-12) Enhancements to the expression logic
+-
+-13) Fixed the broken index logic - the ndx and ntx indices are working
+- again.
+-
+------------------------------------------------------------------------
+-For a the historical NEWS file history (pre 9/15/03), review the older
+-xbase library.
+Index: b/readme
+===================================================================
+--- a/readme
++++ /dev/null
+@@ -1,108 +0,0 @@
+- Xbase64 Version 3.1.0
+-
+-
+-
+-WHAT IS IT?
+------------
+-
+-Xbase64 is an xbase (i.e. dBase, FoxPro, etc.) compatible C++ class library
+-originally by Gary Kunkel and others (see the AUTHORS file).
+-
+-Xbase64 is useful for accessing data in legacy dBase 3 and 4 database files as
+-well as a general light-weight database engine. It includes support for
+-DBF (dBase version 3 and 4) data files, NDX and NTX indexes, and DBT
+-(dBase version 3 and 4). It supports file and record locking under *nix
+-and Windows.
+-
+-
+-DIRECTORY LAYOUT
+-----------------
+-
+- /bin contains various utility programs
+- /examples contains various test programs
+- /html contains the original xBase documentation in html format
+- /xbase64 Xbase64 source and header files
+-
+-
+-BUILDING THE LIBRARY ON UNIX/LINUX
+-----------------------------------
+-
+-XBase64 uses autoconf and libtool to manage the build process.
+-
+-To configure the library for your specific system, run the "configure"
+-shell script as follows:
+-
+- ./configure
+-
+-The configure script accepts the following options in addition to the
+-normal default options:
+-
+- --enable-debug creates debugging code [default=no]
+- --enable-shared build shared libraries [default=yes]
+- --enable-static build static libraries [default=no]
+- --with-gnu-ld assume the C compiler uses GNU ld [default=no]
+- --without-index-ndx turn off .ndx index support
+- --without-index-ntx turn off .ntx index support
+- --without-memo-fields turn off memo fields support
+- --without-expressions turn off expressions support
+- --without-xbase-locking turn off XBase file locking
+- --without-realdelete turn off XBase record deletion
+- --without-xbase-debug turn off XBase specific debug
+- --without-largefile-support turn off XBase largefile support
+-
+-Once configured, execute make as follows to build the library:
+-
+- make
+-
+-Once compiled (and assuming no errors occurred), use make to install the
+-library, header files, and utilities as follows:
+-
+- make install
+-
+-The default install directory is /usr/local.
+-
+-
+-BUILDING THE LIBRARY ON WINDOWS
+--------------------------------
+-
+-The MINGW32 and CYGWIN compiler support didn't make the first cut to
+-Xbase64. They will be migrated forward in a future release of xbase64.
+-Any volunteers?
+-
+-If using the MINGW32 GCC compiler package, use the makefile.g95 make files.
+-Edit bin/makefile.g95 xbase/makefile.g95 to change installation directories.
+-
+-If using the CYGWIN environment, use the makefile.cyg make files (or fix
+-the autoconf/automake stuff to work correclty). However, for some reason
+-(as yet undetermined) it seems to run very slowly when compiled with the
+-cygwin compiler (perhaps the file handing in the cygwin dll is just dog slow?).
+-
+-
+-BUILDING THE LIRARY WITH BORLAND 5.5
+-------------------------------------
+-
+-There are batch files MAKEBCC.BAT which build the xbase libs for
+-Borland C++ 5.5.
+-
+-
+-
+-DOCUMENTATION
+--------------
+-
+-The documentation at this point consists of the original xBase documentation
+-(in the html directory). It is still very useful as little has changed
+-from the original library except bugfixes and a few enhancements.
+-
+-We are working on incorporating comments into the source to allow
+-generation of reference documentation using the Doxygen document generator.
+-A small amount has been done already, but we hope to complete this effort
+-before the next release.
+-
+-
+-CONTACT
+--------
+-
+-Please email comments, bug reports, and patches to Gary Kunkel
+-xdb-dev@lists.sourceforge.net
+-
+-
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -74,7 +74,7 @@
+
+ # get G++ version
+ if test "$GXX" = "yes"; then
+- GXXVER=`${CXX} -v 2>&1 | grep version | cut -d " " -f 3 -`
++ GXXVER=`${CXX} -v 2>&1 | grep '^gcc version' | cut -d " " -f 3 -`
+ GXXVER="gcc${GXXVER}"
+ else
+ GXXVER=""
diff --git a/debian/patches/0100-typo.patch b/debian/patches/0100-typo.patch
new file mode 100644
index 0000000..58bbd5a
--- /dev/null
+++ b/debian/patches/0100-typo.patch
@@ -0,0 +1,54 @@
+Description: Fix some typos
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Last-Update: 2014-08-03
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/bin/dbfxtrct.cpp
+===================================================================
+--- trunk.orig/bin/dbfxtrct.cpp 2014-08-03 09:38:06.163215123 +0200
++++ trunk/bin/dbfxtrct.cpp 2014-08-03 09:39:31.829216623 +0200
+@@ -48,7 +48,7 @@
+ {
+ std::cout << "\nUsage: dbfxtrct -iDATABASE.DBF -sINDEX.N[TD]X -f -F -dMM/DD/YY\n";
+ std::cout << "\nWhere DATABASE.DBF is the name of the database file to dump\n";
+- std::cout << "INDEX.NTX or .NDX is an optional index sort paramater\n";
++ std::cout << "INDEX.NTX or .NDX is an optional index sort parameter\n";
+ std::cout << "-f optional field name list in first record\n";
+ std::cout << "-F optional field name and attributes in first record\n";
+ std::cout << "MM/DD/YY is an optional output date format for any date fields\n";
+@@ -70,7 +70,7 @@
+ char buf[200];
+ xbExpn exp( &x );
+
+-/* Get the input paramaters
++/* Get the input parameters
+
+ -i input datafile name
+ -s optional sort index name
+@@ -82,7 +82,7 @@
+ {
+ p = av[i];
+ if( *p != '-' ){
+- std::cout << "Invalid paramater " << *p << std::endl;
++ std::cout << "Invalid parameter " << *p << std::endl;
+ Usage();
+ return 1;
+ }
+@@ -98,7 +98,7 @@
+ else if( *p == 'd' )
+ x.SetDefaultDateFormat( ++p );
+ else{
+- std::cout << "Invalid paramater " << *p << std::endl;
++ std::cout << "Invalid parameter " << *p << std::endl;
+ Usage();
+ return 1;
+ }
+@@ -146,7 +146,7 @@
+ }
+
+
+-/* if -f or -F paramater, dump the header information */
++/* if -f or -F parameter, dump the header information */
+ if( FieldOption ){
+ for( xbLong l = 0; l < d.FieldCount(); l++ ){
+ if( l ) std::cout << ",";
diff --git a/debian/patches/0105-lesserg.diff b/debian/patches/0105-lesserg.diff
new file mode 100644
index 0000000..8fca28d
--- /dev/null
+++ b/debian/patches/0105-lesserg.diff
@@ -0,0 +1,282 @@
+Description: change __GNU LesserG__ to __GNU_LesserG__
+
+--- a/xbase64/xbase64.cpp
++++ b/xbase64/xbase64.cpp
+@@ -38,7 +38,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbase64.h"
+ #endif
+
+--- a/xbase64/xbase64.h
++++ b/xbase64/xbase64.h
+@@ -42,7 +42,7 @@
+ #ifndef __XB_XBASE_H__
+ #define __XB_XBASE_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+@@ -60,7 +60,7 @@
+ // ripped from wxWindows
+
+ // _declspec works in BC++ 5 and later, as well as VC++
+-#if defined(__VISUALC__) || defined(__BORLANDC__) || defined(__GNU LesserC__)
++#if defined(__VISUALC__) || defined(__BORLANDC__) || defined(__GNU_LesserC__)
+ # ifdef XBMAKINGDLL
+ # define XBDLLEXPORT __declspec( dllexport )
+ # define XBDLLEXPORT_DATA(type) __declspec( dllexport ) type
+--- a/xbase64/xbcdx.h
++++ b/xbase64/xbcdx.h
+@@ -41,7 +41,7 @@ struct CdxNode
+ xbLong leftSibling;
+ xbLong rightSibling;
+ }
+-#ifdef __GNU LesserC__
++#ifdef __GNU_LesserC__
+ __attribute__((packed))
+ #endif
+ ;
+@@ -50,7 +50,7 @@ struct CdxInnerNode: public CdxNode
+ {
+ char keys[500];
+ }
+-#ifdef __GNU LesserC__
++#ifdef __GNU_LesserC__
+ __attribute__((packed))
+ #endif
+ ;
+@@ -67,7 +67,7 @@ struct CdxLeafNode: public CdxNode
+ char byteCount;
+ char keys[488];
+ }
+-#ifdef __GNU LesserC__
++#ifdef __GNU_LesserC__
+ __attribute__((packed))
+ #endif
+ ;
+--- a/xbase64/xbdate.cpp
++++ b/xbase64/xbdate.cpp
+@@ -40,7 +40,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbdate.h"
+ #endif
+
+--- a/xbase64/xbdate.h
++++ b/xbase64/xbdate.h
+@@ -45,7 +45,7 @@
+ #ifndef __XB_XBDATE_H__
+ #define __XB_XBDATE_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbdbf.cpp
++++ b/xbase64/xbdbf.cpp
+@@ -39,7 +39,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbdbf.h"
+ #endif
+
+--- a/xbase64/xbdbf.h
++++ b/xbase64/xbdbf.h
+@@ -41,7 +41,7 @@
+ #ifndef __XB_DBF_H__
+ #define __XB_DBF_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbexp.cpp
++++ b/xbase64/xbexp.cpp
+@@ -38,7 +38,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbexp.h"
+ #endif
+
+--- a/xbase64/xbexp.h
++++ b/xbase64/xbexp.h
+@@ -42,7 +42,7 @@
+ #ifndef __XB_EXP_H__
+ #define __XB_EXP_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbfile.cpp
++++ b/xbase64/xbfile.cpp
+@@ -39,7 +39,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbfile.h"
+ #endif
+
+--- a/xbase64/xbfile.h
++++ b/xbase64/xbfile.h
+@@ -45,7 +45,7 @@
+ #ifndef __XB_FILE_H__
+ #define __XB_FILE_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbfilter.cpp
++++ b/xbase64/xbfilter.cpp
+@@ -38,7 +38,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbfilter.h"
+ #endif
+
+--- a/xbase64/xbfilter.h
++++ b/xbase64/xbfilter.h
+@@ -44,7 +44,7 @@
+ #ifndef __XB_FILTER_H__
+ #define __XB_FILTER_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbindex.cpp
++++ b/xbase64/xbindex.cpp
+@@ -37,7 +37,7 @@
+ USA
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbindex.h"
+ #endif
+
+--- a/xbase64/xbindex.h
++++ b/xbase64/xbindex.h
+@@ -43,7 +43,7 @@
+ #ifndef __XB_INDEX_H__
+ #define __XB_INDEX_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xblock.cpp
++++ b/xbase64/xblock.cpp
+@@ -42,7 +42,7 @@
+ USA
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xblock.h"
+ #endif
+
+--- a/xbase64/xblock.h
++++ b/xbase64/xblock.h
+@@ -44,7 +44,7 @@
+ #ifndef __XB_XBLOCK_H__
+ #define __XB_XBLOCK_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbndx.cpp
++++ b/xbase64/xbndx.cpp
+@@ -36,7 +36,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbndx.h"
+ #endif
+
+--- a/xbase64/xbndx.h
++++ b/xbase64/xbndx.h
+@@ -41,7 +41,7 @@
+ #ifndef __XB_NDX_H__
+ #define __XB_NDX_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbntx.cpp
++++ b/xbase64/xbntx.cpp
+@@ -40,7 +40,7 @@
+ USA
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbntx.h"
+ #endif
+
+--- a/xbase64/xbntx.h
++++ b/xbase64/xbntx.h
+@@ -42,7 +42,7 @@
+ #ifndef __XB_NTX_H__
+ #define __XB_NTX_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
+--- a/xbase64/xbstring.cpp
++++ b/xbase64/xbstring.cpp
+@@ -38,7 +38,7 @@
+
+ */
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma implementation "xbstring.h"
+ #endif
+
+--- a/xbase64/xbstring.h
++++ b/xbase64/xbstring.h
+@@ -41,7 +41,7 @@
+ #ifndef __XBSTRING_H__
+ #define __XBSTRING_H__
+
+-#ifdef __GNU LesserG__
++#ifdef __GNU_LesserG__
+ #pragma interface
+ #endif
+
diff --git a/debian/patches/0110-c++-includes.diff b/debian/patches/0110-c++-includes.diff
new file mode 100644
index 0000000..764a842
--- /dev/null
+++ b/debian/patches/0110-c++-includes.diff
@@ -0,0 +1,38 @@
+Description: add req. #include
+
+Index: b/xbase64/xbase64.cpp
+===================================================================
+--- a/xbase64/xbase64.cpp
++++ b/xbase64/xbase64.cpp
+@@ -66,6 +66,8 @@
+ #include <dos.h>
+ #endif
+
++#include <cerrno>
++
+
+ /*! \file xbase64.cpp
+ */
+Index: b/xbase64/xblock.cpp
+===================================================================
+--- a/xbase64/xblock.cpp
++++ b/xbase64/xblock.cpp
+@@ -65,6 +65,8 @@
+ //#include <stdio.h>
+ //#include <stdlib.h>
+
++#include <cerrno>
++
+ /*! \file xblock.cpp
+ */
+ #ifdef XB_LOCKING_ON
+Index: b/xbase64/xbnode.cpp
+===================================================================
+--- a/xbase64/xbnode.cpp
++++ b/xbase64/xbnode.cpp
+@@ -1,4 +1,4 @@
+-#include "xbNode.h"
++#include "xbnode.h"
+
+ void xbNodeLink::AddNode(xbNodeLink* node)
+ {
diff --git a/debian/patches/0115-gcc-fixes.diff b/debian/patches/0115-gcc-fixes.diff
new file mode 100644
index 0000000..5a3149c
--- /dev/null
+++ b/debian/patches/0115-gcc-fixes.diff
@@ -0,0 +1,24 @@
+Description: some fixes
+
+Index: b/bin/dumprecs.cpp
+===================================================================
+--- a/bin/dumprecs.cpp
++++ b/bin/dumprecs.cpp
+@@ -70,7 +70,7 @@
+ return 1;
+ }
+
+- for(int i=1; i<ac; ++i){
++ for(int i=1; i<ac; ++i){{
+ char* filename = av[i];
+
+ xbDbf MyFile( &x );
+@@ -91,7 +91,7 @@
+ x.DisplayError( rc );
+ }
+ MyFile.CloseDatabase(); /* close database */
+- }
++ }}
+ return 0;
+ }
+
diff --git a/debian/patches/0120-fix-types-include.diff b/debian/patches/0120-fix-types-include.diff
new file mode 100644
index 0000000..95fbbe6
--- /dev/null
+++ b/debian/patches/0120-fix-types-include.diff
@@ -0,0 +1,30 @@
+Author: Pino Toscano <pino@debian.org>
+Description: Fix xbtypes.h usage
+ a) do not redefine xbOffT every time xbtypes.h is included
+ b) do not include xbtypes.h in xbcdx.cpp, since it will be indirectly pulled
+ by xbase64.h
+Forwarded: no
+Last-Update: 2014-09-13
+
+--- a/xbase64/xbcdx.cpp
++++ b/xbase64/xbcdx.cpp
+@@ -1,4 +1,3 @@
+-#include "xbtypes.h"
+ #include "xbcdx.h"
+
+ xbShort xbCdx::CreateIndex(const char* filename, const char *expr,
+--- a/xbase64/xbtypes.h
++++ b/xbase64/xbtypes.h
+@@ -85,7 +85,6 @@ typedef short int xbBool;
+ #else
+ #endif
+ #endif // XB_LOCKING_ON
+-#endif // __XB_XTYPES_H__
+
+ // 64 bit file processing
+ #if defined(HAVE_FSEEKO) && defined(HAVE_FTELLO) && defined(XB_LARGEFILE_SUPPORT)
+@@ -97,3 +96,4 @@ typedef short int xbBool;
+ #define _fseek fseek
+ typedef long xbOffT;
+ #endif
++#endif // __XB_XTYPES_H__
diff --git a/debian/patches/0125-gcc6.patch b/debian/patches/0125-gcc6.patch
new file mode 100644
index 0000000..aa509af
--- /dev/null
+++ b/debian/patches/0125-gcc6.patch
@@ -0,0 +1,55 @@
+Description: FTBFS with gcc-6
+Author: Pino Toscano <pino@debian.org>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=811846
+Last-Update: 2016-09-19
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/xbase64/xblock.cpp
+===================================================================
+--- trunk.orig/xbase64/xblock.cpp
++++ trunk/xbase64/xblock.cpp
+@@ -82,7 +82,7 @@ xbLock::xbLock(xbDbf * pdbf)
+ TableLockCnt = 0;
+ MemoLockCnt = 0;
+ IndexLockCnt = 0;
+- std::cout << "xbLock constructor" << std::cout;
++ std::cout << "xbLock constructor" << std::endl;
+ }
+ /*************************************************************************/
+ xbLock::~xbLock()
+@@ -167,7 +167,7 @@ else if( LockType == XB_LOCK || LockType
+ /*************************************************************************/
+ xbaseLock::xbaseLock( xbDbf * pdbf ) : xbLock( pdbf )
+ {
+- std::cout << "xbaseLock constructor" << std::cout;
++ std::cout << "xbaseLock constructor" << std::endl;
+ }
+ /*************************************************************************/
+ xbShort xbaseLock::LockTableHeader( xbShort LockType )
+@@ -334,7 +334,7 @@ xbShort xbaseLock::LockInit()
+ /*************************************************************************/
+ dbaseLock::dbaseLock( xbDbf * pdbf ) : xbLock( pdbf )
+ {
+- std::cout << "dbaseLock constructor" << std::cout;
++ std::cout << "dbaseLock constructor" << std::endl;
+ }
+ /*************************************************************************/
+ xbShort dbaseLock::LockTableHeader( xbShort LockType )
+@@ -458,7 +458,7 @@ xbShort dbaseLock::UnlockAll()
+ /*************************************************************************/
+ clipperLock::clipperLock( xbDbf * pdbf ) : xbLock( pdbf )
+ {
+- std::cout << "clipperLock constructor" << std::cout;
++ std::cout << "clipperLock constructor" << std::endl;
+ }
+ /*************************************************************************/
+ xbShort clipperLock::LockTableHeader( xbShort LockType )
+@@ -521,7 +521,7 @@ xbShort clipperLock::UnlockAll()
+ /*************************************************************************/
+ foxproLock::foxproLock( xbDbf * pdbf ) : xbLock( pdbf )
+ {
+- std::cout << "foxproLock constructor" << std::cout;
++ std::cout << "foxproLock constructor" << std::endl;
+ }
+ /*************************************************************************/
+ xbShort foxproLock::LockTableHeader( xbShort LockType )
diff --git a/debian/patches/0130-typos.patch b/debian/patches/0130-typos.patch
new file mode 100644
index 0000000..cd8e0b0
--- /dev/null
+++ b/debian/patches/0130-typos.patch
@@ -0,0 +1,18 @@
+Description: Typos in source
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Last-Update: 2016-09-19
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/bin/dbfutil1.cpp
+===================================================================
+--- trunk.orig/bin/dbfutil1.cpp
++++ trunk/bin/dbfutil1.cpp
+@@ -923,7 +923,7 @@ void MyClass::DebugMenu()
+
+ while( option != 99 ) {
+ std::cout << std::endl << std::endl << "Debug Menu" << std::endl;
+- std::cout << "1 - Dislay DBT Header" << std::endl;
++ std::cout << "1 - Display DBT Header" << std::endl;
+ std::cout << "2 - Find Memo Blocks" << std::endl;
+ std::cout << "3 - Get Memo Blocks" << std::endl;
+ std::cout << "4 - Dump index node chains to file xbase.dmp" << std::endl;
diff --git a/debian/patches/0135-replace_gets.patch b/debian/patches/0135-replace_gets.patch
new file mode 100644
index 0000000..26b21ec
--- /dev/null
+++ b/debian/patches/0135-replace_gets.patch
@@ -0,0 +1,66 @@
+Description: Replace deprecated gets() with std::cin.getline()
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=841626
+Last-Update: 2016-10-22
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: xbase64-3.1.2/bin/dbfutil1.cpp
+===================================================================
+--- xbase64-3.1.2.orig/bin/dbfutil1.cpp
++++ xbase64-3.1.2/bin/dbfutil1.cpp
+@@ -38,6 +38,7 @@
+ */
+
+ #include <xbase64/xbase64.h>
++#include <limits>
+
+ // next lines are helpful for debugging purposes
+ /*
+@@ -153,11 +154,16 @@ void MyClass::FilterMenu()
+ /************************************************************************/
+ void MyClass::SetFilter()
+ {
+- char Expression[512];
+- memset( Expression, 0x00, 512 );
++ constexpr int SIZE = 512;
++
++ char Expression[SIZE];
++ memset( Expression, 0x00, SIZE );
+ while( !strlen( Expression )){
+ std::cout << "Enter filter expression (like AMOUNT<5)" << std::endl;
+- gets( Expression );
++
++ std::cin.getline(Expression, SIZE-1);
++ Expression[SIZE-1] = '\0';
++ std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
+ }
+ if( xbf )
+ delete xbf;
+@@ -235,19 +241,24 @@ void MyClass::LastFilterRec()
+ #ifdef XB_EXPRESSIONS
+ void MyClass::ProcessExpression()
+ {
+- char exprsn[256];
++ constexpr int SIZE = 256;
++
++ char exprsn[SIZE];
+ char type;
+ xbExpn *exp; // expression
+ xbShort rc;
+ int debug = 0;
+- memset( exprsn, 0x00, 256 );
++ memset( exprsn, 0x00, SIZE );
+
+ std::cout << "Enter expression string or HELP" << std::endl;
+
+ while( !strstr( exprsn, "QUIT" ) && !strstr( exprsn, "quit" )){
+
+ std::cout << ">";
+- gets( exprsn );
++
++ std::cin.getline(exprsn, SIZE-1);
++ exprsn[SIZE-1] = '\0';
++ std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
+
+ if( strstr( exprsn, "HELP" ) || strstr( exprsn, "help" )){
+ std::cout << "** Command Help ***" << std::endl << std::endl;
diff --git a/debian/patches/0700-ReproducibleBuilds.patch b/debian/patches/0700-ReproducibleBuilds.patch
new file mode 100644
index 0000000..aceb2ee
--- /dev/null
+++ b/debian/patches/0700-ReproducibleBuilds.patch
@@ -0,0 +1,19 @@
+Description: Remove timestamp from doxygen generated files
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Forwarded: not-needed
+Last-Update: 2015-02-17
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/docs/doxygen.cfg.in
+===================================================================
+--- trunk.orig/docs/doxygen.cfg.in
++++ trunk/docs/doxygen.cfg.in
+@@ -730,3 +730,8 @@ BIN_ABSPATH = /usr/local/bin/
+ # the documentation for these projects as well.
+
+ EXT_DOC_PATHS =
++
++# If Doxyfile contains HTML_TIMESTAMP = YES, Doxygen will add a
++# timestamp to its generated documentation
++
++HTML_TIMESTAMP = NO
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..a362949
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,11 @@
+0125-gcc6.patch
+0130-typos.patch
+0700-ReproducibleBuilds.patch
+0100-typo.patch
+0001-fixconfig.diff
+0005-autoconf-updates.diff
+0105-lesserg.diff
+0110-c++-includes.diff
+0115-gcc-fixes.diff
+0120-fix-types-include.diff
+0135-replace_gets.patch