Bug#564399: psqlodbc: FTBFS: make[2]: *** No rule to make target `install'. Stop.

2010-06-08 Thread Steve Langasek
Hi, Peter!

Seeing as psqlodbc has now been removed from testing for the libodbcinst
transition, I've prepared a zero-day NMU to fix the various issues causing
the package to FTBFS.  Please find the debdiff for this upload attached.

The NMU will be uploaded to incoming shortly.

HTH,
-- 
Steve Langasek   Give me a lever long enough and a Free OS
Debian Developer   to set it on, and I can move the world.
Ubuntu Developerhttp://www.debian.org/
slanga...@ubuntu.com vor...@debian.org
diff -u psqlodbc-08.03.0200/debian/changelog psqlodbc-08.03.0200/debian/changelog
--- psqlodbc-08.03.0200/debian/changelog
+++ psqlodbc-08.03.0200/debian/changelog
@@ -1,3 +1,18 @@
+psqlodbc (1:08.03.0200-1.1) unstable; urgency=high
+
+  * Non-maintainer upload.
+  * High-urgency upload for RC bugfix.
+  * Drop psqlodbc-358949.diff completely, since it causes a build failure
+with the latest unixodbc now that SQLROWOFFSET is obsolete.
+Closes: #582988.
+  * debian/patches/psqlodbc-580878.diff: don't use SQLROWSETSIZE, also
+obsoleted.  Closes: #580878.
+  * Fix debian/rules support for building multiple flavors to be compatible
+with recent cdbs.  Thanks to Julien Cristau for the patch.
+Closes: #564399.
+
+ -- Steve Langasek   Tue, 08 Jun 2010 06:48:02 +
+
 psqlodbc (1:08.03.0200-1) unstable; urgency=low
 
   * New upstream release
diff -u psqlodbc-08.03.0200/debian/rules psqlodbc-08.03.0200/debian/rules
--- psqlodbc-08.03.0200/debian/rules
+++ psqlodbc-08.03.0200/debian/rules
@@ -3,25 +3,18 @@
 tempdir = debian/temp
 # (not debian/tmp, which dh_clean removes too automatically)
 
-ifndef VARIANT
-
-build build-arch build-indep binary binary-arch binary-indep clean::
-	debian/rules VARIANT=A $@
-	debian/rules VARIANT=W $@
+DEB_MAKE_FLAVORS = A W
+DEB_BUILDDIR = build
+DEB_DESTDIR = $(CURDIR)/$(tempdir)
+DEB_DH_INSTALL_SOURCEDIR = $(tempdir)
 
 clean::
-	rm -rf $(tempdir) build-A build-W
-
-else # VARIANT
+	rm -rf $(tempdir)
 
 include /usr/share/cdbs/1/class/autotools.mk
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/rules/simple-patchsys.mk
 
-DEB_BUILDDIR = build-$(VARIANT)
-DEB_DESTDIR = $(CURDIR)/$(tempdir)
-DEB_DH_INSTALL_SOURCEDIR = $(tempdir)
-
 DEB_CONFIGURE_EXTRA_FLAGS = --libdir=/usr/lib/odbc --with-unixodbc
 
 pre-build::
@@ -32,8 +25,5 @@
-ifeq ($(VARIANT),A)
-DEB_CONFIGURE_EXTRA_FLAGS += --disable-unicode
-endif
+DEB_CONFIGURE_EXTRA_FLAGS_A = --disable-unicode
+DEB_CONFIGURE_EXTRA_FLAGS += $(DEB_CONFIGURE_EXTRA_FLAGS_$(cdbs_make_curflavor))
 
 install/odbc-postgresql::
 	install -D -m 644 debian/odbcinst.ini.template $(DEB_DESTDIR)/usr/share/psqlodbc/odbcinst.ini.template
-
-endif # VARIANT
reverted:
--- psqlodbc-08.03.0200/debian/patches/psqlodbc-358949.diff
+++ psqlodbc-08.03.0200.orig/debian/patches/psqlodbc-358949.diff
@@ -1,24 +0,0 @@
-diff -ur psqlodbc-08.03.0100.orig/odbcapi30.c psqlodbc-08.03.0100/odbcapi30.c
 psqlodbc-08.03.0100.orig/odbcapi30.c	2006-11-14 16:29:25.0 +0100
-+++ psqlodbc-08.03.0100/odbcapi30.c	2008-03-26 17:13:44.0 +0100
-@@ -188,7 +188,7 @@
- /*	SQLExtendedFetch -> SQLFetchScroll */
- RETCODE		SQL_API
- SQLFetchScroll(HSTMT StatementHandle,
--			   SQLSMALLINT FetchOrientation, SQLLEN FetchOffset)
-+			   SQLSMALLINT FetchOrientation, SQLROWOFFSET FetchOffset)
- {
- 	CSTR func = "SQLFetchScroll";
- 	StatementClass *stmt = (StatementClass *) StatementHandle;
-diff -ur psqlodbc-08.03.0100.orig/odbcapi.c psqlodbc-08.03.0100/odbcapi.c
 psqlodbc-08.03.0100.orig/odbcapi.c	2007-09-01 01:40:10.0 +0200
-+++ psqlodbc-08.03.0100/odbcapi.c	2008-03-26 17:17:01.0 +0100
-@@ -1104,7 +1104,7 @@
- SQLExtendedFetch(
-  HSTMT hstmt,
-  SQLUSMALLINT fFetchType,
-- SQLLEN irow,
-+ SQLROWOFFSET irow,
- #ifdef WITH_UNIXODBC
-  SQLROWSETSIZE *pcrow,
- #else
only in patch2:
unchanged:
--- psqlodbc-08.03.0200.orig/debian/patches/psqlodbc-580878.diff
+++ psqlodbc-08.03.0200/debian/patches/psqlodbc-580878.diff
@@ -0,0 +1,47 @@
+diff -Nur -x '*.orig' -x '*~' psqlodbc-08.03.0200//odbcapi.c psqlodbc-08.03.0200.new//odbcapi.c
+--- psqlodbc-08.03.0200//odbcapi.c	2010-06-01 09:48:30.414644587 +
 psqlodbc-08.03.0200.new//odbcapi.c	2010-06-01 09:48:33.398648715 +
+@@ -1105,11 +1105,7 @@
+  HSTMT hstmt,
+  SQLUSMALLINT fFetchType,
+  SQLLEN irow,
+-#ifdef WITH_UNIXODBC
+- SQLROWSETSIZE *pcrow,
+-#else
+  SQLULEN *pcrow,
+-#endif /* WITH_UNIXODBC */
+  SQLUSMALLINT *rgfRowStatus)
+ {
+ 	RETCODE	ret;
+diff -Nur -x '*.orig' -x '*~' psqlodbc-08.03.0200//odbcapi30.c psqlodbc-08.03.0200.new//odbcapi30.c
+--- psqlodbc-08.03.0200//odbcapi30.c	2006-11-14 15:29:25.0 +
 psqlodbc-08.03.0200.new//odbcapi30.c	2010-06-01 09:49:02.990665586 +
+@@ -118,13 +118,7 @@
+ 			SQLPOINTER CharacterAttribute,
+ 			SQLSMALLINT BufferLength,
+ 			SQLSMALLINT *StringLength,
+-#if defined(_WIN

Bug#564399: psqlodbc: FTBFS: make[2]: *** No rule to make target `install'. Stop.

2010-05-01 Thread Julien Cristau
tag 564399 patch
kthxbye

On Sat, Jan  9, 2010 at 11:42:00 +0100, Lucas Nussbaum wrote:

> Relevant part:
> > make[1]: Entering directory 
> > `/build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200'
> > test -x debian/rules
> > dh_testroot
> > dh_clean -k 
> > dh_installdirs -A 
> > mkdir -p "build-W"
> > chmod a+x 
> > /build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200/debian/odbc_config_dummy
> > if test -e /usr/share/misc/config.guess ; then \
> > for i in ./config/config.guess ; do \
> > if ! test -e $i.cdbs-orig ; then \
> > mv $i $i.cdbs-orig ; \
> > cp --remove-destination 
> > /usr/share/misc/config.guess $i ; \
> > fi ; \
> > done ; \
> > fi
> > if test -e /usr/share/misc/config.sub ; then \
> > for i in ./config/config.sub ; do \
> > if ! test -e $i.cdbs-orig ; then \
> > mv $i $i.cdbs-orig ; \
> > cp --remove-destination 
> > /usr/share/misc/config.sub $i ; \
> > fi ; \
> > done ; \
> > fi
> > DEB_MAKE_CHECK_TARGET unset, not running checks
> > /usr/bin/make  -C build-W  install 
> > DESTDIR=/build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200/debian/temp
> > make[2]: *** No rule to make target `install'.  Stop.

This looks like an issue with new cdbs, configure/make never get run in
the build-W directory because the stamp files are there from the build-A
variant.

Following patch uses cdbs' support for multiple flavor builds and seems
to fix this issue:

diff -u psqlodbc-08.03.0200/debian/rules psqlodbc-08.03.0200/debian/rules
--- psqlodbc-08.03.0200/debian/rules
+++ psqlodbc-08.03.0200/debian/rules
@@ -3,25 +3,18 @@
 tempdir = debian/temp
 # (not debian/tmp, which dh_clean removes too automatically)
 
-ifndef VARIANT
-
-build build-arch build-indep binary binary-arch binary-indep clean::
-   debian/rules VARIANT=A $@
-   debian/rules VARIANT=W $@
+DEB_MAKE_FLAVORS = A W
+DEB_BUILDDIR = build
+DEB_DESTDIR = $(CURDIR)/$(tempdir)
+DEB_DH_INSTALL_SOURCEDIR = $(tempdir)
 
 clean::
-   rm -rf $(tempdir) build-A build-W
-
-else # VARIANT
+   rm -rf $(tempdir)
 
 include /usr/share/cdbs/1/class/autotools.mk
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/rules/simple-patchsys.mk
 
-DEB_BUILDDIR = build-$(VARIANT)
-DEB_DESTDIR = $(CURDIR)/$(tempdir)
-DEB_DH_INSTALL_SOURCEDIR = $(tempdir)
-
 DEB_CONFIGURE_EXTRA_FLAGS = --libdir=/usr/lib/odbc --with-unixodbc
 
 pre-build::
@@ -32,8 +25,5 @@
-ifeq ($(VARIANT),A)
-DEB_CONFIGURE_EXTRA_FLAGS += --disable-unicode
-endif
+DEB_CONFIGURE_EXTRA_FLAGS_A = --disable-unicode
+DEB_CONFIGURE_EXTRA_FLAGS += 
$(DEB_CONFIGURE_EXTRA_FLAGS_$(cdbs_make_curflavor))
 
 install/odbc-postgresql::
install -D -m 644 debian/odbcinst.ini.template 
$(DEB_DESTDIR)/usr/share/psqlodbc/odbcinst.ini.template
-
-endif # VARIANT

The next issue is an API change in unixodbc, which is fixed by:

--- psqlodbc-08.03.0200.orig/odbcapi30.c
+++ psqlodbc-08.03.0200/odbcapi30.c
@@ -118,13 +118,7 @@
SQLPOINTER CharacterAttribute,
SQLSMALLINT BufferLength,
SQLSMALLINT *StringLength,
-#if defined(_WIN64)
SQLLEN *NumericAttribute
-#elif defined(WITH_UNIXODBC) || defined(WIN32)
-   SQLPOINTER NumericAttribute
-#else
-   SQLLEN *NumericAttribute
-#endif
)
 {
CSTRfunc = "SQLColAttribute";
--- psqlodbc-08.03.0200.orig/odbcapi30w.c
+++ psqlodbc-08.03.0200/odbcapi30w.c
@@ -255,11 +255,7 @@
SQLPOINTER  pCharAttr,
SQLSMALLINT cbCharAttrMax,  
SQLSMALLINT *pcbCharAttr,
-#if defined(WITH_UNIXODBC) || (defined(WIN32) && ! defined(_WIN64))
-   SQLPOINTER  pNumAttr
-#else
SQLLEN  *pNumAttr
-#endif
)
 {
CSTR func = "SQLColAttributeW";

This part is also fixed upstream in
ftp://ftp.postgresql.org/pub/odbc/versions/src/psqlodbc-08.04.0200.tar.gz
with a more comprehensive patch including a configure check.

Cheers,
Julien


signature.asc
Description: Digital signature


Bug#564399: psqlodbc: FTBFS: make[2]: *** No rule to make target `install'. Stop.

2010-01-09 Thread Lucas Nussbaum
Source: psqlodbc
Version: 1:08.03.0200-1
Severity: serious
User: debian...@lists.debian.org
Usertags: qa-ftbfs-2010-01-08 qa-ftbfs
Justification: FTBFS on amd64

Hi,

During a rebuild of all packages in sid, your package failed to build on
amd64.

Relevant part:
> make[1]: Entering directory 
> `/build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200'
> test -x debian/rules
> dh_testroot
> dh_clean -k 
> dh_installdirs -A 
> mkdir -p "build-W"
> chmod a+x 
> /build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200/debian/odbc_config_dummy
> if test -e /usr/share/misc/config.guess ; then \
>   for i in ./config/config.guess ; do \
>   if ! test -e $i.cdbs-orig ; then \
>   mv $i $i.cdbs-orig ; \
>   cp --remove-destination 
> /usr/share/misc/config.guess $i ; \
>   fi ; \
>   done ; \
>   fi
> if test -e /usr/share/misc/config.sub ; then \
>   for i in ./config/config.sub ; do \
>   if ! test -e $i.cdbs-orig ; then \
>   mv $i $i.cdbs-orig ; \
>   cp --remove-destination 
> /usr/share/misc/config.sub $i ; \
>   fi ; \
>   done ; \
>   fi
> DEB_MAKE_CHECK_TARGET unset, not running checks
> /usr/bin/make  -C build-W  install 
> DESTDIR=/build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200/debian/temp
> make[2]: *** No rule to make target `install'.  Stop.
> make[2]: Entering directory 
> `/build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200/build-W'
> make[2]: Leaving directory 
> `/build/user-psqlodbc_08.03.0200-1-amd64-amoO7c/psqlodbc-08.03.0200/build-W'
> make[1]: *** [common-install-impl] Error 2

The full build log is available from:
   
http://people.debian.org/~lucas/logs/2010-01-08/psqlodbc_1:08.03.0200-1_lsid64.buildlog

A list of current common problems and possible solutions is available at 
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on about 50 AMD64 nodes
of the Grid'5000 platform, using a clean chroot.  Internet was not
accessible from the build systems.

-- 
| Lucas Nussbaum
| lu...@lucas-nussbaum.net   http://www.lucas-nussbaum.net/ |
| jabber: lu...@nussbaum.fr GPG: 1024D/023B3F4F |



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org