[pkg-firebird-general] Bug#826320: firebird-dev: no fb_config and no pkg-config file?
Rene Engelhard
rene at debian.org
Sat Jun 4 14:15:10 UTC 2016
Package: firebird-dev
Version: 3.0.0.32483.ds4-2
Severity: important
Hi,
LibreOffice master (for 5.3.0 for now, but maybe it will be backported,
not sure) got support for building against firebird 3.
configure.ac does the following:
dnl ===================================================================
dnl Check for system Firebird
dnl ===================================================================
AC_MSG_CHECKING([which Firebird to use])
if test "$with_system_firebird" = "yes"; then
AC_MSG_RESULT([external])
SYSTEM_FIREBIRD=TRUE
AC_PATH_PROG(FIREBIRDCONFIG, [fb_config])
if test -z "$FIREBIRDCONFIG"; then
AC_MSG_NOTICE([No fb_config -- using pkg-config])
PKG_CHECK_MODULES([FIREBIRD], [fbclient >= 3], [FIREBIRD_PKGNAME=fbclient], [
PKG_CHECK_MODULES([FIREBIRD], [fbembed], [FIREBIRD_PKGNAME=fbembed])
])
FIREBIRD_VERSION=`pkg-config --modversion "$FIREBIRD_PKGNAME"`
else
AC_MSG_NOTICE([fb_config found])
FIREBIRD_VERSION=`$FIREBIRDCONFIG --version`
AC_MSG_CHECKING([for Firebird Client library])
FIREBIRD_CFLAGS=`$FIREBIRDCONFIG --cflags`
FIREBIRD_LIBS=`$FIREBIRDCONFIG --embedlibs`
FilterLibs "${FIREBIRD_LIBS}"
FIREBIRD_LIBS="${filteredlibs}"
fi
AC_MSG_RESULT([includes `$FIREBIRD_CFLAGS', libraries `$FIREBIRD_LIBS'])
AC_MSG_CHECKING([Firebird version])
if test -n "${FIREBIRD_VERSION}"; then
FIREBIRD_MAJOR=`echo $FIREBIRD_VERSION | cut -d"." -f1`
FIREBIRD_MINOR=`echo $FIREBIRD_VERSION | cut -d"." -f2`
if test "$FIREBIRD_MAJOR" -eq "2" -a "$FIREBIRD_MINOR" -eq "5"; then
AC_MSG_RESULT([OK])
elif test "$FIREBIRD_MAJOR" -eq "3" -a "$FIREBIRD_MINOR" -eq "0"; then
AC_DEFINE(HAVE_FIREBIRD_30, 1)
AC_MSG_RESULT([OK])
else
AC_MSG_ERROR([Ensure firebird 2.5.x or 3.0.x is installed])
fi
else
[...]
Unfortunately firebird-dev in experimental neither contains a pkg-config file
nor a fb_config. So the pkg-config path gets tried, it tries fbclient >= 3 and
fbembded and of course fails.
Right now I worked around it with
diff --git a/rules b/rules
index 039cec6..b849566 100755
--- a/rules
+++ b/rules
@@ -1313,6 +1313,13 @@ ifeq "$(ENABLE_FIREBIRD)" "y"
endif
ifneq (,$(filter firebird, $(SYSTEM_STUFF)))
BUILD_DEPS += , firebird-dev (>= 2.5.2.26540.ds4-2)$(OOO_NO_LE_ARCHS)
+ # hack for firebird 3. configure expects fb_config or pkg-config, neither of
+ # which firebird 3 provides. WTF?
+ ifeq "$(shell dpkg --compare-versions `dpkg -l firebird-dev | grep ^ii | awk '{ print $$3 }'` ge 3 && echo true)" "true"
+export FIREBIRD_VERSION=3.0.0
+export FIREBIRD_LIBS=-lfbclient
+export FIREBIRD_CFLAGS="-I/usr/include/firebird"
+ endif
endif
else
CONFIGURE_FLAGS += --disable-firebird-sdbc
but that's of course not a real solution...
Regards,
Rene
-- System Information:
Debian Release: stretch/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'buildd-unstable'), (500, 'unstable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages firebird-dev depends on:
ii firebird3.0-common-doc 3.0.0.32483.ds4-2
ii libfbclient2 3.0.0.32483.ds4-2
ii libib-util 3.0.0.32483.ds4-2
firebird-dev recommends no packages.
Versions of packages firebird-dev suggests:
pn firebird3.0-examples <none>
-- no debconf information
More information about the pkg-firebird-general
mailing list