Age | Commit message (Collapse) | Author | Files | Lines |
|
To avoid re-breaking packages that were already broken a first time by
dpkg-buildpackage unconditionally setting the environment, and unbroke it
by unsetting variables in the rules file. (Example: numpy)
|
|
If a rules file has a custom install or binary target, those targets
still need to explicitly depend on the build target. Unless dh is used
in such a target (which it probably is of course).
It's not possible to avoid the need for those dependencies. A rules file
with a hand-written binary target simply does not run dh, so dh can
do nothing to help it run the build target.
Reword the docs to not give the wrong impression that dh somehow
magically makes that work.
|
|
|
|
dh_pysupport has started emitting a deprecation warning, which is
very annoying since it clutters every build that uses dh -- even builds
where it doesn't do anything. Since there is not just a dh_python2, but
also a dh_python3 waiting in the wings, this is clearly too volatile
a situation for dh to try to support further.
I considered making dh_python detect and run the right dh_python[23] helper
-- a python helper helper as it were -- but 70-odd packages still use that
command.
|
|
|
|
|
|
|
|
Conflicts:
dh
|
|
* dh_auto_build, dh_auto_configure, dh: Set environment variables
listed by dpkg-buildflags --export. Any environment variables that
are already set to other values will not be changed.
Closes: #544844
* Also, support DEB_BUILD_OPTIONS=noopt, by changing -O2 to -O0.
|
|
Conflicts:
debhelper.pod
debian/changelog
|
|
--libexecdir when using autoconf. Closes: #541458
Fixed rleigh's patch to be more correct in the edge case where there is
a non-multiarch dpkg (ie, backports).
|
|
|
|
|
|
Note to backporters: If you remove that dependency, debhelper will fall
back to not doing multiarch stuff in v9 mode, which is probably what you
want.
|
|
|
|
|
|
As advised in man(1), always use: B<bold text> type exactly as shown.
I<italic text> replace with appropriate argument.
s/debian/Debian/ if needed. s/ / / also.
s/perl/Perl/ s/python/Python/ and s/emacs/Emacs/ too.
|
|
|
|
#578805
|
|
|
|
|
|
This avoids ambiguities when parsing options to be passed on to debhelper
commands. (See #570039)
In the end, the idea of putting the debhelper command options after --
seemed to need too much knowledge about whether an option like
--buildsystem is a dh option or a command option.
I did consider making no change.. The ambiguities this eliminates are
small. But it seemed worth simplifying dh's option parser, and only about
1/6th of calls to dh in the archive don't put the sequence first already.
(Docs have shown that as the right thing to do for some time.)
|
|
it generates shlibs files for. This means that -X can be used to exclude libraries from processing by dpkg-gensymbols. It also means that libraries in unusual locations, where dpkg-gensymbols does not itself normally look will be passed to it, a behavior change which may break some packages. Closes: #557603
|
|
commands. (Unknown options in DH_OPTIONS still only result in warnings.)
|
|
dpkg supports the field now, so no XC- needed
|
|
* Add -O option, which can be used to pass options to commands, ignoring
options that they do not support.
* dh: Use -O to pass user-specified options to the commands it runs.
This solves the problem with passing "-Bbuild" to dh, where commands
that do not support -B would see a bogus -u option. Closes: #541773
(It also ensures that the commands dh prints out can really be run.)
|
|
|
|
This patch adds --parallel option that enables parallel builds and does not
impose limits on maximum concurrent processes. --max-parallel (that implies
--parallel) can be used to specify that maximum limit.
Also make necessary adjustments to debhelper.pod and buildsystem_tests for
this option.
|
|
enabled by using the --max-parallel option. This was necessary because some buildds build with -j2 by default.
|
|
#548382
|
|
|
|
I renamed --parallel to --max-parallel to clarify that it doesn't enable
parallelism, but only controls how much of it is allowed.
|
|
|
|
|
|
1) Add routine to Dh_Lib (used by dh and makefile.pm) which is capable of
detecting make jobserver and job control options from the MAKEFLAGS environment
variable. It also generates and returns a clean up MAKEFLAGS from these
options.
2) Add --parallel option to build system framework which allows source packages
to specify that they support parallel building. Optional value for this option is
the number of maximum parallel process to allow. However, the actual number of
parallel process (if any) for the specific build is determined from
DEB_BUILD_OPTIONS env variable as specified by Debian Policy.
By default (no --parallel option) parallel is neither enabled nor disabled
(depends on the external environment). However, dh may pass --parallel to
dh_auto_* implicitly in case 4) described below.
3) Add parallel support for makefile buildsystem. This implementation
forcefully starts a new make job server (or disables parallel) for the number
of process requested. If --parallel was not passed to the build system at all,
the build system will only clean up MAKEFLAGS from stale jobserver options to
avoid pointless make warnings.
4) If dh detects that it is being run by dpkg-buildpackage -jX and it is NOT
run with "+" prefix from debian/rules (i.e. jobserver is not reachable), it
enables --parallel implicitly. This closes: #532805.
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
|
|
directories. This is easier to use and more flexible than the old method of running dh_link first to make a broken symlink. Closes: #545676 Thanks, Colin Watson
|
|
The -a flag now does the same thing as the -s flag, so debhelper users do
not need to worry about using the -s flag when building a package that only
builds for some architectures, and dh will also work in that situation.
Closes: #540794
|
|
I'm unsure why we need this complication. Perl modules are allowed to
install man pages documenting the module, if it really needs documentation.
This reverts commit 49b64c7852744f54250121b1c60544e1f5de70b6.
|
|
|
|
This mostly reverts commit f897611a77726655aea258af0c4d52a8ce759ebc.
Remaining cosmetic changes (all functional changes have been reverted):
* Refactoring of option string into split_options_string() sub (no semantic
changes though).
* Cosmetic change in Dh_Buildsystems.pm.
Breaks testsuite.
|
|
* DH_AUTO_OPTIONS is like existing DH_OPTIONS, just only for dh_auto
stuff. This also avoids "explosion" of separate DH_AUTO_* environment
variables (i.e. exports in debian/rules) and encourages usage of dh_auto
command line option names. DH_AUTO_OPTIONS is passed via "extra_args" to
Dh_Lib::init() (API addition).
* When splitting options from DH_OPTIONS and its flavours, allow arguments
to include whitespaces if they are escaped with backslash (\) (see
split_options_string()). Document this in debhelper.pod.
* Short option for --buildsystem is -c (aka class).
* Provide API to cancel option specs from default debhelper options.
It will be used in the feature.
|
|
|
|
support. Closes: #494914 (Thanks, Aurelien Jarno)
|
|
Add a global --remaining-packages option which allows to skip the command on
the packages which it has already been run on (i.e. if the command helper is
already present in the package debhelper log).
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
|
|
|
|
|
|
options, even when unknown command-line options are converted back to an error. This allows (ab)using DH_OPTIONS to pass command-specific options. (Note that getopt will warn about such unknown options. Eliminating this warning without reimplementing much of Getopt::Long wasn't practical.)
|
|
|
|
* Correct docs about dh_install and debian/tmp in v7 mode. It first looks in
the current directory, or whatever is configured with --srcdir. Then it
always falls back to looking in debian/tmp.
* Medium urgency to get this doc fix into testing.
|
|
|