summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Baudis <pasky@suse.cz>2005-07-29 15:50:51 (GMT)
committerJunio C Hamano <junkio@cox.net>2005-07-30 00:21:52 (GMT)
commitdd53c7ab297cc491eb5164198e63d670c7b48530 (patch)
treeef6b9f5293b0b910cd59f916ffaa7021987771a9
parent28818ffada5c811b215b8fef7b61f8ae696abd17 (diff)
downloadgit-dd53c7ab297cc491eb5164198e63d670c7b48530.zip
git-dd53c7ab297cc491eb5164198e63d670c7b48530.tar.gz
git-dd53c7ab297cc491eb5164198e63d670c7b48530.tar.bz2
[PATCH] Support for NO_OPENSSL
Support for completely OpenSSL-less builds. FSF considers distributing GPL binaries with OpenSSL linked in as a legal problem so this is trouble e.g. for Debian, or some people might not want to install OpenSSL anyway. If you make NO_OPENSSL=1 you get completely OpenSSL-less build, disabling --merge-order and using Mozilla's SHA1 implementation. Ported from Cogito. Signed-off-by: Petr Baudis <pasky@ucw.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r--Makefile8
-rw-r--r--rev-list.c6
2 files changed, 12 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index f11fddd..d7d4182 100644
--- a/Makefile
+++ b/Makefile
@@ -83,7 +83,7 @@ LIB_H=cache.h object.h blob.h tree.h commit.h tag.h delta.h epoch.h csum-file.h
pack.h pkt-line.h refs.h
LIB_OBJS=read-cache.o sha1_file.o usage.o object.o commit.o tree.o blob.o \
tag.o date.o index.o diff-delta.o patch-delta.o entry.o path.o \
- epoch.o refs.o csum-file.o pack-check.o pkt-line.o connect.o ident.o
+ refs.o csum-file.o pack-check.o pkt-line.o connect.o ident.o
LIB_H += rev-cache.h
LIB_OBJS += rev-cache.o
@@ -105,6 +105,12 @@ LIB_OBJS += server-info.o
LIBS = $(LIB_FILE)
LIBS += -lz
+ifndef NO_OPENSSL
+ LIB_OBJS += epoch.o
+else
+ CFLAGS += '-DNO_OPENSSL'
+ MOZILLA_SHA1=1
+endif
ifdef MOZILLA_SHA1
SHA1_HEADER="mozilla-sha1/sha1.h"
LIB_OBJS += mozilla-sha1/sha1.o
diff --git a/rev-list.c b/rev-list.c
index 846aa2f..83a604a 100644
--- a/rev-list.c
+++ b/rev-list.c
@@ -548,9 +548,13 @@ int main(int argc, char **argv)
sort_in_topological_order(&list);
show_commit_list(list);
} else {
+#ifndef NO_OPENSSL
if (sort_list_in_merge_order(list, &process_commit)) {
- die("merge order sort failed\n");
+ die("merge order sort failed\n");
}
+#else
+ die("merge order sort unsupported, OpenSSL not linked");
+#endif
}
return 0;