| From eadb20b065c33d46b49c8c95d8cde0c9fe7c62a4 Mon Sep 17 00:00:00 2001 |
| From: Robin Johnson <robbat2@gentoo.org> |
| Date: Wed, 22 Aug 2012 04:25:06 +0000 |
| Subject: [PATCH] Makefile: Add NO_CVS define to disable all CVS interface |
| utilities |
| |
| Forward-ported from 1.7.10.2 to current git.git v1.7.12 tag PLUS fix-svn branch. |
| |
| diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/Makefile git-1.7.12/Makefile |
| --- git-1.7.12.orig/Makefile 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/Makefile 2012-08-22 04:23:48.335032122 +0000 |
| @@ -224,6 +224,8 @@ |
| # |
| # Define NO_TCLTK if you do not want Tcl/Tk GUI. |
| # |
| +# 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'. |
| @@ -405,6 +407,7 @@ |
| PROGRAM_OBJS = |
| PROGRAMS = |
| SCRIPT_PERL = |
| +SCRIPT_PERL_CVS = |
| SCRIPT_PYTHON = |
| SCRIPT_SH = |
| SCRIPT_LIB = |
| @@ -445,18 +448,19 @@ |
| SCRIPT_PERL += git-add--interactive.perl |
| SCRIPT_PERL += git-difftool.perl |
| SCRIPT_PERL += git-archimport.perl |
| -SCRIPT_PERL += git-cvsexportcommit.perl |
| -SCRIPT_PERL += git-cvsimport.perl |
| -SCRIPT_PERL += git-cvsserver.perl |
| SCRIPT_PERL += git-relink.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-remote-testgit.py |
| SCRIPT_PYTHON += git-p4.py |
| |
| SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ |
| - $(patsubst %.perl,%,$(SCRIPT_PERL)) \ |
| + $(patsubst %.perl,%,$(SCRIPT_PERL) $(SCRIPT_PERL_CVS)) \ |
| $(patsubst %.py,%,$(SCRIPT_PYTHON)) \ |
| git-instaweb |
| |
| @@ -2088,8 +2092,18 @@ |
| $(QUIET_GEN)$(cmd_munge_script) && \ |
| mv $@+ $@ |
| |
| +_SCRIPT_PERL_BUILD = |
| +_SCRIPT_PERL_NOBUILD = |
| + |
| ifndef NO_PERL |
| -$(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak |
| + |
| +_SCRIPT_PERL_BUILD += $(SCRIPT_PERL) |
| + |
| +ifndef NO_CVS |
| +_SCRIPT_PERL_BUILD += $(SCRIPT_PERL_CVS) |
| +else # NO_CVS |
| +_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL_CVS) |
| +endif # NO_CVS |
| |
| perl/perl.mak: perl/PM.stamp |
| |
| @@ -2101,7 +2115,7 @@ |
| perl/perl.mak: GIT-CFLAGS GIT-PREFIX perl/Makefile perl/Makefile.PL |
| $(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F) |
| |
| -$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl GIT-VERSION-FILE |
| +$(patsubst %.perl,%,$(_SCRIPT_PERL_BUILD)): % : %.perl GIT-VERSION-FILE |
| $(QUIET_GEN)$(RM) $@ $@+ && \ |
| INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \ |
| sed -e '1{' \ |
| @@ -2126,14 +2140,17 @@ |
| chmod +x $@+ && \ |
| mv $@+ $@ |
| else # NO_PERL |
| -$(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh |
| +_SCRIPT_PERL_NOBUILD += $(SCRIPT_PERL) $(SCRIPT_PERL_CVS) git-instaweb |
| +endif # NO_PERL |
| + |
| +# This is any perl scripts that were disabled it might be empty... |
| +$(patsubst %.perl,%,$(_SCRIPT_PERL_NOBUILD)): % : unimplemented.sh |
| $(QUIET_GEN)$(RM) $@ $@+ && \ |
| sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ |
| -e 's|@@REASON@@|NO_PERL=$(NO_PERL)|g' \ |
| unimplemented.sh >$@+ && \ |
| chmod +x $@+ && \ |
| mv $@+ $@ |
| -endif # NO_PERL |
| |
| ifndef NO_PYTHON |
| $(patsubst %.py,%,$(SCRIPT_PYTHON)): GIT-CFLAGS GIT-PREFIX |
| diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9200-git-cvsexportcommit.sh git-1.7.12/t/t9200-git-cvsexportcommit.sh |
| --- git-1.7.12.orig/t/t9200-git-cvsexportcommit.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9200-git-cvsexportcommit.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -12,6 +12,11 @@ |
| 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 -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9400-git-cvsserver-server.sh git-1.7.12/t/t9400-git-cvsserver-server.sh |
| --- git-1.7.12.orig/t/t9400-git-cvsserver-server.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9400-git-cvsserver-server.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -11,9 +11,15 @@ |
| . ./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 -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9401-git-cvsserver-crlf.sh git-1.7.12/t/t9401-git-cvsserver-crlf.sh |
| --- git-1.7.12.orig/t/t9401-git-cvsserver-crlf.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9401-git-cvsserver-crlf.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -38,15 +38,20 @@ |
| fi |
| } |
| |
| -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_PATH" -e 'use DBI; use DBD::SQLite' >/dev/null 2>&1 || { |
| diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9600-cvsimport.sh git-1.7.12/t/t9600-cvsimport.sh |
| --- git-1.7.12.orig/t/t9600-cvsimport.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9600-cvsimport.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -3,14 +3,25 @@ |
| test_description='git cvsimport basic tests' |
| . ./lib-cvs.sh |
| |
| -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 && |
| @@ -42,23 +53,23 @@ |
| ) |
| ' |
| |
| -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, |
| @@ -86,7 +97,7 @@ |
| ) |
| ' |
| |
| -test_expect_success PERL 'update git module' ' |
| +test_expect_success 'update git module' ' |
| |
| (cd module-git && |
| git config cvsimport.trackRevisions true && |
| @@ -97,7 +108,7 @@ |
| |
| ' |
| |
| -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^ && |
| @@ -105,7 +116,7 @@ |
| 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 && |
| @@ -114,7 +125,7 @@ |
| ) |
| ' |
| |
| -test_expect_success PERL 'cvsimport.module config works' ' |
| +test_expect_success 'cvsimport.module config works' ' |
| |
| (cd module-git && |
| git config cvsimport.module module && |
| @@ -126,7 +137,7 @@ |
| |
| ' |
| |
| -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^^ && |
| @@ -135,7 +146,7 @@ |
| 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 && |
| @@ -148,12 +159,12 @@ |
| |
| ' |
| |
| -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 master' |
| +test_expect_success 'test entire HEAD' 'test_cmp_branch_tree master' |
| |
| test_done |
| diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9601-cvsimport-vendor-branch.sh git-1.7.12/t/t9601-cvsimport-vendor-branch.sh |
| --- git-1.7.12.orig/t/t9601-cvsimport-vendor-branch.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9601-cvsimport-vendor-branch.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -34,6 +34,17 @@ |
| test_description='git cvsimport handling of vendor branches' |
| . ./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 -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9602-cvsimport-branches-tags.sh git-1.7.12/t/t9602-cvsimport-branches-tags.sh |
| --- git-1.7.12.orig/t/t9602-cvsimport-branches-tags.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9602-cvsimport-branches-tags.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -6,6 +6,17 @@ |
| test_description='git cvsimport handling of branches and tags' |
| . ./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 -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/t9603-cvsimport-patchsets.sh git-1.7.12/t/t9603-cvsimport-patchsets.sh |
| --- git-1.7.12.orig/t/t9603-cvsimport-patchsets.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/t9603-cvsimport-patchsets.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -14,6 +14,17 @@ |
| test_description='git cvsimport testing for correct patchset estimation' |
| . ./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 'import with criss cross times on revisions' ' |
| diff -Nuar --exclude '*.orig' --exclude '*.rej' git-1.7.12.orig/t/test-lib.sh git-1.7.12/t/test-lib.sh |
| --- git-1.7.12.orig/t/test-lib.sh 2012-08-20 01:22:48.000000000 +0000 |
| +++ git-1.7.12/t/test-lib.sh 2012-08-22 04:19:23.650741974 +0000 |
| @@ -618,6 +618,7 @@ |
| esac |
| |
| ( 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_PYTHON" && test_set_prereq PYTHON |
| test -n "$USE_LIBPCRE" && test_set_prereq LIBPCRE |