aboutsummaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorPeter Wagner <tripolar@gmx.at>2014-06-16 11:39:30 +0200
committerPeter Wagner <tripolar@gmx.at>2014-06-16 11:45:20 +0200
commit306378c90d61efb845545ec18eef196b5a441c28 (patch)
tree8a042f457c952b221d1520d17ab7f38152f55a50 /net
parent2ed81adda6b3660067825a08e44f20b1696f7052 (diff)
git: import from packages
Signed-off-by: Peter Wagner <tripolar@gmx.at>
Diffstat (limited to 'net')
-rw-r--r--net/git/Makefile70
-rw-r--r--net/git/patches/100-convert_builtin.patch233
-rw-r--r--net/git/patches/200-disable_fasthash.patch12
3 files changed, 315 insertions, 0 deletions
diff --git a/net/git/Makefile b/net/git/Makefile
new file mode 100644
index 000000000..05ddfabf0
--- /dev/null
+++ b/net/git/Makefile
@@ -0,0 +1,70 @@
+#
+# Copyright (C) 2009-2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=git
+PKG_VERSION:=2.0.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=@KERNEL/software/scm/git/
+PKG_MD5SUM:=0646202ae979e4339f3e47f2375b5773
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/git
+ SECTION:=net
+ CATEGORY:=Network
+ SUBMENU:=Version Control Systems
+ DEPENDS:=+libopenssl +libpthread
+ TITLE:=The fast version control system
+ URL:=http://git-scm.com
+endef
+
+define Package/git/description
+ Git is a free & open source, distributed version control system
+ designed to handle everything from small to very large projects
+ with speed and efficiency.
+endef
+
+MAKE_FLAGS := \
+ CC="$(TARGET_CC)" \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ CPPFLAGS="$(TARGET_CPPFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)" \
+ NO_CURL="YesPlease" \
+ NO_EXPAT="YesPlease" \
+ NO_MKSTEMPS="YesPlease" \
+ NO_GETTEXT="YesPlease" \
+ NO_UNIX_SOCKETS="YesPlease" \
+ NO_IPV6="YesPlease" \
+ NO_ICONV="YesPlease" \
+ NO_NSEC="YesPlease" \
+ NO_PERL="YesPlease" \
+ NO_PYTHON="YesPlease" \
+ NO_TCLTK="YesPlease"
+
+define Build/Configure
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ configure
+
+ ( cd $(PKG_BUILD_DIR); \
+ ./configure --prefix=/usr \
+ );
+endef
+
+define Package/git/install
+ $(INSTALL_DIR) $(1)
+ $(RM) $(PKG_INSTALL_DIR)/usr/bin/git-cvsserver
+ $(CP) $(PKG_INSTALL_DIR)/* $(1)/
+endef
+
+$(eval $(call BuildPackage,git))
diff --git a/net/git/patches/100-convert_builtin.patch b/net/git/patches/100-convert_builtin.patch
new file mode 100644
index 000000000..6714788e0
--- /dev/null
+++ b/net/git/patches/100-convert_builtin.patch
@@ -0,0 +1,233 @@
+--- a/Makefile
++++ b/Makefile
+@@ -532,16 +532,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
++PROGRAM_OBJS =
+
+ # Binary suffix, set to .exe for Windows builds
+ X =
+@@ -1002,6 +993,12 @@ BUILTIN_OBJS += builtin/var.o
+ BUILTIN_OBJS += builtin/verify-pack.o
+ BUILTIN_OBJS += builtin/verify-tag.o
+ BUILTIN_OBJS += builtin/write-tree.o
++BUILTIN_OBJS += builtin/daemon.o
++BUILTIN_OBJS += builtin/fast-import.o
++BUILTIN_OBJS += builtin/http-backend.o
++BUILTIN_OBJS += builtin/imap-send.o
++BUILTIN_OBJS += builtin/shell.o
++BUILTIN_OBJS += builtin/upload-pack.o
+
+ GITLIBS = $(LIB_FILE) $(XDIFF_LIB)
+ EXTLIBS =
+@@ -1165,7 +1162,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)
+@@ -2049,10 +2046,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 GIT-LDFLAGS $(GITLIBS)
+- $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
+- $(LIBS) $(OPENSSL_LINK) $(OPENSSL_LIBSSL) $(LIB_4_CRYPTO)
+-
+ 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,$^) \
+ $(LIBS) $(CURL_LIBCURL)
+@@ -2364,24 +2357,22 @@ 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; \
+ } && \
+ for p in $(filter $(install_bindir_programs),$(BUILT_INS)); do \
+ $(RM) "$$bindir/$$p" && \
+ test -z "$(NO_INSTALL_HARDLINKS)" && \
+- ln "$$bindir/git$X" "$$bindir/$$p" 2>/dev/null || \
+ ln -s "git$X" "$$bindir/$$p" 2>/dev/null || \
+ cp "$$bindir/git$X" "$$bindir/$$p" || exit; \
+ done && \
+ for p in $(BUILT_INS); do \
+ $(RM) "$$execdir/$$p" && \
+ test -z "$(NO_INSTALL_HARDLINKS)" && \
+- ln "$$execdir/git$X" "$$execdir/$$p" 2>/dev/null || \
+ ln -s "git$X" "$$execdir/$$p" 2>/dev/null || \
+ cp "$$execdir/git$X" "$$execdir/$$p" || exit; \
+ done && \
+--- a/builtin.h
++++ b/builtin.h
+@@ -136,5 +136,11 @@ 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_http_backend(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/http-backend.c
+@@ -0,0 +1 @@
++#include "../http-backend.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
+@@ -1125,7 +1125,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;
+--- a/fast-import.c
++++ b/fast-import.c
+@@ -3356,7 +3356,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
+@@ -275,11 +275,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;
+@@ -359,6 +359,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 },
+@@ -377,6 +378,8 @@ static struct cmd_struct commands[] = {
+ { "grep", cmd_grep, RUN_SETUP_GENTLY },
+ { "hash-object", cmd_hash_object },
+ { "help", cmd_help },
++ { "http-backend", cmd_http_backend },
++ { "imap-send", cmd_imap_send },
+ { "index-pack", cmd_index_pack, RUN_SETUP_GENTLY },
+ { "init", cmd_init_db },
+ { "init-db", cmd_init_db },
+@@ -424,6 +427,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 },
+@@ -440,6 +444,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-pack", cmd_verify_pack },
+ { "verify-tag", cmd_verify_tag, RUN_SETUP },
+--- a/http-backend.c
++++ b/http-backend.c
+@@ -563,7 +563,7 @@ static struct service_cmd {
+ {"POST", "/git-receive-pack$", service_rpc}
+ };
+
+-int main(int argc, char **argv)
++int cmd_http_backend(int argc, char **argv, const char *prefix)
+ {
+ char *method = getenv("REQUEST_METHOD");
+ char *dir;
+--- a/imap-send.c
++++ b/imap-send.c
+@@ -1362,7 +1362,7 @@ static int git_imap_config(const char *k
+ return 0;
+ }
+
+-int main(int argc, char **argv)
++int cmd_imap_send(int argc, char **argv, const char *prefix)
+ {
+ struct strbuf all_msgs = STRBUF_INIT;
+ struct strbuf msg = STRBUF_INIT;
+--- a/shell.c
++++ b/shell.c
+@@ -142,7 +142,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
+@@ -790,7 +790,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;
diff --git a/net/git/patches/200-disable_fasthash.patch b/net/git/patches/200-disable_fasthash.patch
new file mode 100644
index 000000000..91f255f80
--- /dev/null
+++ b/net/git/patches/200-disable_fasthash.patch
@@ -0,0 +1,12 @@
+--- a/config.mak.uname
++++ b/config.mak.uname
+@@ -17,9 +17,6 @@ endif
+ # because maintaining the nesting to match is a pain. If
+ # we had "elif" things would have been much nicer...
+
+-ifeq ($(uname_M),x86_64)
+- XDL_FAST_HASH = YesPlease
+-endif
+ ifeq ($(uname_S),OSF1)
+ # Need this for u_short definitions et al
+ BASIC_CFLAGS += -D_OSF_SOURCE