- --- a/Makefile
- +++ b/Makefile
- @@ -557,16 +557,7 @@ EXTRA_PROGRAMS =
- # ... and all the rest that could be moved out of bindir to gitexecdir
- PROGRAMS += $(EXTRA_PROGRAMS)
-
- -PROGRAM_OBJS += credential-store.o
- -PROGRAM_OBJS += daemon.o
- -PROGRAM_OBJS += fast-import.o
- PROGRAM_OBJS += http-backend.o
- -PROGRAM_OBJS += imap-send.o
- -PROGRAM_OBJS += sh-i18n--envsubst.o
- -PROGRAM_OBJS += shell.o
- -PROGRAM_OBJS += show-index.o
- -PROGRAM_OBJS += upload-pack.o
- -PROGRAM_OBJS += remote-testsvn.o
-
- # Binary suffix, set to .exe for Windows builds
- X =
- @@ -923,6 +914,11 @@ BUILTIN_OBJS += builtin/verify-pack.o
- BUILTIN_OBJS += builtin/verify-tag.o
- BUILTIN_OBJS += builtin/worktree.o
- BUILTIN_OBJS += builtin/write-tree.o
- +BUILTIN_OBJS += builtin/daemon.o
- +BUILTIN_OBJS += builtin/fast-import.o
- +BUILTIN_OBJS += builtin/imap-send.o
- +BUILTIN_OBJS += builtin/shell.o
- +BUILTIN_OBJS += builtin/upload-pack.o
-
- GITLIBS = $(LIB_FILE) $(XDIFF_LIB)
- EXTLIBS =
- @@ -1106,7 +1102,7 @@ endif
- EXTLIBS += -lz
-
- ifndef NO_OPENSSL
- - OPENSSL_LIBSSL = -lssl
- + EXTLIBS += -lssl
- ifdef OPENSSLDIR
- BASIC_CFLAGS += -I$(OPENSSLDIR)/include
- OPENSSL_LINK = -L$(OPENSSLDIR)/$(lib) $(CC_LD_DYNPATH)$(OPENSSLDIR)/$(lib)
- @@ -1977,10 +1973,6 @@ endif
- git-%$X: %.o GIT-LDFLAGS $(GITLIBS)
- $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS)
-
- -git-imap-send$X: imap-send.o $(IMAP_SEND_BUILDDEPS) GIT-LDFLAGS $(GITLIBS)
- - $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
- - $(LIBS) $(IMAP_SEND_LDFLAGS)
- -
- git-http-fetch$X: http.o http-walker.o http-fetch.o GIT-LDFLAGS $(GITLIBS)
- $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
- $(CURL_LIBCURL) $(LIBS)
- @@ -2300,10 +2292,11 @@ endif
- bindir=$$(cd '$(DESTDIR_SQ)$(bindir_SQ)' && pwd) && \
- execdir=$$(cd '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' && pwd) && \
- { test "$$bindir/" = "$$execdir/" || \
- - for p in git$X $(filter $(install_bindir_programs),$(ALL_PROGRAMS)); do \
- + for p in $(filter $(install_bindir_programs),$(ALL_PROGRAMS)); do \
- $(RM) "$$execdir/$$p" && \
- test -z "$(NO_INSTALL_HARDLINKS)$(NO_CROSS_DIRECTORY_HARDLINKS)" && \
- ln "$$bindir/$$p" "$$execdir/$$p" 2>/dev/null || \
- + ln -s git "$$execdir/$$p" 2>/dev/null || \
- cp "$$bindir/$$p" "$$execdir/$$p" || exit; \
- done; \
- } && \
- --- a/builtin.h
- +++ b/builtin.h
- @@ -141,5 +141,10 @@ extern int cmd_verify_pack(int argc, con
- extern int cmd_show_ref(int argc, const char **argv, const char *prefix);
- extern int cmd_pack_refs(int argc, const char **argv, const char *prefix);
- extern int cmd_replace(int argc, const char **argv, const char *prefix);
- +extern int cmd_daemon(int argc, char **argv, const char *prefix);
- +extern int cmd_fast_import(int argc, char **argv, const char *prefix);
- +extern int cmd_imap_send(int argc, char **argv, const char *prefix);
- +extern int cmd_shell(int argc, char **argv, const char *prefix);
- +extern int cmd_upload_pack(int argc, char **argv, const char *prefix);
-
- #endif
- --- /dev/null
- +++ b/builtin/daemon.c
- @@ -0,0 +1 @@
- +#include "../daemon.c"
- --- /dev/null
- +++ b/builtin/fast-import.c
- @@ -0,0 +1 @@
- +#include "../fast-import.c"
- --- /dev/null
- +++ b/builtin/imap-send.c
- @@ -0,0 +1 @@
- +#include "../imap-send.c"
- --- /dev/null
- +++ b/builtin/shell.c
- @@ -0,0 +1 @@
- +#include "../shell.c"
- --- /dev/null
- +++ b/builtin/upload-pack.c
- @@ -0,0 +1 @@
- +#include "../upload-pack.c"
- --- a/daemon.c
- +++ b/daemon.c
- @@ -1184,7 +1184,7 @@ static int serve(struct string_list *lis
- return service_loop(&socklist);
- }
-
- -int main(int argc, char **argv)
- +int cmd_daemon(int argc, char **argv, const char *prefix)
- {
- int listen_port = 0;
- struct string_list listen_addr = STRING_LIST_INIT_NODUP;
- @@ -1380,12 +1380,13 @@ int main(int argc, char **argv)
- write_file(pid_file, "%"PRIuMAX, (uintmax_t) getpid());
-
- /* prepare argv for serving-processes */
- - cld_argv = xmalloc(sizeof (char *) * (argc + 2));
- - cld_argv[0] = argv[0]; /* git-daemon */
- - cld_argv[1] = "--serve";
- + cld_argv = xmalloc(sizeof (char *) * (argc + 3));
- + cld_argv[0] = "git";
- + cld_argv[1] = argv[0]; /* daemon */
- + cld_argv[2] = "--serve";
- for (i = 1; i < argc; ++i)
- - cld_argv[i+1] = argv[i];
- - cld_argv[argc+1] = NULL;
- + cld_argv[i+2] = argv[i];
- + cld_argv[argc+2] = NULL;
-
- return serve(&listen_addr, listen_port, cred);
- }
- --- a/fast-import.c
- +++ b/fast-import.c
- @@ -3380,7 +3380,7 @@ static void parse_argv(void)
- read_marks();
- }
-
- -int main(int argc, char **argv)
- +int cmd_fast_import(int argc, char **argv, const char *prefix)
- {
- unsigned int i;
-
- --- a/git.c
- +++ b/git.c
- @@ -311,11 +311,11 @@ static int handle_alias(int *argcp, cons
-
- struct cmd_struct {
- const char *cmd;
- - int (*fn)(int, const char **, const char *);
- + int (*fn)(int, char **, const char *);
- int option;
- };
-
- -static int run_builtin(struct cmd_struct *p, int argc, const char **argv)
- +static int run_builtin(struct cmd_struct *p, int argc, char **argv)
- {
- int status, help;
- struct stat st;
- @@ -396,6 +396,7 @@ static struct cmd_struct commands[] = {
- { "config", cmd_config, RUN_SETUP_GENTLY },
- { "count-objects", cmd_count_objects, RUN_SETUP },
- { "credential", cmd_credential, RUN_SETUP_GENTLY },
- + { "daemon", cmd_daemon },
- { "describe", cmd_describe, RUN_SETUP },
- { "diff", cmd_diff },
- { "diff-files", cmd_diff_files, RUN_SETUP | NEED_WORK_TREE },
- @@ -414,6 +415,7 @@ static struct cmd_struct commands[] = {
- { "grep", cmd_grep, RUN_SETUP_GENTLY },
- { "hash-object", cmd_hash_object },
- { "help", cmd_help },
- + { "imap-send", cmd_imap_send },
- { "index-pack", cmd_index_pack, RUN_SETUP_GENTLY },
- { "init", cmd_init_db, NO_SETUP },
- { "init-db", cmd_init_db, NO_SETUP },
- @@ -463,6 +465,7 @@ static struct cmd_struct commands[] = {
- { "revert", cmd_revert, RUN_SETUP | NEED_WORK_TREE },
- { "rm", cmd_rm, RUN_SETUP },
- { "send-pack", cmd_send_pack, RUN_SETUP },
- + { "shell", cmd_shell },
- { "shortlog", cmd_shortlog, RUN_SETUP_GENTLY | USE_PAGER },
- { "show", cmd_show, RUN_SETUP },
- { "show-branch", cmd_show_branch, RUN_SETUP },
- @@ -479,6 +482,7 @@ static struct cmd_struct commands[] = {
- { "update-server-info", cmd_update_server_info, RUN_SETUP },
- { "upload-archive", cmd_upload_archive },
- { "upload-archive--writer", cmd_upload_archive_writer },
- + { "upload-pack", cmd_upload_pack },
- { "var", cmd_var, RUN_SETUP_GENTLY },
- { "verify-commit", cmd_verify_commit, RUN_SETUP },
- { "verify-pack", cmd_verify_pack },
- --- a/imap-send.c
- +++ b/imap-send.c
- @@ -1496,7 +1496,7 @@ static int curl_append_msgs_to_imap(stru
- }
- #endif
-
- -int main(int argc, char **argv)
- +int cmd_imap_send(int argc, char **argv, const char *prefix)
- {
- struct strbuf all_msgs = STRBUF_INIT;
- int total;
- --- a/shell.c
- +++ b/shell.c
- @@ -138,7 +138,7 @@ static struct commands {
- { NULL },
- };
-
- -int main(int argc, char **argv)
- +int cmd_shell(int argc, char **argv, const char *prefix)
- {
- char *prog;
- const char **user_argv;
- --- a/upload-pack.c
- +++ b/upload-pack.c
- @@ -819,7 +819,7 @@ static int upload_pack_config(const char
- return parse_hide_refs_config(var, value, "uploadpack");
- }
-
- -int main(int argc, char **argv)
- +int cmd_upload_pack(int argc, char **argv, const char *prefix)
- {
- char *dir;
- int i;
|