@@ -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,8 +637,6 @@ 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 ) )
@@ -1344,6 +1342,7 @@ ifdef NO_CURL
1344
1342
REMOTE_CURL_PRIMARY =
1345
1343
REMOTE_CURL_ALIASES =
1346
1344
REMOTE_CURL_NAMES =
1345
+ EXCLUDED_PROGRAMS += git-http-fetch git-http-push
1347
1346
else
1348
1347
ifdef CURLDIR
1349
1348
# Try "-Wl,-rpath=$(CURLDIR)/$(lib)" in such a case.
@@ -1368,7 +1367,11 @@ endif
1368
1367
ifeq "$(curl_check)" "070908"
1369
1368
ifndef NO_EXPAT
1370
1369
PROGRAM_OBJS += http-push.o
1370
+ else
1371
+ EXCLUDED_PROGRAMS += git-http-push
1371
1372
endif
1373
+ else
1374
+ EXCLUDED_PROGRAMS += git-http-push
1372
1375
endif
1373
1376
curl_check := $(shell (echo 072200; $(CURL_CONFIG) --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p)
1374
1377
ifeq "$(curl_check)" "072200"
@@ -1616,6 +1619,7 @@ ifdef NO_INET_PTON
1616
1619
endif
1617
1620
ifdef NO_UNIX_SOCKETS
1618
1621
BASIC_CFLAGS += -DNO_UNIX_SOCKETS
1622
+ EXCLUDED_PROGRAMS += git-credential-cache git-credential-cache--daemon
1619
1623
else
1620
1624
LIB_OBJS += unix-socket.o
1621
1625
PROGRAM_OBJS += credential-cache.o
@@ -2135,7 +2139,9 @@ $(BUILT_INS): git$X
2135
2139
command-list.h : generate-cmdlist.sh command-list.txt
2136
2140
2137
2141
command-list.h : $(wildcard Documentation/git* .txt) Documentation/* config.txt Documentation/config/* .txt
2138
- $(QUIET_GEN )$(SHELL_PATH ) ./generate-cmdlist.sh command-list.txt > $@ + && mv $@ + $@
2142
+ $(QUIET_GEN )$(SHELL_PATH ) ./generate-cmdlist.sh \
2143
+ $(patsubst % ,--exclude-program % ,$(EXCLUDED_PROGRAMS ) ) \
2144
+ command-list.txt > $@ + && mv $@ + $@
2139
2145
2140
2146
SCRIPT_DEFINES = $(SHELL_PATH_SQ ) :$(DIFF_SQ ) :$(GIT_VERSION ) :\
2141
2147
$(localedir_SQ ) :$(NO_CURL ) :$(USE_GETTEXT_SCHEME ) :$(SANE_TOOL_PATH_SQ ) :\
@@ -2468,22 +2474,26 @@ $(VCSSVN_LIB): $(VCSSVN_OBJS)
2468
2474
2469
2475
export DEFAULT_EDITOR DEFAULT_PAGER
2470
2476
2477
+ Documentation/GIT-EXCLUDED-PROGRAMS : Makefile config.mak.uname \
2478
+ $(wildcard config.mak.autogen) $(wildcard config.mak)
2479
+ $(QUIET_GEN ) echo " EXCLUDED_PROGRAMS := $( EXCLUDED_PROGRAMS) " > $@
2480
+
2471
2481
.PHONY : doc man man-perl html info pdf
2472
- doc : man-perl
2482
+ doc : man-perl Documentation/GIT-EXCLUDED-PROGRAMS
2473
2483
$(MAKE ) -C Documentation all
2474
2484
2475
- man : man-perl
2485
+ man : man-perl Documentation/GIT-EXCLUDED-PROGRAMS
2476
2486
$(MAKE ) -C Documentation man
2477
2487
2478
2488
man-perl : perl/build/man/man3/Git.3pm
2479
2489
2480
- html :
2490
+ html : Documentation/GIT-EXCLUDED-PROGRAMS
2481
2491
$(MAKE ) -C Documentation html
2482
2492
2483
- info :
2493
+ info : Documentation/GIT-EXCLUDED-PROGRAMS
2484
2494
$(MAKE ) -C Documentation info
2485
2495
2486
- pdf :
2496
+ pdf : Documentation/GIT-EXCLUDED-PROGRAMS
2487
2497
$(MAKE ) -C Documentation pdf
2488
2498
2489
2499
XGETTEXT_FLAGS = \
@@ -2923,33 +2933,33 @@ endif
2923
2933
install-gitweb :
2924
2934
$(MAKE ) -C gitweb install
2925
2935
2926
- install-doc : install-man-perl
2936
+ install-doc : install-man-perl Documentation/GIT-EXCLUDED-PROGRAMS
2927
2937
$(MAKE ) -C Documentation install
2928
2938
2929
- install-man : install-man-perl
2939
+ install-man : install-man-perl Documentation/GIT-EXCLUDED-PROGRAMS
2930
2940
$(MAKE ) -C Documentation install-man
2931
2941
2932
- install-man-perl : man-perl
2942
+ install-man-perl : man-perl Documentation/GIT-EXCLUDED-PROGRAMS
2933
2943
$(INSTALL ) -d -m 755 ' $(DESTDIR_SQ)$(mandir_SQ)/man3'
2934
2944
(cd perl/build/man/man3 && $( TAR) cf - .) | \
2935
2945
(cd ' $(DESTDIR_SQ)$(mandir_SQ)/man3' && umask 022 && $( TAR) xof -)
2936
2946
2937
- install-html :
2947
+ install-html : Documentation/GIT-EXCLUDED-PROGRAMS
2938
2948
$(MAKE ) -C Documentation install-html
2939
2949
2940
- install-info :
2950
+ install-info : Documentation/GIT-EXCLUDED-PROGRAMS
2941
2951
$(MAKE ) -C Documentation install-info
2942
2952
2943
- install-pdf :
2953
+ install-pdf : Documentation/GIT-EXCLUDED-PROGRAMS
2944
2954
$(MAKE ) -C Documentation install-pdf
2945
2955
2946
- quick-install-doc :
2956
+ quick-install-doc : Documentation/GIT-EXCLUDED-PROGRAMS
2947
2957
$(MAKE ) -C Documentation quick-install
2948
2958
2949
- quick-install-man :
2959
+ quick-install-man : Documentation/GIT-EXCLUDED-PROGRAMS
2950
2960
$(MAKE ) -C Documentation quick-install-man
2951
2961
2952
- quick-install-html :
2962
+ quick-install-html : Documentation/GIT-EXCLUDED-PROGRAMS
2953
2963
$(MAKE ) -C Documentation quick-install-html
2954
2964
2955
2965
@@ -3004,7 +3014,7 @@ artifacts-tar:: $(ALL_PROGRAMS) $(SCRIPT_LIB) $(BUILT_INS) $(OTHER_PROGRAMS) \
3004
3014
htmldocs = git-htmldocs-$(GIT_VERSION )
3005
3015
manpages = git-manpages-$(GIT_VERSION )
3006
3016
.PHONY : dist-doc distclean
3007
- dist-doc :
3017
+ dist-doc : Documentation/GIT-EXCLUDED-PROGRAMS
3008
3018
$(RM ) -r .doc-tmp-dir
3009
3019
mkdir .doc-tmp-dir
3010
3020
$(MAKE ) -C Documentation WEBDOC_DEST=../.doc-tmp-dir install-webdoc
@@ -3051,6 +3061,7 @@ clean: profile-clean coverage-clean cocciclean
3051
3061
$(RM ) $(GIT_TARNAME ) .tar.gz git-core_$(GIT_VERSION ) -* .tar.gz
3052
3062
$(RM ) $(htmldocs ) .tar.gz $(manpages ) .tar.gz
3053
3063
$(MAKE ) -C Documentation/ clean
3064
+ $(RM ) Documentation/GIT-EXCLUDED-PROGRAMS
3054
3065
ifndef NO_PERL
3055
3066
$(MAKE) -C gitweb clean
3056
3067
$(RM) -r perl/build/
@@ -3078,15 +3089,15 @@ ALL_COMMANDS += gitweb
3078
3089
ALL_COMMANDS += git-gui git-citool
3079
3090
3080
3091
.PHONY : check-docs
3081
- check-docs ::
3092
+ check-docs :: Documentation/GIT-EXCLUDED-PROGRAMS
3082
3093
$(MAKE ) -C Documentation lint-docs
3083
3094
@ (for v in $( patsubst %$X ,%,$( ALL_COMMANDS) ) ; \
3084
3095
do \
3085
3096
case " $$ v" in \
3086
3097
git-merge-octopus | git-merge-ours | git-merge-recursive | \
3087
3098
git-merge-resolve | git-merge-subtree | \
3088
3099
git-fsck-objects | git-init-db | \
3089
- git-remote-* | git-stage | \
3100
+ git-remote-* | git-stage | git-legacy- * | \
3090
3101
git-?* --?* ) continue ;; \
3091
3102
esac ; \
3092
3103
test -f " Documentation/$$ v.txt" || \
@@ -3101,6 +3112,7 @@ check-docs::
3101
3112
( \
3102
3113
sed -e ' 1,/^### command list/d' \
3103
3114
-e ' /^#/d' \
3115
+ $(patsubst % ,-e '/^% /d',$(EXCLUDED_PROGRAMS ) ) \
3104
3116
-e ' /guide$$/d' \
3105
3117
-e ' s/[ ].*//' \
3106
3118
-e ' s/^/listed /' command-list.txt; \
0 commit comments