[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: flow of things rules/debhelper (still confused)


On Wed, Apr 07, 2010 at 04:19:33PM +0200, jmroth+deb@iip.lu wrote:
> Guys,
> I am still confused about my initial question when which binary-*
> target in debian/rules is called.
> This also concerns:
> - http://www.debian.org/doc/maint-guide/ch-dreq.en.html#s-rules
> - http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules
> which seem to be out of sync. The policy e.g. still refers to the
> patch target whereas in the NMG it is not mentioned. Maybe one should
> remove that section from NMG altogether and just leave the reference
> to the policy manual (it had better be in one place only and should be
> up-to-date).
I do not know which part made you think so. Currently on web and SVN:

    * clean target: to clean all compiled, generated, and useless files in the
      build-tree. (required)

    * build target: to build the source into compiled programs and formatted
      documents in the build-tree. (required)

    * binary target: to create all binary packages (effectively combination of
      binary-arch and binary-indep targets). (required)[12]

    * binary-arch target: to create arch-dependent (Architecture: any) binary
      packages in the parent directory. (required)[13]

    * binary-indep target: to create arch-independent (Architecture: all)
      binary packages in the parent directory. (required)[14]

    * get-orig-source target: to obtain the most recent version of the original
      source package from upstream archive site. (optional)

    * install target: to install files into a file tree for each binary package
      under the debian directory. If defined, binary* targets effectively
      depend on this target. (optional)

I see one problem here.  The order is not optimal.  I will move up install to
remove confusion.

> <sidenote>
> <pedantic>
> While reading the NMG I see
> "build: ... pre-build configuration"
??? I do not see it.
> "binary: ... all that is necessary for the user to build the binary
> package(s) ..."
> When I translate this to the usual things to be done for getting a
> software installed, we have
> build   <-> ./configure

OOps.  let me spell out for you.

./configure and make

install <-> make install

binary  <-> roling into *.deb etc.

I think following text to 4.4.2's later half shoul have made it clear.

> Why not give this as an example?
> Talking about "building" everywhere and not showing what this means
> just confuses the beginner. (Or maybe I'm looking at the wrong
> documentations.)
> </pedantic>
> </sidenote>
> But back to topic: my main motivation here is to find out about the
> binary, binary-arch, binary-indep targets, when they are called, and
> where this is documented.
binary is documented in:

binary-arch will be mentioned soon.

I do not know active use of binary-indep by itself.  Anyone knows?

(I know some makefile has binary: binary-indep binary-arch.)


Reply to: