Hello, The attached patch allows git to be built on Solaris 9, which does not have setenv() and unsetenv(). Also, Solaris needs strings.h for index(). A few days ago there was a thread about this on the list and the result was that strchr() is more portable than index() and is used everywhere in git anyway. So instead of including strings.h, this patch replaces all remaining calls to index() by strchr(). Regards, Dennis diff --git a/Makefile b/Makefile index c0409f3..ff645d8 100644 --- a/Makefile +++ b/Makefile @@ -248,6 +248,10 @@ ifeq ($(uname_S),SunOS) NO_UNSETENV = YesPlease NO_SETENV = YesPlease endif + ifeq ($(uname_R),5.9) + NO_UNSETENV = YesPlease + NO_SETENV = YesPlease + endif INSTALL = ginstall TAR = gtar ALL_CFLAGS += -D__EXTENSIONS__ diff --git a/http-fetch.c b/http-fetch.c index 71a7daf..861644b 100644 --- a/http-fetch.c +++ b/http-fetch.c @@ -597,7 +597,7 @@ static void process_alternates_response( newalt->packs = NULL; path = strstr(target, "//"); if (path) { - path = index(path+2, '/'); + path = strchr(path+2, '/'); if (path) newalt->path_len = strlen(path); } @@ -678,7 +678,7 @@ static void xml_start_tag(void *userData, const char *name, const char **atts) { struct xml_ctx *ctx = (struct xml_ctx *)userData; - const char *c = index(name, ':'); + const char *c = strchr(name, ':'); int new_len; if (c == NULL) @@ -707,7 +707,7 @@ static void xml_end_tag(void *userData, const char *name) { struct xml_ctx *ctx = (struct xml_ctx *)userData; - const char *c = index(name, ':'); + const char *c = strchr(name, ':'); char *ep; ctx->userFunc(ctx, 1); @@ -1261,7 +1261,7 @@ int main(int argc, char **argv) alt->next = NULL; path = strstr(url, "//"); if (path) { - path = index(path+2, '/'); + path = strchr(path+2, '/'); if (path) alt->path_len = strlen(path); } diff --git a/http-push.c b/http-push.c index 57cefde..994ee90 100644 --- a/http-push.c +++ b/http-push.c @@ -1211,7 +1211,7 @@ static void xml_start_tag(void *userData, const char *name, const char **atts) { struct xml_ctx *ctx = (struct xml_ctx *)userData; - const char *c = index(name, ':'); + const char *c = strchr(name, ':'); int new_len; if (c == NULL) @@ -1240,7 +1240,7 @@ static void xml_end_tag(void *userData, const char *name) { struct xml_ctx *ctx = (struct xml_ctx *)userData; - const char *c = index(name, ':'); + const char *c = strchr(name, ':'); char *ep; ctx->userFunc(ctx, 1); @@ -2350,7 +2350,7 @@ int main(int argc, char **argv) char *path = strstr(arg, "//"); remote->url = arg; if (path) { - path = index(path+2, '/'); + path = strchr(path+2, '/'); if (path) remote->path_len = strlen(path); } - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html