aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2015-05-03Let destringify use a default template argumentAvatar Wouter van Kesteren -7/+1
Part of C++11 and supported since gcc 4.3 Default template arguments for function templates DR226 GCC 4.3 https://gcc.gnu.org/projects/cxx0x.html Change-Id: I584af0f6ea26c0d2d0ba0e6221e375270e3019df
2015-05-02Make stream conversions explicit for gtestAvatar Wouter van Kesteren -30/+30
Change-Id: I74b0915cdfb11ff6f42151ba5ac2452b8e9a4052
2015-05-02GCC 5.1 compatibilityAvatar Wouter van Kesteren -3/+3
Change-Id: I2cb6e653147e64f8e85583e03d1c0a2fb846335e Reported-by: Marc Duponcheel <marc@offline.be>
2015-05-01Make bool destringify check for failbit.Avatar Wouter van Kesteren -9/+1
To reduce code duplication it's implemented in terms of int destringify. Change-Id: I2b681b118178f13bd3d2f711b65a82767d834fd9
2015-04-26Use a delegating constructor for PtyAvatar Wouter van Kesteren -11/+1
Part of C++11 and supported since gcc 4.7 Delegating constructors N1986 GCC 4.7 https://gcc.gnu.org/projects/cxx0x.html Change-Id: I0bf4e02aa9f672a2c235004bf9e8983d6c90ef39
2015-04-26Remove functions flagged by -Wunused-functionAvatar Wouter van Kesteren -40/+0
Change-Id: I1a8eb113f9a182b166dcf614c70dee58b614209d
2015-04-19resolver: use a few temporary variablesAvatar Saleem Abdulrasool -3/+9
Use a few temporary variables to make it easier to read.
2015-04-19resolver: pull out some logic into a helper filterAvatar Saleem Abdulrasool -5/+23
Create a helper function to construct the installed id filter. This makes the code a bit easier to read since due to better wrapping.
2015-04-19resolver: whitespaceAvatar Saleem Abdulrasool -1/+2
Wrap a line to make it slightly easier to read.
2015-04-19repositories: pull action option destination into a variableAvatar Saleem Abdulrasool -34/+42
This pulls the destination out into a variable since its often used. NFC.
2015-04-19cave: eradicate last hardcoded bash pathsAvatar Saleem Abdulrasool -2/+2
This is just a cleanup of hard coded location for bash. This is slightly relevant to cross due to the adjusted path for bash.
2015-04-19ruby: fix a copy-paste errorAvatar Saleem Abdulrasool -1/+1
Update the error message string for FetchActionFailure.
2015-04-01Preparation for 2.4.02.4.0Avatar Ciaran McCreesh -1/+6
2015-04-01Fix description formatting in generated html for ruby examplesAvatar Alexander Belykh -1/+1
2015-04-01--enable-htmltidy was removed in 6306a6bedab8ac4f7cc810673a05ea08f8f24d16.Avatar Bo Ørsted Andresen -1/+1
2015-04-01Whitelist linux 4.0Avatar Wouter van Kesteren -1/+2
Change-Id: I98e1bd6dc959a375240fe9bb43e6eaf38121defe
2015-04-01merge sbin into bin when FILESYSTEM_LAYOUT == crossAvatar Benedikt Morbach -1/+11
Change-Id: I86674b52caf31a665dd78ae35fbdc300cc55f575
2015-03-29Fix EBUILD_PHASE_FUNC leakageAvatar David Leverton -1/+1
2015-03-21Only check IUSE_EFFECTIVE for EAPI 5Avatar David Leverton -7/+42
In other EAPIs the value isn't set by C++, and therefore may leak in from the calling environment.
2015-03-21Add IUSE_EFFECTIVE to EBUILD_METADATA_VARIABLES{,_FROM_CPLUSPLUS}Avatar David Leverton -2/+2
2015-03-16configure.ac: Use ${PKG_CONFIG} instead of hard coding itAvatar Heiko Becker -2/+2
Change-Id: Iad987d4168bc9315415d075fb083e213f2007950
2015-03-12ruby: Fix ConfigAction, and {Info,Config}Action testsAvatar David Leverton -10/+10
Fallout from 22e3824 and c5223a1.
2015-03-12ruby: Remove duplicationAvatar David Leverton -12/+0
2015-03-10PWD is a special variable, we should leave its value aloneAvatar Georgi Georgiev -1/+1
Bash sets the value of PWD to the current working directory. It is not a good idea to change that variable without actually changing the directory. This would happen if the working directory changes between saving and loading the environment (saving - when building a PBIN, and loading - when installing it for example), so better let bash handle this variable. Fixes: ticket:1325
2015-03-07build: modernise use of AM_INIT_AUTOMAKEAvatar Saleem Abdulrasool -14/+16
The two and three argument forms of AM_INIT_AUTOMAKE are deprecated. Update the invocation as recommended. See: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation In order to keep the previous functionality of only defining the version once, resort to some acrobatics with m4 macros. The AC_INIT parameter for the package version (AC_PACKAGE_VERSION) must be a literal (known at autoconf time). As a result, we need to use m4 macros instead of shell values. The strings cannot be named the same since the substitution would become value=value rather than name=value.
2015-03-07Add .gitreviewAvatar Heiko Becker -0/+3
Change-Id: Iec0b2a3a5bf7390a20f974468272619f81636a5f
2015-03-05ruby: fix stupid typoAvatar Saleem Abdulrasool -2/+2
2015-03-02ruby: use some TMP to reduce redundancyAvatar Saleem Abdulrasool -287/+196
The BoxedAction and BoxedOptions classes abstract out the details of how to box and unbox a type across the C++/Ruby boundary. Traits are used to provide the type specific information (associating the Action and the Options classes, as well as the boxed type instance and name spellings). The result is that the common patterns are abstracted out as methods which can be materialised as necessary with compile time checking for cases of methods exposed directly (e.g. destinations() on certain options classes).
2015-03-02ruby: hand roll ConfigActionAvatar Saleem Abdulrasool -27/+110
This removes the last user of the EasyAction template in favour of hand expanded actions. The utility of the EasyAction template had run out due cross make InfoAction no longer compatible with it either. There is a single user of it at this point. Just expand it out. If it becomes useful again in the future, it can be resurrected.
2015-03-02ruby: hand roll InfoActionAvatar Saleem Abdulrasool -10/+114
Rather than relying on EasyAction, just expand the construction of the InfoAction for the bindings. This will be expanded soon to support cross compilation.
2015-03-02ruby: remove unused conversion functionAvatar Saleem Abdulrasool -15/+0
The conversion function was unused by the bindings. NFC.
2015-03-01Fix MERGE_TYPEAvatar David Leverton -4/+6
Unfortunately the test cases were broken in the same way as the feature itself, so it wasn't caught. Fixes: ticket:1323
2015-02-28syncers: switch rsync to --new-compress (-zz)Avatar Friedrich Kröner -2/+2
rsync[>=3.1.0] doesn't support --compress with external zlib anymore. 'This rsync lacks old-style --compress due to its external zlib. Try -zz. Continuing without compression.'
2015-02-17Add leading "--" to configure --help grepAvatar David Leverton -6/+6
http://mid.gmane.org/21730.17032.896228.663965@a1i15.kph.uni-mainz.de
2015-01-19ruby: allow specifying versionAvatar Marc-Antoine Perennou -4/+17
Change-Id: Iccfc68ed4168fa0288745ceef258d09561293e8e Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2015-01-19ruby: always use pkg-configAvatar Marc-Antoine Perennou -52/+4
Change-Id: I505d2936573494dadeec81fd090cf72613b664a1 Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2014-10-01Preparation for 2.2.02.2.0Avatar Ciaran McCreesh -1/+10
2014-09-17Let installed-unpackaged repos override their namesAvatar Ciaran McCreesh -2/+9
2014-09-17Remove 'breaks Portage' codeAvatar Ciaran McCreesh -368/+38
2014-09-17master is 2.1Avatar Ciaran McCreesh -1/+1
2014-09-14Add --chroot-pathAvatar Ciaran McCreesh -6/+30
2014-09-04Update supported compilers listAvatar Jeff Horelick -4/+3
2014-08-28Remove --enable-visibilityAvatar David Leverton -19/+19
Always enable for GCC (versions that don't have it are way too old anyway). Disable for clang for now because of http://llvm.org/bugs/show_bug.cgi?id=20521
2014-08-28Don't inappropriately rely on evaluation orderAvatar David Leverton -1/+23
If the key wasn't already present in the map and there were non-trival default and transformation functions, and the compiler decided to evaluate the LHS of the assignment before the RHS, the [] would create the map entry with an empty string value, which would then be returned by get() and passed to the transformation function instead of using the default. Found by compiling with clang (where it broke the PortageEnvironment tests).
2014-08-28Fix assorted build failures with clangAvatar David Leverton -20/+31
../../../paludis/paludis/util/sequence-impl.hh:162:21: error: expected expression _imp->list.sort<const C_ &>(c); - just a missing "template" ../../paludis/paludis/util/visitor.hh:322:24: error: no viable overloaded '=' result = _unwrapped_visitor.visit(t); [snip] ../../paludis/paludis/mask.cc:43:17: note: in instantiation of function template specialization 'paludis::DeclareAbstractAcceptMethods<paludis::Mask, paludis::TypeListEntry<paludis::UserMask, paludis::TypeListEntry<paludis::UnacceptedMask, paludis::TypeListEntry<paludis::RepositoryMask, paludis::TypeListEntry<paludis::UnsupportedMask, paludis::TypeListTail> > > > >::make_accept_returning<<lambda at ../../paludis/paludis/mask.cc:44:9>, <lambda at ../../paludis/paludis/mask.cc:45:9>, <lambda at ../../paludis/paludis/mask.cc:46:9>, <lambda at ../../paludis/paludis/mask.cc:47:9> >' requested here return mask.make_accept_returning( /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/include/g++-v4/bits/basic_string.h:543:7: note: candidate function not viable: 'this' argument has type 'const std::basic_string<char>', but method is not marked const operator=(const basic_string& __str) [snip] - template argument inferred as const and then used for temporary variable that gets assigned, so needs to be forced non-const In file included from ../../../../paludis/paludis/repositories/e/e_choice_value.cc:24: ../../../../paludis/paludis/util/pool-impl.hh:171:23: error: call to function 'operator==' that is neither visible in the template definition nor found by argument-dependent lookup return _value == static_cast<const ConcretePoolKey<T_> &>(other)._value; [snip] ../../../../paludis/paludis/repositories/e/e_choice_value.cc:147:10: note: 'operator==' should be declared prior to the call site or in namespace 'paludis::erepository' bool operator== (const EChoiceValueParams & a, const EChoiceValueParams & b) - see http://clang.llvm.org/compatibility.html#dep_lookup /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/include/g++-v4/functional:1925:2: error: no matching function for call to object of type 'std::_Bind<std::_Mem_fn<void (paludis::resolver::Decider::*)(const std::shared_ptr<const paludis::resolver::Resolution> &, const std::shared_ptr<const paludis::resolver::Constraint> &, const std::shared_ptr<const paludis::resolver::Decision> &) __attribute__((noreturn)) const> (paludis::resolver::Decider *, std::shared_ptr<paludis::resolver::Resolution>, std::shared_ptr<const paludis::resolver::Constraint>, std::shared_ptr<paludis::resolver::Decision>)>' (*_Base::_M_get_pointer(__functor))( [snip] ../../../paludis/paludis/resolver/decider.cc:936:65: note: in instantiation of function template specialization 'std::function<void ()>::function<std::_Bind<std::_Mem_fn<void (paludis::resolver::Decider::*)(const std::shared_ptr<const paludis::resolver::Resolution> &, const std::shared_ptr<const paludis::resolver::Constraint> &, const std::shared_ptr<const paludis::resolver::Decision> &) __attribute__((noreturn)) const> (paludis::resolver::Decider *, std::shared_ptr<paludis::resolver::Resolution>, std::shared_ptr<const paludis::resolver::Constraint>, std::shared_ptr<paludis::resolver::Decision>)> >' requested here resolution->decision()->accept(WrongDecisionVisitor(std::bind( /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/include/g++-v4/functional:1211:2: note: candidate template ignored: substitution failure [with _Args = <>]: no matching function for call to object of type 'std::_Mem_fn<void (paludis::resolver::Decider::*)(const std::shared_ptr<const paludis::resolver::Resolution> &, const std::shared_ptr<const paludis::resolver::Constraint> &, const std::shared_ptr<const paludis::resolver::Decision> &) __attribute__((noreturn)) const>' operator()(_Args&&... __args) [snip] - not sure why it doesn't like this, but its nicer with the anonymous function anyway ../../paludis/python/dep_spec.cc:1409:16: error: explicit instantiation of 'paludis::WrappedForwardIterator' must occur in namespace 'paludis' template class WrappedForwardIterator<PythonCompositeDepSpec::ConstIteratorTag, ../../paludis/python/exception.cc:32:16: error: explicit instantiation of 'paludis::Singleton' must occur in namespace 'paludis' template class Singleton<ExceptionRegister>; ../../paludis/ruby/paludis_ruby.cc:38:16: error: explicit instantiation of 'paludis::Singleton' must occur in namespace 'paludis' template class Singleton<RegisterRubyClass>; - self-explanatory
2014-08-27Nothing to see here, move alongAvatar Ciaran McCreesh -0/+4
2014-08-27Fix build with -Werror=format-securityAvatar David Leverton -14/+14
Fixes: Gentoo#521326
2014-08-27Fix tests for separate src/build dirsAvatar David Leverton -8/+3
The previous logic would pick up (srcdir)/ebuild/utils/dohard before (builddir)/ebuild/utils/4/dohard, breaking e_repository_TEST_4.
2014-06-07Preparation for 2.0.02.0.0Avatar Ciaran McCreesh -2/+13
2014-06-07Remove some useless configure checksAvatar Ciaran McCreesh -162/+2