summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
AgeCommit message (Collapse)Author
2017-10-23Release 1.6~alpha11.6_alpha1Julian Andres Klode
2017-10-22Sandbox methods with seccomp-BPF; except cdrom, gpgv, rshJulian Andres Klode
This reduces the number of syscalls to about 140 from about 350 or so, significantly reducing security risks. Also change prepare-release to ignore the architecture lists in the build dependencies when generating the build-depends package for travis. We might want to clean up things a bit more and/or move it somewhere else.
2017-09-24Drop curl method and apt-transport-https packageJulian Andres Klode
This automatically removes any old apt-transport-https, as apt now Breaks it unversioned.
2017-09-24Release 1.51.5Julian Andres Klode
2017-09-13Release 1.5~rc41.5_rc4Julian Andres Klode
2017-09-10Release 1.5~rc31.5_rc3Julian Andres Klode
2017-09-10CMake: Mark BZip2, LZMA, and LZ4 as requiredJulian Andres Klode
We do not actually test without these libraries, and it likely would not build without them due to them being NOTFOUND and CMake exiting with an error, so let's just mark them as required.
2017-09-09Release 1.5~rc21.5_rc2Julian Andres Klode
2017-09-09Directly link against libudev on Linux systemsJulian Andres Klode
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.
2017-08-24Release 1.5~rc11.5_rc1Julian Andres Klode
2017-08-17Release 1.5~beta21.5_beta2Julian Andres Klode
2017-07-20Use C++11 threading support instead of pthreadJulian Andres Klode
This makes the code easier to read.
2017-07-03Release 1.5~beta11.5_beta1Julian Andres Klode
2017-06-30Upload 1.5~alpha4 to experimental1.5_alpha4Julian Andres Klode
2017-06-30CMake: Do not allow FORCE_CURL=ON with WITH_CURL=OFFJulian Andres Klode
This makes no sense. We need both entries in the cache, as we check FORCE_CURL in the test suite. Gbp-Dch: ignore
2017-06-30Switch to 'http' as the default https methodJulian Andres Klode
The old curl based method is still available as 'curl', 'curl+http', and 'curl+https'.
2017-06-30Upload 1.5~alpha3 to experimental1.5_alpha3Julian Andres Klode
2017-06-29Upload 1.5~alpha2 to experimental1.5_alpha2Julian Andres Klode
2017-06-28Upload 1.5~alpha1 to experimental1.5_alpha1Julian Andres Klode
2017-06-28Allow building without curlJulian Andres Klode
This makes testing easier and prepares us for the transition.
2017-06-28methods: Add HTTPS support to http method, using GnuTLSJulian Andres Klode
The http method will eventually replace the curl-based https method, but for now, this is an opt-in experiment that can be enabled by setting Dir::Bin::Methods::https to "http". Known issues: - We do not support HTTPS proxies yet - We do not support proxying HTTPS connections yet (CONNECT) - IssuerCert and SslForceVersion are unsupported Gbp-Dch: Full
2017-06-01Release 1.4.61.4.6Julian Andres Klode
2017-05-31Release 1.4.51.4.5Julian Andres Klode
2017-05-16Release 1.4.41.4.4Julian Andres Klode
2017-05-11Release 1.4.31.4.3Julian Andres Klode
2017-05-04Release 1.4.21.4.2Julian Andres Klode
2017-04-24Release 1.4.11.4.1Julian Andres Klode
2017-04-01Release the April Fools' release1.4Julian Andres Klode
2017-02-22Release 1.4~rc21.4_rc2Julian Andres Klode
2017-02-12CMake: Install statvfs.h to include/sys, not just include/Julian Andres Klode
We are including sys/statvfs.h, not statvfs.h, so make sure our dummy in the correct spot.
2017-02-06Release 1.4~rc11.4_rc1Julian Andres Klode
2017-01-17Release 1.4~beta41.4_beta4Julian Andres Klode
We are basically frozen now, but (a) this wildcard thing is a bit "explosive" to call this RC and (b) you never know if you might need to add a new tiny feature and freeze can be long...
2017-01-17CMake: Find the Perl executable, and use it to run perl scriptsJulian Andres Klode
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
2017-01-17Read dpkg tables to handle architecture wildcardsJulian Andres Klode
Our implementation of wildcards was rudimentary. It worked for some common ones, but it was also broken: For example, armel matched any-armel, but should match any-arm. With this commit, we load the correct tables from dpkg. Supported are both triplets and quadruplet tables (the latter introduced in dpkg 1.18.11). There are some odd things we have to deal with in the cache filter for historical and API reasons: * The character "*" must be accepted as an alternative to any - in fact it may appear anywhere in the wildcard as we also allow fnmatch() style wildcard matching on the commandline. * The code might get passed an arch with a minus at the end, for example the cmdline "install apt:any-arm-" will first try to check if any-arm- is a valid architecture. We deal with this by rejecting any wildcard ending in a minus. * Triplets are actually implemented by extending them to faux quadruplets - by prepending a "base" component for the architecture tuple, and "any" if there is a wildcard component. Once we have constructed a wildcard, it is transformed into an fnmatch() expression for historical reasons. In the future, we should really get a tuple class and implement matching in a better, more explicit way. This does for now though - it passes all the test cases and accepts all things it should accept. Closes: #748936 Thanks: James Clarke <jrtc27@jrtc27.com> for the initial patch
2017-01-05Release 1.4~beta31.4_beta3Julian Andres Klode
2016-12-08releasing package apt version 1.4~beta2Julian Andres Klode
2016-11-25Release 1.4~beta11.4_beta1Julian Andres Klode
2016-10-04Release 1.3.11.3.1Julian Andres Klode
2016-09-20Release 1.31.3Julian Andres Klode
2016-09-11CMake: Add coverage build typeJulian Andres Klode
This allows us to easily test coverage
2016-09-02Release 1.3~rc41.3_rc4Julian Andres Klode
2016-08-30Release 1.3~rc31.3_rc3Julian Andres Klode
2016-08-26CMake: Add missing iconv dependencyJulian Andres Klode
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
2016-08-26Make root group configurable via ROOT_GROUPJulian Andres Klode
This is needed on BSD where root's default group is wheel, not root.
2016-08-26Make directory paths configurableJulian Andres Klode
This allows other vendors to use different paths, or to build your own APT in /opt for testing. Note that this uses + 1 in some places, as the paths we receive are absolute, but we need to strip of the initial /.
2016-08-26CMake: Add support for libintlJulian Andres Klode
This basically just links everything to libintl if USE_NLS is on. It would be better to just link those targets that are actually translated, but doing so is a huge PITA. Also move the include_directories() for the build-tree include/ directory to the top of the CMakeLists.txt, otherwise it only gets passed after Intl_INCLUDE_DIRS, which means we will built against installed apt-pkg headers (if any) instead of our own. Gbp-Dch: ignore
2016-08-26CMake/private-download: Fix statfs includes on FreeBSDJulian Andres Klode
On FreeBSD, we have to include sys/params.h and sys/mount.h, not sys/vfs.h. Gbp-Dch: ignore
2016-08-26CMake: Add FindLZ4 and FindLZMAJulian Andres Klode
This makes things work with /usr/local on FreeBSD. Gbp-Dch: ignore
2016-08-26CMake: Do not use -lresolv if res_init exists in libcJulian Andres Klode
Gbp-Dch: ignore
2016-08-26CMake: Handle endian.h locations on other platformsJulian Andres Klode
Gbp-Dch: ignore