path: root/Debian/Debhelper
Commit message (Collapse)AuthorAge
* Memoize architecture comparisons in samearch, and avoid calling ↵Joey Hess2010-04-26
| | | | dpkg-architecture at all for simple comparisons not involving architecture wildcards. Closes:# 579317
* Fix #572077 in one place I missed earlier. (See #576885)Joey Hess2010-04-08
* fix commentJoey Hess2010-04-08
* minor optimisationJoey Hess2010-03-01
* If neither -a or -i are specified, debhelper commands used to default to ↵Joey Hess2010-03-01
| | | | acting on all packages in the control file, which was a guaranteed failure if the control file listed packages that did not build for the target architecture. After recent optimisations, this default behavior can efficiently be changed to the more sane default of acting on only packages that can be built for the current architecture. This change is mostly useful when using minimal rules files with dh. Closes: #572077
* makefile buildsystem: Chomp output during test for full compatability with ↵Joey Hess2010-02-19
| | | | | | | | | | | | | | debhelper 7.4.11. Closes: #570503 Previously the test used make -s -n | head -n 1 and then chomped the output. In the case of this bug, root-system's Makefile *always* outputs something to stdout, even for targets that don't exist, before configure is run. It accidentially worked before, since the first line it outputs happens to be empty. So bring back the chomp to retain compatability with this package that used to work before, but the test only does the right thing for this package due to sheer luck, really.
* The fix for #563557 caused some new trouble involving makefile that ↵Joey Hess2010-02-18
| | | | misbehave when stderr is closed. Reopen it to /dev/null when testing for the existance of a makefile target. Closes: #570443
* dh: Disable option bundling to avoid mis-parsing bundled options such as ↵Joey Hess2010-02-16
| | | | "-Bpython-support". Closes: #570039
* Fix handling of -O with options specified by commands. Closes: #568081Joey Hess2010-02-02
* Fix typo in call to abs2rel in --builddir sanitize code. Closes: #567737Joey Hess2010-01-30
* update from KelJoey Hess2010-01-28
| | | | | | Here is yet another revision which sets the PREFIX variable to '/usr' which seems commonly used by Qt projects. Also removed the -e test discussed previously.
* add qmake to build systems listJoey Hess2010-01-27
| | | | (at the end naturally)
* qmake: New buildsystem contributed by Kel Modderman. Closes: #566840Joey Hess2010-01-27
* bring back ignore_unknown_optionsJoey Hess2010-01-06
| | | | Missed that dh still uses it.
* fix bad interaction between -O and ignore_unknown_optionsJoey Hess2010-01-06
| | | | | | Actually, since ignore_unknown_options is only used with DH_INTERNAL_OPTIONS, which always uses -O for such options, I was able to remove that complication too.
* don't call getopt recursivelyJoey Hess2010-01-04
| | | | That messes with the return value of the outer call.
* solve the dh -Bbuild problemJoey Hess2010-01-04
| | | | | | | | | * 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.)
* Fix warning about unknown options passed to commands in override targets.Joey Hess2010-01-04
| | | | | | | | | dh used DH_OVERRIDE_UNKNOWN_OPTIONS, which was too broad as it affected commands run via override targets and caused there to be no warning about unknown options. Now unknown options are only ignored when parsing DH_INTERNAL_OPTIONS and dh's own options.
* makefile: Support the (asking for trouble) case of MAKE being set to ↵Joey Hess2010-01-03
| | | | something with a space in it. Closes: #563557
* Add --parallel option.Modestas Vainius2009-12-04
| | | | | | | | | 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.
* In my opinion, this way of putting it is more obvious.Modestas Vainius2009-12-04
| | | | | $max is about upper limit. Make algorithm reflect that. (cherry picked from commit 62d7dc07b97a12912cfe08483c6fb244161224f5)
* Excess whitespace. Git complains about it.Modestas Vainius2009-12-04
| | | | (cherry picked from commit 11b0b2483302f8694d8c6a76c73df1eefca7ad1f)
* Parallel building support is no longer enabled by default. It can still be ↵Joey Hess2009-11-23
| | | | enabled by using the --max-parallel option. This was necessary because some buildds build with -j2 by default.
* make: Avoid infinite loop that occurrs when testing existence of a target in ↵Joey Hess2009-11-21
| | | | | | | a certian horribly broken makefile by making the test stop after it sees one line of output from make. (This may be better replaced with dh's makefile parser in the future.)
* Fix deep recursive in cmake::test().Modestas Vainius2009-11-21
* use foreach instead of for when looping thru arrayJoey Hess2009-11-19
* cmake build+ steps need Makefile.Modestas Vainius2009-11-19
| | | | | | The condition is not what dh_auto_* 7.0.x would have done. The patch makes auto-selection to pass through if Makefile was not created. This problem is not very dangerous though.
* Make buildsystems_list() use updated auto-selection code.Modestas Vainius2009-11-19
| | | | | | In order to avoid code duplication, auto-selection code has been refactored into separate subroutine autoselect_buildsystem(). Both load_buildsystem() and buildsystem_list() use it.
* Fix build system auto-selection breakage.Cyril Brulebois2009-11-19
| | | | | | | | Probably due to an overlook in 758ce0bb1f, the '-e' test on build.xml disappeared, leading check_auto_buildable() to always return '1' for the ant build system. Signed-off-by: Cyril Brulebois <>
* comment mungingJoey Hess2009-11-18
* Improve build system auto-selection processModestas Vainius2009-11-18
| | | | | | | | | | | | | | | This patch alters semantics of check_auto_buildable() a bit. Now it can also indicate if the source has already been partitially built with the build system and if so, such build system may be auto-selected over a less specific its parent (in the inheritance tree) even if the latter is earlier in the @BUILDSYSTEMS array. However, this still leaves a requirement that a derivative build system must not do anything that may break packages of the parent build system. Otherwise, introduction of a new derivative build system might break packages which already had that build system implemented via overrides... Signed-off-by: Modestas Vainius <>
* cute tail display of config.log, to include a headerJoey Hess2009-11-16
* autoconf: If configure fails, cat config.log. Intended to make it easier to ↵Joey Hess2009-11-16
| | | | debug configure script failures on autobuilders. Closes: #556384
* make error() throw a catchable error with dieJoey Hess2009-11-16
| | | | | exit cannot be caught with eval.. I used exit before because I thought it was cute for erorr() to call warning(). Silly.
* Enable verbose ctest output on test failureModestas Vainius2009-11-16
| | | | | | | | | | | | When test fails, enable verbose ctest output. This allows to get more details on a test failure from the build logs. Auto-select cmake in further steps only if cmake was run in configure step. CMake writes CMakeCache.txt to build directory when it is run. Depend on the presence of this file for auto-selection in build, test, install and clean steps. Signed-off-by: Modestas Vainius <>
* Enable verbose ctest output on test failureModestas Vainius2009-11-12
| | | | | | | When test fails, enable verbose ctest output. This allows to get more details on a test failure from the build logs. Signed-off-by: Modestas Vainius <>
* Adjust code to add deprecation warning for compatability level 4. (Man page ↵Joey Hess2009-11-12
| | | | already said it was deprecated.) Closes: #555899
* --max-parallel requires a numberJoey Hess2009-11-04
* support unlimited parallel jobsJoey Hess2009-10-29
| | | | | | | | dpkg-buildpackage -j sets DEB_BUILD_OPTIONS=parallel=-1. Policy does not cover this but the intent is to allow unlimited parallel jobs. Also, there is no longer any way for parallel to be set to undef, so remove code to handle that.
* logic errorJoey Hess2009-10-29
* implement the other option: parallel enabled implicitly by DEB_BUILD_OPTIONSJoey Hess2009-10-29
| | | | | I renamed --parallel to --max-parallel to clarify that it doesn't enable parallelism, but only controls how much of it is allowed.
* refactor --parallel processingJoey Hess2009-10-28
| | | | Use a function to set the value rather than post-processing.
* reduce amount of MAKEFLAGS cleaningJoey Hess2009-10-28
| | | | | | | | | | | Now clean_jobserver_makeflags will only remove --jobserver settings from MAKEFLAGS. This is simpler and easier to understand than the old behavior, which, if there was no --jobserver, removed all -j and --jobs, while leaving those when removing --jobserver. This relies on -j options passed to make overriding -j settings in MAKEFLAGS. So we don't need to clean those out, we can just override them.
* split get_make_jobserver_status into two functionsJoey Hess2009-10-28
| | | | | | | | | | | I disliked the complexity of the return values, and the boilerplate code that followed the two calls to the function, to clean/unset MAKEFLAGS. To solve both, I refactored it into two functions, one simply tests to see if a jobserver is specified but unavailable, while the other cleans/unsets MAKEFLAGS. This loses the ability to pull the jobs-N count out of MAKEFLAGS, but that was not currently used.
* move obscure function to EOFJoey Hess2009-10-28
* Support parallel building in makefile buildsystemModestas Vainius2009-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Add routine to Dh_Lib (used by dh and 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 <>
* consistently print whole failing command lineJoey Hess2009-10-19
* invert python orderingJoey Hess2009-10-01
| | | | --force allows doing so
* indentationJoey Hess2009-10-01
* Pass --force option to Python distutils install command.Andrew Straw2009-10-01
| | | | | | This command will prevent distutils from attempting to determine whether a file should be installed based on the timestamp of the to-be-overwritten file.