Skip to content

Commit 5beb577

Browse files
Benabikgitster
authored andcommitted
INSTALL: Describe dependency knobs from Makefile
We said that some of our dependencies were optional, but didn't say how to turn them off. Add information for that and mention where to save the options close to the top of the file. Also, standardize on both using quotes for the names of the dependencies and tabs for indentation of the list. Signed-off-by: Brian Gernhardt <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 26d9443 commit 5beb577

File tree

1 file changed

+24
-14
lines changed

1 file changed

+24
-14
lines changed

INSTALL

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ that uses $prefix, the built results have some paths encoded,
1313
which are derived from $prefix, so "make all; make prefix=/usr
1414
install" would not work.
1515

16+
The beginning of the Makefile documents many variables that affect the way
17+
git is built. You can override them either from the command line, or in a
18+
config.mak file.
19+
1620
Alternatively you can use autoconf generated ./configure script to
1721
set up install paths (via config.mak.autogen), so you can write instead
1822

@@ -48,7 +52,9 @@ Issues of note:
4852
export GIT_EXEC_PATH PATH GITPERLLIB
4953

5054
- Git is reasonably self-sufficient, but does depend on a few external
51-
programs and libraries:
55+
programs and libraries. Git can be used without most of them by adding
56+
the approriate "NO_<LIBRARY>=YesPlease" to the make command line or
57+
config.mak file.
5258

5359
- "zlib", the compression library. Git won't build without it.
5460

@@ -59,25 +65,29 @@ Issues of note:
5965

6066
- "Perl" is needed to use some of the features (e.g. preparing a
6167
partial commit using "git add -i/-p", interacting with svn
62-
repositories with "git svn").
68+
repositories with "git svn"). If you can live without these, use
69+
NO_PERL.
6370

64-
- "openssl". Unless you specify otherwise, you'll get the SHA1
65-
library from here.
71+
- "openssl" library is used by git-imap-send to use IMAP over SSL.
72+
If you don't need it, use NO_OPENSSL.
6673

67-
If you don't have openssl, you can use one of the SHA1 libraries
68-
that come with git (git includes one inspired by Mozilla's and a
69-
PowerPC optimized one too - see the Makefile).
74+
By default, git uses OpenSSL for SHA1 but it will use it's own
75+
library (inspired by Mozilla's) with either NO_OPENSSL or
76+
BLK_SHA1. Also included is a version optimized for PowerPC
77+
(PPC_SHA1).
7078

71-
- libcurl library; git-http-fetch and git-fetch use them. You
79+
- "libcurl" library is used by git-http-fetch and git-fetch. You
7280
might also want the "curl" executable for debugging purposes.
73-
If you do not use http transfer, you are probably OK if you
74-
do not have them.
81+
If you do not use http:// or https:// repositories, you do not
82+
have to have them (use NO_CURL).
7583

76-
- expat library; git-http-push uses it for remote lock
77-
management over DAV. Similar to "curl" above, this is optional.
84+
- "expat" library; git-http-push uses it for remote lock
85+
management over DAV. Similar to "curl" above, this is optional
86+
(with NO_EXPAT).
7887

79-
- "wish", the Tcl/Tk windowing shell is used in gitk to show the
80-
history graphically, and in git-gui.
88+
- "wish", the Tcl/Tk windowing shell is used in gitk to show the
89+
history graphically, and in git-gui. If you don't want gitk or
90+
git-gui, you can use NO_TCLTK.
8191

8292
- Some platform specific issues are dealt with Makefile rules,
8393
but depending on your specific installation, you may not

0 commit comments

Comments
 (0)