Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 1 Sep 2007 14:05:01 GMT
From:      Scot Hetzel <swhetzel@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/115995: databases/libgda[2, 3]: fail to build when firebird2-client is installed
Message-ID:  <200709011405.l81E51il092846@www.freebsd.org>
Resent-Message-ID: <200709011410.l81EA15q008471@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         115995
>Category:       ports
>Synopsis:       databases/libgda[2,3]: fail to build when firebird2-client is installed
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Sep 01 14:10:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Scot Hetzel
>Release:        7.0-CURRENT
>Organization:
>Environment:
FreeBSD hp010.hetzel.org 7.0-CURRENT FreeBSD 7.0-CURRENT #0: Fri Aug 31 11:43:25 CDT 2007     root@hp010.hetzel.org:/usr/src/7x/sys/amd64/compile/GENERIC.debug  amd64

>Description:
libgda[2,3] fail to build when databases/firebird2-client is installed.

libgda2/Makefile incorrectly detects the libgds.so library, and automatically sets WITH_FIREBIRD when the firebird2-client is installed.  it should only autodetect libgds.so.1 to enable support for firebird-client.

Both libgda2 & 3 set CONFIGURE_ARGS to --without-interbase when WITH_FIREBIRD is not defined, it should set it to --without-firebird.

The port should be marked broken if databases/firebird2-client is installed.
>How-To-Repeat:
Install firebird2-client then build either libgda2 or libgda3:

cd ../libgda3
make build
:
 cc "-DPACKAGE_NAME=\"GNU Data Access\"" -DPACKAGE_TARNAME=\"libgda\" -DPACKAGE_VERSION=\"1.9.102\" "-DPACKAGE_STRING=\"GNU Data Access 1.9.102\"" -DPACKAGE_BUGREPORT=\"gnome-db-list@gnome.org\" -DBONOBO_EXPLICIT_TRANSLATION_DOMAIN=\"libgda-3\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DYYTEXT_POINTER=1 -DGETTEXT_PACKAGE=\"libgda-3\" -DHAVE_LOCALE_H=1 -DHAVE_LC_MESSAGES=1 -DHAVE_BIND_TEXTDOMAIN_CODESET=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -DENABLE_NLS=1 -DHAVE_FAM= -DHAVE_MYSQL=1 -DHAVE_FIREBIRD=1 -DHAVE_POPT_H=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE_HISTORY_H=1 -I. -I. -I../.. -I../.. -D_REENTRANT -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -DLIBGDA_DATA_DIR=\"/usr/local/share/gnome/libgda\" -I/usr/local/include -O2 -
 fno-strict-aliasing -pipe -march=k8 -MT gda-firebird-recordset.lo -MD -MP -MF .deps/gda-firebird-recordset.Tpo -c gda-firebird-recordset.c  -fPIC -DPIC -o .libs/gda-firebird-recordset.o
gda-firebird-recordset.c: In function 'fb_sql_prepare':
gda-firebird-recordset.c:313: warning: assignment makes integer from pointer without a cast
gda-firebird-recordset.c: In function 'fb_gda_value_fill':
gda-firebird-recordset.c:513: error: dereferencing pointer to incomplete type
gda-firebird-recordset.c:513: error: dereferencing pointer to incomplete type
gda-firebird-recordset.c:515: error: dereferencing pointer to incomplete type
gda-firebird-recordset.c: In function 'gda_firebird_recordset_init':
gda-firebird-recordset.c:746: warning: assignment makes integer from pointer without a cast
gda-firebird-recordset.c: In function 'gda_firebird_recordset_class_init':
gda-firebird-recordset.c:807: warning: assignment from incompatible pointer type
gda-firebird-recordset.c:810: warning: assignment from incompatible pointer type
gda-firebird-recordset.c:812: warning: assignment from incompatible pointer type
gmake[2]: *** [gda-firebird-recordset.lo] Error 1
gmake[2]: Leaving directory `/usr/ports/databases/libgda3/work/libgda-1.9.102/providers/firebird'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/databases/libgda3/work/libgda-1.9.102/providers'
gmake: *** [all-recursive] Error 1
*** Error code 2

>Fix:
The attached patch to libgda2 & 3 solves all three problems.

Patch attached with submission follows:

Index: libgda2/Makefile
===================================================================
RCS file: /home/ncvs/ports/databases/libgda2/Makefile,v
retrieving revision 1.80
diff -u -r1.80 Makefile
--- libgda2/Makefile	19 May 2007 20:01:07 -0000	1.80
+++ libgda2/Makefile	1 Sep 2007 13:59:55 -0000
@@ -61,8 +61,10 @@
 WITH_LDAP=yes
 .endif
 
-.if exists(${LOCALBASE}/lib/libgds.so)
+.if exists(${LOCALBASE}/lib/libgds.so.1)
 WITH_FIREBIRD=	yes
+.elif exists(${LOCALBASE}/lib/libgds.so.2)
+BROKEN=	Doesn't build with databases/firebird2-client
 .endif
 
 .if exists(${LOCALBASE}/lib/libtds.so)
@@ -117,7 +119,7 @@
 CONFIGURE_ARGS+=	--with-firebird=${LOCALBASE}
 PLIST_SUB+=		FIREBIRD:=""
 .else
-CONFIGURE_ARGS+=	--without-interbase
+CONFIGURE_ARGS+=	--without-firebird
 PLIST_SUB+=		FIREBIRD:="@comment "
 .endif
 
Index: libgda3/Makefile
===================================================================
RCS file: /home/ncvs/ports/databases/libgda3/Makefile,v
retrieving revision 1.80
diff -u -r1.80 Makefile
--- libgda3/Makefile	19 May 2007 20:01:08 -0000	1.80
+++ libgda3/Makefile	1 Sep 2007 14:00:16 -0000
@@ -58,6 +58,8 @@
 
 .if exists(${LOCALBASE}/lib/libgds.so.1)
 WITH_FIREBIRD=	yes
+.elif exists(${LOCALBASE}/lib/libgds.so.2)
+BROKEN= Doesn't build with databases/firebird2-client
 .endif
 
 .if exists(${LOCALBASE}/lib/libtds.so.2)
@@ -112,7 +114,7 @@
 CONFIGURE_ARGS+=	--with-firebird=${LOCALBASE}
 PLIST_SUB+=		FIREBIRD:=""
 .else
-CONFIGURE_ARGS+=	--without-interbase
+CONFIGURE_ARGS+=	--without-firebird
 PLIST_SUB+=		FIREBIRD:="@comment "
 .endif
 


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200709011405.l81E51il092846>