aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Bo ├śrsted Andresen <bo.andresen@zlin.dk> 2010-03-05 18:23:05 +0000
committerAvatar Bo ├śrsted Andresen <bo.andresen@zlin.dk> 2010-03-10 15:19:28 +0000
commit95ca9fd309779c12713b8e27374c6900d6a163d7 (patch)
treed59696288ff3d2ae0497af942e119a99c390b92f
parent1cd46c814b52f1b9b61a7ac40f8d3ba58eac7748 (diff)
downloadpaludis-95ca9fd309779c12713b8e27374c6900d6a163d7.tar.gz
paludis-95ca9fd309779c12713b8e27374c6900d6a163d7.tar.xz
Enable the globstar shell option in exheres-0.
This allows you to use the '**' pattern to match any number of subdirectories.
-rw-r--r--paludis/repositories/e/eapi.cc1
-rw-r--r--paludis/repositories/e/eapi.hh2
-rw-r--r--paludis/repositories/e/eapis/exheres-0.conf1
-rw-r--r--paludis/repositories/e/ebuild.cc2
-rwxr-xr-xpaludis/repositories/e/ebuild/ebuild.bash3
5 files changed, 9 insertions, 0 deletions
diff --git a/paludis/repositories/e/eapi.cc b/paludis/repositories/e/eapi.cc
index a5ff023..21386ae 100644
--- a/paludis/repositories/e/eapi.cc
+++ b/paludis/repositories/e/eapi.cc
@@ -186,6 +186,7 @@ namespace
value_for<n::save_base_variables>(check_get(k, "save_base_variables")),
value_for<n::save_unmodifiable_variables>(check_get(k, "save_unmodifiable_variables")),
value_for<n::save_variables>(check_get(k, "save_variables")),
+ value_for<n::shell_options>(check_get(k, "shell_options")),
value_for<n::source_merged_variables>(check_get(k, "source_merged_variables")),
value_for<n::support_eclasses>(destringify_key<bool>(k, "support_eclasses")),
value_for<n::support_exlibs>(destringify_key<bool>(k, "support_exlibs")),
diff --git a/paludis/repositories/e/eapi.hh b/paludis/repositories/e/eapi.hh
index 971bce3..5829b85 100644
--- a/paludis/repositories/e/eapi.hh
+++ b/paludis/repositories/e/eapi.hh
@@ -164,6 +164,7 @@ namespace paludis
struct save_base_variables;
struct save_unmodifiable_variables;
struct save_variables;
+ struct shell_options;
struct short_description;
struct slot;
struct source_merged_variables;
@@ -391,6 +392,7 @@ namespace paludis
NamedValue<n::save_base_variables, std::string> save_base_variables;
NamedValue<n::save_unmodifiable_variables, std::string> save_unmodifiable_variables;
NamedValue<n::save_variables, std::string> save_variables;
+ NamedValue<n::shell_options, std::string> shell_options;
NamedValue<n::source_merged_variables, std::string> source_merged_variables;
NamedValue<n::support_eclasses, bool> support_eclasses;
NamedValue<n::support_exlibs, bool> support_exlibs;
diff --git a/paludis/repositories/e/eapis/exheres-0.conf b/paludis/repositories/e/eapis/exheres-0.conf
index cbca610..87802ec 100644
--- a/paludis/repositories/e/eapis/exheres-0.conf
+++ b/paludis/repositories/e/eapis/exheres-0.conf
@@ -340,6 +340,7 @@ doins_symlink = true
failure_is_fatal = true
no_s_workdir_fallback = true
fix_mtimes = true
+shell_options = globstar
unpack_suffixes = tar tar.gz,tgz,tar.Z tar.bz2,tbz2,tbz zip,ZIP,jar gz,Z,z bz2 rar,RAR lha,LHa,LHA,lzh a,deb tar.lzma lzma 7z,7Z tar.xz xz
diff --git a/paludis/repositories/e/ebuild.cc b/paludis/repositories/e/ebuild.cc
index 7b283e5..52a95a8 100644
--- a/paludis/repositories/e/ebuild.cc
+++ b/paludis/repositories/e/ebuild.cc
@@ -260,6 +260,8 @@ EbuildCommand::operator() ()
params.package_id()->eapi()->supported()->ebuild_environment_variables()->env_ebuild_phase())
.with_setenv("PALUDIS_PIPE_COMMANDS_SUPPORTED", "yes")
.with_setenv("PALUDIS_PIPE_COMMAND_DELIM", "\2")
+ .with_setenv("PALUDIS_SHELL_OPTIONS",
+ params.package_id()->eapi()->supported()->ebuild_options()->shell_options())
)
.with_setenv("SLOT", "")
.with_setenv("PALUDIS_PROFILE_DIR", "")
diff --git a/paludis/repositories/e/ebuild/ebuild.bash b/paludis/repositories/e/ebuild/ebuild.bash
index 552265f..211acea 100755
--- a/paludis/repositories/e/ebuild/ebuild.bash
+++ b/paludis/repositories/e/ebuild/ebuild.bash
@@ -82,6 +82,9 @@ fi
shopt -s expand_aliases
shopt -s extglob
+for p in ${PALUDIS_SHELL_OPTIONS} ; do
+ shopt -s ${p}
+done
export ROOT="${ROOT%+(/)}/"