path: root/paludis/repositories
AgeCommit message (Collapse)AuthorLines
2020-10-16modernize: Mark overriding functions as suchAvatar Marvin Schmidt -1157/+1157
Done using clang-tidy's `modernize-use-override` check
2020-02-19emagicdocs: Also install CONTRIBUTING* filesAvatar Heiko Becker -1/+1
It is quite common for projects to have such a file and it (hopefully) is a good start when you're looking for information where and how to submit a patch.
2019-04-18tests: fix BASH_COMPAT tests with bash 5Avatar Marc-Antoine Perennou -2/+2
Bash now overrides this with a new value with no dot Fixes #2 Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2018-12-22build: Generate an import target for Jansson and use itAvatar Heiko Becker -4/+1
2018-04-09set USER and LOGNAME when running with userprivAvatar Benedikt Morbach -1/+4
some builds/tests get confused when running as paludisbuild with USER=root.
2018-02-04build: fix compile against libc++ using clangAvatar Bjorn Pagen -1/+2
added several includes, such as time.h, iostream, and string, as libc++ requires explicit including of these files. tr1/memory is replaced with POSIX defined memory Change-Id: Id859f33f78343d814f47b1e1e34a3dbe23d174e3 Reviewed-on: https://galileo.mailstation.de/gerrit/11152 Reviewed-by: Saleem Abdulrasool <compnerd@compnerd.org>
2017-05-23disallow unexported phasesAvatar Benedikt Morbach -3/+9
avoids bugs and confusion that happen occasionally when phases are accidentally left around but not exported so they don't do anything. This is also the first step if we want to make the exporting automatic in the future to make sure that doesn't suddenly activate previously unexported phases. Change-Id: I4f7c5de4974e547c2596d138839dd41738d61e68
2017-01-18build: add missing dependencies on generated headersAvatar Bo Ørsted Andresen -0/+1
These depend upon libpaludisutils' generated headers. Found by the Jenkins build bot.
2017-01-16paludis: c++11-ify repository iterationAvatar Saleem Abdulrasool -33/+27
Add a `repositories` in `Environment` which provides an iterator range for the repositories, allowing C++11 style range based iteration.
2017-01-09build: *repository depend on libpaludisutil_SEAvatar Heiko Becker -0/+3
2016-12-21build: libpaludisrepositoryrepository depends on libpaludisutil_SEAvatar Heiko Becker -0/+1
Found by Jenkins: https://galileo.mailstation.de/jenkins/job/stage_x86/954/console
2016-12-16build: Add missing linkage between shared librariesAvatar Michał Górny -0/+2
2016-12-13repositories: ensure that the destructor is materialisedAvatar Saleem Abdulrasool -0/+1
2016-12-12build: more explicit SE dependenciesAvatar Saleem Abdulrasool -0/+1
Thanks to mgorny, Caelian, and heirecka for reporting these.
2016-12-11repositories: avoid a shadowing warningAvatar Saleem Abdulrasool -6/+4
The string is used in one place, inline it. It is passed as an argument and the life time will be extended around the call.
2016-12-08re-add builtin_tidyuprm.bash to exheres-0 CmakeLists.txtAvatar Benedikt Morbach -0/+1
Change-Id: I8acf352cc1effa69088570be8cd823f5565d58fa
2016-12-05build: Install bash scripts as 'PROGRAMS'Avatar Heiko Becker -13/+13
...to make them executable.
2016-11-30build: remove autotools based buildAvatar Saleem Abdulrasool -1664/+0
There can be only one!
2016-11-30build: introduce cmake based build systemAvatar Saleem Abdulrasool -0/+671
2016-11-28paludis: mark the command template executableAvatar Saleem Abdulrasool -0/+0
This makes it simpler to generate the executables with the execute permission preset. NFC.
2016-11-28tests: standardise test namingAvatar Saleem Abdulrasool -0/+0
Canonicalise the test naming. Mark the tests as executable.
2016-08-06modernize: use default method synthesisAvatar Saleem Abdulrasool -270/+90
Convert a number of destructors to default synthesized functions. Try to inline a few instances into the header. It should be possible to inline all of them, however, gcc seems to emit a number of warnings. Furthermore, some of the destructors are pure-virtualed, but provide an implementation. Placing the definition into the header causes ODR violations.
2016-08-04modernize: use override annotationsAvatar Saleem Abdulrasool -91/+91
Automated addition of override to overridden functions. NFC.
2016-08-04modernize: use nullptr rather than 0 or NULLAvatar Saleem Abdulrasool -8/+8
Automated conversion to nullptr. NFC.
2016-08-04modernize: convert to range based for-loopsAvatar Saleem Abdulrasool -137/+111
Automated conversion to range based for loops. NFC
2016-03-17Fail if bzip2 fails.Avatar Bo Ørsted Andresen -1/+4
Change-Id: I40c988c5abf315722259909f4f33e8deb584c0db
2016-02-19Support emptying a default set exparam array.Avatar Bo Ørsted Andresen -1/+25
Add test to verify an exarray with a non-empty default value can be emptied with an empty require parameter. Change-Id: I633f4baa6eaf297308e08ac3899c8821e88f3591 Reviewed-on: https://galileo.mailstation.de/gerrit/4944 Reviewed-by: Bo Ørsted Andresen <zlin@exherbo.org>
2016-02-01Support pbins for EAPI 6Avatar David Leverton -0/+61
Fixes: ticket:1338
2016-02-01Update another commentAvatar David Leverton -1/+1
See also cfca8b3.
2016-01-22paludis: range-based for loop ebuild.ccAvatar Saleem Abdulrasool -45/+29
2016-01-22paludis: hoist some expressions into local variablesAvatar Saleem Abdulrasool -259/+247
Although the compiler should be smart enough to do this, this makes reading through the code a bit quicker since the common expression has been hoisted.
2016-01-21paludis: POSIX_ME_HARDER accounts repositoryAvatar Saleem Abdulrasool -27/+13
POSIX permits an indefinite required buffer size for querying GECOS fields. This is currently used in three locations. Previously, paludis would assume that it could perform a sysconf call to retrieve the requisite buffer size for ensuring that the subsequent GECOS field query would not receive a -ERANGE error. However, as it turns out, this is actually a problem even with GLIBC where the NSS may end up querying a service which has a larger field value for the `struct pwd` (glibc sets the return value to the NSS buffer length, aka 1k, but may end up querying a service which provides a larger response). Use local wrappers which perform the size adjustment to avoid an undersized buffer. Localise the functions which query the various GECOS fields which comprise the persona into util.
2016-01-17build: unconditionally use visibility flagsAvatar Saleem Abdulrasool -9/+9
Remove the last remnants of icc support as the current released versions do not support C++11 and we intend to use clang as the alternate compiler. This cleans up the compile flags to remove the now obsoleted definition (-DPALUDIS_USE_VISIBILITY), the unnecessary compile time checks, and the handling for ICC in the macros.
2016-01-15Ban einstall for exheres-0Avatar Heiko Becker -96/+1
Change-Id: I30a4221cec2ac5492e932eaa7ba3b9f47b6a5df3 Reviewed-on: https://galileo.mailstation.de/gerrit/4899 Reviewed-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com> Reviewed-by: Bo Ørsted Andresen <zlin@exherbo.org>
2016-01-13support hiding suboptionsAvatar Saleem Abdulrasool -3/+41
Introduce the concept of `SUBOPTIONS_NO_DESCRIBE` to the exheres profile. This allows suboptions to be silenced by default from the description list. This is useful in rare scenarios, such as `linguas`, where the suboption is common, has a large set of values. In such a case, the output of the descriptions would obscure the actual resolution and useful options. This new profile variable permits the profile to indicate to the "frontend" that the description should be squelched. Currently, this is consumed only by the cave frontend.
2016-01-12Clear out MERGE_TYPE for non-installsAvatar David Leverton -0/+3
2016-01-08Assert assumption made by mergerAvatar Wouter van Kesteren -1/+11
Error: ... * When loading EAPI data: * When loading EAPI file '/usr/share/paludis/eapis/pbin-1+exheres-0.conf': * EAPI configuration error: Merger code doesn't handle having both allow_empty_dirs and permitted_directories (paludis::erepository::EAPIConfigurationError) Change-Id: I89625552c6887039058de4882c47f5d588dfb064 Reviewed-on: https://galileo.mailstation.de/gerrit/4662 Reviewed-by: Bo Ørsted Andresen <zlin@exherbo.org>
2016-01-08Make tests not install to /Avatar Wouter van Kesteren -17/+17
Change-Id: I6707744dd5889d6645a28518454f4f190a7f0d27 Reviewed-on: https://galileo.mailstation.de/gerrit/4661 Reviewed-by: Bo Ørsted Andresen <zlin@exherbo.org>
2016-01-08Let merger check dirnames instead of actual dirsAvatar Wouter van Kesteren -4/+0
This should be safe because we dont allow empty directories. So installing a directory into an illegal place would error. The moment a keepdir is done it gets a file in it and then we validate this file instead. So this all works out nicely. Change-Id: I205b21d21a08f0e6afa702f0dc28b8f1d54f047b Reviewed-on: https://galileo.mailstation.de/gerrit/4660 Reviewed-by: Bo Ørsted Andresen <zlin@exherbo.org>
2016-01-08Test permitted_directoriesAvatar Wouter van Kesteren -0/+106
Change-Id: I3017ac9e1d5d4527c5993d25e3beac5f94b50110 Reviewed-on: https://galileo.mailstation.de/gerrit/4659 Reviewed-by: Bo Ørsted Andresen <zlin@exherbo.org>
2015-11-11Give eapply some outputAvatar David Leverton -0/+2
2015-11-11Change bash compatibility level handlingAvatar David Leverton -7/+11
Apparently bash is going to deprecate the compat* shopts in favour of the BASH_COMPAT variable, so use that instead. BASH_COMPAT is only supported in 4.3 and later, but it doesn't hurt to set it anyway - in fact, this is better than the shopt version because 4.2 doesn't support shopt compat42. I don't think it's worth messing around with falling back to shopt for older versions - only EAPIs before 6 would be affected, and those have survived this long without setting anything anyway.
2015-11-08Unify =* behaviourAvatar David Leverton -2/+2
Gentoo changed =* to mean almost the same thing as it does in Exherbo in bug 560466; the difference being that float-like components aren't treated specially, for example 1.0123 doesn't match a dep saying =1.012*. Since nothing in Exherbo relies on this anyway, just make it the same everywhere.
2015-11-08EAPI 6 finalised by CouncilAvatar David Leverton -3/+4
2015-11-08Set appropriate compat* shoptAvatar David Leverton -0/+55
EAPI 6 specifies bash 4.2 instead of 3.2. The spec now recommends setting the compatibility level for both old and new EAPIs.
2015-11-05EAPI 6 default_src_prepare uses eapplyAvatar David Leverton -1/+339
2015-11-05EAPI 6 has eapply_userAvatar David Leverton -0/+60
Just a stub implementation for now.
2015-11-05EAPI 6 has eapplyAvatar David Leverton -0/+604
2015-11-05Load ebuild modules with extglob onAvatar David Leverton -0/+1
Bash requires extglob to be on even to parse a function that uses it (at least in some contexts). Such functions still need to use ebuild_need_extglob so it'll be enabled when they actually run, but that doesn't help with the initial parsing.
2015-11-05EAPI 6 default_src_install uses einstalldocsAvatar David Leverton -1/+157