summaryrefslogtreecommitdiff
path: root/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch')
-rw-r--r--dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch457
1 files changed, 457 insertions, 0 deletions
diff --git a/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch b/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch
new file mode 100644
index 000000000000..ad3941a455dd
--- /dev/null
+++ b/dev-vcs/git/files/git-2.33.0_rc0-optional-cvs.patch
@@ -0,0 +1,457 @@
+From 52dd2a35fece797c9a0bc23dd59154331a6c0472 Mon Sep 17 00:00:00 2001
+From: Robin Johnson <robbat2@gentoo.org>
+Date: Tue, 14 May 2019 08:53:06 +0200
+Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface
+ utilities
+
+Forward-ported from 1.7.12 to current git.git v1.8.4
+Forward-ported from v1.8.4 to v1.8.5.1
+Forward-ported from v1.8.5.3 to v1.9.0_rc3
+Forward-ported from 1.9.0_rc3 to current git.git v2.0.0_rc0
+Forward-ported from v2.0.0_rc0 to v2.0.0
+Forward-ported from v2.0.0 to v2.2.2
+Forward-ported from v2.2.2 to v2.8.4
+Forward-ported from v2.8.4 to v2.10.0
+Forward-ported from v2.10.0 to v2.12.0
+Forward-ported from v2.12.0 to v2.17.0-rc1
+Forward-ported from v2.17.0-rc1 to v2.18.0-rc1
+Forward-ported from v2.18.0-rc1 to v2.22.0-rc0
+Forward-ported from v2.22.0-rc0 to v2.31.0-rc0
+Forward-ported from v2.31.0-rc0 to v2.33.0-rc0
+
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ Makefile | 50 ++++++++++++++++++++++--------
+ t/t9200-git-cvsexportcommit.sh | 5 +++
+ t/t9400-git-cvsserver-server.sh | 8 ++++-
+ t/t9401-git-cvsserver-crlf.sh | 15 ++++++---
+ t/t9600-cvsimport.sh | 41 +++++++++++++++---------
+ t/t9601-cvsimport-vendor-branch.sh | 11 +++++++
+ t/t9602-cvsimport-branches-tags.sh | 11 +++++++
+ t/t9603-cvsimport-patchsets.sh | 11 +++++++
+ t/test-lib.sh | 1 +
+ 9 files changed, 119 insertions(+), 34 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index c6f6246bf6..e701070b74 100644
+--- a/Makefile
++++ b/Makefile
+@@ -308,6 +308,8 @@ all::
+ # Define SANE_TEXT_GREP to "-a" if you use recent versions of GNU grep
+ # and egrep that are pickier when their input contains non-ASCII data.
+ #
++# Define NO_CVS if you do not want any CVS interface utilities.
++#
+ # The TCL_PATH variable governs the location of the Tcl interpreter
+ # used to optimize git-gui for your system. Only used if NO_TCLTK
+ # is not set. Defaults to the bare 'tclsh'.
+@@ -589,6 +591,7 @@ PROGRAM_OBJS =
+ PROGRAMS =
+ EXCLUDED_PROGRAMS =
+ SCRIPT_PERL =
++SCRIPT_PERL_CVS =
+ SCRIPT_PYTHON =
+ SCRIPT_SH =
+ SCRIPT_LIB =
+@@ -622,31 +625,33 @@ SCRIPT_LIB += git-sh-setup
+
+ SCRIPT_PERL += git-add--interactive.perl
+ SCRIPT_PERL += git-archimport.perl
+-SCRIPT_PERL += git-cvsexportcommit.perl
+-SCRIPT_PERL += git-cvsimport.perl
+-SCRIPT_PERL += git-cvsserver.perl
+ SCRIPT_PERL += git-send-email.perl
+ SCRIPT_PERL += git-svn.perl
+
++SCRIPT_PERL_CVS += git-cvsexportcommit.perl
++SCRIPT_PERL_CVS += git-cvsimport.perl
++SCRIPT_PERL_CVS += git-cvsserver.perl
++
+ SCRIPT_PYTHON += git-p4.py
+
+ # Generated files for scripts
+ SCRIPT_SH_GEN = $(patsubst %.sh,%,$(SCRIPT_SH))
+ SCRIPT_PERL_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL))
++SCRIPT_PERL_CVS_GEN = $(patsubst %.perl,%,$(SCRIPT_PERL_CVS))
+ SCRIPT_PYTHON_GEN = $(patsubst %.py,%,$(SCRIPT_PYTHON))
+
+ # Individual rules to allow e.g.
+ # "make -C ../.. SCRIPT_PERL=contrib/foo/bar.perl build-perl-script"
+ # from subdirectories like contrib/*/
+ .PHONY: build-perl-script build-sh-script build-python-script
+-build-perl-script: $(SCRIPT_PERL_GEN)
++build-perl-script: $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN)
+ build-sh-script: $(SCRIPT_SH_GEN)
+ build-python-script: $(SCRIPT_PYTHON_GEN)
+
+ .PHONY: install-perl-script install-sh-script install-python-script
+ install-sh-script: $(SCRIPT_SH_GEN)
+ $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
+-install-perl-script: $(SCRIPT_PERL_GEN)
++install-perl-script: $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN)
+ $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
+ install-python-script: $(SCRIPT_PYTHON_GEN)
+ $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'
+@@ -655,12 +660,13 @@ install-python-script: $(SCRIPT_PYTHON_GEN)
+ clean-sh-script:
+ $(RM) $(SCRIPT_SH_GEN)
+ clean-perl-script:
+- $(RM) $(SCRIPT_PERL_GEN)
++ $(RM) $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN)
+ clean-python-script:
+ $(RM) $(SCRIPT_PYTHON_GEN)
+
+ SCRIPTS = $(SCRIPT_SH_GEN) \
+ $(SCRIPT_PERL_GEN) \
++ $(SCRIPT_PERL_CVS_GEN) \
+ $(SCRIPT_PYTHON_GEN) \
+ git-instaweb
+
+@@ -2299,13 +2305,27 @@ git.res: git.rc GIT-VERSION-FILE GIT-PREFIX
+ -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" -i $< -o $@
+
+ # This makes sure we depend on the NO_PERL setting itself.
+-$(SCRIPT_PERL_GEN): GIT-BUILD-OPTIONS
++$(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN): GIT-BUILD-OPTIONS
++
++_SCRIPT_PERL_GEN =
++_SCRIPT_PERL_NOGEN =
+
+ # Used for substitution in Perl modules. Disabled when using RUNTIME_PREFIX
+ # since the locale directory is injected.
+ perl_localedir_SQ = $(localedir_SQ)
+
+ ifndef NO_PERL
++_SCRIPT_PERL_GEN = $(SCRIPT_PERL_GEN)
++
++ifndef NO_CVS
++_SCRIPT_PERL_GEN += $(SCRIPT_PERL_CVS_GEN)
++else
++_SCRIPT_PERL_NOGEN += $(SCRIPT_PERL_CVS_GEN)
++_REASON = NO_CVS
++_REASON_CONTENT = $(NO_CVS)
++endif # NO_CVS
++
++$(_SCRIPT_PERL_GEN):
+ PERL_HEADER_TEMPLATE = perl/header_templates/fixed_prefix.template.pl
+ PERL_DEFINES =
+ PERL_DEFINES += $(PERL_PATH_SQ)
+@@ -2329,7 +2349,7 @@ endif
+
+ PERL_DEFINES += $(gitexecdir) $(perllibdir) $(localedir)
+
+-$(SCRIPT_PERL_GEN): % : %.perl GIT-PERL-DEFINES GIT-PERL-HEADER GIT-VERSION-FILE
++$(_SCRIPT_PERL_GEN): % : %.perl GIT-PERL-DEFINES GIT-PERL-HEADER GIT-VERSION-FILE
+ $(QUIET_GEN) \
+ sed -e '1{' \
+ -e ' s|#!.*perl|#!$(PERL_PATH_SQ)|' \
+@@ -2375,14 +2395,18 @@ git-instaweb: git-instaweb.sh GIT-SCRIPT-DEFINES
+ chmod +x $@+ && \
+ mv $@+ $@
+ else # NO_PERL
+-$(SCRIPT_PERL_GEN) git-instaweb: % : unimplemented.sh
+- $(QUIET_GEN) \
++_SCRIPT_PERL_NOGEN += $(SCRIPT_PERL_GEN) $(SCRIPT_PERL_CVS_GEN) git-instaweb
++_REASON = NO_PERL
++_REASON_CONTENT = $(NO_PERL)
++endif # NO_PERL
++
++$(_SCRIPT_PERL_NOGEN): % : unimplemented.sh
++ $(QUIET_GEN)$(RM) $@ $@+ && \
+ sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
+- -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \
++ -e 's|@@REASON@@|$(_REASON)=$(_REASON_CONTENT)|g' \
+ unimplemented.sh >$@+ && \
+ chmod +x $@+ && \
+ mv $@+ $@
+-endif # NO_PERL
+
+ # This makes sure we depend on the NO_PYTHON setting itself.
+ $(SCRIPT_PYTHON_GEN): GIT-BUILD-OPTIONS
+@@ -2650,7 +2674,7 @@ LOCALIZED_C = $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H)
+ LOCALIZED_SH = $(SCRIPT_SH)
+ LOCALIZED_SH += git-rebase--preserve-merges.sh
+ LOCALIZED_SH += git-sh-setup.sh
+-LOCALIZED_PERL = $(SCRIPT_PERL)
++LOCALIZED_PERL = $(SCRIPT_PERL) $(SCRIPT_PERL_CVS)
+
+ ifdef XGETTEXT_INCLUDE_TESTS
+ LOCALIZED_C += t/t0200/test.c
+diff --git a/t/t9200-git-cvsexportcommit.sh b/t/t9200-git-cvsexportcommit.sh
+index c5946cb0b8..223fd5409b 100755
+--- a/t/t9200-git-cvsexportcommit.sh
++++ b/t/t9200-git-cvsexportcommit.sh
+@@ -11,6 +11,11 @@ if ! test_have_prereq PERL; then
+ test_done
+ fi
+
++if ! test_have_prereq CVS; then
++ skip_all='skipping git cvsexportcommit tests, cvs not available'
++ test_done
++fi
++
+ cvs >/dev/null 2>&1
+ if test $? -ne 1
+ then
+diff --git a/t/t9400-git-cvsserver-server.sh b/t/t9400-git-cvsserver-server.sh
+index 2d29d486ee..2ca6db10e0 100755
+--- a/t/t9400-git-cvsserver-server.sh
++++ b/t/t9400-git-cvsserver-server.sh
+@@ -14,9 +14,15 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
+ . ./test-lib.sh
+
+ if ! test_have_prereq PERL; then
+- skip_all='skipping git cvsserver tests, perl not available'
++ skip_all='skipping git-cvsserver tests, perl not available'
+ test_done
+ fi
++
++if ! test_have_prereq CVS; then
++ skip_all='skipping git-cvsserver tests, cvs not available'
++ test_done
++fi
++
+ cvs >/dev/null 2>&1
+ if test $? -ne 1
+ then
+diff --git a/t/t9401-git-cvsserver-crlf.sh b/t/t9401-git-cvsserver-crlf.sh
+index a34805acdc..0d7759f73b 100755
+--- a/t/t9401-git-cvsserver-crlf.sh
++++ b/t/t9401-git-cvsserver-crlf.sh
+@@ -60,15 +60,20 @@ check_status_options() {
+ return $stat
+ }
+
+-cvs >/dev/null 2>&1
+-if test $? -ne 1
++if ! test_have_prereq PERL
+ then
+- skip_all='skipping git-cvsserver tests, cvs not found'
++ skip_all='skipping git-cvsserver tests, perl not available'
+ test_done
+ fi
+-if ! test_have_prereq PERL
++if ! test_have_prereq CVS
+ then
+- skip_all='skipping git-cvsserver tests, perl not available'
++ skip_all='skipping git-cvsserver tests, cvs not available'
++ test_done
++fi
++cvs >/dev/null 2>&1
++if test $? -ne 1
++then
++ skip_all='skipping git-cvsserver tests, cvs not found'
+ test_done
+ fi
+ perl -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || {
+diff --git a/t/t9600-cvsimport.sh b/t/t9600-cvsimport.sh
+index 5680849218..7288db820b 100755
+--- a/t/t9600-cvsimport.sh
++++ b/t/t9600-cvsimport.sh
+@@ -11,14 +11,25 @@ if ! test_have_prereq NOT_ROOT; then
+ test_done
+ fi
+
+-test_expect_success PERL 'setup cvsroot environment' '
++if ! test_have_prereq PERL
++then
++ skip_all='skipping git cvsimport tests, perl not available'
++ test_done
++fi
++if ! test_have_prereq CVS
++then
++ skip_all='skipping git cvsimport tests, cvs not available'
++ test_done
++fi
++
++test_expect_success 'setup cvsroot environment' '
+ CVSROOT=$(pwd)/cvsroot &&
+ export CVSROOT
+ '
+
+-test_expect_success PERL 'setup cvsroot' '$CVS init'
++test_expect_success 'setup cvsroot' '$CVS init'
+
+-test_expect_success PERL 'setup a cvs module' '
++test_expect_success 'setup a cvs module' '
+
+ mkdir "$CVSROOT/module" &&
+ $CVS co -d module-cvs module &&
+@@ -50,23 +61,23 @@ EOF
+ )
+ '
+
+-test_expect_success PERL 'import a trivial module' '
++test_expect_success 'import a trivial module' '
+
+ git cvsimport -a -R -z 0 -C module-git module &&
+ test_cmp module-cvs/o_fortuna module-git/o_fortuna
+
+ '
+
+-test_expect_success PERL 'pack refs' '(cd module-git && git gc)'
++test_expect_success 'pack refs' '(cd module-git && git gc)'
+
+-test_expect_success PERL 'initial import has correct .git/cvs-revisions' '
++test_expect_success 'initial import has correct .git/cvs-revisions' '
+
+ (cd module-git &&
+ git log --format="o_fortuna 1.1 %H" -1) > expected &&
+ test_cmp expected module-git/.git/cvs-revisions
+ '
+
+-test_expect_success PERL 'update cvs module' '
++test_expect_success 'update cvs module' '
+ (cd module-cvs &&
+ cat <<EOF >o_fortuna &&
+ O Fortune,
+@@ -94,7 +105,7 @@ EOF
+ )
+ '
+
+-test_expect_success PERL 'update git module' '
++test_expect_success 'update git module' '
+
+ (cd module-git &&
+ git config cvsimport.trackRevisions true &&
+@@ -105,7 +116,7 @@ test_expect_success PERL 'update git module' '
+
+ '
+
+-test_expect_success PERL 'update has correct .git/cvs-revisions' '
++test_expect_success 'update has correct .git/cvs-revisions' '
+
+ (cd module-git &&
+ git log --format="o_fortuna 1.1 %H" -1 HEAD^ &&
+@@ -113,7 +124,7 @@ test_expect_success PERL 'update has correct .git/cvs-revisions' '
+ test_cmp expected module-git/.git/cvs-revisions
+ '
+
+-test_expect_success PERL 'update cvs module' '
++test_expect_success 'update cvs module' '
+
+ (cd module-cvs &&
+ echo 1 >tick &&
+@@ -122,7 +133,7 @@ test_expect_success PERL 'update cvs module' '
+ )
+ '
+
+-test_expect_success PERL 'cvsimport.module config works' '
++test_expect_success 'cvsimport.module config works' '
+
+ (cd module-git &&
+ git config cvsimport.module module &&
+@@ -134,7 +145,7 @@ test_expect_success PERL 'cvsimport.module config works' '
+
+ '
+
+-test_expect_success PERL 'second update has correct .git/cvs-revisions' '
++test_expect_success 'second update has correct .git/cvs-revisions' '
+
+ (cd module-git &&
+ git log --format="o_fortuna 1.1 %H" -1 HEAD^^ &&
+@@ -143,7 +154,7 @@ test_expect_success PERL 'second update has correct .git/cvs-revisions' '
+ test_cmp expected module-git/.git/cvs-revisions
+ '
+
+-test_expect_success PERL 'import from a CVS working tree' '
++test_expect_success 'import from a CVS working tree' '
+
+ $CVS co -d import-from-wt module &&
+ (cd import-from-wt &&
+@@ -156,12 +167,12 @@ test_expect_success PERL 'import from a CVS working tree' '
+
+ '
+
+-test_expect_success PERL 'no .git/cvs-revisions created by default' '
++test_expect_success 'no .git/cvs-revisions created by default' '
+
+ ! test -e import-from-wt/.git/cvs-revisions
+
+ '
+
+-test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree main'
++test_expect_success 'test entire HEAD' 'test_cmp_branch_tree main'
+
+ test_done
+diff --git a/t/t9601-cvsimport-vendor-branch.sh b/t/t9601-cvsimport-vendor-branch.sh
+index 116cddba3a..a7e7299c81 100755
+--- a/t/t9601-cvsimport-vendor-branch.sh
++++ b/t/t9601-cvsimport-vendor-branch.sh
+@@ -37,6 +37,17 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
+
+ . ./lib-cvs.sh
+
++if ! test_have_prereq PERL
++then
++ skip_all='skipping git cvsimport tests, perl not available'
++ test_done
++fi
++if ! test_have_prereq CVS
++then
++ skip_all='skipping git cvsimport tests, cvs not available'
++ test_done
++fi
++
+ setup_cvs_test_repository t9601
+
+ test_expect_success PERL 'import a module with a vendor branch' '
+diff --git a/t/t9602-cvsimport-branches-tags.sh b/t/t9602-cvsimport-branches-tags.sh
+index e5266c9a87..0e1878ffd3 100755
+--- a/t/t9602-cvsimport-branches-tags.sh
++++ b/t/t9602-cvsimport-branches-tags.sh
+@@ -9,6 +9,17 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
+
+ . ./lib-cvs.sh
+
++if ! test_have_prereq PERL
++then
++ skip_all='skipping git cvsimport tests, perl not available'
++ test_done
++fi
++if ! test_have_prereq CVS
++then
++ skip_all='skipping git cvsimport tests, cvs not available'
++ test_done
++fi
++
+ setup_cvs_test_repository t9602
+
+ test_expect_success PERL 'import module' '
+diff --git a/t/t9603-cvsimport-patchsets.sh b/t/t9603-cvsimport-patchsets.sh
+index 0e9daa5768..598c8595c5 100755
+--- a/t/t9603-cvsimport-patchsets.sh
++++ b/t/t9603-cvsimport-patchsets.sh
+@@ -17,6 +17,17 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
+
+ . ./lib-cvs.sh
+
++if ! test_have_prereq PERL
++then
++ skip_all='skipping git cvsimport tests, perl not available'
++ test_done
++fi
++if ! test_have_prereq CVS
++then
++ skip_all='skipping git cvsimport tests, cvs not available'
++ test_done
++fi
++
+ setup_cvs_test_repository t9603
+
+ test_expect_failure PERL 'import with criss cross times on revisions' '
+diff --git a/t/test-lib.sh b/t/test-lib.sh
+index da13190970..aa4b4aa161 100644
+--- a/t/test-lib.sh
++++ b/t/test-lib.sh
+@@ -1521,6 +1521,7 @@ esac
+ test_set_prereq REFFILES
+
+ ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1
++test -z "$NO_CVS" && test_set_prereq CVS
+ test -z "$NO_PERL" && test_set_prereq PERL
+ test -z "$NO_PTHREADS" && test_set_prereq PTHREADS
+ test -z "$NO_PYTHON" && test_set_prereq PYTHON
+--
+2.32.0
+