Source: cyrus-sasl2
Version: 2.1.25.dfsg1-14
Severity: normal
Tags: patch

In a bootstrapping process, I need to build the initial version of cyrus-sasl2 
without the Build-Depends on krb5, heimdal, postgres, mysql, openldap in order 
to resolve Build-Depends cycle.  However, the provided options for building 
without these modules aren't actually working.  The attached patch fixes things 
so they work and I'm able to do a bootstrap build.
-- 
Daniel Schepler
diff -urN cyrus-sasl2-2.1.25.dfsg1.old/debian/rules cyrus-sasl2-2.1.25.dfsg1/debian/rules
--- cyrus-sasl2-2.1.25.dfsg1.old/debian/rules	2012-10-26 05:06:17.000000000 -0700
+++ cyrus-sasl2-2.1.25.dfsg1/debian/rules	2013-06-04 10:59:24.551024530 -0700
@@ -30,6 +30,7 @@
 	CONFIGURE_SQL=--enable-sql
 else
 	CONFIGURE_SQL=--disable-sql
+	DH_PACKAGE_EXCLUDES += -Nlibsasl2-modules-sql
 endif
 
 # LDAP support may be turned off during the build, but is on by default.
@@ -39,6 +40,7 @@
 else
 	CONFIGURE_LDAP=--without-ldap
 	CONFIGURE_LDAPDB=--disable-ldapdb
+	DH_PACKAGE_EXCLUDES += -Nlibsasl2-modules-ldap
 endif
 
 # GSSAPI support may be turned off during the build, but is on by default
@@ -46,6 +48,10 @@
 	CONFIGURE_GSSAPI=--enable-gssapi
 else
 	CONFIGURE_GSSAPI=--disable-gssapi
+	DH_PACKAGE_EXCLUDES += -Nlibsasl2-modules-gssapi-mit \
+		-Nlibsasl2-modules-gssapi-heimdal \
+		-Ncyrus-sasl2-mit-dbg \
+		-Ncyrus-sasl2-heimdal-dbg
 endif
 
 CONFIGURE_COMMON_OPTIONS= \
@@ -114,7 +120,7 @@
 ### The Makefile targets begin. ###
 
 %:
-	dh $@ --with=quilt
+	dh $@ --with=quilt $(DH_PACKAGE_EXCLUDES)
 
 override_dh_auto_clean:
 	dh_auto_clean -B$(TMPBUILD_MIT)
@@ -204,7 +210,9 @@
 	# Alter the rpath of certain binaries and shared libraries.
 	chrpath -d $(TMPPKG_MIT)/usr/sbin/sasldblistusers2 \
 		$(TMPPKG_MIT)/usr/sbin/saslpasswd2
+ifeq (,$(findstring no-sql,$(DEB_BUILD_OPTIONS)))
 	chrpath -d $(TMPPKG_MIT)/usr/lib/$(DEB_HOST_MULTIARCH)/sasl2/libsql.so.2.0.*
+endif
 
 	# Install the sasl-sample-client and -server man pages.
 	dh_installman -psasl2-bin sasl-sample-client.8 sasl-sample-server.8
@@ -220,19 +228,21 @@
 		$(TMPPKG_MIT)/usr/bin/gen-auth
 
 override_dh_install:
-	dh_install -s --autodest --list-missing --sourcedir=$(TMPPKG_MIT) -psasl2-bin -plibsasl2-2 -plibsasl2-modules -plibsasl2-modules-ldap -plibsasl2-modules-otp -plibsasl2-modules-sql -plibsasl2-modules-gssapi-mit -plibsasl2-dev -Nlibsasl2-modules-gssapi-heimdal
-	dh_install -s --autodest --list-missing --sourcedir=$(TMPPKG_HEIMDAL) -plibsasl2-modules-gssapi-heimdal -Nsasl2-bin -Nlibsasl2-2 -Nlibsasl2-modules -Nlibsasl2-modules-ldap -Nlibsasl2-modules-otp -Nlibsasl2-modules-sql -Nlibsasl2-modules-gssapi-mit -Nlibsasl2-dev
+	dh_install -s --autodest --list-missing --sourcedir=$(TMPPKG_MIT) -psasl2-bin -plibsasl2-2 -plibsasl2-modules -plibsasl2-modules-ldap -plibsasl2-modules-otp -plibsasl2-modules-sql -plibsasl2-modules-gssapi-mit -plibsasl2-dev -Nlibsasl2-modules-gssapi-heimdal $(DH_PACKAGE_EXCLUDES)
+	dh_install -s --autodest --list-missing --sourcedir=$(TMPPKG_HEIMDAL) -plibsasl2-modules-gssapi-heimdal -Nsasl2-bin -Nlibsasl2-2 -Nlibsasl2-modules -Nlibsasl2-modules-ldap -Nlibsasl2-modules-otp -Nlibsasl2-modules-sql -Nlibsasl2-modules-gssapi-mit -Nlibsasl2-dev $(DH_PACKAGE_EXCLUDES)
 
 override_dh_installinit:
-	dh_installinit --name=saslauthd start 20 2 3 4 5 . stop 20 1 .
+	dh_installinit $(DH_PACKAGE_EXCLUDES) --name=saslauthd start 20 2 3 4 5 . stop 20 1 .
 
 override_dh_strip:
-	dh_strip -Xlibgssapiv2.so.2.0. -psasl2-bin -plibsasl2-2 -plibsasl2-modules -plibsasl2-modules-ldap -plibsasl2-modules-otp -plibsasl2-modules-sql -plibsasl2-modules-gssapi-mit -plibsasl2-dev -Nlibsasl2-modules-gssapi-heimdal --dbg-package=cyrus-sasl2-dbg
+	dh_strip -Xlibgssapiv2.so.2.0. -psasl2-bin -plibsasl2-2 -plibsasl2-modules -plibsasl2-modules-ldap -plibsasl2-modules-otp -plibsasl2-modules-sql -plibsasl2-modules-gssapi-mit -plibsasl2-dev -Nlibsasl2-modules-gssapi-heimdal $(DH_PACKAGE_EXCLUDES) --dbg-package=cyrus-sasl2-dbg
+ifeq (,$(findstring no-gssapi,$(DEB_BUILD_OPTIONS)))
 	dh_strip -Xlibgs2.so.2.0. -Xlibscram.so.2.0. -plibsasl2-modules-gssapi-mit --dbg-package=cyrus-sasl2-mit-dbg
 	dh_strip -plibsasl2-modules-gssapi-heimdal -Nsasl2-bin -Nlibsasl2-2 -Nlibsasl2-modules -Nlibsasl2-modules-ldap -Nlibsasl2-modules-otp -Nlibsasl2-modules-sql -Nlibsasl2-modules-gssapi-mit -Nlibsasl2-dev --dbg-package=cyrus-sasl2-heimdal-dbg
+endif
 
 override_dh_makeshlibs:
-	dh_makeshlibs -V "libsasl2-2 (>= 2.1.24)" -X/usr/lib/$(DEB_HOST_MULTIARCH)/sasl2
+	dh_makeshlibs -V "libsasl2-2 (>= 2.1.24)" -X/usr/lib/$(DEB_HOST_MULTIARCH)/sasl2 $(DH_PACKAGE_EXCLUDES)
 
 override_dh_auto_test:
 	cd $(TMPBUILD_MIT)/saslauthd && $(MAKE) testsaslauthd

Reply via email to