On Fri, 6 Jun 2008, Jeremy Maitin-Shepard wrote:
This change will result in the allocated memory being leaked, which is
probably not correct. Perhaps change it to alloca instead.
OK below is a new version with the suggestions.
--
Boyd Gerber [off-list ref]
ZENEZ 1042 East Fort Union #135, Midvale Utah 84047
---------------------------------New-Submittal-------------------------
From 554045d534dfa89f01fc6b0a819c73ad660f02fb Fri Jun 6 14:01:55 MDT 2008
From: Boyd Lynn Gerber <redacted>
Date: Fri, 6 Jun 2008 13:58:04 -0600
Subject: [PATCH] This patch is to allow 12 different OS's to compile and run git.
This patch has patches to
Makefile
git-compat-util.h
progress.c
This patch allows some older OS's, SCO OpenServer 5.0.X, SCO UnixWare 7.1.4,
and OpenServer 6.0.X to build and run git.
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
Signed-off-by: Boyd Lynn Gerber <redacted>
--
Boyd Gerber [off-list ref]
ZENEZ 1042 East Fort Union #135, Midvale Utah 84047
diff --git a/Makefile b/Makefile
index cce5a6e..6df008a 100644
--- a/Makefile
+++ b/Makefile
@@ -165,6 +165,20 @@ uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not')
# CFLAGS and LDFLAGS are for the users to override from the command line.
CFLAGS = -g -O2 -Wall
+ifeq ($(uname_S),SCO_SV)
+ ifeq ($(uname_R),3.2)
+# CFLAGS = -g -O2
+ CFLAGS = -g
+ endif
+ ifeq ($(uname_R),5)
+ CFLAGS = -g -O2 -Wall
+# CFLAGS = -g -O2
+ endif
+endif
+ifeq ($(uname_S),UnixWare)
+ CFLAGS = -g -O2 -Wall
+# CFLAGS = -g -O2
+endif
LDFLAGS =
ALL_CFLAGS = $(CFLAGS)
ALL_LDFLAGS = $(LDFLAGS)
@@ -207,7 +221,8 @@ GITWEB_SITE_FOOTER =
export prefix bindir gitexecdir sharedir template_dir htmldir sysconfdir
-CC = gcc
+#CC = gcc
+CC = "cc"
AR = ar
RM = rm -f
TAR = tar
@@ -564,6 +579,42 @@ endif
ifeq ($(uname_S),GNU/kFreeBSD)
NO_STRLCPY = YesPlease
endif
+ifeq ($(uname_S),UnixWare)
+ NEEDS_SOCKET = YesPlease
+# NEEDS_NSL = YesPlease
+ NEEDS_SSL_WITH_CRYPTO = YesPlease
+ NEEDS_LIBICONV = YesPlease
+ SHELL_PATH = /usr/local/bin/bash
+ NO_IPV6 = YesPlease
+ NO_HSTRERROR = YesPlease
+# BASIC_CFLAGS += -E -H
+ BASIC_CFLAGS += -Kalloca -Kthread
+ BASIC_CFLAGS += -I/usr/local/include
+ BASIC_LDFLAGS += -L/usr/local/lib
+ INSTALL = ginstall
+ TAR = gtar
+ NO_STRCASESTR = YesPlease
+ NO_MEMMEM = YesPlease
+endif
+ifeq ($(uname_S),SCO_SV)
+ NEEDS_SOCKET = YesPlease
+# NEEDS_NSL = YesPlease
+ NEEDS_SSL_WITH_CRYPTO = YesPlease
+ NEEDS_LIBICONV = YesPlease
+ SHELL_PATH = /usr/bin/bash
+ NO_IPV6 = YesPlease
+# NO_HSTRERROR = YesPlease
+# BASIC_CFLAGS += -E -H
+ ifeq ($(uname_R),5)
+ BASIC_CFLAGS += -Kalloca -Kthread
+ endif
+# BASIC_CFLAGS += -I/usr/local/include
+# BASIC_LDFLAGS += -L/usr/local/lib
+ NO_STRCASESTR = YesPlease
+ NO_MEMMEM = YesPlease
+ INSTALL = ginstall
+ TAR = gtar
+endif
ifeq ($(uname_S),Darwin)
NEEDS_SSL_WITH_CRYPTO = YesPlease
NEEDS_LIBICONV = YesPlease
diff --git a/git-compat-util.h b/git-compat-util.h
index 01c4045..f27aea3 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -39,7 +39,8 @@
/* Approximation of the length of the decimal representation of this type. */
#define decimal_length(x) ((int)(sizeof(x) * 2.56 + 0.5) + 1)
-#if !defined(__APPLE__) && !defined(__FreeBSD__)
+#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !de
+fined(_M_UNIX)
#define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */
#define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */
#endif
diff --git a/progress.c b/progress.c
index d19f80c..295c4e3 100644
--- a/progress.c
+++ b/progress.c
@@ -241,7 +241,8 @@ void stop_progress_msg(struct progress **p_progress, const char *msg)
*p_progress = NULL;
if (progress->last_value != -1) {
/* Force the last update */
- char buf[strlen(msg) + 5];
+ /* char buf[strlen(msg) + 5]; */
+ char *buf = alloca (strlen(msg) + 5 );
struct throughput *tp = progress->throughput;
if (tp) {
unsigned int rate = !tp->avg_misecs ? 0 :--
1.5.2.4