@@ -592,6 +592,7 @@ FUZZ_PROGRAMS =
592
592
LIB_OBJS =
593
593
PROGRAM_OBJS =
594
594
PROGRAMS =
595
+ EXCLUDED_PROGRAMS =
595
596
SCRIPT_PERL =
596
597
SCRIPT_PYTHON =
597
598
SCRIPT_SH =
@@ -614,7 +615,6 @@ SCRIPT_SH += git-merge-resolve.sh
614
615
SCRIPT_SH += git-mergetool.sh
615
616
SCRIPT_SH += git-quiltimport.sh
616
617
SCRIPT_SH += git-legacy-stash.sh
617
- SCRIPT_SH += git-remote-testgit.sh
618
618
SCRIPT_SH += git-request-pull.sh
619
619
SCRIPT_SH += git-submodule.sh
620
620
SCRIPT_SH += git-web--browse.sh
@@ -637,17 +637,11 @@ SCRIPT_PERL += git-svn.perl
637
637
638
638
SCRIPT_PYTHON += git-p4.py
639
639
640
- NO_INSTALL += git-remote-testgit
641
-
642
640
# Generated files for scripts
643
641
SCRIPT_SH_GEN = $(patsubst % .sh,% ,$(SCRIPT_SH ) )
644
642
SCRIPT_PERL_GEN = $(patsubst % .perl,% ,$(SCRIPT_PERL ) )
645
643
SCRIPT_PYTHON_GEN = $(patsubst % .py,% ,$(SCRIPT_PYTHON ) )
646
644
647
- SCRIPT_SH_INS = $(filter-out $(NO_INSTALL ) ,$(SCRIPT_SH_GEN ) )
648
- SCRIPT_PERL_INS = $(filter-out $(NO_INSTALL ) ,$(SCRIPT_PERL_GEN ) )
649
- SCRIPT_PYTHON_INS = $(filter-out $(NO_INSTALL ) ,$(SCRIPT_PYTHON_GEN ) )
650
-
651
645
# Individual rules to allow e.g.
652
646
# "make -C ../.. SCRIPT_PERL=contrib/foo/bar.perl build-perl-script"
653
647
# from subdirectories like contrib/*/
@@ -657,11 +651,11 @@ build-sh-script: $(SCRIPT_SH_GEN)
657
651
build-python-script : $(SCRIPT_PYTHON_GEN )
658
652
659
653
.PHONY : install-perl-script install-sh-script install-python-script
660
- install-sh-script : $(SCRIPT_SH_INS )
654
+ install-sh-script : $(SCRIPT_SH_GEN )
661
655
$(INSTALL ) $^ ' $(DESTDIR_SQ)$(gitexec_instdir_SQ)'
662
- install-perl-script : $(SCRIPT_PERL_INS )
656
+ install-perl-script : $(SCRIPT_PERL_GEN )
663
657
$(INSTALL ) $^ ' $(DESTDIR_SQ)$(gitexec_instdir_SQ)'
664
- install-python-script : $(SCRIPT_PYTHON_INS )
658
+ install-python-script : $(SCRIPT_PYTHON_GEN )
665
659
$(INSTALL ) $^ ' $(DESTDIR_SQ)$(gitexec_instdir_SQ)'
666
660
667
661
.PHONY : clean-perl-script clean-sh-script clean-python-script
@@ -672,9 +666,9 @@ clean-perl-script:
672
666
clean-python-script :
673
667
$(RM ) $(SCRIPT_PYTHON_GEN )
674
668
675
- SCRIPTS = $(SCRIPT_SH_INS ) \
676
- $(SCRIPT_PERL_INS ) \
677
- $(SCRIPT_PYTHON_INS ) \
669
+ SCRIPTS = $(SCRIPT_SH_GEN ) \
670
+ $(SCRIPT_PERL_GEN ) \
671
+ $(SCRIPT_PYTHON_GEN ) \
678
672
git-instaweb
679
673
680
674
ETAGS_TARGET = TAGS
@@ -744,6 +738,7 @@ TEST_BUILTINS_OBJS += test-repository.o
744
738
TEST_BUILTINS_OBJS += test-revision-walking.o
745
739
TEST_BUILTINS_OBJS += test-run-command.o
746
740
TEST_BUILTINS_OBJS += test-scrap-cache-tree.o
741
+ TEST_BUILTINS_OBJS += test-serve-v2.o
747
742
TEST_BUILTINS_OBJS += test-sha1.o
748
743
TEST_BUILTINS_OBJS += test-sha1-array.o
749
744
TEST_BUILTINS_OBJS += test-sha256.o
@@ -1125,7 +1120,6 @@ BUILTIN_OBJS += builtin/rev-parse.o
1125
1120
BUILTIN_OBJS += builtin/revert.o
1126
1121
BUILTIN_OBJS += builtin/rm.o
1127
1122
BUILTIN_OBJS += builtin/send-pack.o
1128
- BUILTIN_OBJS += builtin/serve.o
1129
1123
BUILTIN_OBJS += builtin/shortlog.o
1130
1124
BUILTIN_OBJS += builtin/show-branch.o
1131
1125
BUILTIN_OBJS += builtin/show-index.o
@@ -1342,6 +1336,7 @@ ifdef NO_CURL
1342
1336
REMOTE_CURL_PRIMARY =
1343
1337
REMOTE_CURL_ALIASES =
1344
1338
REMOTE_CURL_NAMES =
1339
+ EXCLUDED_PROGRAMS += git-http-fetch git-http-push
1345
1340
else
1346
1341
ifdef CURLDIR
1347
1342
# Try "-Wl,-rpath=$(CURLDIR)/$(lib)" in such a case.
@@ -1366,7 +1361,11 @@ endif
1366
1361
ifeq "$(curl_check)" "070908"
1367
1362
ifndef NO_EXPAT
1368
1363
PROGRAM_OBJS += http-push.o
1364
+ else
1365
+ EXCLUDED_PROGRAMS += git-http-push
1369
1366
endif
1367
+ else
1368
+ EXCLUDED_PROGRAMS += git-http-push
1370
1369
endif
1371
1370
curl_check := $(shell (echo 072200; $(CURL_CONFIG) --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p)
1372
1371
ifeq "$(curl_check)" "072200"
@@ -1614,6 +1613,7 @@ ifdef NO_INET_PTON
1614
1613
endif
1615
1614
ifdef NO_UNIX_SOCKETS
1616
1615
BASIC_CFLAGS += -DNO_UNIX_SOCKETS
1616
+ EXCLUDED_PROGRAMS += git-credential-cache git-credential-cache--daemon
1617
1617
else
1618
1618
LIB_OBJS += unix-socket.o
1619
1619
PROGRAM_OBJS += credential-cache.o
@@ -2133,7 +2133,9 @@ $(BUILT_INS): git$X
2133
2133
command-list.h : generate-cmdlist.sh command-list.txt
2134
2134
2135
2135
command-list.h : $(wildcard Documentation/git* .txt) Documentation/* config.txt Documentation/config/* .txt
2136
- $(QUIET_GEN )$(SHELL_PATH ) ./generate-cmdlist.sh command-list.txt > $@ + && mv $@ + $@
2136
+ $(QUIET_GEN )$(SHELL_PATH ) ./generate-cmdlist.sh \
2137
+ $(patsubst % ,--exclude-program % ,$(EXCLUDED_PROGRAMS ) ) \
2138
+ command-list.txt > $@ + && mv $@ + $@
2137
2139
2138
2140
SCRIPT_DEFINES = $(SHELL_PATH_SQ ) :$(DIFF_SQ ) :$(GIT_VERSION ) :\
2139
2141
$(localedir_SQ ) :$(NO_CURL ) :$(USE_GETTEXT_SCHEME ) :$(SANE_TOOL_PATH_SQ ) :\
@@ -2466,6 +2468,14 @@ $(VCSSVN_LIB): $(VCSSVN_OBJS)
2466
2468
2467
2469
export DEFAULT_EDITOR DEFAULT_PAGER
2468
2470
2471
+ Documentation/GIT-EXCLUDED-PROGRAMS : FORCE
2472
+ @EXCLUDED=' EXCLUDED_PROGRAMS := $(EXCLUDED_PROGRAMS)' ; \
2473
+ if test x" $$ EXCLUDED" ! = \
2474
+ x" ` cat Documentation/GIT-EXCLUDED-PROGRAMS 2> /dev/null` " ; then \
2475
+ echo >&2 " * new documentation flags" ; \
2476
+ echo " $$ EXCLUDED" > Documentation/GIT-EXCLUDED-PROGRAMS; \
2477
+ fi
2478
+
2469
2479
.PHONY : doc man man-perl html info pdf
2470
2480
doc : man-perl
2471
2481
$(MAKE ) -C Documentation all
@@ -2704,7 +2714,6 @@ endif
2704
2714
test_bindir_programs := $(patsubst % ,bin-wrappers/% ,$(BINDIR_PROGRAMS_NEED_X ) $(BINDIR_PROGRAMS_NO_X ) $(TEST_PROGRAMS_NEED_X ) )
2705
2715
2706
2716
all :: $(TEST_PROGRAMS ) $(test_bindir_programs )
2707
- all :: $(NO_INSTALL )
2708
2717
2709
2718
bin-wrappers/% : wrap-for-bin.sh
2710
2719
@mkdir -p bin-wrappers
@@ -2991,7 +3000,7 @@ rpm::
2991
3000
2992
3001
artifacts-tar :: $(ALL_PROGRAMS ) $(SCRIPT_LIB ) $(BUILT_INS ) $(OTHER_PROGRAMS ) \
2993
3002
GIT-BUILD-OPTIONS $(TEST_PROGRAMS ) $(test_bindir_programs ) \
2994
- $(NO_INSTALL ) $( MOFILES )
3003
+ $(MOFILES )
2995
3004
$(QUIET_SUBDIR0 ) templates $(QUIET_SUBDIR1 ) \
2996
3005
SHELL_PATH=' $(SHELL_PATH_SQ)' PERL_PATH=' $(PERL_PATH_SQ)'
2997
3006
test -n " $( ARTIFACTS_DIRECTORY) "
@@ -3040,7 +3049,7 @@ clean: profile-clean coverage-clean cocciclean
3040
3049
$(RM ) $(OBJECTS )
3041
3050
$(RM ) $(LIB_FILE ) $(XDIFF_LIB ) $(VCSSVN_LIB )
3042
3051
$(RM ) $(ALL_PROGRAMS ) $(SCRIPT_LIB ) $(BUILT_INS ) git$X
3043
- $(RM ) $(TEST_PROGRAMS ) $( NO_INSTALL )
3052
+ $(RM ) $(TEST_PROGRAMS )
3044
3053
$(RM ) $(FUZZ_PROGRAMS )
3045
3054
$(RM ) -r bin-wrappers $(dep_dirs )
3046
3055
$(RM ) -r po/build/
@@ -3049,6 +3058,7 @@ clean: profile-clean coverage-clean cocciclean
3049
3058
$(RM ) $(GIT_TARNAME ) .tar.gz git-core_$(GIT_VERSION ) -* .tar.gz
3050
3059
$(RM ) $(htmldocs ) .tar.gz $(manpages ) .tar.gz
3051
3060
$(MAKE ) -C Documentation/ clean
3061
+ $(RM ) Documentation/GIT-EXCLUDED-PROGRAMS
3052
3062
ifndef NO_PERL
3053
3063
$(MAKE) -C gitweb clean
3054
3064
$(RM) -r perl/build/
@@ -3084,7 +3094,7 @@ check-docs::
3084
3094
git-merge-octopus | git-merge-ours | git-merge-recursive | \
3085
3095
git-merge-resolve | git-merge-subtree | \
3086
3096
git-fsck-objects | git-init-db | \
3087
- git-remote-* | git-stage | \
3097
+ git-remote-* | git-stage | git-legacy- * | \
3088
3098
git-?* --?* ) continue ;; \
3089
3099
esac ; \
3090
3100
test -f " Documentation/$$ v.txt" || \
@@ -3108,7 +3118,7 @@ check-docs::
3108
3118
-e ' s/\.txt//' ; \
3109
3119
) | while read how cmd; \
3110
3120
do \
3111
- case " $( patsubst %$X ,%,$( ALL_COMMANDS) ) " in \
3121
+ case " $( patsubst %$X ,%,$( ALL_COMMANDS) $( EXCLUDED_PROGRAMS ) ) " in \
3112
3122
* " $$ cmd " * ) ;; \
3113
3123
* ) echo " removed but $$ how: $$ cmd" ;; \
3114
3124
esac ; \
0 commit comments