summaryrefslogtreecommitdiff
path: root/apt-pkg/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Fix builds without zstdJulian Andres Klode2018-04-201-2/+2
| | | | Only use zstd defined variables if zstd was found.
* apt-pkg: Add support for zstdJulian Andres Klode2018-03-121-0/+2
| | | | | | | zstd is a compression algorithm developed by facebook. At level 19, it is about 6% worse in size than xz -6, but decompression is multiple times faster, saving about 40% install time, especially with eatmydata on cloud instances.
* CMake: Properly handle Udev missingJulian Andres Klode2017-09-101-2/+2
| | | | | | | When udev is not available, the variables for libraries and include paths are set to NOTFOUND rather than an empty string and CMake exits with an error. Use a generator expression to only use these variables when UDEV_FOUND is true.
* Directly link against libudev on Linux systemsJulian Andres Klode2017-09-091-0/+2
| | | | | | | | | | | | | | | | | | | We previously dlopen()ed it, but it seems painful to do that without any real gain, except for possibly not having libudev in the address space and not having code #ifdefed for Linux. The latter means that we are a bit more likely to break stuff for non-Linux systems now if we play with udev, but at least we don't end up with it silently breaking because of a libudev ABI break. The existing function pointers in the struct were renamed and kept for compat purposes. Fixes Debian/apt#48 Also adjust prepare-release to strip [linux-any] from build-depends for travis.
* CMake: Document that the globs are expanded during CMakeJulian Andres Klode2017-01-171-1/+3
| | | | | | | This will avoid people from thinking that they have to do nothing when they change the set of files. Gbp-Dch: ignore
* CMake: Find the Perl executable, and use it to run perl scriptsJulian Andres Klode2017-01-171-1/+1
| | | | | | | | This is somewhat more portable than just hardcoding perl or in the triehash case /usr/bin/perl in the shebang. Thanks: Guillem Jover for the hint Gbp-Dch: ignore
* TagSection: Introduce functions for looking up by key idsJulian Andres Klode2016-11-221-1/+14
| | | | | Introduce a new enum class and add functions that can do a lookup with that enum class. This uses triehash.
* Coverage: Do not print messages from gcovJulian Andres Klode2016-09-111-0/+4
| | | | | | | We need to ignore messages from gcov. All those messages start with profiling: and are printed using vfprintf(), so the only thing we can do is add a library overriding those functions and linking apt-pkg to it.
* CMake: apt-pkg: Use correct ICONV_INCLUDE_DIRS variableJulian Andres Klode2016-09-021-1/+1
| | | | | This accidentally used ICONV_DIRECTORIES, which does not even exist. Weird.
* CMake: Add missing iconv dependencyJulian Andres Klode2016-08-261-2/+7
| | | | | | | | | | | | FreeBSD has two iconv systems: It ships an iconv.h itself, and symbols for that in the libc. But there's also the port of GNU libiconv, which unfortunately for us, Doxygen depends on. This changes things to prefer a separate libiconv library over the system one; that is, the port on FreeBSD. Gbp-Dch: ignore
* CMake: Do not use -lresolv if res_init exists in libcJulian Andres Klode2016-08-261-1/+1
| | | | Gbp-Dch: ignore
* CMake: Do not hardcode -ldlJulian Andres Klode2016-08-261-1/+1
| | | | | | Does not exist on FreeBSD Gbp-Dch: ignore
* CMake: Fix uninitialized variablesJulian Andres Klode2016-08-201-1/+1
| | | | | | This fixes some actual bugs for PROJECT and BZIP2_INCLUDE_DIR. Gbp-Dch: ignore
* CMake: Add basic CMake build systemJulian Andres Klode2016-08-061-0/+46
Introduce an initial CMake buildsystem. This build system can build a fully working apt system without translation or documentation. The FindBerkelyDB module is from kdelibs, with some small adjustements to also look in db5 directories. Initial work on this CMake build system started in 2009, and was resumed in August 2016.