diff options
-rw-r--r-- | paludis/repositories/e/e_repository_TEST_5.cc | 9 | ||||
-rwxr-xr-x | paludis/repositories/e/e_repository_TEST_5_setup.sh | 17 | ||||
-rw-r--r-- | paludis/repositories/e/e_repository_TEST_6.cc | 9 | ||||
-rwxr-xr-x | paludis/repositories/e/e_repository_TEST_6_setup.sh | 17 | ||||
-rw-r--r-- | paludis/repositories/e/eapis/0.conf | 1 | ||||
-rw-r--r-- | paludis/repositories/e/eapis/6.conf | 1 | ||||
-rw-r--r-- | paludis/repositories/e/eapis/paludis-1.conf | 1 |
7 files changed, 55 insertions, 0 deletions
diff --git a/paludis/repositories/e/e_repository_TEST_5.cc b/paludis/repositories/e/e_repository_TEST_5.cc index c482655b8..57611e02f 100644 --- a/paludis/repositories/e/e_repository_TEST_5.cc +++ b/paludis/repositories/e/e_repository_TEST_5.cc @@ -366,6 +366,15 @@ TEST(ERepository, InstallEAPI5) EXPECT_EQ("5", visitor_cast<const MetadataValueKey<std::string> >(**id->find_metadata("EAPI"))->parse_value()); id->perform_action(action); } + + { + const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( + PackageDepSpec(parse_user_package_dep_spec("=cat/bash-compat-5", + &env, { })), nullptr, { }))]->last()); + ASSERT_TRUE(bool(id)); + EXPECT_EQ("5", visitor_cast<const MetadataValueKey<std::string> >(**id->find_metadata("EAPI"))->parse_value()); + id->perform_action(action); + } } TEST(ERepository, RequiredUse) diff --git a/paludis/repositories/e/e_repository_TEST_5_setup.sh b/paludis/repositories/e/e_repository_TEST_5_setup.sh index 3e546ffe1..9d43382ef 100755 --- a/paludis/repositories/e/e_repository_TEST_5_setup.sh +++ b/paludis/repositories/e/e_repository_TEST_5_setup.sh @@ -735,6 +735,23 @@ cat << 'END' > cat/default_src_prepare/files/first.patch || exit 1 +second END +mkdir -p "cat/bash-compat" || exit 1 +cat << 'END' > cat/bash-compat/bash-compat-5.ebuild || exit 1 +EAPI="5" +DESCRIPTION="The Description" +HOMEPAGE="http://example.com/" +SRC_URI="" +SLOT="0" +IUSE="" +LICENSE="GPL-2" +KEYWORDS="test" + +pkg_setup() { + local compat=$(shopt | sed -n -e '/^compat/s/[ \t]\+on$//p') + [[ ${compat} == compat32 ]] || die compat=${compat} +} +END + mkdir -p "cat/subslots" || exit 1 cat << 'END' > cat/subslots/subslots-5.ebuild || exit 1 EAPI="5" diff --git a/paludis/repositories/e/e_repository_TEST_6.cc b/paludis/repositories/e/e_repository_TEST_6.cc index 0cda4f83f..eac906c97 100644 --- a/paludis/repositories/e/e_repository_TEST_6.cc +++ b/paludis/repositories/e/e_repository_TEST_6.cc @@ -697,5 +697,14 @@ TEST(ERepository, InstallEAPI6) EXPECT_EQ("6", visitor_cast<const MetadataValueKey<std::string> >(**id->find_metadata("EAPI"))->parse_value()); id->perform_action(action); } + + { + const std::shared_ptr<const PackageID> id(*env[selection::RequireExactlyOne(generator::Matches( + PackageDepSpec(parse_user_package_dep_spec("=cat/bash-compat-6", + &env, { })), nullptr, { }))]->last()); + ASSERT_TRUE(bool(id)); + EXPECT_EQ("6", visitor_cast<const MetadataValueKey<std::string> >(**id->find_metadata("EAPI"))->parse_value()); + id->perform_action(action); + } } diff --git a/paludis/repositories/e/e_repository_TEST_6_setup.sh b/paludis/repositories/e/e_repository_TEST_6_setup.sh index 94d05cc2c..33e3d83b5 100755 --- a/paludis/repositories/e/e_repository_TEST_6_setup.sh +++ b/paludis/repositories/e/e_repository_TEST_6_setup.sh @@ -1943,5 +1943,22 @@ cat << 'END' > cat/default_src_prepare-empty-PATCHES-array/files/first.patch || +second END +mkdir -p "cat/bash-compat" || exit 1 +cat << 'END' > cat/bash-compat/bash-compat-6.ebuild || exit 1 +EAPI="6" +DESCRIPTION="The Description" +HOMEPAGE="http://example.com/" +SRC_URI="" +SLOT="0" +IUSE="" +LICENSE="GPL-2" +KEYWORDS="test" + +pkg_setup() { + local compat=$(shopt | sed -n -e '/^compat/s/[ \t]\+on$//p') + [[ ${compat} == compat42 ]] || die compat=${compat} +} +END + cd .. cd .. diff --git a/paludis/repositories/e/eapis/0.conf b/paludis/repositories/e/eapis/0.conf index 60cb8e621..40a6a1376 100644 --- a/paludis/repositories/e/eapis/0.conf +++ b/paludis/repositories/e/eapis/0.conf @@ -18,6 +18,7 @@ require_use_expand_in_iuse = false profile_iuse_injection = false support_eclasses = true support_exlibs = false +shell_options = compat32 utility_path_suffixes = ebuild_module_suffixes = 0 f_function_prefix = ebuild_f diff --git a/paludis/repositories/e/eapis/6.conf b/paludis/repositories/e/eapis/6.conf index a9b155504..263bbda47 100644 --- a/paludis/repositories/e/eapis/6.conf +++ b/paludis/repositories/e/eapis/6.conf @@ -9,6 +9,7 @@ is_pbin = false ebuild_module_suffixes = 6 5 4 3 2 1 0 utility_path_suffixes = 6 5 4 3 2 1 0 +shell_options = compat42 shell_options_global = failglob die_supports_dash_n = true diff --git a/paludis/repositories/e/eapis/paludis-1.conf b/paludis/repositories/e/eapis/paludis-1.conf index 08f88c070..e6856c589 100644 --- a/paludis/repositories/e/eapis/paludis-1.conf +++ b/paludis/repositories/e/eapis/paludis-1.conf @@ -18,6 +18,7 @@ require_use_expand_in_iuse = false profile_iuse_injection = false support_eclasses = true support_exlibs = false +shell_options = compat32 utility_path_suffixes = ebuild_module_suffixes = paludis-1 1 0 use_expand_separator = _ |