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

Re: Can debian/rules build target use precompiled object code in favor of building from source?



Thue Janus Kristensen <thuejk@gmail.com> writes:

> Now in the context of the smarty3 Debian source package, I would like to
> know where in the policy manual it says that the debian/rules build
> target should actually compile from source in favor of shipping
> precompiled object code. However, the Debian policy manual doesn't
> actually seem to say that
> anywhere. https://www.debian.org/doc/debian-policy/ch-source.html would
> seem like the obvious place to say so.

> Am I blind, or is it perfectly OK for a Debian source package to ship and
> install object code, even when the source is available?

This is something for which we don't have something explicit in Policy,
but we do have rules in Debian.  Unfortunately, not everything that you
have to do to have a valid Debian package is described in Policy.

In this case, the rule as it's actually enforced is not completely clear
(at least to me), but roughly, it should be *possible* to rebuild the
package from its original source, but it's not required to do this on
every binary package build.  However, a lot of folks in Debian feel like
we should be moving towards doing this with every binary build, so I would
expect increasing resistence against not doing so.

But there are many packages in Debian right now that use the results of
bison or flex instead of running bison or flex during the build, and this
has traditionally been accepted.  Your PHP example seems to be equivalent,
so I would expect it to be accepted as well, albeit with some resistence
as mentioned above, provided that generating the PHP code from the
original source is still *possible*.

In contrast, using binary *.o files instead of running the compiler has
*not* been accepted.  I think this has more to do with practical issues
around the likelihood of creating bugs than any specific principle of
philosophical consistency.

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>


Reply to: