1 diff -Nur git-1.7.3.2-orig/builtin/daemon.c git-1.7.3.2/builtin/daemon.c
2 --- git-1.7.3.2-orig/builtin/daemon.c 1970-01-01 01:00:00.000000000 +0100
3 +++ git-1.7.3.2/builtin/daemon.c 2010-11-17 12:30:47.977921001 +0100
5 +#include "../daemon.c"
6 diff -Nur git-1.7.3.2-orig/builtin/fast-import.c git-1.7.3.2/builtin/fast-import.c
7 --- git-1.7.3.2-orig/builtin/fast-import.c 1970-01-01 01:00:00.000000000 +0100
8 +++ git-1.7.3.2/builtin/fast-import.c 2010-11-17 12:30:47.977921001 +0100
10 +#include "../fast-import.c"
11 diff -Nur git-1.7.3.2-orig/builtin/http-backend.c git-1.7.3.2/builtin/http-backend.c
12 --- git-1.7.3.2-orig/builtin/http-backend.c 1970-01-01 01:00:00.000000000 +0100
13 +++ git-1.7.3.2/builtin/http-backend.c 2010-11-17 12:30:47.977921001 +0100
15 +#include "../http-backend.c"
16 diff -Nur git-1.7.3.2-orig/builtin/imap-send.c git-1.7.3.2/builtin/imap-send.c
17 --- git-1.7.3.2-orig/builtin/imap-send.c 1970-01-01 01:00:00.000000000 +0100
18 +++ git-1.7.3.2/builtin/imap-send.c 2010-11-17 12:30:47.977921001 +0100
20 +#include "../imap-send.c"
21 diff -Nur git-1.7.3.2-orig/builtin/shell.c git-1.7.3.2/builtin/shell.c
22 --- git-1.7.3.2-orig/builtin/shell.c 1970-01-01 01:00:00.000000000 +0100
23 +++ git-1.7.3.2/builtin/shell.c 2010-11-17 12:30:47.977921001 +0100
25 +#include "../shell.c"
26 diff -Nur git-1.7.3.2-orig/builtin/upload-pack.c git-1.7.3.2/builtin/upload-pack.c
27 --- git-1.7.3.2-orig/builtin/upload-pack.c 1970-01-01 01:00:00.000000000 +0100
28 +++ git-1.7.3.2/builtin/upload-pack.c 2010-11-17 12:30:47.977921001 +0100
30 +#include "../upload-pack.c"
31 diff -Nur git-1.7.3.2-orig/builtin.h git-1.7.3.2/builtin.h
32 --- git-1.7.3.2-orig/builtin.h 2010-10-22 05:49:16.000000000 +0200
33 +++ git-1.7.3.2/builtin.h 2010-11-17 12:30:47.977921001 +0100
35 extern int cmd_show_ref(int argc, const char **argv, const char *prefix);
36 extern int cmd_pack_refs(int argc, const char **argv, const char *prefix);
37 extern int cmd_replace(int argc, const char **argv, const char *prefix);
38 +extern int cmd_shell(int argc, char **argv, const char *prefix);
39 +extern int cmd_upload_pack(int argc, char **argv, const char *prefix);
40 +extern int cmd_http_backend(int argc, char **argv, const char *prefix);
41 +extern int cmd_daemon(int argc, char **argv, const char *prefix);
42 +extern int cmd_imap_send(int argc, char **argv, const char *prefix);
43 +extern int cmd_fast_import(int argc, const char **argv, const char *prefix);
46 diff -Nur git-1.7.3.2-orig/daemon.c git-1.7.3.2/daemon.c
47 --- git-1.7.3.2-orig/daemon.c 2010-10-22 05:49:16.000000000 +0200
48 +++ git-1.7.3.2/daemon.c 2010-11-17 12:30:47.977921001 +0100
50 return service_loop(socknum, socklist);
53 -int main(int argc, char **argv)
54 +int cmd_daemon(int argc, char **argv, const char *prefix)
57 char *listen_addr = NULL;
58 diff -Nur git-1.7.3.2-orig/fast-import.c git-1.7.3.2/fast-import.c
59 --- git-1.7.3.2-orig/fast-import.c 2010-10-22 05:49:16.000000000 +0200
60 +++ git-1.7.3.2/fast-import.c 2010-11-17 12:30:47.977921001 +0100
65 -int main(int argc, const char **argv)
66 +int cmd_fast_import(int argc, const char **argv, const char *prefix)
70 diff -Nur git-1.7.3.2-orig/git.c git-1.7.3.2/git.c
71 --- git-1.7.3.2-orig/git.c 2010-10-22 05:49:16.000000000 +0200
72 +++ git-1.7.3.2/git.c 2010-11-17 12:30:47.977921001 +0100
77 - int (*fn)(int, const char **, const char *);
78 + int (*fn)(int, char **, const char *);
82 -static int run_builtin(struct cmd_struct *p, int argc, const char **argv)
83 +static int run_builtin(struct cmd_struct *p, int argc, char **argv)
91 -static void handle_internal_command(int argc, const char **argv)
92 +static void handle_internal_command(int argc, char **argv)
94 const char *cmd = argv[0];
95 static struct cmd_struct commands[] = {
97 { "verify-pack", cmd_verify_pack },
98 { "show-ref", cmd_show_ref, RUN_SETUP },
99 { "pack-refs", cmd_pack_refs, RUN_SETUP },
100 + { "shell", cmd_shell },
101 + { "upload-pack", cmd_upload_pack },
102 + { "http-backend", cmd_http_backend },
103 + { "daemon", cmd_daemon },
104 + { "imap-send", cmd_imap_send },
105 + { "fast-import", cmd_fast_import },
108 static const char ext[] = STRIP_EXTENSION;
109 diff -Nur git-1.7.3.2-orig/http-backend.c git-1.7.3.2/http-backend.c
110 --- git-1.7.3.2-orig/http-backend.c 2010-10-22 05:49:16.000000000 +0200
111 +++ git-1.7.3.2/http-backend.c 2010-11-17 12:30:47.977921001 +0100
113 {"POST", "/git-receive-pack$", service_rpc}
116 -int main(int argc, char **argv)
117 +int cmd_http_backend(int argc, char **argv, const char *prefix)
119 char *method = getenv("REQUEST_METHOD");
121 diff -Nur git-1.7.3.2-orig/imap-send.c git-1.7.3.2/imap-send.c
122 --- git-1.7.3.2-orig/imap-send.c 2010-10-22 05:49:16.000000000 +0200
123 +++ git-1.7.3.2/imap-send.c 2010-11-17 12:30:47.977921001 +0100
124 @@ -1528,7 +1528,7 @@
128 -int main(int argc, char **argv)
129 +int cmd_imap_send(int argc, char **argv, const char *prefix)
131 struct msg_data all_msgs, msg;
132 struct store *ctx = NULL;
133 diff -Nur git-1.7.3.2-orig/Makefile git-1.7.3.2/Makefile
134 --- git-1.7.3.2-orig/Makefile 2010-10-22 05:49:16.000000000 +0200
135 +++ git-1.7.3.2/Makefile 2010-11-17 12:46:11.309922603 +0100
137 # ... and all the rest that could be moved out of bindir to gitexecdir
138 PROGRAMS += $(EXTRA_PROGRAMS)
140 -PROGRAM_OBJS += fast-import.o
141 -PROGRAM_OBJS += imap-send.o
142 -PROGRAM_OBJS += shell.o
143 PROGRAM_OBJS += show-index.o
144 -PROGRAM_OBJS += upload-pack.o
145 -PROGRAM_OBJS += http-backend.o
147 PROGRAMS += $(patsubst %.o,git-%$X,$(PROGRAM_OBJS))
150 BUILTIN_OBJS += builtin/verify-pack.o
151 BUILTIN_OBJS += builtin/verify-tag.o
152 BUILTIN_OBJS += builtin/write-tree.o
153 +BUILTIN_OBJS += builtin/shell.o
154 +BUILTIN_OBJS += builtin/upload-pack.o
155 +BUILTIN_OBJS += builtin/http-backend.o
156 +BUILTIN_OBJS += builtin/daemon.o
157 +BUILTIN_OBJS += builtin/imap-send.o
158 +BUILTIN_OBJS += builtin/fast-import.o
160 GITLIBS = $(LIB_FILE) $(XDIFF_LIB)
162 @@ -1244,10 +1245,9 @@
165 ifndef NO_POSIX_ONLY_PROGRAMS
166 - PROGRAM_OBJS += daemon.o
169 - OPENSSL_LIBSSL = -lssl
172 BASIC_CFLAGS += -I$(OPENSSLDIR)/include
173 OPENSSL_LINK = -L$(OPENSSLDIR)/$(lib) $(CC_LD_DYNPATH)$(OPENSSLDIR)/$(lib)
174 @@ -1919,10 +1919,6 @@
175 git-%$X: %.o $(GITLIBS)
176 $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS)
178 -git-imap-send$X: imap-send.o $(GITLIBS)
179 - $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
180 - $(LIBS) $(OPENSSL_LINK) $(OPENSSL_LIBSSL)
182 git-http-fetch$X: revision.o http.o http-walker.o http-fetch.o $(GITLIBS)
183 $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
184 $(LIBS) $(CURL_LIBCURL)
185 @@ -2120,23 +2116,22 @@
187 bindir=$$(cd '$(DESTDIR_SQ)$(bindir_SQ)' && pwd) && \
188 execdir=$$(cd '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' && pwd) && \
189 + ln -s ../../bin/git "$$execdir/git" && \
190 { test "$$bindir/" = "$$execdir/" || \
191 - for p in git$X $(filter $(install_bindir_programs),$(ALL_PROGRAMS)); do \
192 + for p in $(filter $(install_bindir_programs),$(ALL_PROGRAMS)); do \
193 $(RM) "$$execdir/$$p" && \
194 test -z "$(NO_CROSS_DIRECTORY_HARDLINKS)" && \
195 - ln "$$bindir/$$p" "$$execdir/$$p" 2>/dev/null || \
196 + ln -s git "$$execdir/$$p" 2>/dev/null || \
197 cp "$$bindir/$$p" "$$execdir/$$p" || exit; \
200 for p in $(filter $(install_bindir_programs),$(BUILT_INS)); do \
201 $(RM) "$$bindir/$$p" && \
202 - ln "$$bindir/git$X" "$$bindir/$$p" 2>/dev/null || \
203 ln -s "git$X" "$$bindir/$$p" 2>/dev/null || \
204 cp "$$bindir/git$X" "$$bindir/$$p" || exit; \
206 for p in $(BUILT_INS); do \
207 $(RM) "$$execdir/$$p" && \
208 - ln "$$execdir/git$X" "$$execdir/$$p" 2>/dev/null || \
209 ln -s "git$X" "$$execdir/$$p" 2>/dev/null || \
210 cp "$$execdir/git$X" "$$execdir/$$p" || exit; \
212 diff -Nur git-1.7.3.2-orig/shell.c git-1.7.3.2/shell.c
213 --- git-1.7.3.2-orig/shell.c 2010-10-22 05:49:16.000000000 +0200
214 +++ git-1.7.3.2/shell.c 2010-11-17 12:30:47.981921001 +0100
219 -int main(int argc, char **argv)
220 +int cmd_shell(int argc, char **argv, const char *prefix)
223 struct commands *cmd;
224 diff -Nur git-1.7.3.2-orig/upload-pack.c git-1.7.3.2/upload-pack.c
225 --- git-1.7.3.2-orig/upload-pack.c 2010-10-22 05:49:16.000000000 +0200
226 +++ git-1.7.3.2/upload-pack.c 2010-11-17 12:30:47.981921001 +0100
231 -int main(int argc, char **argv)
232 +int cmd_upload_pack(int argc, char **argv, const char *prefix)