Source: obexftp Version: 0.24-6 Tags: patch User: debian-cr...@lists.debian.org Usertags: ftcbfs
obexftp fails to cross build from source. Most of the reasons come down to language bindings. In order to make the problem manageable, I propose adding support for the noperl and noruby build profiles. Those profiles allow easy disabling of those language bindings. That's really needed for ruby as the ruby packaging itself does not yet support cross building in a sane way. So all we can support right now is cross building with the noruby profile. For perl, exporting a PERL5LIB pointing to the cross configs makes it work. Please consider applying the attached patch. Helmut
diff --minimal -Nru obexftp-0.24/debian/changelog obexftp-0.24/debian/changelog --- obexftp-0.24/debian/changelog 2019-08-21 19:51:26.000000000 +0200 +++ obexftp-0.24/debian/changelog 2022-01-03 07:24:35.000000000 +0100 @@ -1,3 +1,13 @@ +obexftp (0.24-7) UNRELEASED; urgency=medium + + * QA upload. + * Support build profiles noperl and noruby. + * Make obexftp cross build with just noruby: + + Add missing build dependency on perl-xs-dev. + + Export a PERL5LIB containing the cross config. + + -- Helmut Grohne <hel...@subdivi.de> Mon, 03 Jan 2022 07:24:35 +0100 + obexftp (0.24-6) unstable; urgency=medium * QA upload. diff --minimal -Nru obexftp-0.24/debian/control obexftp-0.24/debian/control --- obexftp-0.24/debian/control 2019-08-21 19:51:17.000000000 +0200 +++ obexftp-0.24/debian/control 2022-01-03 07:24:35.000000000 +0100 @@ -7,11 +7,12 @@ cmake, debhelper (>= 9), doxygen, - gem2deb, + gem2deb <!noruby>, libbluetooth-dev, libopenobex2-dev, + perl-xs-dev <!noperl>, pkg-config, - swig, + swig <!noperl> <!noruby>, Standards-Version: 3.9.7 Homepage: http://triq.net/obex Vcs-Git: https://anonscm.debian.org/git/collab-maint/obexftp.git @@ -140,6 +141,7 @@ Package: ruby-obexftp Architecture: any Section: ruby +Build-Profiles: <!noruby> Depends: libobexftp0 (= ${binary:Version}), ${misc:Depends}, @@ -163,6 +165,7 @@ Package: libobexftp-perl Architecture: any Section: perl +Build-Profiles: <!noperl> Depends: libobexftp0 (= ${binary:Version}), ${misc:Depends}, diff --minimal -Nru obexftp-0.24/debian/rules obexftp-0.24/debian/rules --- obexftp-0.24/debian/rules 2019-08-21 19:51:26.000000000 +0200 +++ obexftp-0.24/debian/rules 2022-01-03 07:24:35.000000000 +0100 @@ -1,14 +1,26 @@ #!/usr/bin/make -f +include /usr/share/dpkg/architecture.mk + export DH_VERBOSE=1 export DEB_BUILD_MAINT_OPTIONS=hardening=+all +DOPACKAGES := $(shell dh_listpackages) + ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) CFLAGS += -DOBEXFTP_DEBUG=5 endif +ifneq ($(filter libobexftp-perl,$(DOPACKAGES)),) +PERL_VER := $(shell perl -MConfig -e 'print $$Config{version}') +ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH)) +export PERL5LIB := /usr/lib/$(DEB_HOST_MULTIARCH)/perl/cross-config-$(PERL_VER)$(if $(PERL5LIB),:$(PERL5LIB)) +endif PERL_ARCHLIB := $(shell perl -MConfig -e 'print $$Config{vendorarch}') +endif +ifneq ($(filter ruby-obexftp,$(DOPACKAGES)),) RUBY_DEPENDS := -Vruby:Depends="lib$(firstword $(shell dh_ruby --print-supported))" +endif %: dh $@ --parallel @@ -17,14 +29,19 @@ dh_gencontrol -- $(RUBY_DEPENDS) override_dh_auto_configure: - dh_auto_configure -- -DENABLE_PYTHON=OFF + dh_auto_configure -- \ + -DENABLE_PERL=$(if $(filter libobexftp-perl,$(DOPACKAGES)),ON,OFF) \ + -DENABLE_PYTHON=OFF \ + -DENABLE_RUBY=$(if $(filter ruby-obexftp,$(DOPACKAGES)),ON,OFF) override_dh_auto_build: dh_auto_build doxygen override_dh_install: +ifneq ($(filter libobexftp-perl,$(DOPACKAGES)),) sed -e 's;@PERL_ARCHLIB@;$(PERL_ARCHLIB);g;' $(CURDIR)/debian/libobexftp-perl.install.in > $(CURDIR)/debian/libobexftp-perl.install +endif dh_install --fail-missing -X.la override_dh_installdocs: