Re: Build-Depends-Indep, please review
Roger Leigh rle...@codelibre.net writes: On Sun, Nov 21, 2010 at 07:09:44PM +0100, Goswin von Brederlow wrote: Output at http://people.debian.org/~rleigh/build-rule-check.bz2 I haven't had time to analyse this, if someone else wants to, that would be cool. Done on lintian.debian.org using the following: #!/bin/sh cd /srv/lintian.debian.org/laboratory/source find . -type f -name rules | grep 'debfiles/rules$' | while read rule do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule done Regards, Roger Now why does it only list 8k sources if it matches the required build: target? Are 50% of all sources already dropping through that grep because they use dh ('%:') or include files? That's what I think, and a cursory look at a few gives the same impression. Which is surprisingly good--there's only a single tool to update to get support added for a huge chunk of the archive (well, there's cdbs as well of course, so it's two main ones). I would think dh already supports them. So we might actuay have 50% coverage of binay-arch/indep already or verry close to it. Maybe we can actualy change policy post squeeze because the majority of sources supports it. Anyway, grepping for sources that (probably) have build-arch/indep: % bzcat build-rule-check.bz2 | egrep '/rules:(build(.*%)+|build-(arch|indep)):' | cut -d: -f1 | sort -u | wc -l 572 Lots of work to do. Agreed! But, should be an achievable goal for squeeze+1 if we start on it early. Regards, Roger Totaly. MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87r5edibvo@frosties.localnet
Re: Build-Depends-Indep, please review
On Mon, Nov 22, 2010 at 05:03:39PM +0100, Goswin von Brederlow wrote: Roger Leigh rle...@codelibre.net writes: On Sun, Nov 21, 2010 at 07:09:44PM +0100, Goswin von Brederlow wrote: Now why does it only list 8k sources if it matches the required build: target? Are 50% of all sources already dropping through that grep because they use dh ('%:') or include files? That's what I think, and a cursory look at a few gives the same impression. Which is surprisingly good--there's only a single tool to update to get support added for a huge chunk of the archive (well, there's cdbs as well of course, so it's two main ones). I would think dh already supports them. So we might actuay have 50% coverage of binay-arch/indep already or verry close to it. Maybe we can actualy change policy post squeeze because the majority of sources supports it. I checked, and dh currently doesn't support build-arch and build-indep at all internally (you need to add the rules yourself). I've made a patch to add proper support which I'll submit once I've tested it. I've submitted a proposed change to Policy to require the use of these targets (#604397), but we need at least 50% coverage first. But, we'll get that as soon as dh and cdbs support it. We also need a lintian check to warn if these targets are missing; but I'm not at all familiar with hacking on lintian. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
On Mon, Nov 22, 2010 at 04:39:20PM +, Roger Leigh wrote: I checked, and dh currently doesn't support build-arch and build-indep at all internally (you need to add the rules yourself). I've made a patch to add proper support which I'll submit once I've tested it. FWIW, the current progress on this is attached. No guarantees--it's totally untested. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. diff --git a/dh b/dh index d2771ab..794ff4f 100755 --- a/dh +++ b/dh @@ -16,13 +16,15 @@ Bdh Isequence [B--with Iaddon[B,Iaddon ...]] [B--list] [B--until =head1 DESCRIPTION Bdh runs a sequence of debhelper commands. The supported Isequences -correspond to the targets of a Fdebian/rules file: Bbuild, Bclean, -Binstall, Bbinary-arch, Bbinary-indep, and Bbinary. +correspond to the targets of a Fdebian/rules file: Bbuild-arch, +Bbuild-indep, Bbuild, Bclean, Binstall, Bbinary-arch, +Bbinary-indep, and Bbinary. -Commands in the Bbinary-indep sequence are passed the B-i option to ensure -they only work on binary independent packages, and commands in the -Bbinary-arch sequences are passed the B-a option to ensure they only work -on architecture dependent packages. +Commands in the Bbuild-indep and Bbinary-indep sequences are passed +the B-i option to ensure they only work on binary independent packages, +and commands in the Bbuild-arch and Bbinary-arch sequences are +passed the B-a option to ensure they only work on architecture +dependent packages. If Fdebian/rules contains a target with a name like Boverride_Idh_command, then when it would normally run Idh_command, Bdh will instead call that @@ -322,6 +324,8 @@ $sequences{build} = [qw{ dh_auto_build dh_auto_test }], +$sequences{'build-indep'} = [...@{$sequences{build}}]; +$sequences{'build-arch'} = [...@{$sequences{build}}]; $sequences{clean} = [qw{ dh_testdir dh_auto_clean @@ -367,19 +371,25 @@ $sequences{install} = [...@{$sequences{build}}, qw{ dh_compress dh_fixperms }]; +$sequences{install-indep} = [...@{$sequences{build-indep}}, @i]; +$sequences{install-arch} = [...@{$sequences{build-arch}}, @i]; my @b=qw{ dh_installdeb dh_gencontrol dh_md5sums dh_builddeb }; -$sequences{'binary-indep'} = [...@{$sequences{install}}, @b]; +$sequences{'binary-indep'} = [...@{$sequences{install-indep}}, @b]; $sequences{binary} = [...@{$sequences{install}}, qw{ dh_strip dh_makeshlibs dh_shlibdeps }, @b]; -$sequences{'binary-arch'} = [...@{$sequences{binary}}]; +$sequences{'binary-arch'} = [...@{$sequences{install-arch}}, qw{ + dh_strip + dh_makeshlibs + dh_shlibdeps +}]; # Additional command options my %command_opts; @@ -514,14 +524,18 @@ my @packag...@{$dh{dopackages}}; # Get the options to pass to commands in the sequence. # Filter out options intended only for this program. my @options; -if ($sequence eq 'binary-arch') { +if ($sequence eq 'build-arch' || +$sequence eq 'install-arch' || +$sequence eq 'binary-arch') { push @options, -a; # as an optimisation, remove from the list any packages # that are not arch dependent my %arch_packages = map { $_ = 1 } getpackages(arch); @packages = grep { $arch_packages{$_} } @packages; } -elsif ($sequence eq 'binary-indep') { +elsif ($sequence eq 'build-indep' || + $sequence eq 'install-indep' || + $sequence eq 'binary-indep') { push @options, -i; # ditto optimisation for arch indep my %indep_packages = map { $_ = 1 } getpackages(indep); signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
On Mon, Nov 22, 2010 at 04:42:03PM +, Roger Leigh wrote: On Mon, Nov 22, 2010 at 04:39:20PM +, Roger Leigh wrote: I checked, and dh currently doesn't support build-arch and build-indep at all internally (you need to add the rules yourself). I've made a patch to add proper support which I'll submit once I've tested it. FWIW, the current progress on this is attached. No guarantees--it's totally untested. Final tested patch in #604563. -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
Roger Leigh rle...@codelibre.net writes: On Sat, Nov 20, 2010 at 08:23:59PM +, Roger Leigh wrote: On Sat, Nov 20, 2010 at 01:29:12PM -0600, Boyd Stephen Smith Jr. wrote: In 20101120183255.gf12...@khazad-dum.debian.net, Henrique de Moraes Holschuh wrote: On Fri, 19 Nov 2010, Boyd Stephen Smith Jr. wrote: But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. It can be done, but it must be done in at least two steps: 1. Make it SHOULD, start fixing packages. You don't have to wait for the SHOULD to start fixing packages, either. I'm not willing to manually test random packages for this breakage. What's the best way to get an automated process to report on the PTS or BTS the existence of build-arch and build-indep? Could it simply be a lintian test? Also, I thought it was already a SHOULD. 2. When almost everything is fixed, make it MUST. Whatever doesn't get fixed after that, gets axed from the next stable. My time was volunteered (in my last posting) *after* it becomes a MUST, but with some help I might be willing to put some time in as part of a DEP. Two suggestions: r 1) Use the lintian lab on lintian.debian.org (/v/lintian.debian.org/laboratory) which contains all 15796 unpacked source packages. Alternatively, download and unpack them all on your own machine [] You can write a script to check for the presence of build-arch: and/or build-indep: Note: this won't pick out make pattern rules which don't have (directly) those named rules, so you might want to check for build% etc. There are other special cases such as included Makefiles when packages use cdbs etc., so you will get false positives that need manual review. Example: find . -type f -name rules | grep 'debian/rules$' | while read rule; do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule; done gives you somewhere to start. Output at http://people.debian.org/~rleigh/build-rule-check.bz2 I haven't had time to analyse this, if someone else wants to, that would be cool. Done on lintian.debian.org using the following: #!/bin/sh cd /srv/lintian.debian.org/laboratory/source find . -type f -name rules | grep 'debfiles/rules$' | while read rule do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule done Regards, Roger Now why does it only list 8k sources if it matches the required build: target? Are 50% of all sources already dropping through that grep because they use dh ('%:') or include files? Anyway, grepping for sources that (probably) have build-arch/indep: % bzcat build-rule-check.bz2 | egrep '/rules:(build(.*%)+|build-(arch|indep)):' | cut -d: -f1 | sort -u | wc -l 572 Lots of work to do. MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87ipzqblav@frosties.localnet
Re: Build-Depends-Indep, please review
On Sun, Nov 21, 2010 at 07:09:44PM +0100, Goswin von Brederlow wrote: Output at http://people.debian.org/~rleigh/build-rule-check.bz2 I haven't had time to analyse this, if someone else wants to, that would be cool. Done on lintian.debian.org using the following: #!/bin/sh cd /srv/lintian.debian.org/laboratory/source find . -type f -name rules | grep 'debfiles/rules$' | while read rule do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule done Regards, Roger Now why does it only list 8k sources if it matches the required build: target? Are 50% of all sources already dropping through that grep because they use dh ('%:') or include files? That's what I think, and a cursory look at a few gives the same impression. Which is surprisingly good--there's only a single tool to update to get support added for a huge chunk of the archive (well, there's cdbs as well of course, so it's two main ones). Anyway, grepping for sources that (probably) have build-arch/indep: % bzcat build-rule-check.bz2 | egrep '/rules:(build(.*%)+|build-(arch|indep)):' | cut -d: -f1 | sort -u | wc -l 572 Lots of work to do. Agreed! But, should be an achievable goal for squeeze+1 if we start on it early. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
On Fri, 19 Nov 2010, Boyd Stephen Smith Jr. wrote: But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. It can be done, but it must be done in at least two steps: 1. Make it SHOULD, start fixing packages. You don't have to wait for the SHOULD to start fixing packages, either. 2. When almost everything is fixed, make it MUST. Whatever doesn't get fixed after that, gets axed from the next stable. -- One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie. -- The Silicon Valley Tarot Henrique Holschuh -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20101120183255.gf12...@khazad-dum.debian.net
Re: Build-Depends-Indep, please review
In 20101120183255.gf12...@khazad-dum.debian.net, Henrique de Moraes Holschuh wrote: On Fri, 19 Nov 2010, Boyd Stephen Smith Jr. wrote: But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. It can be done, but it must be done in at least two steps: 1. Make it SHOULD, start fixing packages. You don't have to wait for the SHOULD to start fixing packages, either. I'm not willing to manually test random packages for this breakage. What's the best way to get an automated process to report on the PTS or BTS the existence of build-arch and build-indep? Could it simply be a lintian test? Also, I thought it was already a SHOULD. 2. When almost everything is fixed, make it MUST. Whatever doesn't get fixed after that, gets axed from the next stable. My time was volunteered (in my last posting) *after* it becomes a MUST, but with some help I might be willing to put some time in as part of a DEP. -- Boyd Stephen Smith Jr. ,= ,-_-. =. b...@iguanasuicide.net ((_/)o o(\_)) ICQ: 514984 YM/AIM: DaTwinkDaddy `-'(. .)`-' http://iguanasuicide.net/\_/ signature.asc Description: This is a digitally signed message part.
Re: Build-Depends-Indep, please review
Boyd Stephen Smith Jr. b...@iguanasuicide.net writes: In 20101120183255.gf12...@khazad-dum.debian.net, Henrique de Moraes Holschuh wrote: On Fri, 19 Nov 2010, Boyd Stephen Smith Jr. wrote: But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. It can be done, but it must be done in at least two steps: 1. Make it SHOULD, start fixing packages. You don't have to wait for the SHOULD to start fixing packages, either. I'm not willing to manually test random packages for this breakage. What's the best way to get an automated process to report on the PTS or BTS the existence of build-arch and build-indep? Could it simply be a lintian test? Setup an autobuilder, patch dpkg-buildpackage to call build-arch/indep, rebuild all packages, read all failed build logs. You could set up a lintian test that checks for a targets compatible with build-arch/indep to get a fairly goo result. I.e. '%' is compatible, 'build%' is and so on. You will get some false positives and false negatives but for a lintian test that should be ok. Unfortunately it isn't good enough for dpkg-buildpackage use. If you have the knowledge to write lintian tests then please do. Also, I thought it was already a SHOULD. It is more a CAN. The targets are declared optional without a statement one SHOULD have them even if they only depend on 'build'. 2. When almost everything is fixed, make it MUST. Whatever doesn't get fixed after that, gets axed from the next stable. My time was volunteered (in my last posting) *after* it becomes a MUST, but with some help I might be willing to put some time in as part of a DEP. And that is the problem. You will only do the work if you MUST. And you only MUST if the work is almost done. The same goes for maintainers accepting patches. There are a lot of sources, maybe even the majority, where build-arch/indep is of no use. And there maintainers are adverse to adding a patch for build-arch/indep that is totaly useless (for their source). Why not loosen your requirement a bit? For example would you volunteer to NMU packages if build-arch/indep targets become a release goal for wheeze? MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87tyjb3g00@frosties.localnet
Re: Build-Depends-Indep, please review
On Sat, Nov 20, 2010 at 01:29:12PM -0600, Boyd Stephen Smith Jr. wrote: In 20101120183255.gf12...@khazad-dum.debian.net, Henrique de Moraes Holschuh wrote: On Fri, 19 Nov 2010, Boyd Stephen Smith Jr. wrote: But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. It can be done, but it must be done in at least two steps: 1. Make it SHOULD, start fixing packages. You don't have to wait for the SHOULD to start fixing packages, either. I'm not willing to manually test random packages for this breakage. What's the best way to get an automated process to report on the PTS or BTS the existence of build-arch and build-indep? Could it simply be a lintian test? Also, I thought it was already a SHOULD. 2. When almost everything is fixed, make it MUST. Whatever doesn't get fixed after that, gets axed from the next stable. My time was volunteered (in my last posting) *after* it becomes a MUST, but with some help I might be willing to put some time in as part of a DEP. Two suggestions: 1) Use the lintian lab on lintian.debian.org (/srv/lintian.debian.org/laboratory) which contains all 15796 unpacked source packages. Alternatively, download and unpack them all on your own machine [] You can write a script to check for the presence of build-arch: and/or build-indep: Note: this won't pick out make pattern rules which don't have (directly) those named rules, so you might want to check for build% etc. There are other special cases such as included Makefiles when packages use cdbs etc., so you will get false positives that need manual review. Example: find . -type f -name rules | grep 'debian/rules$' | while read rule; do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule; done gives you somewhere to start. 2) Directly patch dpkg-buildpackage and do a whole-archive rebuild. If you patch dpkg-buildpackage to require build-arch and build-indep in place of build, you can then build every source package and get success or failure. This can be done fairly trivially by scripting sbuild to build all sources with the new dpkg-buildpackage installed in the build chroot. There's also rebuildd for use with pbuilder/cowbuilder if you prefer that. This will take much longer, but should be 100% reliable bar FTBFS bugs. If there was a reliable way of getting make to tell you if a target rule exists or not, that would be much quicker than doing a full rebuild. Additionally, it could be added to lintian to warn people about the requirement. Totally agree with hmh about making it a SHOULD in Policy followed by MUST. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
On Sat, Nov 20, 2010 at 08:23:59PM +, Roger Leigh wrote: On Sat, Nov 20, 2010 at 01:29:12PM -0600, Boyd Stephen Smith Jr. wrote: In 20101120183255.gf12...@khazad-dum.debian.net, Henrique de Moraes Holschuh wrote: On Fri, 19 Nov 2010, Boyd Stephen Smith Jr. wrote: But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. It can be done, but it must be done in at least two steps: 1. Make it SHOULD, start fixing packages. You don't have to wait for the SHOULD to start fixing packages, either. I'm not willing to manually test random packages for this breakage. What's the best way to get an automated process to report on the PTS or BTS the existence of build-arch and build-indep? Could it simply be a lintian test? Also, I thought it was already a SHOULD. 2. When almost everything is fixed, make it MUST. Whatever doesn't get fixed after that, gets axed from the next stable. My time was volunteered (in my last posting) *after* it becomes a MUST, but with some help I might be willing to put some time in as part of a DEP. Two suggestions: r 1) Use the lintian lab on lintian.debian.org (/v/lintian.debian.org/laboratory) which contains all 15796 unpacked source packages. Alternatively, download and unpack them all on your own machine [] You can write a script to check for the presence of build-arch: and/or build-indep: Note: this won't pick out make pattern rules which don't have (directly) those named rules, so you might want to check for build% etc. There are other special cases such as included Makefiles when packages use cdbs etc., so you will get false positives that need manual review. Example: find . -type f -name rules | grep 'debian/rules$' | while read rule; do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule; done gives you somewhere to start. Output at http://people.debian.org/~rleigh/build-rule-check.bz2 I haven't had time to analyse this, if someone else wants to, that would be cool. Done on lintian.debian.org using the following: #!/bin/sh cd /srv/lintian.debian.org/laboratory/source find . -type f -name rules | grep 'debfiles/rules$' | while read rule do egrep -H '^(build(.*%)?|build-(arch|indep)):' $rule done Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
David Kalnischkies kalnischk...@gmail.com writes: On Thu, Nov 18, 2010 at 19:25, Ø£Ø٠د اÙÙ ØÙ Ùد٠aelmahmo...@sabily.org wrote: On Thu, Nov 18, 2010 at 07:07:07PM +0100, Goswin von Brederlow wrote: And as discussed before policy disagrees with reality in this. Would you please elaborate ? Goswin likely refers to this thread: Buildd binary-indep http://lists.debian.org/debian-devel/2010/09/msg00590.html Message-id: 20100924204433.ga4...@apache.rbscorp.ru Best regards David Kalnischkies And in short: Buildds install only Build-Depends but not Build-Depends-Indep but still call the build target. In reality the build target must work with only Build-Depends installed contrary to what policy says. MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87y68pl3sm@frosties.localnet
Re: Build-Depends-Indep, please review
On Fri, Nov 19, 2010 at 04:40:57PM +0100, Goswin von Brederlow wrote: David Kalnischkies kalnischk...@gmail.com writes: On Thu, Nov 18, 2010 at 19:25, Ø£Ø٠د اÙÙ ØÙ Ùد٠aelmahmo...@sabily.org wrote: On Thu, Nov 18, 2010 at 07:07:07PM +0100, Goswin von Brederlow wrote: And as discussed before policy disagrees with reality in this. Would you please elaborate ? Goswin likely refers to this thread: Buildd binary-indep http://lists.debian.org/debian-devel/2010/09/msg00590.html Message-id: 20100924204433.ga4...@apache.rbscorp.ru Best regards David Kalnischkies And in short: Buildds install only Build-Depends but not Build-Depends-Indep but still call the build target. In reality the build target must work with only Build-Depends installed contrary to what policy says. I do hope this mess can be sorted out after squeeze is released. Mandating build-arch and build-indep would be a good thing, IMHO. It's not the buildd software that can change this though--the actual sticking point is dpkg-buildpackage, which is used by sbuild. sbuild is actually perfectly capable of installing Build-Depends-Indep and removing Build-Conflicts-Indep when invoked with the -A (build arch-all) option, but there are no buildds building arch-indep packages yet. If we ever throw away uploaded binaries and build everything on buildds, this would then be useful. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `-GPG Public Key: 0x25BFB848 Please GPG sign your mail. signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
Roger Leigh rle...@codelibre.net writes: On Fri, Nov 19, 2010 at 04:40:57PM +0100, Goswin von Brederlow wrote: David Kalnischkies kalnischk...@gmail.com writes: On Thu, Nov 18, 2010 at 19:25, Ø£Ø٠د اÙÙ ØÙ Ùد٠aelmahmo...@sabily.org wrote: On Thu, Nov 18, 2010 at 07:07:07PM +0100, Goswin von Brederlow wrote: And as discussed before policy disagrees with reality in this. Would you please elaborate ? Goswin likely refers to this thread: Buildd binary-indep http://lists.debian.org/debian-devel/2010/09/msg00590.html Message-id: 20100924204433.ga4...@apache.rbscorp.ru Best regards David Kalnischkies And in short: Buildds install only Build-Depends but not Build-Depends-Indep but still call the build target. In reality the build target must work with only Build-Depends installed contrary to what policy says. I do hope this mess can be sorted out after squeeze is released. Mandating build-arch and build-indep would be a good thing, IMHO. It's not the buildd software that can change this though--the actual sticking point is dpkg-buildpackage, which is used by sbuild. sbuild is actually perfectly capable of installing Build-Depends-Indep and removing Build-Conflicts-Indep when invoked with the -A (build arch-all) option, but there are no buildds building arch-indep packages yet. If we ever throw away uploaded binaries and build everything on buildds, this would then be useful. Regards, Roger Don't count on it. This has been going on for years and years. The simple solution is to just declare the build-indep/arch targets required (maybe going via SHOULD to MUST) and then have dpkg-buildpackage just use them when sources have changed (or just use them and break things). Unfortunately this would make a lot of packages instantly RC buggy so people are afraid of doing that. And without mandating the targets and making Build-Depends-Indep actually usefull there is no incentive for maintainers to change the source. But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87y68p6tcx@frosties.localnet
Re: Build-Depends-Indep, please review
In 87y68p6tcx@frosties.localnet, Goswin von Brederlow wrote: Roger Leigh rle...@codelibre.net writes: On Fri, Nov 19, 2010 at 04:40:57PM +0100, Goswin von Brederlow wrote: David Kalnischkies kalnischk...@gmail.com writes: On Thu, Nov 18, 2010 at 19:25, Ø£Ø٠د اÙÙ ØÙ Ùد٠aelmahmo...@sabily.org wrote: On Thu, Nov 18, 2010 at 07:07:07PM +0100, Goswin von Brederlow wrote: And as discussed before policy disagrees with reality in this. Would you please elaborate ? Goswin likely refers to this thread: Buildd binary-indep http://lists.debian.org/debian-devel/2010/09/msg00590.html Message-id: 20100924204433.ga4...@apache.rbscorp.ru Buildds install only Build-Depends but not Build-Depends-Indep but still call the build target. In reality the build target must work with only Build-Depends installed contrary to what policy says. I do hope this mess can be sorted out after squeeze is released. Mandating build-arch and build-indep would be a good thing, IMHO. Don't count on it. This has been going on for years and years. The simple solution is to just declare the build-indep/arch targets required (maybe going via SHOULD to MUST) and then have dpkg-buildpackage just use them when sources have changed (or just use them and break things). Unfortunately this would make a lot of packages instantly RC buggy so people are afraid of doing that. And without mandating the targets and making Build-Depends-Indep actually usefull there is no incentive for maintainers to change the source. But hey, all the maintainer has to do is add 1, in words ONE, char to debian/rules. Just change build: to build%: and dpkg-buildpackage could use build-arch/indep targets instead of build. Aparently that is too much to ask. I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. -- Boyd Stephen Smith Jr. ,= ,-_-. =. b...@iguanasuicide.net ((_/)o o(\_)) ICQ: 514984 YM/AIM: DaTwinkDaddy `-'(. .)`-' http://iguanasuicide.net/\_/ signature.asc Description: This is a digitally signed message part.
Re: Build-Depends-Indep, please review
Le Fri, Nov 19, 2010 at 01:30:00PM -0600, Boyd Stephen Smith Jr. a écrit : I volunteer to make /this/ fix to any package that is unmaintained or whose maintainer is unresponsive, *if* Debian will change policy to /require/ build- arch/indep and make dpkg-buildpackage use them instead of build sometime after the Squeeze release and before the Wheezy freeze. Nice to see enthousiasm ! Perhaps such project would make a good Debian enhancement proposal (DEP, http://dep.debian.net/ ) Have a nice week-end, -- Charles Plessy Tsurumi, Kanagawa, Japan -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20101120005134.gh8...@merveille.plessy.net
Re: Build-Depends-Indep, please review
Didier 'OdyX' Raboud did...@raboud.com writes: anatoly techtonik wrote: On Fri, Nov 5, 2010 at 10:02 AM, Ø£Ø٠د اÙÙ ØÙ Ùد٠aelmahmo...@sabily.org wrote: Hello, I thought Build-Depends-Indep is for build-deps that are not needed by clean target. What is the meaning of name Build-Depends-Indep then? Dependencies that are required to build package, but from which clean rule is independent? No. Build-Depends-Indep lists the Build Dependencies needed to build the architecture-INDEPendant packages. In short: your package must build the arch:any packages correctly when only the Build-Depends are installed. It must be able to build also the arch:all when the Build-Depends-Indep are also installed. This allows to have minimal Build-Depends, while extending them with B-D-Indep (usually documentation building tools) for the arch:all packages. All that is in Policy 7.7. Cheers, OdyX And as discussed before policy disagrees with reality in this. MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/8762vu1p6c@frosties.localnet
Re: Build-Depends-Indep, please review
anatoly techtonik techto...@gmail.com writes: Hello, I've described situation around Build-Depends-Indep at http://wiki.debian.org/Build-Depends-Indep I hope it will be useful for people who are looking for description of this field. However, I am not expert in packaging, and some information is obviously missing. If you can fill the blanks, that would be awesome. Please, CC. | As a result, it became possible to execute debian/rules with | 'build-indep' and 'build-arch' targets correspondingly. No, you can not, at least not in general. That is exactly the problem. The build-indep and build-arch targets are optional and can't be detected reliably. So dpkg-buildpackage has to call the build target even if it only wants to build indep or arch packages. It is only possible after you manually verified the package does have those targets, which makes them rather useless. The more usefull case is calling the binary-indep or binary-arch targets, which then only depend on build-indep or build-arch respectively. But since that then builds as (fake)root autobuilders don't do that without having called build first. | In practice I can't think of any real world example where this | scenario can be used. The only useful application may be with | autobuilders that build a lot of packages from scratch, i.e. in empty | environment on different systems. All autobuilders do exactly that. They only build the arch packages and start from a clean chroot. Installing packages into the build chroot for each build is a huge drain, esspecially for things like fonts that get reindexed every time (those 'this might take a while' messages). | Some people argue that 'build' not necessary calls 'build-indep' or | 'build-arch', because policy says that it should call, not must | call. I doubt that there are cases when 'build' doesn't call these - | in this scenario some packages won't be built at all, just because | autobuilders can't call anything, but 'build'. I believe there are several cases. And autobuilders can build them just fine. The secret is to have the binary-% targets depend on build-% instead of build. The build targets itself can potentially do nothing. That way build-indep and build-arch are called as needed although at a later time and as (fake)root. It certainly isn't nice to do this but it is the only way to make Build-Depends-Indep usefull. Note: A less ugly case is having build depend on build-arch but not build-indep. That way autobuilders build as normal user and only the indep packges are build as (fake)root. MfG Goswin -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/871v6i1olw@frosties.localnet
Re: Build-Depends-Indep, please review
On Thu, Nov 18, 2010 at 07:07:07PM +0100, Goswin von Brederlow wrote: And as discussed before policy disagrees with reality in this. ---end quoted text--- Would you please elaborate ? -- أحمد المحمودي (Ahmed El-Mahmoudy) Digital design engineer GPG KeyID: 0xEDDDA1B7 GPG Fingerprint: 8206 A196 2084 7E6D 0DF8 B176 BC19 6A94 EDDD A1B7 signature.asc Description: Digital signature
Re: Build-Depends-Indep, please review
On Thu, Nov 18, 2010 at 19:25, أحمد المحمودي aelmahmo...@sabily.org wrote: On Thu, Nov 18, 2010 at 07:07:07PM +0100, Goswin von Brederlow wrote: And as discussed before policy disagrees with reality in this. Would you please elaborate ? Goswin likely refers to this thread: Buildd binary-indep http://lists.debian.org/debian-devel/2010/09/msg00590.html Message-id: 20100924204433.ga4...@apache.rbscorp.ru Best regards David Kalnischkies -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktinkz2xpcgv=du�pcneuq4me5lrwx4p34ic...@mail.gmail.com
Re: Build-Depends-Indep, please review
On Fri, Nov 5, 2010 at 10:02 AM, أحمد المحمودي aelmahmo...@sabily.org wrote: Hello, I thought Build-Depends-Indep is for build-deps that are not needed by clean target. What is the meaning of name Build-Depends-Indep then? Dependencies that are required to build package, but from which clean rule is independent? -- anatoly t. -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktikp9erdujqur8xsmhz1ueuma7r-puu4hn72t...@mail.gmail.com
Re: Build-Depends-Indep, please review
anatoly techtonik wrote: On Fri, Nov 5, 2010 at 10:02 AM, أحمد المحمودي aelmahmo...@sabily.org wrote: Hello, I thought Build-Depends-Indep is for build-deps that are not needed by clean target. What is the meaning of name Build-Depends-Indep then? Dependencies that are required to build package, but from which clean rule is independent? No. Build-Depends-Indep lists the Build Dependencies needed to build the architecture-INDEPendant packages. In short: your package must build the arch:any packages correctly when only the Build-Depends are installed. It must be able to build also the arch:all when the Build-Depends-Indep are also installed. This allows to have minimal Build-Depends, while extending them with B-D-Indep (usually documentation building tools) for the arch:all packages. All that is in Policy 7.7. Cheers, OdyX -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/ic14fk$h2...@dough.gmane.org
Re: Build-Depends-Indep, please review
Hello, I thought Build-Depends-Indep is for build-deps that are not needed by clean target. -- أحمد المحمودي (Ahmed El-Mahmoudy) Digital design engineer GPG KeyID: 0xEDDDA1B7 GPG Fingerprint: 8206 A196 2084 7E6D 0DF8 B176 BC19 6A94 EDDD A1B7 signature.asc Description: Digital signature
Build-Depends-Indep, please review
Hello, I've described situation around Build-Depends-Indep at http://wiki.debian.org/Build-Depends-Indep I hope it will be useful for people who are looking for description of this field. However, I am not expert in packaging, and some information is obviously missing. If you can fill the blanks, that would be awesome. Please, CC. -- anatoly t. -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktin3m3dqz6m=3stmph=xmneuvtfc2vr0unfhb...@mail.gmail.com