summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* use liblzma-dev to provide xz/lzma supportDavid Kalnischkies2014-03-137-39/+271
| | | | | | | | | | | | We have xz/lzma support for a while, but only via an external binary provided by xz-utils. Now that the Debian archive provides xz by default and dpkg pre-depends on the library provided by liblzma-dev we can switch now to use this library as well to avoid requiring an external binary. For now the binary is in a prio:required package, but this might change in the future. API wise it is quiet similar to bz2 code expect that it doesn't provide file I/O methods, so we piece this together on our own.
* add a config option to switch uncompress methods to compressDavid Kalnischkies2014-03-131-9/+18
| | | | | | Not very useful in the normal operation of work, but handy for tests. Git-Dch: Ignore
* ensure that gz compression test is run with gzDavid Kalnischkies2014-03-131-0/+1
| | | | | | | | | The framework can be configured to use different compression algorithms to test different ones, but a testcase testing for gz support should always be run with gz, regardless of what compressions are configured otherwise. Git-Dch: Ignore
* factor out getting list of architectures from comma listDavid Kalnischkies2014-03-131-5/+8
| | | | | | | Beside fixing this minor code duplication it also resolves the problem of messing up vim syntax-highlighting. Git-Dch: Ignore
* refactor setup of file opening via zlib/bz2 libDavid Kalnischkies2014-03-131-37/+36
| | | | Git-Dch: Ignore
* move fd duplication closer to the gz/bz2 open callsDavid Kalnischkies2014-03-131-21/+20
| | | | Git-Dch: Ignore
* abstract version hash comparison a bitDavid Kalnischkies2014-03-135-4/+47
| | | | | | | | In #737085 we see that apt can be confused if informations about versions only differ slightly. This commit adds a way of at least adding a few more data points with the next abi break to help a bit with it. Git-Dch: Ignore
* factor out parsing of MultiArch flagDavid Kalnischkies2014-03-132-21/+29
| | | | Git-Dch: Ignore
* correct LD_LIBRARY_PATH and config loading for apt-helperDavid Kalnischkies2014-03-132-25/+16
| | | | | | | Mostly ensures that we use the build methods and not the system provided methods in the tests (if we don't want it that way). Git-Dch: Ignore
* ensure that a dot is a dot in the hookDavid Kalnischkies2014-03-132-14/+19
| | | | | | As we deal with regex matchers here the dots are treated as wildcards if we don't take care of escaping them. Not very likely that this could be a real-world problem, but just to be sure.
* add ".*-{kernel,modules}-$KERVER" matcher for hookDavid Kalnischkies2014-03-131-1/+7
| | | | | | Pre-build kernel modules (like those build with module-assistent) are commonly named in this way and it should be ungeneric enough to be added by default for everyone.
* support kfreebsd and hurd in the kernel hookDavid Kalnischkies2014-03-134-26/+44
| | | | | | kfreebsd as well as hurd kernel packages call the postinst script as well so we just need to enable the correct parsing for installed packages and disable the "protect every version" hammer for them.
* use a configurable list of versioned kernel packagesDavid Kalnischkies2014-03-136-66/+78
| | | | | | With APT::VersionedKernelPackages users have the option of adding packages like pre-build out-of-tree modules to the list of automatically protected from being autoremoved.
* cmdline parsing: apt-config is not apt-cdromDavid Kalnischkies2014-03-131-1/+1
|
* improve debug output in case downloadfile failsDavid Kalnischkies2014-03-134-75/+86
| | | | Git-Dch: Ignore
* msgstr with elipses need three dotsDavid Kalnischkies2014-03-1347-384/+205
| | | | | fixes some messages and their translation so that all of them have three dots for messages with an elipse. Many translations already had this.
* fix polish --install-suggests text in apt-get manpageWojciech Górski2014-03-131-1/+1
| | | | | | | | Description of the --install-suggests option is wrong in the polish apt-get man page. The actual meaning of this option is the opposite to what is written in the manual. Closes: 741056
* support very long mtab entries in mountpoint discoveryDavid Kalnischkies2014-03-134-25/+63
| | | | | | Old code limited lines to 250 characters which is probably enough for everybody, but who knows… It also takes care of device nodes which start with the same prefix.
* enable mount support for apt-cdrom in the testsDavid Kalnischkies2014-03-132-40/+51
| | | | Git-Dch: Ignore
* remove code duplication for Add & Ident in apt-cdromDavid Kalnischkies2014-03-131-121/+81
| | | | | | | | | The preparation code to deal with auto-detection and co is the same for both methods, so not sharing them would be bad. Deals also with the prevention of side effects triggered by the auto-detection like disabling mounting for the fallback. Git-Dch: Ignore
* apt-cdrom ident shouldn't be interactiveDavid Kalnischkies2014-03-132-13/+16
| | | | | | | | | Commit 62dcbf84 changed the code of ident to look more like the code for add on my suggestion. This made ident interactive as it starts with a unmount, press enter, mount cycle. The first two are skipped now. This fixes d-i/apt-setup which is using it to get ID as well as label. Closes: 740673
* no error for non-existing mountpoints in MountCdromDavid Kalnischkies2014-03-131-8/+20
| | | | | | | | | The mountpoint might be auto-generated by the mount command so pushing an error on the stack will confuse the following code and let it believe an unrecoverable error occured while potentially everything is okay. Same goes for umount as a non-existing mountpoint is by definition not mounted.
* if mountpoint has a ".disk" directory it is mountedDavid Kalnischkies2014-03-131-2/+7
| | | | | | | | | | | | Checking that parent-directory of mountpoint and mountpoint are on different devices is fine most of the time, but is too restrictive for our testcases and there shouldn't be anything wrong with 'normal' users copying disk-contents around either if they want to. We check for the existance of the ".disk/" directory now as this will not be present if the disk isn't 'mounted'. Disks doesn't need to have such a directory through, so for those we fall back to the old way of detecting mounted or not mounted.
* simplify apt-cdrom testcodeDavid Kalnischkies2014-03-131-16/+16
| | | | Git-Dch: Ignore
* do not configure already unpacked packages needlesslyDavid Kalnischkies2014-03-138-28/+82
| | | | | | | | | | | | | | | | | | | The unpack of a M-A:same package will force the unpack of all its siblings directly to prevent that they could be separated by later immediate actions. In commit 634985f8 a call to SmartConfigure was introduced to configure these packages at the time the installation order encounters them. Usually, the unpack order is already okay, so that this 'earlier' unpack was not needed and if it wouldn't have been done, the package would now only be unpacked, but by configuring the package now we impose new requirements which must be satisfied. The code is clever enough to handle this most of the time (it worked for 2 years!), but it isn't needed and in very coupled cases this can fail. Removing this call again removes this extra burden and so simplifies the ordering as can be seen in the modified tests. Famous last words, but I don't see a reason for this extra burden to exist hence the remove. Closes: 740843
* enable various compiler warningsDavid Kalnischkies2014-03-131-3/+6
| | | | | | | Now that the last few commits resolved the issues we can finally enable a bunch of compiler warnings by default. Git-Dch: ignore
* use SPtrArray handling instead of explicit delete[]David Kalnischkies2014-03-131-10/+1
| | | | | | | | | | | | The warning message from gcc doesn't make that much sense in my reading as there is no loop which could overflow here, but it is better to use our SPtrArray wrapping anyway which fixes the warning as well. warning: cannot optimize loop, the loop counter may overflow [-Wunsafe-loop-optimizations] delete[] Dsc; Git-Dch: Ignore Reported-By: gcc -Wunsafe-loop-optimizations
* follow method attribute suggestions by gccDavid Kalnischkies2014-03-1350-136/+148
| | | | | Git-Dch: Ignore Reported-By: gcc -Wsuggest-attribute={pure,const,noreturn}
* cleanup headers and especially #includes everywhereDavid Kalnischkies2014-03-13217-788/+1348
| | | | | | | | Beside being a bit cleaner it hopefully also resolves oddball problems I have with high levels of parallel jobs. Git-Dch: Ignore Reported-By: iwyu (include-what-you-use)
* move defines for version to macros.hDavid Kalnischkies2014-03-134-31/+72
| | | | | | also adds namespaced attributes for good usage Git-Dch: Ignore
* warning: unused parameter ‘foo’ [-Wunused-parameter]David Kalnischkies2014-03-1364-147/+153
| | | | | Reported-By: gcc -Wunused-parameter Git-Dch: Ignore
* warning: type qualifiers ignored on function return type [-Wignored-qualifiers]David Kalnischkies2014-03-136-9/+9
| | | | | Reported-By: gcc -Wignored-qualifiers Git-Dch: Ignore
* warning: cannot optimize loop, the loop counter may overflow ↵David Kalnischkies2014-03-132-3/+3
| | | | | | | [-Wunsafe-loop-optimizations] Git-Dch: Ignore Reported-By: gcc -Wunsafe-loop-optimizations
* warning: no previous declaration for foobar() [-Wmissing-declarations]David Kalnischkies2014-03-1329-119/+130
| | | | | Git-Dch: Ignore Reported-By: gcc -Wmissing-declarations
* warning: useless cast to type A [-Wuseless-cast]David Kalnischkies2014-03-1310-26/+26
| | | | | Git-Dch: Ignore Reported-By: gcc -Wuseless-cast
* warning: cast from type A to type B casts away qualifiers [-Wcast-qual]David Kalnischkies2014-03-136-35/+35
| | | | | Git-Dch: Ignore Reported-By: gcc -Wcast-qual
* StartPos is always positive for http/httpsDavid Kalnischkies2014-03-132-8/+3
| | | | | | | | | server.cc: In member function ‘bool ServerState::HeaderLine(std::string)’: server.cc:198:72: warning: format ‘%llu’ expects argument of type ‘long long unsigned int*’, but argument 3 has type ‘long long int*’ [-Wformat=] else if (sscanf(Val.c_str(),"bytes %llu-%*u/%llu",&StartPos,&Size) != 2) Git-Dch: Ignore Reported-By: gcc -Wpedantic
* warning: extra ‘;’ [-Wpedantic]David Kalnischkies2014-03-1328-444/+443
| | | | | Git-Dch: Ignore Reported-By: gcc -Wpedantic
* warning: non-ISO-standard escape sequence, '\e' [enabled by default]David Kalnischkies2014-03-131-7/+7
| | | | | Git-Dch: Ignore Reported-By: gcc -Wpedantic
* fix -Wformat= warnings about size_t != %lu on e.g. armelDavid Kalnischkies2014-03-132-8/+9
| | | | | Git-Dch: Ignore Reported-By: gcc
* fix -Wmissing-field-initializers warningsDavid Kalnischkies2014-03-136-25/+25
| | | | | Reported-By: gcc Git-Dch: Ignore
* make doxygen more quiet, fix issues and disable latexDavid Kalnischkies2014-03-139-28/+32
| | | | Git-Dch: Ignore
* unset LANGUAGE in the testing framework directlyDavid Kalnischkies2014-03-132-5/+3
| | | | Git-Dch: Ignore
* support DEB_BUILD_PROFILES and -P for build profilesDavid Kalnischkies2014-03-1311-4/+219
| | | | | | | | | | Inspired by the rest of the patch in 661537, but abstract the parsing of various ways of setting the build profiles more so it can potentially be reused and all apt parts have the same behaviour. Especially config options, cmdline options and environment will not be combined as proposed as this isn't APTs usual behaviour and dpkg doesn't do it either, so one overrides the other as it normally does.
* implement BuildProfileSpec support as dpkg has in 1.17.2Johannes Schauer2014-03-134-36/+162
| | | | | | | | Build-dependencies are now able to include a <profile.foo …> specification limiting usage similar to already supported [arch …]. More details: https://wiki.debian.org/BuildProfileSpec Closes: 661537
* add default and override handling for Cnf::FindVectorDavid Kalnischkies2014-03-137-68/+81
| | | | | | Automatically handle the override of list options via its parent value which can even be a comma-separated list of values. It also adds an easy way of providing a default for the list.
* autogenerate makefile for vendor systemDavid Kalnischkies2014-03-1315-118/+71
| | | | | | It can be useful to have a whole makefile available for vendor setup, but by providing a basic one we can deal with the simple cases more easily (and changes to the system are presumably easier).
* check version before adding scores in resolverDavid Kalnischkies2014-03-132-18/+126
| | | | | | Prevents that "old" dependencies have an influence in the scoring. With positive dependencies this is usually not a problem, but negative dependencies can linger around for a long time.
* show debug output only if told so in packagemanagerDavid Kalnischkies2014-03-132-10/+5
| | | | Git-Dch: Ignore
* do not do the same looping twiceDavid Kalnischkies2014-03-131-7/+1
| | | | Git-Dch: Ignore