Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Extracted from the patch proposed in https://bugs.debian.org/934893.
Signed-off-by: Niels Thykier <niels@thykier.net>
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Previously, we relied on a command being inserted in the -arch
sequence to be ordered correctly. With this rewrite, a command added
only to the -indep sequence will still appear in the right order.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Commit [e5fc959e], resolving #462389 changed behaviour of `--name' option of
dh_installinit. Before this change, if `debian/{package}.{name}.init' is missing,
this option was silently ignored. This change made it error.
This change was incorrect, since it demanded presence of `debian/{package}.{name}.init'
file for /every/ binary package.
This commit instead throws error only if `debian/{package}.{name}.init' does
not exist for /all/ binary {package} names. Regression test is added.
Closes: #932073
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Previously, `dh_installinit' silently did nothing, when --name option
was passed, but initscript debian/<package>.<name>.init was not found.
In almost all cases, explicit --name means that package maintainer meant
to install init script. If it is not present, it is bug, and must not be
hidden. Now, error is reported in this case. (Closes: #462389)
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Add a new 'dh_installsystemduser' helper responsible for istalling
package maintainer supplied systemd user instance units and to produce
postinst and postrm maintiner scripts code blocks to appropriately
enable, mask and disable units when the package is installed,
upgraded, or removed.
|
|
The former calls /bin/pwd, while the latter uses the getcwd syscall
directly. This eliminates some forks and execs from every build.
|
|
Have dh_installinit use the new --skip-systemd-native parameter and
let dh_installsystemd always generate autoscript snippets for systemd
services.
This ensures that dh_installsystemd's snippet will be used for
starting the services and will among other ensure that services
are properly unmasked before started.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
|
|
|
|
Simplify and move to a function the code responsible to list all
installed units. It is much simpler to refer to unit files simply as
their file name without keeping track of their complete path as the
later can be readily computed because all unit files must be installed
into usr/lib/systemd/system.
This removes some confusion and highlight a bug where code blocks for
handling units installed at the wrong location would be emitted if
relative file paths were specified on the command line. Fix the tests
accordingly.
|
|
Extend the tests to verify that dh_installsystemd comand line
arguments handling works in the simplified form allowed by source
packages building only one binary package.
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
To avoid regressions in Buildsystem.pm and Dh_Lib.pm's ability to load
without (e.g.) d/control or d/compat being present.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Simulate gen-provides's enumeration of the supported compat levels in
the Test::DH module's non_deprecated_compat_levels() function.
Add the resetcompat() and resetpackages() testing aids to Dh_Lib.
Silence the "debhelper-compat is experimental" warning during testing.
Add the debhelper-compat/syntax.t test.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Several of the build systems consists of a configure step that
generates a buildscript for another build tool. Notable examples
being "cmake" and "meson", which even supports multiple backend tools.
This change makes it natively possible for debhelper to support such
build systems with multiple backends.
Note that only build systems with multiple backends have been
rewritten.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
It is not a super name, but "optimize" implies that dh will work if
you skip the call. By renaming it to unpack we avoid that implication.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Depends on e6870ceafb9d51800de86a7106cdfb4ce9c9dad8
Closes: Debian#885998, #885998
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
This is part 1 of 2 for solving Debian#814285 and Debian#885998
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
This is part of 2 of the dh sequence rewrite. Part 1
is cb2caa7f67837294b0681d881f52dd23df487f33.
This change ensures that dh no longer attempts to run a target that is
already marked as complete (e.g. via the stamp file).
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Rewrite the way we compute the sequences to ensure that:
1) Rules target remain opaque (particularly "subtargets" are now
also opaque).
2) Opaque targets are run first, so they can run their subtargets
before dh runs a command that depends on it.
This is the first half of fixing Debian#880840.
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Closes: Debian#884556
Closes: nthykier/debhelper#1
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|
|
Signed-off-by: Niels Thykier <niels@thykier.net>
|