summaryrefslogtreecommitdiff
path: root/t
AgeCommit message (Collapse)AuthorFilesLines
2009-11-18Improve build system auto-selection processModestas Vainius1-21/+34
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 <modestas@vainius.eu>
2009-11-04--max-parallel requires a numberJoey Hess1-5/+1
2009-10-29update test suite for implicit parallelisation and flag renameJoey Hess1-27/+25
2009-10-28reduce amount of MAKEFLAGS cleaningJoey Hess1-13/+13
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.
2009-10-28split get_make_jobserver_status into two functionsJoey Hess1-18/+26
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.
2009-10-28Support parallel building in makefile buildsystemModestas Vainius2-8/+288
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>
2009-10-11two more dh_install testsJoey Hess1-1/+13
2009-07-25Fix t/override_target to use ./run. Closes: #5383157.3.8Joey Hess1-1/+1
2009-07-24Merge branch 'buildsystems'Joey Hess6-1/+556
2009-07-17add test of dh's makefile parsingJoey Hess1-0/+22
2009-07-15more testsJoey Hess1-1/+29
2009-07-15Merge branch 'master' into buildsystems7.3.4Joey Hess1-0/+48
Conflicts: debian/changelog
2009-07-15dh_install: Add test suite covering the last 5 bugs.7.2.24Joey Hess1-0/+48
2009-07-14test suite should not need modification to add a new build systemJoey Hess1-3/+3
2009-06-29remove enforce_out_of_source_buildingJoey Hess1-7/+1
It was only used by the test suite, and while symetrical I don't feel that justifies keeping dead code.
2009-06-30More verbose rmdir_builddir() and more its testsModestas Vainius1-2/+32
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-30Support absolute paths for builddir.Modestas Vainius1-9/+14
If build directory is absolute or ../ path, _rel2rel falls back to absolute paths. Try even harder to convert supplied builddir to relative in _set_builddir(). Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-30Add absolute path test for canonpath.Modestas Vainius1-1/+3
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-30Rename _canonpath to canonpath.Modestas Vainius1-7/+7
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-30Rename enforce_out_of_source_building() to prefer_Modestas Vainius1-1/+1
Also add enforce_out_of_source_building() for clarity which does not take any parameters. Now both have a clear name and no confusing parameter combinations. Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-18Less code in the build system classes to call enforce_out_of_source_building().Modestas Vainius1-2/+2
Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-17Some cosmetic changes in the comments and strings.Modestas Vainius1-2/+2
* buildsystem -> build system * dh_auto build system -> debhelper build system * plugin -> class * a few rewording changes in the comments. * Enhance python_distutils::DESCRIPTION().
2009-06-13New short switches for buildsystem stuff, drop envvarsModestas Vainius1-8/+8
* New short switches: -D = --sourcedirectory -B = --builddirectory -S = --buildsystem * Drop DH_AUTO_BUILD* environment variables (reintroduced due to revert). * Adjust test suite. Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-13Use another root directory in _rel2rel.Modestas Vainius1-1/+4
Previous one caused test "_rel2rel no4" to fail. Also add a new test for _canonpath and two new tests for _rel2rel (related to "." handling). Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-13Drop special handling for build directory ./path.Modestas Vainius1-20/+21
Now build directory is always relative to the top directory (including default build directory) regardless what source directory is. However, if the build directory is not specified, it defaults to the source directory (aka in source building). Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-11Add a test suite for build systems.Modestas Vainius5-0/+520
* Tests for core Buildsystem API (mostly path API). * Tests for check_auto_configure() for each buildsystem. * Build system autoselection tests under "typical" conditions for each buildsystem. * DH_AUTO_OPTIONS and command line argument parsing tests. * Real dh_auto_* tests for autoconf/makefile build systems with emulated. autoconf behaviour under in both in source and out of source tree scenarios. Signed-off-by: Modestas Vainius <modestas@vainius.eu>
2009-06-11Include Debian/Debhelper subdirs in syntax check.Modestas Vainius1-1/+1
2008-10-21include dh in syntax checkJoey Hess1-1/+1
2008-04-24Add a test for pod correctness.Florian Ragwitz1-0/+10
2008-04-01dh_installman: man --recode transparently uncompresses compressed pages. So ↵6.0.11Joey Hess1-1/+1
when saving the output back, save it to a non-compressed filename (and delete the original, compressed file). Closes: #470913
2007-08-18r2020: * dh_link: Skip self-links. Closes: #438572joeyh1-1/+5
2006-10-01r1941: * ACK last three NMUs with thanks to Raphael Hertzog for making the ↵joeyh1-4/+6
best of a difficult situation. * Revert all dh_python changes. Closes: #381389, #378604 * Conflict with python-support << 0.5.3 and python-central << 0.5.5. * Make dh_python do nothing if debian/pycompat is found. The new versions of dh_pysupport or dh_pycentral will take care of everything dh_python used to do in this situation. * dh_python is now deprecated. Closes: #358392, #253582, #189474 * Non-maintainer upload. * Update of dh_python - when buidling for a non-standard Python version, generate more reasonable Depends like "python (>= X.Y) | pythonX.Y" Closes: #375576 - fix handling of private extensions. Closes: #375948 - fix parsing of XS-Python-Version, it didn't work if only fixed versions were listed in XS-Python-Version. - fix use of unitialized value. Closes: #374776 - fix typos in POD documentation. Closes: #375936 * Non-maintainer upload. * Update of dh_python - vastly refactored, easier to understand, and the difference between old policy and new policy is easier to grasp - it supports an -X option which can be used to not scan some files - uses debian/pyversions as reference source of information for dependencies but also parse the XS-Python-Version header as fallback. - ${python:Versions}'s default value is XS-Python-Version's value instead of "all" when the package doesn't depend on a specific python version. Closes: #373853 - always generate ${python:Provides} and leave the responsibility to the maintainer to not use ${python:Provides} if he doesn't want the provides. - uses debian/pycompat or DH_PYCOMPAT as reference field to run in new policy mode. The presence of XS-Python-Version will also trigger the new policy mode (this is for short-term compatibility, it may be removed in the not too-distant future). DH_PYCOMPAT=1 is the default mode and is compatible to the old policy. DH_PYCOMPAT=2 is the new mode and is compatible with the new policy. * Use "grep ^Version:" instead of "grep Version:" on the output of dpkg-parsechangelog since the above changelog entry matched "Version:" and thus made the build fail. * Non-maintainer upload. * Integrate the new dh_python implementing the new Python policy. Closes: #370833
2006-07-29r1939: * Add size test, which fails on any debhelper program of more than 150joeyh1-0/+28
lines. This is not a joke, and 100 lines would be better.
2006-01-08r1843: * dh_link: add special case handling for paths to a directory ↵joeyh1-2/+13
containing the link. Closes: #346405 * dh_link: add special case handling for link to /
2005-11-09r1818: releasing version 5.0.55.0.5joey1-0/+1
2005-11-07r1811: * Remove dh_shlibs from binary-indep section of debian/rules.joey1-0/+11
* Add t/syntax to make sure all dh_* commands and the libraries syntax check ok.
2005-06-13r1762: * Add another test-case for dh_link.joey1-1/+3
* dh_python: Minimal fix from Joss for -V to make it search the right site-packages directories. Closes: #312661 *
2004-07-08r1695: * dh_gconf: gconf schemas moved to /usr/share/gconf/schemas. Relocatejoey1-4/+16
schemas from /etc/gconf/schemas. (Josselin Mouette) * dh_gconf: kill gconfd-2 so that the newly installed schemas are available straight away. (Josselin Mouette) * dh_gconf: fix bashism in restart of gconfd-2 * dh_gconf: fix innaccuracy in man page; gconfd-2 is HUPPed, not killed. * dh_scrollkeeper: stop adding scrollkeeper to misc:Depends, since the postinst will not run it if it's not installed, and a single run after it's installed is sufficient to find all documents. Closes: #256745 * dh_fixperms: make .ali files mode 444 to prevent recompilation by GNAT. For speed, only scan for .ali files in usr/lib/ada. Closes: #245211 * dh_python: check to make sure compileall.py is available before running it in the postinst. Closes: #253112 * dh_installmodules: install debian/package.modprobe into etc/modprobe.d/ for module-init-tools. These files can sometimes need to differ from the etc/modutils/ files. Closes: #204336, #234495 * dh_installmanpages is now deprecated. * Add a test case for bug #244157, and fixed the inverted ok() parameters in the others, and added a few new tests. * dh_link: applied GOTO Masanori's patch to fix conversion of existing relative symlinks between top level directories. Closes: #244157
2003-07-28r1086: * Several man pae typo fixes by Ruben Porras. Closes: #202819version_4.1.56joey1-3/+3
* Now in a subversion repository, some minor changes for that. * dh_link test should expect results in debian/debhelper, not debian/tmp.
1999-08-17r189: Initial revisionjoey1-0/+16