* [RFC+PATCH 0/2] Clean up root directory @ 2006-07-10 4:54 Ryan Anderson 2006-07-10 4:54 ` [PATCH 1/2] Move SCM interoperability tools into interop/ Ryan Anderson 0 siblings, 1 reply; 4+ messages in thread From: Ryan Anderson @ 2006-07-10 4:54 UTC (permalink / raw) To: git A second send of my patch to clean up the root directory a bit. This series moves the "SCM interoperability" tools into interop/ and builtin-*.c into builtin/. All tests pass, and all finished scripts and binaries are dropped into the root after a "make all". GIT: Please enter your email below. GIT: Lines beginning in "GIT: " will be removed. GIT: Consider including an overall diffstat or table of contents GIT: for the patch you are writing. ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/2] Move SCM interoperability tools into interop/ 2006-07-10 4:54 [RFC+PATCH 0/2] Clean up root directory Ryan Anderson @ 2006-07-10 4:54 ` Ryan Anderson 2006-07-10 4:54 ` [PATCH 2/2] Move all builtin .c files into builtin/ Ryan Anderson 0 siblings, 1 reply; 4+ messages in thread From: Ryan Anderson @ 2006-07-10 4:54 UTC (permalink / raw) To: git; +Cc: Ryan Anderson Signed-off-by: Ryan Anderson <ryan@michonline.com> --- Makefile | 12 +++-- interop/Makefile | 45 ++++++++++++++++++++ git-archimport.perl => interop/git-archimport.perl | 0 .../git-cvsexportcommit.perl | 0 git-cvsimport.perl => interop/git-cvsimport.perl | 0 git-cvsserver.perl => interop/git-cvsserver.perl | 0 git-p4import.py => interop/git-p4import.py | 0 git-quiltimport.sh => interop/git-quiltimport.sh | 0 git-send-email.perl => interop/git-send-email.perl | 0 git-svnimport.perl => interop/git-svnimport.perl | 0 10 files changed, 52 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 13f7c89..d6e2b0f 100644 --- a/Makefile +++ b/Makefile @@ -127,14 +127,13 @@ SCRIPT_SH = \ git-applymbox.sh git-applypatch.sh git-am.sh \ git-merge.sh git-merge-stupid.sh git-merge-octopus.sh \ git-merge-resolve.sh git-merge-ours.sh \ - git-lost-found.sh git-quiltimport.sh + git-lost-found.sh SCRIPT_PERL = \ - git-archimport.perl git-cvsimport.perl git-relink.perl \ + git-relink.perl \ git-shortlog.perl git-rerere.perl \ - git-annotate.perl git-cvsserver.perl \ - git-svnimport.perl git-mv.perl git-cvsexportcommit.perl \ - git-send-email.perl + git-annotate.perl \ + git-mv.perl SCRIPT_PYTHON = \ git-merge-recursive.py @@ -176,6 +175,9 @@ BUILT_INS = git-log$X git-whatchanged$X git-diff-index$X git-diff-stages$X git-diff-tree$X git-cat-file$X \ git-fmt-merge-msg$X + +include interop/Makefile + # what 'all' will build and 'install' will install, in gitexecdir ALL_PROGRAMS = $(PROGRAMS) $(SIMPLE_PROGRAMS) $(SCRIPTS) diff --git a/interop/Makefile b/interop/Makefile new file mode 100644 index 0000000..b1a11d1 --- /dev/null +++ b/interop/Makefile @@ -0,0 +1,45 @@ + +INTEROP_PERL_BASE = \ + git-archimport.perl \ + git-cvsimport.perl \ + git-cvsexportcommit.perl \ + git-cvsserver.perl \ + git-svnimport.perl \ + git-send-email.perl + +INTEROP_PYTHON_BASE = \ + git-p4import.py + +INTEROP_SH_BASE = \ + git-quiltimport.sh + +SCRIPTS+=$(patsubst %.perl,%,$(INTEROP_PERL_BASE)) +SCRIPTS+=$(patsubst %.py,%,$(INTEROP_PYTHON_BASE)) +SCRIPTS+=$(patsubst %.sh,%,$(INTEROP_SH_BASE)) + +$(patsubst %.sh,%,$(INTEROP_SH_BASE)) : % : interop/%.sh + rm -f $@ $@+ + sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ + -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \ + -e 's/@@NO_CURL@@/$(NO_CURL)/g' \ + -e 's/@@NO_PYTHON@@/$(NO_PYTHON)/g' \ + $^ >$@+ + chmod +x $@+ + mv $@+ $@ + +$(patsubst %.perl,%,$(INTEROP_PERL_BASE)) : % : interop/%.perl + rm -f $@ $@+ + sed -e '1s|#!.*perl|#!$(PERL_PATH_SQ)|' \ + -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \ + $^ >$@+ + chmod +x $@+ + mv $@+ $@ + +$(patsubst %.py,%,$(INTEROP_PYTHON_BASE)) : % : interop/%.py GIT-CFLAGS + rm -f $@ $@+ + sed -e '1s|#!.*python|#!$(PYTHON_PATH_SQ)|' \ + -e 's|@@GIT_PYTHON_PATH@@|$(GIT_PYTHON_DIR_SQ)|g' \ + -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \ + $^ >$@+ + chmod +x $@+ + mv $@+ $@ diff --git a/git-archimport.perl b/interop/git-archimport.perl similarity index 100% rename from git-archimport.perl rename to interop/git-archimport.perl diff --git a/git-cvsexportcommit.perl b/interop/git-cvsexportcommit.perl similarity index 100% rename from git-cvsexportcommit.perl rename to interop/git-cvsexportcommit.perl diff --git a/git-cvsimport.perl b/interop/git-cvsimport.perl similarity index 100% rename from git-cvsimport.perl rename to interop/git-cvsimport.perl diff --git a/git-cvsserver.perl b/interop/git-cvsserver.perl similarity index 100% rename from git-cvsserver.perl rename to interop/git-cvsserver.perl diff --git a/git-p4import.py b/interop/git-p4import.py similarity index 100% rename from git-p4import.py rename to interop/git-p4import.py diff --git a/git-quiltimport.sh b/interop/git-quiltimport.sh similarity index 100% rename from git-quiltimport.sh rename to interop/git-quiltimport.sh diff --git a/git-send-email.perl b/interop/git-send-email.perl similarity index 100% rename from git-send-email.perl rename to interop/git-send-email.perl diff --git a/git-svnimport.perl b/interop/git-svnimport.perl similarity index 100% rename from git-svnimport.perl rename to interop/git-svnimport.perl -- 1.4.1.gc473b-dirty ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] Move all builtin .c files into builtin/ 2006-07-10 4:54 ` [PATCH 1/2] Move SCM interoperability tools into interop/ Ryan Anderson @ 2006-07-10 4:54 ` Ryan Anderson 2006-07-10 6:41 ` Pavel Roskin 0 siblings, 1 reply; 4+ messages in thread From: Ryan Anderson @ 2006-07-10 4:54 UTC (permalink / raw) To: git; +Cc: Ryan Anderson Signed-off-by: Ryan Anderson <ryan@michonline.com> --- Makefile | 15 ++------------- builtin/Makefile | 13 +++++++++++++ builtin-add.c => builtin/builtin-add.c | 0 builtin-apply.c => builtin/builtin-apply.c | 0 builtin-cat-file.c => builtin/builtin-cat-file.c | 0 .../builtin-check-ref-format.c | 0 .../builtin-commit-tree.c | 0 builtin-count.c => builtin/builtin-count.c | 0 .../builtin-diff-files.c | 0 .../builtin-diff-index.c | 0 .../builtin-diff-stages.c | 0 builtin-diff-tree.c => builtin/builtin-diff-tree.c | 0 builtin-diff.c => builtin/builtin-diff.c | 0 .../builtin-fmt-merge-msg.c | 0 builtin-grep.c => builtin/builtin-grep.c | 0 builtin-help.c => builtin/builtin-help.c | 0 builtin-init-db.c => builtin/builtin-init-db.c | 0 builtin-log.c => builtin/builtin-log.c | 0 builtin-ls-files.c => builtin/builtin-ls-files.c | 0 builtin-ls-tree.c => builtin/builtin-ls-tree.c | 0 builtin-mailinfo.c => builtin/builtin-mailinfo.c | 0 builtin-mailsplit.c => builtin/builtin-mailsplit.c | 0 builtin-push.c => builtin/builtin-push.c | 0 builtin-read-tree.c => builtin/builtin-read-tree.c | 0 builtin-rev-list.c => builtin/builtin-rev-list.c | 0 builtin-rev-parse.c => builtin/builtin-rev-parse.c | 0 builtin-rm.c => builtin/builtin-rm.c | 0 .../builtin-show-branch.c | 0 .../builtin-stripspace.c | 0 builtin-tar-tree.c => builtin/builtin-tar-tree.c | 0 .../builtin-update-index.c | 0 .../builtin-update-ref.c | 0 .../builtin-upload-tar.c | 0 .../builtin-write-tree.c | 0 builtin.h => builtin/builtin.h | 0 git.c | 2 +- 36 files changed, 16 insertions(+), 14 deletions(-) diff --git a/Makefile b/Makefile index d6e2b0f..92368b9 100644 --- a/Makefile +++ b/Makefile @@ -87,7 +87,7 @@ uname_P := $(shell sh -c 'uname -p 2>/de # CFLAGS and LDFLAGS are for the users to override from the command line. -CFLAGS = -g -O2 -Wall +CFLAGS = -g -O2 -Wall -I. LDFLAGS = ALL_CFLAGS = $(CFLAGS) ALL_LDFLAGS = $(LDFLAGS) @@ -177,6 +177,7 @@ BUILT_INS = git-log$X git-whatchanged$X include interop/Makefile +include builtin/Makefile # what 'all' will build and 'install' will install, in gitexecdir ALL_PROGRAMS = $(PROGRAMS) $(SIMPLE_PROGRAMS) $(SCRIPTS) @@ -222,18 +223,6 @@ LIB_OBJS = \ fetch-clone.o revision.o pager.o tree-walk.o xdiff-interface.o \ alloc.o $(DIFF_OBJS) -BUILTIN_OBJS = \ - builtin-log.o builtin-help.o builtin-count.o builtin-diff.o builtin-push.o \ - builtin-grep.o builtin-add.o builtin-rev-list.o builtin-check-ref-format.o \ - builtin-rm.o builtin-init-db.o builtin-rev-parse.o \ - builtin-tar-tree.o builtin-upload-tar.o builtin-update-index.o \ - builtin-ls-files.o builtin-ls-tree.o builtin-write-tree.o \ - builtin-read-tree.o builtin-commit-tree.o builtin-mailinfo.o \ - builtin-apply.o builtin-show-branch.o builtin-diff-files.o \ - builtin-diff-index.o builtin-diff-stages.o builtin-diff-tree.o \ - builtin-cat-file.o builtin-mailsplit.o builtin-stripspace.o \ - builtin-update-ref.o builtin-fmt-merge-msg.o - GITLIBS = $(LIB_FILE) $(XDIFF_LIB) LIBS = $(GITLIBS) -lz diff --git a/builtin/Makefile b/builtin/Makefile new file mode 100644 index 0000000..3588fce --- /dev/null +++ b/builtin/Makefile @@ -0,0 +1,13 @@ +BUILTIN_OBJ_BASE = \ + builtin-log.o builtin-help.o builtin-count.o builtin-diff.o builtin-push.o \ + builtin-grep.o builtin-add.o builtin-rev-list.o builtin-check-ref-format.o \ + builtin-rm.o builtin-init-db.o builtin-rev-parse.o \ + builtin-tar-tree.o builtin-upload-tar.o builtin-update-index.o \ + builtin-ls-files.o builtin-ls-tree.o builtin-write-tree.o \ + builtin-read-tree.o builtin-commit-tree.o builtin-mailinfo.o \ + builtin-apply.o builtin-show-branch.o builtin-diff-files.o \ + builtin-diff-index.o builtin-diff-stages.o builtin-diff-tree.o \ + builtin-cat-file.o builtin-mailsplit.o builtin-stripspace.o \ + builtin-update-ref.o builtin-fmt-merge-msg.o + +BUILTIN_OBJS = $(addprefix builtin/,$(BUILTIN_OBJ_BASE)) \ No newline at end of file diff --git a/builtin-add.c b/builtin/builtin-add.c similarity index 100% rename from builtin-add.c rename to builtin/builtin-add.c diff --git a/builtin-apply.c b/builtin/builtin-apply.c similarity index 100% rename from builtin-apply.c rename to builtin/builtin-apply.c diff --git a/builtin-cat-file.c b/builtin/builtin-cat-file.c similarity index 100% rename from builtin-cat-file.c rename to builtin/builtin-cat-file.c diff --git a/builtin-check-ref-format.c b/builtin/builtin-check-ref-format.c similarity index 100% rename from builtin-check-ref-format.c rename to builtin/builtin-check-ref-format.c diff --git a/builtin-commit-tree.c b/builtin/builtin-commit-tree.c similarity index 100% rename from builtin-commit-tree.c rename to builtin/builtin-commit-tree.c diff --git a/builtin-count.c b/builtin/builtin-count.c similarity index 100% rename from builtin-count.c rename to builtin/builtin-count.c diff --git a/builtin-diff-files.c b/builtin/builtin-diff-files.c similarity index 100% rename from builtin-diff-files.c rename to builtin/builtin-diff-files.c diff --git a/builtin-diff-index.c b/builtin/builtin-diff-index.c similarity index 100% rename from builtin-diff-index.c rename to builtin/builtin-diff-index.c diff --git a/builtin-diff-stages.c b/builtin/builtin-diff-stages.c similarity index 100% rename from builtin-diff-stages.c rename to builtin/builtin-diff-stages.c diff --git a/builtin-diff-tree.c b/builtin/builtin-diff-tree.c similarity index 100% rename from builtin-diff-tree.c rename to builtin/builtin-diff-tree.c diff --git a/builtin-diff.c b/builtin/builtin-diff.c similarity index 100% rename from builtin-diff.c rename to builtin/builtin-diff.c diff --git a/builtin-fmt-merge-msg.c b/builtin/builtin-fmt-merge-msg.c similarity index 100% rename from builtin-fmt-merge-msg.c rename to builtin/builtin-fmt-merge-msg.c diff --git a/builtin-grep.c b/builtin/builtin-grep.c similarity index 100% rename from builtin-grep.c rename to builtin/builtin-grep.c diff --git a/builtin-help.c b/builtin/builtin-help.c similarity index 100% rename from builtin-help.c rename to builtin/builtin-help.c diff --git a/builtin-init-db.c b/builtin/builtin-init-db.c similarity index 100% rename from builtin-init-db.c rename to builtin/builtin-init-db.c diff --git a/builtin-log.c b/builtin/builtin-log.c similarity index 100% rename from builtin-log.c rename to builtin/builtin-log.c diff --git a/builtin-ls-files.c b/builtin/builtin-ls-files.c similarity index 100% rename from builtin-ls-files.c rename to builtin/builtin-ls-files.c diff --git a/builtin-ls-tree.c b/builtin/builtin-ls-tree.c similarity index 100% rename from builtin-ls-tree.c rename to builtin/builtin-ls-tree.c diff --git a/builtin-mailinfo.c b/builtin/builtin-mailinfo.c similarity index 100% rename from builtin-mailinfo.c rename to builtin/builtin-mailinfo.c diff --git a/builtin-mailsplit.c b/builtin/builtin-mailsplit.c similarity index 100% rename from builtin-mailsplit.c rename to builtin/builtin-mailsplit.c diff --git a/builtin-push.c b/builtin/builtin-push.c similarity index 100% rename from builtin-push.c rename to builtin/builtin-push.c diff --git a/builtin-read-tree.c b/builtin/builtin-read-tree.c similarity index 100% rename from builtin-read-tree.c rename to builtin/builtin-read-tree.c diff --git a/builtin-rev-list.c b/builtin/builtin-rev-list.c similarity index 100% rename from builtin-rev-list.c rename to builtin/builtin-rev-list.c diff --git a/builtin-rev-parse.c b/builtin/builtin-rev-parse.c similarity index 100% rename from builtin-rev-parse.c rename to builtin/builtin-rev-parse.c diff --git a/builtin-rm.c b/builtin/builtin-rm.c similarity index 100% rename from builtin-rm.c rename to builtin/builtin-rm.c diff --git a/builtin-show-branch.c b/builtin/builtin-show-branch.c similarity index 100% rename from builtin-show-branch.c rename to builtin/builtin-show-branch.c diff --git a/builtin-stripspace.c b/builtin/builtin-stripspace.c similarity index 100% rename from builtin-stripspace.c rename to builtin/builtin-stripspace.c diff --git a/builtin-tar-tree.c b/builtin/builtin-tar-tree.c similarity index 100% rename from builtin-tar-tree.c rename to builtin/builtin-tar-tree.c diff --git a/builtin-update-index.c b/builtin/builtin-update-index.c similarity index 100% rename from builtin-update-index.c rename to builtin/builtin-update-index.c diff --git a/builtin-update-ref.c b/builtin/builtin-update-ref.c similarity index 100% rename from builtin-update-ref.c rename to builtin/builtin-update-ref.c diff --git a/builtin-upload-tar.c b/builtin/builtin-upload-tar.c similarity index 100% rename from builtin-upload-tar.c rename to builtin/builtin-upload-tar.c diff --git a/builtin-write-tree.c b/builtin/builtin-write-tree.c similarity index 100% rename from builtin-write-tree.c rename to builtin/builtin-write-tree.c diff --git a/builtin.h b/builtin/builtin.h similarity index 100% rename from builtin.h rename to builtin/builtin.h diff --git a/git.c b/git.c index 49062ca..81f6675 100644 --- a/git.c +++ b/git.c @@ -12,7 +12,7 @@ #include "git-compat-util.h" #include "exec_cmd.h" #include "cache.h" -#include "builtin.h" +#include "builtin/builtin.h" static void prepend_to_path(const char *dir, int len) { -- 1.4.1.gc473b-dirty ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] Move all builtin .c files into builtin/ 2006-07-10 4:54 ` [PATCH 2/2] Move all builtin .c files into builtin/ Ryan Anderson @ 2006-07-10 6:41 ` Pavel Roskin 0 siblings, 0 replies; 4+ messages in thread From: Pavel Roskin @ 2006-07-10 6:41 UTC (permalink / raw) To: Ryan Anderson; +Cc: git Hello, Ryan! On Mon, 2006-07-10 at 00:54 -0400, Ryan Anderson wrote: > Signed-off-by: Ryan Anderson <ryan@michonline.com> I agree that the top level directory is overcrowded, but wouldn't it be better to move libgit.a sources to "lib" and then classify the remaining files in some way (e.g. "git" or "src" for builtin commands, "commands" for the rest)? While at that, the "buildin-" prefix could be stripped. The main "git" executable is nothing but several builtin commands rolled together. It's not like a shell, which has functionality beyond the builtin commands. So "builtin" is git. Or you can say that the git executable is a command line frontend to the git library (it's moving in this direction anyway). Then you can have "client" and "server" directories. That's more important for understanding the source than "builtin", "standalone" or any classification based on technical details. -- Regards, Pavel Roskin ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-07-10 6:41 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2006-07-10 4:54 [RFC+PATCH 0/2] Clean up root directory Ryan Anderson 2006-07-10 4:54 ` [PATCH 1/2] Move SCM interoperability tools into interop/ Ryan Anderson 2006-07-10 4:54 ` [PATCH 2/2] Move all builtin .c files into builtin/ Ryan Anderson 2006-07-10 6:41 ` Pavel Roskin
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).