New --disable-glib configure option

This option uses the fake GLib shim even when GLib is present on the
system.
This commit is contained in:
Evan Miller 2020-08-05 20:36:20 -04:00
parent 12ba8a424a
commit 18de0070af
6 changed files with 20 additions and 9 deletions

View File

@ -17,7 +17,7 @@ before_script:
- autoreconf -i -f -Wno-portability
script:
- ./configure --disable-man --disable-silent-rules
- ./configure --disable-man --disable-silent-rules --disable-glib
- make
- ./src/util/mdb-array test/data/ASampleDatabase.accdb "Asset Items"
- ./src/util/mdb-array test/data/nwind.mdb "Customers"

View File

@ -152,13 +152,22 @@ pkg-config is required.
See pkg-config.freedesktop.org])
fi
dnl See if GLib is present and wanted
AC_ARG_ENABLE(glib,
AS_HELP_STRING([--disable-glib], [do not link with GLib]),
[enable_glib=$enableval], [enable_glib=yes])
dnl check for glib/gtk/gnome
PKG_CHECK_MODULES([GLIB], [glib-2.0], AM_CONDITIONAL([HAVE_GLIB], true), AM_CONDITIONAL([HAVE_GLIB], false))
if test "x$HAVE_GLIB" = "xtrue"; then
GLIB_CFLAGS="$GLIB_CFLAGS -DHAVE_GLIB=1"
if test "$enable_glib" = "yes"; then
PKG_CHECK_MODULES([GLIB], [glib-2.0], HAVE_GLIB=true, HAVE_GLIB=false)
if test "x$HAVE_GLIB" = "xtrue"; then
GLIB_CFLAGS="$GLIB_CFLAGS -DHAVE_GLIB=1"
else
enable_glib=no
fi
fi
AM_CONDITIONAL(FAKE_GLIB, test "x$enable_glib" != "xyes")
dnl check for gtk/gnome
PKG_CHECK_MODULES([GNOME], [gtk+-2.0 >= 2.14 libglade-2.0 libgnomeui-2.0], HAVE_GNOME=true, HAVE_GNOME=false)
GNOME_DOC_INIT
@ -282,6 +291,8 @@ if test x$sql = xtrue; then summary=${bold_green}enabled; else summary=${bold_re
AC_MSG_NOTICE([ SQL : ${summary}${reset}])
if test x$HAVE_ODBC = xtrue; then summary=${bold_green}enabled; else summary=${bold_red}disabled; fi
AC_MSG_NOTICE([ ODBC : ${summary}${reset}])
if test x$enable_glib = xyes; then summary=${bold_green}enabled; else summary=${bold_red}disabled; fi
AC_MSG_NOTICE([ GLib : ${summary}${reset}])
if test x$build_gmdb2 = xyes; then summary=${bold_green}enabled; else summary=${bold_red}disabled; fi
AC_MSG_NOTICE([ UI : ${summary}${reset}])
if test x$enable_gtk_doc = xyes; then summary=${bold_green}enabled; else summary=${bold_red}disabled; fi

View File

@ -1,5 +1,5 @@
include_HEADERS = mdbtools.h mdbsql.h mdbver.h
if !HAVE_GLIB
if FAKE_GLIB
include_HEADERS += mdbfakeglib.h
endif
noinst_HEADERS = mdbprivate.h

View File

@ -1,6 +1,6 @@
lib_LTLIBRARIES = libmdb.la
libmdb_la_SOURCES= catalog.c mem.c file.c table.c data.c dump.c backend.c money.c sargs.c index.c like.c write.c stats.c map.c props.c worktable.c options.c iconv.c
if !HAVE_GLIB
if FAKE_GLIB
libmdb_la_SOURCES += fakeglib.c
endif
libmdb_la_LDFLAGS = -version-info 2:1:0 -export-symbols-regex '^(mdb_|_mdb_put_int16$$|_mdb_put_int32$$)'

View File

@ -3,7 +3,7 @@ BUILT_SOURCES = parser.h
AM_YFLAGS = -d
lib_LTLIBRARIES = libmdbsql.la
libmdbsql_la_SOURCES= mdbsql.c parser.y lexer.l
if !HAVE_GLIB
if FAKE_GLIB
libmdbsql_la_SOURCES += ../libmdb/fakeglib.c
endif
libmdbsql_la_LDFLAGS = -version-info 2:0:0 -export-symbols-regex '^mdb_sql_'

View File

@ -9,7 +9,7 @@ mdb_sql_SOURCES = mdb-sql.c
mdb_ver_SOURCES = mdb-ver.c
mdb_import_SOURCES = mdb-import.c
updrow_SOURCES = updrow.c
if !HAVE_GLIB
if FAKE_GLIB
mdb_export_SOURCES += ../libmdb/fakeglib.c
mdb_schema_SOURCES += ../libmdb/fakeglib.c
mdb_tables_SOURCES += ../libmdb/fakeglib.c