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 <brian@gernhardtsoftware.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Brian Gernhardt committed
Sep 10, 2009 at 16:28 UTC
5beb577db8c61a7a511fac1d970a5ae3dde11eca
1 file changed
+24
-14
INSTALL
+24
-14
@@ -13,6 +13,10 @@ that uses $prefix, the built results have some paths encoded,
13
which are derived from $prefix, so "make all; make prefix=/usr
14
install" would not work.
15
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
+
20
Alternatively you can use autoconf generated ./configure script to
21
set up install paths (via config.mak.autogen), so you can write instead
22
@@ -48,7 +52,9 @@ Issues of note:
52
export GIT_EXEC_PATH PATH GITPERLLIB
53
54
- 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.
58
59
- "zlib", the compression library. Git won't build without it.
60
@@ -59,25 +65,29 @@ Issues of note:
65
66
- "Perl" is needed to use some of the features (e.g. preparing a
67
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.
70
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.
73
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).
78
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
80
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).
83
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).
87
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.
91
92
- Some platform specific issues are dealt with Makefile rules,
93
but depending on your specific installation, you may not