Commit Graph

60 Commits

Author SHA1 Message Date
Evan Miller
9f41e03278 Fix up libtool version-info logic 2020-09-05 10:50:24 -04:00
Evan Miller
a598148afc Merge branch 'export-mongodb-json' of github.com:rutsky/mdbtools into mdb-exportjson 2020-09-02 09:18:52 -04:00
Evan Miller
d3949f7a0f Include txt2man script (requires gawk) 2020-09-01 20:27:19 -04:00
Evan Miller
be888e0dd7
Support fuzz testing (#4)
Quickstart (requires Clang 6 or later):

$ export LIB_FUZZING_ENGINE=/path/to/fuzzing/library.a
$ ./configure --enable-fuzz-testing
$ make
$ cd src/fuzz
$ make fuzz_mdb
$ ./fuzz_mdb

Also add a new `mdb_open_buffer function` to facilitate in-memory
fuzz-testing. This requires fmemopen, which may not be present on all
systems. The internal API has been reworked to use file streams instead
of file descriptors. This allows reading from memory and reading from
files using a consistent API.
2020-08-31 13:03:58 -04:00
Evan Miller
ea368bc0e3 Require Bison 3.0+ at configure time for SQL features 2020-08-18 10:02:56 -04:00
Evan Miller
60c820245d Only set -Wno-yacc if $YACC supports it 2020-08-18 09:05:33 -04:00
Evan Miller
ec8492f1ee Try fixing Travis and Appveyor
The new re-entrant parser requires Bison 3, which is not installed
on macOS by default. It also appears to require -Wno-yacc.
2020-08-18 07:32:15 -04:00
Evan Miller
4cc7999022 Replace obsolete AC_TRY_LINK with AC_LINK_IFELSE 2020-08-14 07:18:23 -04:00
Evan Miller
6171472411 Change -Bsymbolic-functions to -Wl,-Bsymbolic-functions 2020-08-14 00:12:07 -04:00
Evan Miller
dfd41f2283 Try fixing unixODBC deadlock with -Bsymbolic-functions
This flag compels the dynamic library to prefer its own function symbols
to those in the global symbol table. This behavior should let us
directly call SQL* functions from inside other SQL* functions without
fear of interference by the host program.
2020-08-13 21:52:03 -04:00
Evan Miller
093c6f1774 Try setting --no-undefined on Linux 2020-08-12 23:39:57 -04:00
Evan Miller
362938f17c ODBC build fixes
* Require SQLGetPrivateProfileString in ODBC libraries

* Attempt to fix reported deadlock with unixODBC by rearranging
functions
2020-08-12 15:05:25 -04:00
Evan Miller
f7e863b8e4 Put unixODBC under basic build / test coverage 2020-08-11 11:56:08 -04:00
Evan Miller
7690ef376f Turn off -Wsign-compare for the lexer
Flex doesn't like it.
2020-08-09 16:23:06 -04:00
Evan Miller
c93156626c Fix all sign-compare warnings
Also flip on -Wsign-compare in the default configuration
2020-08-09 16:15:20 -04:00
Evan Miller
0b6809be82 Fix program_invocation_short_name on Linux 2020-08-05 23:54:25 -04:00
Evan Miller
7c324a9cb4 Fix warnings 2020-08-05 23:48:49 -04:00
Evan Miller
783304c164 Turn on -Werror 2020-08-05 23:07:48 -04:00
Evan Miller
18de0070af New --disable-glib configure option
This option uses the fake GLib shim even when GLib is present on the
system.
2020-08-05 20:36:20 -04:00
Evan Miller
b8181fa65f Add -Wno-conflicts-sr to yacc flags 2020-08-05 10:08:11 -04:00
Evan Miller
7ecd132e57 Cygwin fix 2020-08-05 08:17:49 -04:00
Evan Miller
36ba51db7a More Windows fixes 2020-08-05 00:45:14 -04:00
Evan Miller
bcc6defe94 Merge branch 'master' into no-glib 2020-08-04 23:53:50 -04:00
Evan Miller
4e9bee2dc8 Windows build fixes 2020-08-04 17:52:22 -04:00
Evan Miller
e9f4c6c786 Remove GLib dependency WIP
Add a shim implementing half-assed versions of most of the GLib
functions used by MDB Tools. If GLib is detected at compile-time,
use it, otherwise use the shim.

This work is not complete, as the option-parsing code is not yet
implemented - so most of the command-line tools crash.
2020-08-03 17:19:40 -04:00
Evan Miller
cdde7c3268 Enable strict prototypes warnings, and fix warnings
If a host project has -Wstrict-prototypes enabled, the mdbtools header
results in warnings. Turn on -Wstrict-prototypes for the whole project
so that these never occur again.
2018-12-29 10:34:54 -05:00
Cyber Emissary
b753ff36a0 Bumped version to 0.8.2 and updated change log 2018-12-28 08:03:02 -05:00
Cyber Emissary
0a68ee9a02 Returned some files that required by automake
Updated version in configure.ac
Added the new README.md and CHANGELOG.md to makefile.am
Added info about where RPM package can be downloaded
2018-02-13 13:54:34 -05:00
leecher1337
e9ec53f6bd Fixing JET4 Index support via libmswstr. Used as a separate library to do it like MS Jet and to ensure that mdbtools library doesn't get tainted with its source. 2017-12-05 00:13:28 +01:00
leecher1337
e2449c11f3 Added strptime function to SQL parser as a feature. This is needed to i.e. be able to query time-fields in DB and to use dates <1.1.1970 and >19.1.2038. All changes should be backwards-compatible to not break existing queries. 2015-08-30 11:23:57 +02:00
Nirgal Vourgère
584119e415 Split bash-completion snippet in small ones
/usr/share/bash-completion/completions/ now uses dynamic loading based on file name.
2015-05-30 15:40:58 +02:00
Vladimir Rutsky
1758d99d4d Merge PR #52 - mdb-exportjson added 2015-02-19 20:46:33 +03:00
Sam Stuck
3a62b29a75 Fix configure for CentOS 6 2015-01-20 12:42:42 -05:00
Nirgal Vourgère
4b52d6bfd9 Revert previous commit
Files where already there
2014-10-20 11:29:54 +02:00
Nirgal Vourgère
6df6152769 Added bash-completion and desktop files in dist/ 2014-10-18 07:19:10 +02:00
Nirgal Vourgère
157f4f4761 fix ENABLE_SK undefined, autoconf summary 2014-10-17 17:15:46 +02:00
Nirgal Vourgère
6f79a63c23 Normalise configure.ac help messages 2014-10-17 14:55:58 +02:00
Nirgal Vourgère
70ee236de9 Using iodbc-config --cflags --libs to get config 2014-10-17 12:49:49 +02:00
Nirgal Vourgère
4b08559d66 autoconf graciously fail on missing pkg-config 2014-10-17 11:10:22 +02:00
Ugo Di Girolamo
5057419da9 Add new binary util - mdb-exportjson
A new binary util for exporting mdb rows as json lines.
This is very useful for importing mdb data to mongo in combination with mongoimport.

The code is vastly similar to the mdb-export but there are enough dissimilarities and disagreement
about flag values that I thought a separate util is warranted.
2014-05-21 22:35:06 -04:00
Nirgal Vourgère
b5fb8243a1 Moved gmdb help arch from rarian to gnome-doc
And fixed gmdb.xml: <listitem> cannot contains <guiitem> dirrectly. Added a <para> wrapper.
2013-10-24 21:48:51 +02:00
Nirgal Vourgère
f8ce1cccd4 Releasing version 0.7.1 2013-10-13 10:51:24 +02:00
Nirgal Vourgère
95b8b750bc Droped autoconf hacks caused by AC_CONFIG_HEADERS 2013-07-15 02:55:57 +02:00
Nirgal Vourgère
7841d30d43 Revert use of config.h
Revert
7162e8db74
088493d499

And drop AC_CONFIG_HEADERS so that config goes though the command line.
No longer generating config.h, update .gitignore
2013-07-15 02:42:12 +02:00
Nirgal Vourgère
05980343ec Change to recommanded m4/-style small files 2013-07-15 00:30:21 +02:00
Nirgal Vourgère
088493d499 Update autoconf/automake standards
Generated files config.guess config.sub depcomp install-sh ltmain.sh missing
and ylwrap have been moved to build-aux/

Ran autoupdate

Replaced AC_TRY_LINK/AC_TRY_COMPILE by AC_LINK_IFELSE/AC_COMPILE_IFELSE

Droped -I$(top_srcdir)/include from CFLAGS since AC_CONFIG_HEADERS already
adds the -I

Fixed bison detection

Added AM_PROG_AR as required by autoreconf -i -Wall

Updated NEWS and .gitignore
2013-07-09 18:39:03 +02:00
Nirgal Vourgère
a021708dae Move the ODBC wide support in its own file
Enabling wide functions can break ascii one, like DriveConnect()
2013-07-09 00:54:03 +02:00
Nirgal Vourgère
ca395d8537 Added --disable-man configure option
You want that if you don't have txt2man or just are not interrested
in manuals.
2013-07-04 13:22:52 +02:00
Nirgal Vourgère
7a1637982c Fix build if yacc is missing 2013-06-28 20:07:44 +02:00
Nirgal Vourgère
473d820239 Replace map files by -export-symbols-regex use
We had to support -export-symbols-regex anways
And map file did not really support versions but only list which symbol
to export. So this is more simple.
2012-10-20 14:32:32 +02:00