diff options
author | 2011-01-27 19:49:27 +0000 | |
---|---|---|
committer | 2011-01-27 20:13:27 +0000 | |
commit | e15546d2c1118e12506b48c8868e1f52cee44b8b (patch) | |
tree | 153048f74853c94b44bcb914cd5169953f134da2 | |
parent | a6ba18f1f027bca8277922c2c32a6843efd8300e (diff) | |
download | paludis-e15546d2c1118e12506b48c8868e1f52cee44b8b.tar.gz paludis-e15546d2c1118e12506b48c8868e1f52cee44b8b.tar.xz |
Use build_options: symbols for e
-rw-r--r-- | paludis/repositories/e/do_install_action.cc | 24 | ||||
-rw-r--r-- | paludis/repositories/e/e_stripper.cc | 2 | ||||
-rw-r--r-- | paludis/repositories/e/e_stripper.hh | 2 | ||||
-rw-r--r-- | paludis/repositories/e/ebuild_id.cc | 7 |
4 files changed, 17 insertions, 18 deletions
diff --git a/paludis/repositories/e/do_install_action.cc b/paludis/repositories/e/do_install_action.cc index 03aca3011..f804ac0d0 100644 --- a/paludis/repositories/e/do_install_action.cc +++ b/paludis/repositories/e/do_install_action.cc @@ -1,7 +1,7 @@ /* vim: set sw=4 sts=4 et foldmethod=syntax : */ /* - * Copyright (c) 2010 Ciaran McCreesh + * Copyright (c) 2010, 2011 Ciaran McCreesh * * This file is part of the Paludis package manager. Paludis is free software; * you can redistribute it and/or modify it under the terms of the GNU General @@ -318,19 +318,19 @@ paludis::erepository::do_install_action( Log::get_instance()->message("e.ebuild.libdir", ll_debug, lc_context) << "Using '" << libdir << "' for libdir"; - std::shared_ptr<const ChoiceValue> strip_choice(id->choices_key()->value()->find_by_name_with_prefix( - ELikeStripChoiceValue::canonical_name_with_prefix())); - std::shared_ptr<const ChoiceValue> split_choice(id->choices_key()->value()->find_by_name_with_prefix( - ELikeSplitChoiceValue::canonical_name_with_prefix())); + std::shared_ptr<const ChoiceValue> symbols_choice(id->choices_key()->value()->find_by_name_with_prefix( + ELikeSymbolsChoiceValue::canonical_name_with_prefix())); EStripper stripper(make_named_values<EStripperOptions>( - n::debug_dir() = package_builddir / "image" / "usr" / libdir / "debug", - n::image_dir() = package_builddir / "image", - n::output_manager() = output_manager, - n::package_id() = id, - n::split() = split_choice && split_choice->enabled(), - n::strip() = strip_choice && strip_choice->enabled() - )); + n::compress_splits() = symbols_choice && symbols_choice->enabled() && ELikeSymbolsChoiceValue::should_compress( + symbols_choice->parameter()), + n::debug_dir() = package_builddir / "image" / "usr" / libdir / "debug", + n::image_dir() = package_builddir / "image", + n::output_manager() = output_manager, + n::package_id() = id, + n::split() = symbols_choice && symbols_choice->enabled() && ELikeSymbolsChoiceValue::should_split(symbols_choice->parameter()), + n::strip() = symbols_choice && symbols_choice->enabled() && ELikeSymbolsChoiceValue::should_strip(symbols_choice->parameter()) + )); stripper.strip(); } } diff --git a/paludis/repositories/e/e_stripper.cc b/paludis/repositories/e/e_stripper.cc index 8d4324bef..185cb16a2 100644 --- a/paludis/repositories/e/e_stripper.cc +++ b/paludis/repositories/e/e_stripper.cc @@ -42,7 +42,7 @@ namespace paludis EStripper::EStripper(const EStripperOptions & options) : Stripper(make_named_values<StripperOptions>( - n::compress_splits() = false, + n::compress_splits() = options.compress_splits(), n::debug_dir() = options.debug_dir(), n::image_dir() = options.image_dir(), n::split() = options.split(), diff --git a/paludis/repositories/e/e_stripper.hh b/paludis/repositories/e/e_stripper.hh index d0c4fb507..e9f11217e 100644 --- a/paludis/repositories/e/e_stripper.hh +++ b/paludis/repositories/e/e_stripper.hh @@ -29,6 +29,7 @@ namespace paludis { namespace n { + typedef Name<struct name_compress_splits> compress_splits; typedef Name<struct name_debug_dir> debug_dir; typedef Name<struct name_image_dir> image_dir; typedef Name<struct name_output_manager> output_manager; @@ -41,6 +42,7 @@ namespace paludis { struct EStripperOptions { + NamedValue<n::compress_splits, bool> compress_splits; NamedValue<n::debug_dir, FSPath> debug_dir; NamedValue<n::image_dir, FSPath> image_dir; NamedValue<n::output_manager, std::shared_ptr<OutputManager> > output_manager; diff --git a/paludis/repositories/e/ebuild_id.cc b/paludis/repositories/e/ebuild_id.cc index 0b3a03051..36a9139ae 100644 --- a/paludis/repositories/e/ebuild_id.cc +++ b/paludis/repositories/e/ebuild_id.cc @@ -1579,12 +1579,9 @@ EbuildID::add_build_options(const std::shared_ptr<Choices> & choices) const build_options->add(std::make_shared<ELikeExpensiveTestsChoiceValue>(shared_from_this(), _imp->environment, build_options, false)); } - /* split, strip */ + /* symbols */ if (may_be_unrestricted_strip) - { - build_options->add(std::make_shared<ELikeSplitChoiceValue>(shared_from_this(), _imp->environment, build_options, indeterminate)); - build_options->add(std::make_shared<ELikeStripChoiceValue>(shared_from_this(), _imp->environment, build_options, indeterminate)); - } + build_options->add(std::make_shared<ELikeSymbolsChoiceValue>(shared_from_this(), _imp->environment, build_options, last_escvp)); /* jobs */ if (! eapi()->supported()->ebuild_environment_variables()->env_jobs().empty()) |