diff options
Diffstat (limited to 'dev-util/schroot/files')
-rw-r--r-- | dev-util/schroot/files/schroot-1.4.7-tests.patch | 81 | ||||
-rw-r--r-- | dev-util/schroot/files/schroot-1.6.10-cmake-add-additional-regex-tests.patch | 70 | ||||
-rw-r--r-- | dev-util/schroot/files/schroot-1.6.3-tests.patch | 86 | ||||
-rw-r--r-- | dev-util/schroot/files/schroot.confd | 9 | ||||
-rw-r--r-- | dev-util/schroot/files/schroot.initd | 41 |
5 files changed, 287 insertions, 0 deletions
diff --git a/dev-util/schroot/files/schroot-1.4.7-tests.patch b/dev-util/schroot/files/schroot-1.4.7-tests.patch new file mode 100644 index 000000000000..4a492e7feb97 --- /dev/null +++ b/dev-util/schroot/files/schroot-1.4.7-tests.patch @@ -0,0 +1,81 @@ +--- schroot-1.4.7.orig/configure.ac ++++ schroot-1.4.7/configure.ac +@@ -265,6 +265,19 @@ AC_ARG_WITH([bash-completion-dir], [AS_H + AC_MSG_RESULT([$bashcompletiondir]) + AC_SUBST([bashcompletiondir]) + ++AC_MSG_CHECKING([whether to enable root-only unit tests]) ++AC_ARG_ENABLE([root-tests], [AS_HELP_STRING([--with-root-tests], [Enable root-only tests])], ++ [ case "${enableval}" in ++ yes) enable_root_tests="yes" ;; ++ no) enable_root_tests="no" ;; ++ *) AC_MSG_RESULT([unknown]) ++ AC_MSG_ERROR([bad value ${enableval} for --enable-root-tests]) ;; ++ esac], ++ [ enable_root_tests="yes" ]) ++AC_MSG_RESULT([$enable_root_tests]) ++AM_CONDITIONAL([USE_ROOT_TESTS], [test "$enable_root_tests" = "yes"]) ++AC_SUBST([enable_root_tests]) ++ + # Checks for programs. + AC_PROG_CXX + AC_LANG([C++]) +--- schroot-1.4.7.orig/test/Makefile.am ++++ schroot-1.4.7/test/Makefile.am +@@ -24,10 +24,12 @@ include $(top_srcdir)/scripts/global.mk + LOCAL_CXXFLAGS = $(SCHROOT_CFLAGS) $(CPPUNIT_CFLAGS) -DTESTDATADIR='"./testdata"' -I$(top_srcdir)/bin + + if USE_UNIT_TESTS +-noinst_LTLIBRARIES = libtest.la ++check_LTLIBRARIES = libtest.la + +-noinst_PROGRAMS = \ +- sbuild-chroot \ ++ROOT_TESTS = ++ ++if USE_ROOT_TESTS ++ROOT_TESTS += \ + sbuild-chroot-plain \ + sbuild-chroot-file \ + sbuild-chroot-directory \ +@@ -35,7 +37,12 @@ noinst_PROGRAMS = \ + sbuild-chroot-loopback \ + sbuild-chroot-lvm-snapshot \ + sbuild-chroot-btrfs-snapshot \ +- sbuild-chroot-config \ ++ sbuild-chroot-config ++endif ++ ++check_PROGRAMS = \ ++ sbuild-chroot \ ++ $(ROOT_TESTS) \ + sbuild-environment \ + sbuild-keyfile \ + sbuild-lock \ +@@ -52,14 +59,7 @@ noinst_PROGRAMS = \ + # randomly on slow or heavily-loaded systems. + TESTS = setup-test-data \ + sbuild-chroot \ +- sbuild-chroot-plain \ +- sbuild-chroot-file \ +- sbuild-chroot-directory \ +- sbuild-chroot-block-device \ +- sbuild-chroot-loopback \ +- sbuild-chroot-lvm-snapshot \ +- sbuild-chroot-btrfs-snapshot \ +- sbuild-chroot-config \ ++ $(ROOT_TESTS) \ + sbuild-environment \ + sbuild-keyfile \ + sbuild-log \ +--- schroot-1.4.7.orig/test/setup-test-data ++++ schroot-1.4.7/test/setup-test-data +@@ -4,4 +4,8 @@ + rm -rf testdata + mkdir testdata + cp -r ${srcdir}/*.ex* testdata ++if test `id -u` -ne 0; then ++echo "You are not root, only doing partial setup" ++else + chown -R root:root testdata ++fi diff --git a/dev-util/schroot/files/schroot-1.6.10-cmake-add-additional-regex-tests.patch b/dev-util/schroot/files/schroot-1.6.10-cmake-add-additional-regex-tests.patch new file mode 100644 index 000000000000..1660f18ae4b8 --- /dev/null +++ b/dev-util/schroot/files/schroot-1.6.10-cmake-add-additional-regex-tests.patch @@ -0,0 +1,70 @@ +From 8c9139249689570ff2f4d058ed1031f0cbb6c084 Mon Sep 17 00:00:00 2001 +From: Roger Leigh <rleigh@codelibre.net> +Date: Sun, 26 Jul 2015 14:00:13 +0100 +Subject: [PATCH] cmake: Add additional regex tests and corresponding unit + tests + +--- + cmake/regex-checks.cmake | 10 ++++++++++ + test/sbuild-regex.cc | 20 ++++++++++++++++++++ + 2 files changed, 30 insertions(+) + +diff --git a/cmake/regex-checks.cmake b/cmake/regex-checks.cmake +index d0bb211..60507ec 100644 +--- a/cmake/regex-checks.cmake ++++ b/cmake/regex-checks.cmake +@@ -30,6 +30,16 @@ int main() { + if (${namespace}_match(fail, bar)) return 11; + if (${namespace}_match(fail, chk)) return 12; + ++ // Checks for broken support in GCC 4.9 and 5.1 ++ ${namespace} range1(\"^[a-z0-9][a-z0-9-]*\$\", ${namespace}::extended); ++ ${namespace} range2(\"^[a-z0-9][-a-z0-9]*\$\", ${namespace}::extended); ++ if (!${namespace}_match(test, range1)) return 13; ++ if (!${namespace}_match(test, range2)) return 14; ++ if (!${namespace}_match(\"a-\", range1)) return 15; ++ if (!${namespace}_match(\"a-\", range2)) return 16; ++ if (${namespace}_match(\"-a\", range1)) return 17; ++ if (${namespace}_match(\"-a\", range2)) return 18; ++ + return 0; + }" + ${outvar}) +diff --git a/test/sbuild-regex.cc b/test/sbuild-regex.cc +index 915e915..a8520c5 100644 +--- a/test/sbuild-regex.cc ++++ b/test/sbuild-regex.cc +@@ -33,6 +33,8 @@ class test_regex : public TestCase + CPPUNIT_TEST(test_output); + CPPUNIT_TEST(test_input); + CPPUNIT_TEST(test_match); ++ CPPUNIT_TEST(test_match_bracket1); ++ CPPUNIT_TEST(test_match_bracket2); + CPPUNIT_TEST_EXCEPTION(test_input_fail, std::regex_error); + CPPUNIT_TEST_SUITE_END(); + +@@ -88,6 +90,24 @@ class test_regex : public TestCase + } + + void ++ test_match_bracket1() ++ { ++ sbuild::regex r("^[a-z0-9][a-z0-9-]*$"); ++ CPPUNIT_ASSERT(sbuild::regex_search("foobar", r)); ++ CPPUNIT_ASSERT(sbuild::regex_search("a-", r)); ++ CPPUNIT_ASSERT(!sbuild::regex_search("-a", r)); ++ } ++ ++ void ++ test_match_bracket2() ++ { ++ sbuild::regex r("^[a-z0-9][-a-z0-9]*$"); ++ CPPUNIT_ASSERT(sbuild::regex_search("foobar", r)); ++ CPPUNIT_ASSERT(sbuild::regex_search("a-", r)); ++ CPPUNIT_ASSERT(!sbuild::regex_search("-a", r)); ++ } ++ ++ void + test_input_fail() + { + sbuild::regex r; diff --git a/dev-util/schroot/files/schroot-1.6.3-tests.patch b/dev-util/schroot/files/schroot-1.6.3-tests.patch new file mode 100644 index 000000000000..e58b6bae32ba --- /dev/null +++ b/dev-util/schroot/files/schroot-1.6.3-tests.patch @@ -0,0 +1,86 @@ +diff -purN schroot-1.6.3.orig/configure.ac schroot-1.6.3/configure.ac +--- schroot-1.6.3.orig/configure.ac 2012-07-23 17:54:07.000000000 -0400 ++++ schroot-1.6.3/configure.ac 2012-09-20 03:43:20.451738906 -0400 +@@ -264,6 +264,19 @@ AC_ARG_WITH([bash-completion-dir], [AS_H + AC_MSG_RESULT([$bashcompletiondir]) + AC_SUBST([bashcompletiondir]) + ++AC_MSG_CHECKING([whether to enable root-only unit tests]) ++AC_ARG_ENABLE([root-tests], [AS_HELP_STRING([--with-root-tests], [Enable root-only tests])], ++ [ case "${enableval}" in ++ yes) enable_root_tests="yes" ;; ++ no) enable_root_tests="no" ;; ++ *) AC_MSG_RESULT([unknown]) ++ AC_MSG_ERROR([bad value ${enableval} for --enable-root-tests]) ;; ++ esac], ++ [ enable_root_tests="yes" ]) ++AC_MSG_RESULT([$enable_root_tests]) ++AM_CONDITIONAL([USE_ROOT_TESTS], [test "$enable_root_tests" = "yes"]) ++AC_SUBST([enable_root_tests]) ++ + # Checks for programs. + AC_PROG_CXX + AC_LANG([C++]) +diff -purN schroot-1.6.3.orig/test/Makefile.am schroot-1.6.3/test/Makefile.am +--- schroot-1.6.3.orig/test/Makefile.am 2012-07-23 17:54:07.000000000 -0400 ++++ schroot-1.6.3/test/Makefile.am 2012-09-20 03:45:31.400235841 -0400 +@@ -24,10 +24,12 @@ include $(top_srcdir)/scripts/global.mk + LOCAL_CXXFLAGS = $(SCHROOT_CFLAGS) $(CPPUNIT_CFLAGS) -DTESTDATADIR='"./testdata"' -I$(top_srcdir)/bin + + if USE_UNIT_TESTS +-noinst_LTLIBRARIES = libtest.la ++check_LTLIBRARIES = libtest.la + +-noinst_PROGRAMS = \ +- sbuild-chroot \ ++ROOT_TESTS = ++ ++if USE_ROOT_TESTS ++ROOT_TESTS += \ + sbuild-chroot-plain \ + sbuild-chroot-custom \ + sbuild-chroot-file \ +@@ -37,7 +39,12 @@ noinst_PROGRAMS = \ + sbuild-chroot-lvm-snapshot \ + sbuild-chroot-btrfs-snapshot \ + sbuild-chroot-config \ +- sbuild-chroot-facet-userdata \ ++ sbuild-chroot-facet-userdata ++endif ++ ++check_PROGRAMS = \ ++ sbuild-chroot \ ++ $(ROOT_TESTS) \ + sbuild-environment \ + sbuild-keyfile \ + sbuild-lock \ +@@ -54,16 +61,7 @@ noinst_PROGRAMS = \ + # randomly on slow or heavily-loaded systems. + TESTS = setup-test-data \ + sbuild-chroot \ +- sbuild-chroot-plain \ +- sbuild-chroot-custom \ +- sbuild-chroot-file \ +- sbuild-chroot-directory \ +- sbuild-chroot-block-device \ +- sbuild-chroot-loopback \ +- sbuild-chroot-lvm-snapshot \ +- sbuild-chroot-btrfs-snapshot \ +- sbuild-chroot-config \ +- sbuild-chroot-facet-userdata \ ++ $(ROOT_TESTS) \ + sbuild-environment \ + sbuild-keyfile \ + sbuild-log \ +diff -purN schroot-1.6.3.orig/test/setup-test-data schroot-1.6.3/test/setup-test-data +--- schroot-1.6.3.orig/test/setup-test-data 2012-07-23 17:54:07.000000000 -0400 ++++ schroot-1.6.3/test/setup-test-data 2012-09-20 03:43:20.451738906 -0400 +@@ -4,4 +4,8 @@ + rm -rf testdata + mkdir testdata + cp -r ${srcdir}/*.ex* testdata ++if test `id -u` -ne 0; then ++echo "You are not root, only doing partial setup" ++else + chown -R root:root testdata ++fi diff --git a/dev-util/schroot/files/schroot.confd b/dev-util/schroot/files/schroot.confd new file mode 100644 index 000000000000..b62263175721 --- /dev/null +++ b/dev-util/schroot/files/schroot.confd @@ -0,0 +1,9 @@ +# This is a configuration file for /etc/init.d/schroot; it allows you +# to perform common modifications to the behavior of schroot +# initialization without editing the init script. + +# What do we want to do with "orphan" sessions when starting or +# restarting? Recover them (leave empty or set to "recover") or just +# end them (set to "end")? +SESSIONS_RECOVER="recover" + diff --git a/dev-util/schroot/files/schroot.initd b/dev-util/schroot/files/schroot.initd new file mode 100644 index 000000000000..76ca9944532d --- /dev/null +++ b/dev-util/schroot/files/schroot.initd @@ -0,0 +1,41 @@ +#!/sbin/runscript + +depend() { + need localmount + after net netmount +} + +start() { + local msg param + case "${SESSIONS_RECOVER}" in + end) + msg="Ending" + param="--end-session" + ;; + recover|"") + msg="Recovering" + param="--recover-session" + ;; + *) + ewarn "Invalid value \"$SESSIONS_RECOVER\" for \$SESSIONS_RECOVER, using \"recover\"" + msg="Recovering" + param="--recover-session" + ;; + esac + + einfo "$msg schroot sessions" + eindent + local chroot + local chroots="$(schroot --all-sessions --list --quiet)" + if [ -n "$chroots" ]; then + for chroot in $chroots; do + ebegin "$chroot" + schroot --chroot=$chroot $param + eend $? + done + else + einfo "(none)" + fi + eoutdent + einfo "...done" +} |