Re: Package which uses jam (instead make)

2003-10-30 Thread Manoj Srivastava
On Tue, 28 Oct 2003 16:40:03 -0600, Marcelo E Magallon [EMAIL PROTECTED] 
said: 

 On Tue, Oct 21, 2003 at 05:03:53PM -0500, Manoj Srivastava wrote:
 We just disallow some usage that has been explicitley stated to
 work.  A gratuitous change, with no compelling use cases, or even a
 rationale beyond why not?, hopefully shall not be accepted.

  You keep on referencing to particular features of a specific
  implementation of make.  Since I know you have a gazillion Unix
  years under your belt, that comes as a surprise to me.  For
  example, you keep talking about including makefiles, but that
  happens to be a GNU make feature.  The way VPATH works is also GNU
  make specific.  The way -n works is specific to GNU make, too.  If
  you want to tie debian/rules to GNU make, then modify policy to say
  so: a GNU Makefile.


We are talking about Debian policy , are we not? Isn't the
 only make in Debian one with these features?



  Arguments regarding the nature of Debian's /usr/bin/make are not
  strong enough, not as a definition for an interface.


Umm, they could be, in the context of Debian, just as dpkg
 behaviour serves as an interface to the packaging system. However,
 I'll be happy with the definition of Make as provided by POSIX as our
 interface spec.

  Policy says:

  This file must be an executable makefile, and contains the
  package-specific recipes for compiling the package and building
  binary package(s) from the source.

  excutable makefile, ok, this is the point of contempt.

As defined by POSIX, if you wish to be pedantic.

  It must start with the line `#!/usr/bin/make -f', so that it
  can be invoked by saying its name rather than invoking `make'
  explicitly.

  That's just a corollary of the first part.

  Since an interactive `debian/rules' script makes it impossible
  to auto-compile that package and also makes it hard for other
  people to reproduce the same binary package, all _required
  targets_ MUST be non-interactive.  At a minimum, required
  targets are the ones called by `dpkg-buildpackage', namely,
  _clean_, _binary_, _binary-arch_, _binary-indep_, and _build_.
  It also follows that any target that these targets depend on
  must also be non-interactive.

  *that* is an interface definition.

No more than what POSIX specs say a Makefile is. The POSIX
 specs are far more complete, as they define all the variables make
 pays attention to, and special targets, and all. 


  The architectures we build on and build for are determined by
  `make' variables using the utility `dpkg-architecture'.  You
  can determine the Debian architecture and the GNU style
  architecture specification string for the build machine (the
  machine type we are building on) as well as for the host
  machine (the machine type we are building for).  Here is a list
  of supported `make' variables:
 * `DEB_*_ARCH' (the Debian architecture)
 * `DEB_*_GNU_TYPE' (the GNU style architecture specification string)
 * `DEB_*_GNU_CPU' (the CPU part of `DEB_*_GNU_TYPE')
 * `DEB_*_GNU_SYSTEM' (the System part of `DEB_*_GNU_TYPE')
  where `*' is either `BUILD' for specification of the build
  machine or `HOST' for specification of the host machine.

  And *that* is also an interface definition.  Calling these make
  variables is just bad wording, these are passed via the
  environment.  The fact that GNU make turns these into make
  variables is not important.

MAKEFLAGS is a defined interface into make, BTW.

manoj

-- 
The Ruffed Pandanga of Borneo and Rotherham spreads out his feathers
in his courtship dance and imitates Winston Churchill and Tommy Cooper
on one leg.  The padanga is dying out because the female padanga
doesn't take it too seriously. Mike Harding, The Armchair Anarchist's
Almanac
Manoj Srivastava   [EMAIL PROTECTED]  http://www.debian.org/%7Esrivasta/
1024R/C7261095 print CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Re: Package which uses jam (instead make)

2003-10-29 Thread Branden Robinson
On Wed, Oct 29, 2003 at 04:04:35AM +0100, Henning Makholm wrote:
 Scripsit Marcelo E. Magallon [EMAIL PROTECTED]
   excutable makefile, ok, this is the point of contempt.
 
 If we're actually regarding each other's views with contempt, then
 there's not much point in continuing the discussion, I think.

Oh, come on.  It's obvious from context that he meant contention, and
misspoke.

Not all of us on these lists are native English speakers, but that
doesn't excuse deliberate misconstrual of other people's words.

-- 
G. Branden Robinson|  You live and learn.
Debian GNU/Linux   |  Or you don't live long.
[EMAIL PROTECTED] |  -- Robert Heinlein
http://people.debian.org/~branden/ |


signature.asc
Description: Digital signature


Re: Package which uses jam (instead make)

2003-10-29 Thread Josip Rodin
On Wed, Oct 29, 2003 at 04:04:35AM +0100, Henning Makholm wrote:
 debian/rules should be portable enough to work with any implementation
 of make [1]. That's the interface. If I have an implmentation that I know
 supports include files, I should be able to ask *my* implementation of
 make to include *somebody else's* debian/rules and expect it to work.

You inferred that meaning yourself, it's not a universal fact. I for one
don't see any reason why the Policy should mandate that feature, or any
other feature not already stated in the manual (or proposed, of course).

In fact, doing this would be the type of intrusive change that the
conservatives among us would actually have reason to object to,
unlike the change described in #88029.

-- 
 2. That which causes joy or happiness.



Re: Package which uses jam (instead make)

2003-10-28 Thread Marcelo E. Magallon
On Tue, Oct 21, 2003 at 05:03:53PM -0500, Manoj Srivastava wrote:

   We just disallow some usage that has been explicitley stated to
  work.  A gratuitous change, with no compelling use cases, or even a
  rationale beyond why not?, hopefully shall not be accepted.

 You keep on referencing to particular features of a specific
 implementation of make.  Since I know you have a gazillion Unix years
 under your belt, that comes as a surprise to me.  For example, you keep
 talking about including makefiles, but that happens to be a GNU make
 feature.  The way VPATH works is also GNU make specific.  The way -n
 works is specific to GNU make, too.  If you want to tie debian/rules to
 GNU make, then modify policy to say so: a GNU Makefile.  Arguments
 regarding the nature of Debian's /usr/bin/make are not strong enough,
 not as a definition for an interface.

 Policy says:

 This file must be an executable makefile, and contains the
 package-specific recipes for compiling the package and building binary
 package(s) from the source.

 excutable makefile, ok, this is the point of contempt.

 It must start with the line `#!/usr/bin/make -f', so that it can be
 invoked by saying its name rather than invoking `make' explicitly.

 That's just a corollary of the first part.

 Since an interactive `debian/rules' script makes it impossible to
 auto-compile that package and also makes it hard for other people to
 reproduce the same binary package, all _required targets_ MUST be
 non-interactive.  At a minimum, required targets are the ones called
 by `dpkg-buildpackage', namely, _clean_, _binary_, _binary-arch_,
 _binary-indep_, and _build_.  It also follows that any target that
 these targets depend on must also be non-interactive.

 *that* is an interface definition.

 [Policy goes on and defines what these targets do]

 Additional targets may exist in `debian/rules', either as published or
 undocumented interfaces or for the package's internal use.

 Not an interface.

 The architectures we build on and build for are determined by `make'
 variables using the utility `dpkg-architecture'.  You can determine
 the Debian architecture and the GNU style architecture specification
 string for the build machine (the machine type we are building on) as
 well as for the host machine (the machine type we are building for).
 Here is a list of supported `make' variables:
* `DEB_*_ARCH' (the Debian architecture)
* `DEB_*_GNU_TYPE' (the GNU style architecture specification
  string)
* `DEB_*_GNU_CPU' (the CPU part of `DEB_*_GNU_TYPE')
* `DEB_*_GNU_SYSTEM' (the System part of `DEB_*_GNU_TYPE')
 where `*' is either `BUILD' for specification of the build machine or
 `HOST' for specification of the host machine.

 And *that* is also an interface definition.  Calling these make
 variables is just bad wording, these are passed via the environment.
 The fact that GNU make turns these into make variables is not
 important.

 Marcelo



Re: Package which uses jam (instead make)

2003-10-28 Thread Henning Makholm
Scripsit Marcelo E. Magallon [EMAIL PROTECTED]

  If you want to tie debian/rules to GNU make, then modify policy to
  say so: a GNU Makefile.  Arguments regarding the nature of Debian's
  /usr/bin/make are not strong enough, not as a definition for an
  interface.

debian/rules should be portable enough to work with any implementation
of make [1]. That's the interface. If I have an implmentation that I
know supports include files, I should be able to ask *my*
implementation of make to include *somebody else's* debian/rules and
expect it to work.

[1] Perhaps. The dh_make templates for debian/rules actually do
contain gnuisms, so this is not true in practise.

  excutable makefile, ok, this is the point of contempt.

If we're actually regarding each other's views with contempt, then
there's not much point in continuing the discussion, I think.

  And *that* is also an interface definition.  Calling these make
  variables is just bad wording, these are passed via the environment.

Actually, makefile variables can also be passed on the command line,
at least with the implementations of make that I'm familiar with.

  The fact that GNU make turns these into make variables is not
  important.

It *is* a part of the interface that I can compile my own patched
version of make that hardcodes one or more of these variables, and
expect things to work when I ask it to interpret debian/rules.

-- 
Henning Makholm  Det er jo svært at vide noget når man ikke ved det, ikke?



Re: Package which uses jam (instead make)

2003-10-22 Thread Branden Robinson
On Wed, Oct 22, 2003 at 01:37:36AM +0200, Josip Rodin wrote:
 On Tue, Oct 21, 2003 at 05:03:53PM -0500, Manoj Srivastava wrote:
   If you do not stick to the documented interfaces, you lose the
   ability in my eyes to express outrage when the interfaces you use
   change.
  
   Except one important difference -- in this case, NOTHING CHANGES in
   the interface if the policy proposal is accepted.
  
  We just disallow some usage that has been explicitley stated
   to work.
 
 No. How did you come to that conclusion?
 
 This is another time you're giving the impression of don't take away my
 makefile rules files!. Well, maybe there's some Grinch out there who wants
 to steal them away from you, but I assure you that my intentions are not to
 do that. :)

I don't Manoj is accusing you of trying to force him to make his rules
files not be Makefiles.  He's accusing you of trying to let other people
make *their* rules files non-Makefiles, which is objectionable to him,
because he likes to play with MAKEFLAGS and VPATH.

I disagree with him, however, since Policy does not forbid, even
implicitly, a developer from sabotaging the values of these variables
in the rules file.

In my opinion, Manoj's rationale for not tolerating alternative
implementations of make is not grounded on any documented interface, but
rather his knowledge of what's going on *behind* the interface.  Good
programmers know not to take such things for granted.

Unless Manoj can come up with a different argument that I find
persuasive, I would continue to support a proposal to loosen the
definition of a debian/rules file in this respect.

-- 
G. Branden Robinson|Lowery's Law:
Debian GNU/Linux   |If it jams -- force it.  If it
[EMAIL PROTECTED] |breaks, it needed replacing anyway.
http://people.debian.org/~branden/ |


signature.asc
Description: Digital signature


Re: Bug#88029: Package which uses jam (instead make)

2003-10-21 Thread Branden Robinson
On Mon, Oct 20, 2003 at 12:35:04AM +0200, Josip Rodin wrote:
 On Sun, Oct 19, 2003 at 03:58:19PM -0500, Steve Greenland wrote:
  I've yet to see a technical argument for allowing debian/rules to be a
  non-makefile.
 
 I've yet to see a technical argument for disallowing debian/rules from being
 a non-makefile.

(itinerant policy-editor hat on)

Me neither.

-- 
G. Branden Robinson|Humor is a rubber sword - it allows
Debian GNU/Linux   |you to make a point without drawing
[EMAIL PROTECTED] |blood.
http://people.debian.org/~branden/ |-- Mary Hirsch


signature.asc
Description: Digital signature


Re: Package which uses jam (instead make)

2003-10-21 Thread Manoj Srivastava
On Tue, 21 Oct 2003 17:00:17 +0200, Josip Rodin [EMAIL PROTECTED] said: 

 On Sat, Oct 18, 2003 at 07:55:00PM -0500, John Goerzen wrote:
 If you do not stick to the documented interfaces, you lose the
 ability in my eyes to express outrage when the interfaces you use
 change.

 Except one important difference -- in this case, NOTHING CHANGES in
 the interface if the policy proposal is accepted.

We just disallow some usage that has been explicitley stated
 to work.  A gratuitous change, with no compelling use cases, or even
 a rationale beyond why not?, hopefully shall not be accepted.

manoj

-- 
Committee, n.: A group of men who individually can do nothing but as a
group decide that nothing can be done. Fred Allen
Manoj Srivastava   [EMAIL PROTECTED]  http://www.debian.org/%7Esrivasta/
1024R/C7261095 print CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Re: Package which uses jam (instead make)

2003-10-21 Thread Manoj Srivastava
On Tue, 21 Oct 2003 16:58:55 +0200, Josip Rodin [EMAIL PROTECTED] said: 

 On Mon, Oct 20, 2003 at 09:54:13PM -0500, Manoj Srivastava wrote:
 It is documented to be a Makefile. That _is_ the interface
 definition.

 Actually, we don't know that.

We don't?

 The original documentation did not explicitely say that all rules
 files absolutely need to be makefiles, but we warped it to mean that
 later.

I do not think it is relevant what the original intent was, or
 how it got into the standard (I am toal there are hoary tales
 associated with tne C++ standard); the fact is that this has been
 accepted practice as long as there has been a rules file, and has
 been documented as being a Makefile for some time now.

Given the lack of a compelling technical reason to change,
 standards documents should not change.  And the technical policy is a
 standards document, as far as the project is concerned.

manoj
-- 
I don't think we should punish the criminal [a rapist] by killing his
child. Dr. John Wilke, President, National Right to Life Committee,
Search for Common Ground, taped for television 4/89, as quoted in
The Far Right, Speaking For Themselves, a Planned Parenthood
pamphlet
Manoj Srivastava   [EMAIL PROTECTED]  http://www.debian.org/%7Esrivasta/
1024R/C7261095 print CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Re: Bug#88029: Package which uses jam (instead make)

2003-10-21 Thread Manoj Srivastava
On Tue, 21 Oct 2003 14:26:45 -0500, Branden Robinson [EMAIL PROTECTED] said: 

 On Mon, Oct 20, 2003 at 12:35:04AM +0200, Josip Rodin wrote:
 On Sun, Oct 19, 2003 at 03:58:19PM -0500, Steve Greenland wrote:
  I've yet to see a technical argument for allowing debian/rules to
  be a non-makefile.

 I've yet to see a technical argument for disallowing debian/rules
 from being a non-makefile.

 (itinerant policy-editor hat on)

 Me neither.

I have made a few (including ./debian/rules in an superset
 debugging makefile, passing variables in MAKEFLAGS, using -j, -n, -p
 and other make arguments to arrive at similar invocations, using
 VPATH's et all to temporarily change include paths).

In the case of a standard, however, Why not is not an
 adequate reason for change.


Demonstrate a use case that can't be solved using Makefiles,
 and we'll see about changing the published interface.

manoj
-- 
You will be dead within a year.
Manoj Srivastava   [EMAIL PROTECTED]  http://www.debian.org/%7Esrivasta/
1024R/C7261095 print CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Re: Package which uses jam (instead make)

2003-10-21 Thread Josip Rodin
On Tue, Oct 21, 2003 at 05:03:53PM -0500, Manoj Srivastava wrote:
  If you do not stick to the documented interfaces, you lose the
  ability in my eyes to express outrage when the interfaces you use
  change.
 
  Except one important difference -- in this case, NOTHING CHANGES in
  the interface if the policy proposal is accepted.
 
   We just disallow some usage that has been explicitley stated
  to work.

No. How did you come to that conclusion?

This is another time you're giving the impression of don't take away my
makefile rules files!. Well, maybe there's some Grinch out there who wants
to steal them away from you, but I assure you that my intentions are not to
do that. :)

-- 
 2. That which causes joy or happiness.



Re: Bug#88029: Package which uses jam (instead make)

2003-10-21 Thread Josip Rodin
On Tue, Oct 21, 2003 at 05:13:14PM -0500, Manoj Srivastava wrote:
   I have made a few (including ./debian/rules in an superset
  debugging makefile, passing variables in MAKEFLAGS, using -j, -n, -p
  and other make arguments to arrive at similar invocations, using
  VPATH's et all to temporarily change include paths).

None of them are relevant to policy, though. Or at least not any more
relevant than any other feature of other interpreters that you dismissed
under the why not category...

-- 
 2. That which causes joy or happiness.



Re: Package which uses jam (instead make)

2003-10-21 Thread Josip Rodin
On Tue, Oct 21, 2003 at 05:01:21PM -0500, Manoj Srivastava wrote:
  the fact is that this has been accepted practice as long as there has
  been a rules file, and has been documented as being a Makefile for some
  time now.
 
   Given the lack of a compelling technical reason to change,
  standards documents should not change.

Saw that one coming a mile away.

(End of [EMAIL PROTECTED])

-- 
 2. That which causes joy or happiness.



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Bill Allombert
On Sun, Oct 19, 2003 at 11:20:33AM +0200, Josip Rodin wrote:
 this-and-that function of Make (so far I remember only two of those, when
 the DEB_BUILD_OPTIONS env. variable was added and when testing for existence
 of build-arch was added).

... which was a fiasco. Doogie finally implemented the proposal and revert it

dpkg (1.10.15) unstable; urgency=low

  * Back out debian/rules build-arch detection.  It is *not* possible *at
all* to detect available targets in a rules file.  Period.

 -- Adam Heath [EMAIL PROTECTED]  Fri, 19 Sep 2003 20:02:19 -0500

The rationale are not available to me, but I trust him since he really
tried.

At this point I see only two alternative:
1) use dependencies
build: build-arch
binary-indep: build-indep

This is not good to run build-indep as root, but only the maintainer
run binary-indep, and there is no need to change dpkg-buildpackage.

2) Set a make variable BUILD  and do
ifdef BUILD
build: $(BUILD)
else
build: build-arch build-indep
endif

This require dpkg-buildpackage to call debian/rules with
BUILD=build-arch or BUILD=build-indep accordingly.

Of course, variants using environment variables exist.

Cheers,
-- 
Bill. [EMAIL PROTECTED]

Imagine a large red swirl here. 



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Josip Rodin
On Sun, Oct 19, 2003 at 12:18:51PM +0200, Bill Allombert wrote:
  this-and-that function of Make (so far I remember only two of those, when
  the DEB_BUILD_OPTIONS env. variable was added and when testing for existence
  of build-arch was added).
 
 ... which was a fiasco. Doogie finally implemented the proposal and revert it
 
 dpkg (1.10.15) unstable; urgency=low
 
   * Back out debian/rules build-arch detection.  It is *not* possible *at
 all* to detect available targets in a rules file.  Period.
 
  -- Adam Heath [EMAIL PROTECTED]  Fri, 19 Sep 2003 20:02:19 -0500
 
 The rationale are not available to me, but I trust him since he really
 tried.

I'd be interested to see doogie's rationale, but it's amusing enough as it
stands, because the policy still says:

  If one or both of the targets `build-arch' and `build-indep' are
  not provided, then invoking `debian/rules' with one of the
  not-provided targets as arguments should produce a exit status
  code of 2.  Usually this is provided automatically by make if the
  target is missing.

...thereby, in its trend of hinting at Make-specific stuff, going against
the judgement of not one but two dpkg maintainers.

-- 
 2. That which causes joy or happiness.



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Bill Allombert
On Sun, Oct 19, 2003 at 01:20:26PM +0200, Josip Rodin wrote:
 I'd be interested to see doogie's rationale, but it's amusing enough as it
 stands, because the policy still says:
 
   If one or both of the targets `build-arch' and `build-indep' are
   not provided, then invoking `debian/rules' with one of the
   not-provided targets as arguments should produce a exit status
   code of 2.  Usually this is provided automatically by make if the
   target is missing.

I believe something among the line of 
Not-provided targets as arguments should produce a exit status code of 2,
but the converse is not true, therefore we cannot discriminate between
unprovided targets and targets that lead to an error condition.

Independently of the `Manoj vs Wichert' match, I would be interested at
fixing the build-arch issue at last.

Cheers,
-- 
Bill. [EMAIL PROTECTED]

Imagine a large red swirl here. 



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Steve Greenland
On 19-Oct-03, 04:20 (CDT), Josip Rodin [EMAIL PROTECTED] wrote: 
 But it's a historic injustice,

Help! Help! I'm being repressed! 

The Man is keeping me down!

Up with perl, down with make!

Power to the people!



Steve

-- 
Steve Greenland
The irony is that Bill Gates claims to be making a stable operating
system and Linus Torvalds claims to be trying to take over the
world.   -- seen on the net



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Josip Rodin
On Sun, Oct 19, 2003 at 11:50:41AM -0500, Steve Greenland wrote:
  But it's a historic injustice,
 
 Help! Help! I'm being repressed! 
 The Man is keeping me down!
 Up with perl, down with make!
 Power to the people!

We share an enthusiasm for overloaded phrases, I see :)
but a small verbal blunder doesn't invalidate the issue at hand.

-- 
 2. That which causes joy or happiness.



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Steve Greenland
On 19-Oct-03, 13:03 (CDT), Josip Rodin [EMAIL PROTECTED] wrote: 
 On Sun, Oct 19, 2003 at 11:50:41AM -0500, Steve Greenland wrote:
   But it's a historic injustice,
  
  Help! Help! I'm being repressed! 
  The Man is keeping me down!
  Up with perl, down with make!
  Power to the people!
 
 We share an enthusiasm for overloaded phrases, I see :)
 but a small verbal blunder doesn't invalidate the issue at hand.

No, it doesn't, but it doesn't validate it either. I've yet to see a
technical argument for allowing debian/rules to be a non-makefile. If you 
really want to write the script in a different format, it's trivial
to meet the letter of Policy:

#!/usr/bin/make -f

% :
debian/my_rules.py $@


That I've never seen such done (in my admittedly limited and random
selection of packages to build by hand at various times) suggests that
there's not much practical demand. Whenever it's come up, it seems to be
someone trying to prove a point, rather than a technical need.

Perhaps those who think alternative debian/rules should be allowed
should implement the above, and see what breaks and what complaints it
generates.

Steve
-- 
Steve Greenland
The irony is that Bill Gates claims to be making a stable operating
system and Linus Torvalds claims to be trying to take over the
world.   -- seen on the net



Re: Bug#88029: Package which uses jam (instead make)

2003-10-19 Thread Josip Rodin
On Sun, Oct 19, 2003 at 03:58:19PM -0500, Steve Greenland wrote:
 I've yet to see a technical argument for allowing debian/rules to be a
 non-makefile.

I've yet to see a technical argument for disallowing debian/rules from being
a non-makefile.

See, those two statements make the same amount of sense. Anyone can throw in
gobs of make features that are handy, and also gobs of other interpreters'
features that are handy as well. That doesn't make any one of them technical
arguments for either.

 If you really want to write the script in a different format, it's trivial
 to meet the letter of Policy:

And it's also trivial to change the letter of Policy, too.

Contrary to what some may have said, replacing the crude must rule will
not cause anything to happen other than fixing a spurious requirement that
exists in the documentation only.

No, new maintainers won't suddenly start shipping precompiled a.out
debian/rules files. They probably won't start using vertical Perl either.
In fact the most likely result is that not one thing will change, except
that a tiny fraction of packages will no longer be in violation of policy.

 That I've never seen such done (in my admittedly limited and random
 selection of packages to build by hand at various times) suggests that
 there's not much practical demand. Whenever it's come up, it seems to be
 someone trying to prove a point, rather than a technical need.

I have had packages the rules file of which is not a makefile for years now.
You didn't notice them, did you? That's probably because they (*gasp*!) work.
And none of those purported NMUers ever complained about them either.
Arguably that's because of other favourable circumstances, but nevertheless.

The interface to the rules file is defined well enough, there's absolutely
nothing wrong with having other things than /usr/bin/make abide by the same
rules.

-- 
 2. That which causes joy or happiness.



Bug#88029: Package which uses jam (instead make)

2003-10-18 Thread Manoj Srivastava
On Sat, 18 Oct 2003 15:02:10 +0200, Josip Rodin [EMAIL PROTECTED] said: 

 88029

yeah well. That is not all the dfiscussion there was on it. In
 March 2001, we had more than those comments on it:

==

If people really think that calling scripts from Makefiles is
 hard, should they really be maintaining Debian packages? 

So far, the arguments I have heard for removing this
 restrictions have been
  a) This new mechanism is so cool
  b) Makefiles can be really hard to write!!
  c) Why not?

I guess my objection to this reduction of standardization is
 that there should be some inertia in policy, and that we need to see
 some stronger technical reasons to break the following practices:

  i) make -n -p -f ./debian/rules
 ii) in ./makefile:  include ./debian/rules
 change targets and or rules, and spit out some things set in
 ./debian/rules (I actually did this for debugging a rules file)

Yes, pretty arcane; but I contend that this argument is no
 weaker than any I have seen in support of this proposal.
   
 Wichert I'll make this a proposal then:

 Wichert   As such I propose that the statement that debian/rules has be to a
 Wichert   makefile be removed.

I think I must object to this, on the grounds that we are now
 changing an published interface to the package building process.
 Indeed, I have used makefiles that include ./debian/rules and derive
 targets and tweak the make rules in the debian/rules process
 (security related experiments), and I would strongly object to the
 mechanisms being yanked out from under me.
==

I still think that what we have now is a long established
 interface to the build system; saying that the ./debian/rules file is
 a Makefile is a short hand for describing an extended version of the
 interface defined in Section 6: Software development Utilities Option
 of ISO/IEC 9945-2, ANSI/IEEE Std 1003.2, Infornation technology -
 Portable Operating System Interface (POSIX) -- Part 2: Sheel and
 Utilities. Specifically, section 6.2 make -- Maintain, update, and
 regenrate groups of programs. The extentions include GNU Make
 extrenstions, and requirements for certain targets to exist.

A tacit part of the interface are how debugging works, how
 paths can be added to the build environment, how variables are set up
 and modified. 

Pretending that this is not an interface that we have now
 depended upon for years is hiding from the facts

manoj

-- 
What is wanted is not the will to believe, but the will to find out,
which is the exact opposite. Bertrand Russell, _Sceptical_Essays_,
1928
Manoj Srivastava   [EMAIL PROTECTED]  http://www.debian.org/%7Esrivasta/
1024R/C7261095 print CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C