[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