* [PATCH] Compile fix for SCO OpenServer @ 2007-12-05 17:21 Aidan Van Dyk 2008-07-30 18:49 ` Compile fix for SCO OPenServer Aidan Van Dyk 0 siblings, 1 reply; 14+ messages in thread From: Aidan Van Dyk @ 2007-12-05 17:21 UTC (permalink / raw) To: git [-- Attachment #1: Type: text/plain, Size: 742 bytes --] SCO OpenServer hides the definitions of (at least) u_short and friends if _XOPEN_SOURCE is defined. Signed-off-by: Aidan Van Dyk <aidan@highrise.ca> --- diff --git a/git-compat-util.h b/git-compat-util.h index ca0a597..be8cbe8 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -24,7 +24,7 @@ /* 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 (__OPENSERVER__) #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 [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Compile fix for SCO OPenServer 2007-12-05 17:21 [PATCH] Compile fix for SCO OpenServer Aidan Van Dyk @ 2008-07-30 18:49 ` Aidan Van Dyk 2008-07-30 20:01 ` Junio C Hamano 0 siblings, 1 reply; 14+ messages in thread From: Aidan Van Dyk @ 2008-07-30 18:49 UTC (permalink / raw) To: git SCO OpenServer also hides the definitions of (at least) u_short and friends if _XOPEN_SOURCE is defined. --- Same patch as last time, updated for current master. git-compat-util.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/git-compat-util.h b/git-compat-util.h index cf89cdf..42e3e0b 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -39,7 +39,7 @@ /* 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__) && !defined(__USLC__) && !defined(_M_UNIX) +#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !defined(_M_UNIX) && !defined(__OPENSERVER__) #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 -- 1.6.0.rc1.dirty ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 18:49 ` Compile fix for SCO OPenServer Aidan Van Dyk @ 2008-07-30 20:01 ` Junio C Hamano 2008-07-30 20:09 ` Boyd Lynn Gerber 2008-07-30 20:13 ` Boyd Lynn Gerber 0 siblings, 2 replies; 14+ messages in thread From: Junio C Hamano @ 2008-07-30 20:01 UTC (permalink / raw) To: Aidan Van Dyk; +Cc: git, Boyd Lynn Gerber Aidan Van Dyk <aidan@highrise.ca> writes: > SCO OpenServer also hides the definitions of (at least) u_short and > friends if _XOPEN_SOURCE is defined. I thought that was covered by 457bb45 (Port to 12 other Platforms., 2008-06-08). > --- > Same patch as last time, updated for current master. Sign-off? Boyd, does this make any of the earlier symbols you added redundant? > > git-compat-util.h | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/git-compat-util.h b/git-compat-util.h > index cf89cdf..42e3e0b 100644 > --- a/git-compat-util.h > +++ b/git-compat-util.h > @@ -39,7 +39,7 @@ > /* 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__) && !defined(__USLC__) && !defined(_M_UNIX) > +#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !defined(_M_UNIX) && !defined(__OPENSERVER__) > #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 > -- > 1.6.0.rc1.dirty ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 20:01 ` Junio C Hamano @ 2008-07-30 20:09 ` Boyd Lynn Gerber 2008-07-30 20:18 ` Junio C Hamano 2008-07-30 20:43 ` Aidan Van Dyk 2008-07-30 20:13 ` Boyd Lynn Gerber 1 sibling, 2 replies; 14+ messages in thread From: Boyd Lynn Gerber @ 2008-07-30 20:09 UTC (permalink / raw) To: Junio C Hamano; +Cc: Aidan Van Dyk, git On Wed, 30 Jul 2008, Junio C Hamano wrote: > Aidan Van Dyk <aidan@highrise.ca> writes: > > SCO OpenServer also hides the definitions of (at least) u_short and > > friends if _XOPEN_SOURCE is defined. > > I thought that was covered by 457bb45 (Port to 12 other Platforms., 2008-06-08). I thought it was covered as well. > Sign-off? > > Boyd, does this make any of the earlier symbols you added redundant? I have just tried this on 4 OpenServer 6.0 machines fresh installed and I do not need this added. I am trying to figure out what is different on his. It appears he is using the exact same version of the compiler as well. My uname -a gives me this... SCO_SV tech0 5 6.0.0 i386 and the gcc -V gives me the exact same compiler. So I do not know why he has to have the additional __OPENSERVER__. This does break my OpenServer 5.0.7 fresh install as well. So I would not use it. What I do not understand is why the !defined(__USLC__) does not catch it. It should. > > git-compat-util.h | 2 +- > > 1 files changed, 1 insertions(+), 1 deletions(-) > > > > diff --git a/git-compat-util.h b/git-compat-util.h > > index cf89cdf..42e3e0b 100644 > > --- a/git-compat-util.h > > +++ b/git-compat-util.h > > @@ -39,7 +39,7 @@ > > /* 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__) && !defined(__USLC__) && !defined(_M_UNIX) > > +#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !defined(_M_UNIX) && !defined(__OPENSERVER__) > > #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 > > -- > > 1.6.0.rc1.dirty > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- Boyd Gerber <gerberb@zenez.com> ZENEZ 1042 East Fort Union #135, Midvale Utah 84047 ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 20:09 ` Boyd Lynn Gerber @ 2008-07-30 20:18 ` Junio C Hamano 2008-07-30 20:43 ` Aidan Van Dyk 1 sibling, 0 replies; 14+ messages in thread From: Junio C Hamano @ 2008-07-30 20:18 UTC (permalink / raw) To: Boyd Lynn Gerber; +Cc: Aidan Van Dyk, git Boyd Lynn Gerber <gerberb@zenez.com> writes: > On Wed, 30 Jul 2008, Junio C Hamano wrote: >> Aidan Van Dyk <aidan@highrise.ca> writes: >> > SCO OpenServer also hides the definitions of (at least) u_short and >> > friends if _XOPEN_SOURCE is defined. >> >> I thought that was covered by 457bb45 (Port to 12 other Platforms., 2008-06-08). > > I thought it was covered as well. > >> Sign-off? >> >> Boyd, does this make any of the earlier symbols you added redundant? > > I have just tried this on 4 OpenServer 6.0 machines fresh installed and I > do not need this added. I am trying to figure out what is different on > his. It appears he is using the exact same version of the compiler as > well. > > My uname -a gives me this... > > SCO_SV tech0 5 6.0.0 i386 > > and the gcc -V gives me the exact same compiler. So I do not know why he > has to have the additional __OPENSERVER__. This does break my OpenServer > 5.0.7 fresh install as well. So I would not use it. What I do not > understand is why the !defined(__USLC__) does not catch it. It should. Thanks for a prompt response. Could you work with Aidan to come up with the optimal solution that does not break anybody? I won't queue this patch until the issue is sorted out. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 20:09 ` Boyd Lynn Gerber 2008-07-30 20:18 ` Junio C Hamano @ 2008-07-30 20:43 ` Aidan Van Dyk 2008-07-30 21:28 ` Boyd Lynn Gerber 1 sibling, 1 reply; 14+ messages in thread From: Aidan Van Dyk @ 2008-07-30 20:43 UTC (permalink / raw) To: Boyd Lynn Gerber; +Cc: Junio C Hamano, git [-- Attachment #1: Type: text/plain, Size: 2621 bytes --] * Boyd Lynn Gerber <gerberb@zenez.com> [080730 16:09]: > I have just tried this on 4 OpenServer 6.0 machines fresh installed and I > do not need this added. I am trying to figure out what is different on > his. It appears he is using the exact same version of the compiler as > well. > > My uname -a gives me this... > > SCO_SV tech0 5 6.0.0 i386 > > and the gcc -V gives me the exact same compiler. So I do not know why he > has to have the additional __OPENSERVER__. This does break my OpenServer > 5.0.7 fresh install as well. So I would not use it. What I do not > understand is why the !defined(__USLC__) does not catch it. It should. Sorry, a bit premature on my end... I tried a "default" gmake, and hit an error right away: UX:cc: ERROR: Invalid subargument: -Wall And immediately pulled my changes from last january into the fix it. My changes included a local config.mak CFLAGS override which was the real fix. To build with no source changes, I need: NO_MKDTEMP=1 SNPRINTF_RETURNS_BOGUS=1 CFLAGS=-g NO_POSIX_ONLY_PROGRAMS=1 How about something like this: diff --git a/Makefile b/Makefile index 798a2f2..c42040f 100644 --- a/Makefile +++ b/Makefile @@ -602,6 +602,7 @@ ifeq ($(uname_S),SCO_SV) endif ifeq ($(uname_R),5) CC = cc + CFLAGS = -g BASIC_CFLAGS += -Kthread endif NEEDS_SOCKET = YesPlease @@ -615,6 +616,8 @@ ifeq ($(uname_S),SCO_SV) BASIC_LDFLAGS += -L/usr/local/lib NO_STRCASESTR = YesPlease NO_MEMMEM = YesPlease + NO_MKDTEMP = YesPlease + SNPRINTF_RETURNS_BOGUS = YesPlease INSTALL = ginstall TAR = gtar endif Unfortunately, I have access to only that one SCO box, so I have no idea of mkdtemp and sprintf problems are on all SCO, or just R=5 ones. That allows me to build with NO_POSIX_ONLY_PROGRAMS=1, because for some reason, the linker complains on linking git-shell: Undefined first referenced symbol in file hexval_table abspath.o null_sha1 abspath.o trust_executable_bit abspath.o has_symlinks abspath.o UX:ld: ERROR: Symbol referencing errors. No output written to git-shell These are all extern varualbes declared in cache.h, but no defined in any of the objects git-shell links, normally not a problem, but this is SCO. -- Aidan Van Dyk Create like a god, aidan@highrise.ca command like a king, http://www.highrise.ca/ work like a slave. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 20:43 ` Aidan Van Dyk @ 2008-07-30 21:28 ` Boyd Lynn Gerber 2008-07-30 22:56 ` Aidan Van Dyk 0 siblings, 1 reply; 14+ messages in thread From: Boyd Lynn Gerber @ 2008-07-30 21:28 UTC (permalink / raw) To: Aidan Van Dyk; +Cc: Junio C Hamano, git On Wed, 30 Jul 2008, Aidan Van Dyk wrote: > * Boyd Lynn Gerber <gerberb@zenez.com> [080730 16:09]: > > I have just tried this on 4 OpenServer 6.0 machines fresh installed and I > > do not need this added. I am trying to figure out what is different on > > his. It appears he is using the exact same version of the compiler as > > well. > > > > My uname -a gives me this... > > > > SCO_SV tech0 5 6.0.0 i386 > > > > and the gcc -V gives me the exact same compiler. So I do not know why he > > has to have the additional __OPENSERVER__. This does break my OpenServer > > 5.0.7 fresh install as well. So I would not use it. What I do not > > understand is why the !defined(__USLC__) does not catch it. It should. > > Sorry, a bit premature on my end... > > I tried a "default" gmake, and hit an error right away: > UX:cc: ERROR: Invalid subargument: -Wall > And immediately pulled my changes from last january into the fix it. My > changes included a local config.mak CFLAGS override which was the real > fix. > > To build with no source changes, I need: > NO_MKDTEMP=1 SNPRINTF_RETURNS_BOGUS=1 CFLAGS=-g NO_POSIX_ONLY_PROGRAMS=1 How about doing a fresh working directory. And just for the fun of it try... This tech0 > CC=cc CXX=CC CFLAGS="-Kalloca -Kthread" CPPFLAGS="-Kalloca -Kthread" ./configure tech0 > gmake and tech0 > CC=cc CXX=CC ./configure tech0 > gmake worked without any issues for me. > How about something like this: > diff --git a/Makefile b/Makefile > index 798a2f2..c42040f 100644 > --- a/Makefile > +++ b/Makefile > @@ -602,6 +602,7 @@ ifeq ($(uname_S),SCO_SV) > endif > ifeq ($(uname_R),5) > CC = cc > + CFLAGS = -g > BASIC_CFLAGS += -Kthread > endif > NEEDS_SOCKET = YesPlease > @@ -615,6 +616,8 @@ ifeq ($(uname_S),SCO_SV) > BASIC_LDFLAGS += -L/usr/local/lib > NO_STRCASESTR = YesPlease > NO_MEMMEM = YesPlease > + NO_MKDTEMP = YesPlease > + SNPRINTF_RETURNS_BOGUS = YesPlease > INSTALL = ginstall > TAR = gtar > endif The above does work on OpenServer 6, UnixWare 7.1.4 and OpenServer 5.0.7 > Unfortunately, I have access to only that one SCO box, so I have no idea > of mkdtemp and sprintf problems are on all SCO, or just R=5 ones. > > That allows me to build with NO_POSIX_ONLY_PROGRAMS=1, because for some reason, the > linker complains on linking git-shell: > Undefined first referenced > symbol in file > hexval_table abspath.o > null_sha1 abspath.o > trust_executable_bit abspath.o > has_symlinks abspath.o > UX:ld: ERROR: Symbol referencing errors. No output written to git-shell > > These are all extern varualbes declared in cache.h, but no defined in > any of the objects git-shell links, normally not a problem, but this is SCO. I do not see the problem on my systems. -- Boyd Gerber <gerberb@zenez.com> ZENEZ 1042 East Fort Union #135, Midvale Utah 84047 ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 21:28 ` Boyd Lynn Gerber @ 2008-07-30 22:56 ` Aidan Van Dyk 2008-07-30 23:30 ` Boyd Lynn Gerber 0 siblings, 1 reply; 14+ messages in thread From: Aidan Van Dyk @ 2008-07-30 22:56 UTC (permalink / raw) To: Boyd Lynn Gerber; +Cc: Junio C Hamano, git [-- Attachment #1: Type: text/plain, Size: 3980 bytes --] * Boyd Lynn Gerber <gerberb@zenez.com> [080730 17:28]: > How about doing a fresh > > working directory. And just for the fun of it try... Unfortunately, I can't use configure, apparently that SCO box does'nt have a new enough toolc change for M4/autoconf/etc... But I've never had to use configure before, I've always just built with make (gmake on boxes with borked make) > tech0 > CC=cc CXX=CC CFLAGS="-Kalloca -Kthread" CPPFLAGS="-Kalloca > -Kthread" ./configure > tech0 > gmake So, with gmake, that "generally" works. I still need to add: SNPRINTF_RETURNS_BOGUS=1 NO_MKDTEMP=1 > tech0 > CC=cc CXX=CC ./configure > tech0 > gmake And here, until I rid CFLAGS of -Wall, it fails. > > Unfortunately, I have access to only that one SCO box, so I have no idea > > of mkdtemp and sprintf problems are on all SCO, or just R=5 ones. > > > > That allows me to build with NO_POSIX_ONLY_PROGRAMS=1, because for some reason, the > > linker complains on linking git-shell: > > Undefined first referenced > > symbol in file > > hexval_table abspath.o > > null_sha1 abspath.o > > trust_executable_bit abspath.o > > has_symlinks abspath.o > > UX:ld: ERROR: Symbol referencing errors. No output written to git-shell > > > > These are all extern varualbes declared in cache.h, but no defined in > > any of the objects git-shell links, normally not a problem, but this is SCO. > > I do not see the problem on my systems. aidan@jpradley:~/git$ touch abspath.c aidan@jpradley:~/git$ gmake V=1 git-shell cc -o abspath.o -c -Kalloca -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM abspath.c cc -g -Kalloca -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM -o git-shell -L/usr/local/lib abspath.o ctype.o exec_cmd.o quote.o strbuf.o usage.o wrapper.o shell.o compat/lib.a Undefined first referenced symbol in file hexval_table abspath.o null_sha1 abspath.o trust_executable_bit abspath.o has_symlinks abspath.o UX:ld: ERROR: Symbol referencing errors. No output written to git-shell gmake: *** [git-shell] Error 1 aidan@jpradley:~/git$ cat config.mak NO_OENSSL=1 NO_MKDTEMP=1 SHELL=/bin/bash SNPRINTF_RETURNS_BOGUS=1 CFLAGS=-Kalloca CPPFLAGS=-Kalloca I've found that if I set CFLAGS to -O2, it links properly: aidan@jpradley:~/git$ touch abspath.c aidan@jpradley:~/git$ gmake V=1 git-shell cc -o abspath.o -c -Kalloca -O2 -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM abspath.c cc -Kalloca -O2 -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM -o git-shell -L/usr/local/lib abspath.o ctype.o exec_cmd.o quote.o strbuf.o usage.o wrapper.o shell.o compat/lib.a So I think it's "not inlining" stuff like: static inline unsigned int hexval(unsigned char c) { return hexval_table[c]; } So, finally, it pretty much works on SCO out of the box - here's my settings, which which the test suite passed (well, is passing, I'm at t5400, but I expect it to all pass again with these settings): aidan@jpradley:~/git$ cat config.mak NO_TCLTK=1 NO_MKDTEMP=1 SHELL=/bin/bash SNPRINTF_RETURNS_BOGUS=1 CFLAGS=-O2 -- Aidan Van Dyk Create like a god, aidan@highrise.ca command like a king, http://www.highrise.ca/ work like a slave. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 22:56 ` Aidan Van Dyk @ 2008-07-30 23:30 ` Boyd Lynn Gerber 2008-07-30 23:44 ` Aidan Van Dyk 0 siblings, 1 reply; 14+ messages in thread From: Boyd Lynn Gerber @ 2008-07-30 23:30 UTC (permalink / raw) To: Aidan Van Dyk; +Cc: Junio C Hamano, git On Wed, 30 Jul 2008, Aidan Van Dyk wrote: > * Boyd Lynn Gerber <gerberb@zenez.com> [080730 17:28]: > > How about doing a fresh > > > > working directory. And just for the fun of it try... > > Unfortunately, I can't use configure, apparently that SCO box does'nt > have a new enough toolc change for M4/autoconf/etc... > > But I've never had to use configure before, I've always just built with > make (gmake on boxes with borked make) I did have to install m4 and have /usr/local/bin before /usr/bin and /bin so it uses the gnu m4. I have m4-1.4.3 at ftp://ftp.zenez.com/pub/zenez/prgms/m4-1.4.3-osr6-all.tar.gz I really have to be able to use configure for most of my OpenSource Projects for SCO OS's. I made the changes so that most things work with the auto tools. > > tech0 > CC=cc CXX=CC CFLAGS="-Kalloca -Kthread" CPPFLAGS="-Kalloca > > -Kthread" ./configure > > tech0 > gmake > > So, with gmake, that "generally" works. I still need to add: > SNPRINTF_RETURNS_BOGUS=1 NO_MKDTEMP=1 > > > tech0 > CC=cc CXX=CC ./configure > > tech0 > gmake > > And here, until I rid CFLAGS of -Wall, it fails. I did a VM install of OpenServer 6 to try things out. I was able to get your -Wall failure, but once I ran the CC=cc CXX=CC ./configure I was able to run gmake without any errors. I did have to install the M4 from above to get configure to work. So, the straight out of the box install has to have gnu m4 to run configure. > > > Unfortunately, I have access to only that one SCO box, so I have no idea > > > of mkdtemp and sprintf problems are on all SCO, or just R=5 ones. > > > > > > That allows me to build with NO_POSIX_ONLY_PROGRAMS=1, because for some reason, the > > > linker complains on linking git-shell: > > > Undefined first referenced > > > symbol in file > > > hexval_table abspath.o > > > null_sha1 abspath.o > > > trust_executable_bit abspath.o > > > has_symlinks abspath.o > > > UX:ld: ERROR: Symbol referencing errors. No output written to git-shell > > > > > > These are all extern varualbes declared in cache.h, but no defined in > > > any of the objects git-shell links, normally not a problem, but this is SCO. > > > > I do not see the problem on my systems. > > aidan@jpradley:~/git$ touch abspath.c > aidan@jpradley:~/git$ gmake V=1 git-shell > cc -o abspath.o -c -Kalloca -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM abspath.c > cc -g -Kalloca -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM -o git-shell -L/usr/local/lib abspath.o ctype.o exec_cmd.o quote.o strbuf.o usage.o wrapper.o shell.o compat/lib.a > Undefined first referenced > symbol in file > hexval_table abspath.o > null_sha1 abspath.o > trust_executable_bit abspath.o > has_symlinks abspath.o > UX:ld: ERROR: Symbol referencing errors. No output written to git-shell > gmake: *** [git-shell] Error 1 > aidan@jpradley:~/git$ cat config.mak > NO_OENSSL=1 > NO_MKDTEMP=1 > SHELL=/bin/bash > SNPRINTF_RETURNS_BOGUS=1 > CFLAGS=-Kalloca > CPPFLAGS=-Kalloca > > I've found that if I set CFLAGS to -O2, it links properly: > aidan@jpradley:~/git$ touch abspath.c > aidan@jpradley:~/git$ gmake V=1 git-shell > cc -o abspath.o -c -Kalloca -O2 -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM abspath.c > cc -Kalloca -O2 -Kthread -I/usr/local/include -DNO_IPV6 -DSHA1_HEADER='<openssl/sha.h>' -DSNPRINTF_RETURNS_BOGUS -DNO_STRCASESTR -DNO_MKDTEMP -DNO_HSTRERROR -DNO_MEMMEM -o git-shell -L/usr/local/lib abspath.o ctype.o exec_cmd.o quote.o strbuf.o usage.o wrapper.o shell.o compat/lib.a > > So I think it's "not inlining" stuff like: > static inline unsigned int hexval(unsigned char c) > { > return hexval_table[c]; > } > > So, finally, it pretty much works on SCO out of the box - here's my > settings, which which the test suite passed (well, is passing, I'm at > t5400, but I expect it to all pass again with these settings): > > aidan@jpradley:~/git$ cat config.mak > NO_TCLTK=1 > NO_MKDTEMP=1 > SHELL=/bin/bash > SNPRINTF_RETURNS_BOGUS=1 > CFLAGS=-O2 -g and -O2 are mutually exclusive. You can have either one but not both. I do have tcl and tk drwxr-xr-x 12 gerberb zenez 2048 Jun 10 17:30 tcl8.5.2 drwxr-xr-x 12 gerberb zenez 2048 Jun 10 17:30 tk8.5.2 So I am not sure what the best option should be. There is a patch for UnixWare 7 MP4 that has to be installed to MP4 for so failures, but it works even with ksh with it. Also on UnixWare 7.1.4 I could not get any m4 greater than 1.4.9 to compile and work. I finally just used drwxr-xr-x 8 gerberb zenez 2048 May 19 03:05 m4-1.4.9 drwxrwxrwx 9 gerberb zenez 4096 Apr 3 00:11 make-3.81 drwxr-xr-x 12 gerberb zenez 2048 Jun 10 16:43 tcl8.5.2 drwxr-xr-x 12 gerberb zenez 2048 Jun 10 16:44 tk8.5.2 drwxr-xr-x 9 gerberb zenez 4096 May 19 03:18 sed-4.1.4 On UnixWare 7.1.4 MP4 with ptf9055a. -- Boyd Gerber <gerberb@zenez.com> ZENEZ 1042 East Fort Union #135, Midvale Utah 84047 ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 23:30 ` Boyd Lynn Gerber @ 2008-07-30 23:44 ` Aidan Van Dyk 2008-07-31 0:00 ` Boyd Lynn Gerber 0 siblings, 1 reply; 14+ messages in thread From: Aidan Van Dyk @ 2008-07-30 23:44 UTC (permalink / raw) To: Boyd Lynn Gerber; +Cc: Junio C Hamano, git [-- Attachment #1: Type: text/plain, Size: 1812 bytes --] * Boyd Lynn Gerber <gerberb@zenez.com> [080730 19:30]: > I have m4-1.4.3 at > > ftp://ftp.zenez.com/pub/zenez/prgms/m4-1.4.3-osr6-all.tar.gz > > I really have to be able to use configure for most of my OpenSource > Projects for SCO OS's. > > I made the changes so that most things work with the auto tools. I'm not a SCO guru by any means... I'm just a user on someone else's SCO machine, just trying to make sure that the software I write is "fairly portable"... I'm willing to carry a good and useful tool (like git) in my home directory in that endeavour, but I'm not carrying all of the GNU stack in my home directory so I can run configure git is a bit much ;-) > I did a VM install of OpenServer 6 to try things out. I was able to get > your -Wall failure, but once I ran the CC=cc CXX=CC ./configure I was able > to run gmake without any errors. I did have to install the M4 from above > to get configure to work. So, the straight out of the box install has to > have gnu m4 to run configure. So configure.ac must have some magic in it that allows configure to notice -Wall doesn't work. You can see what it choose in config.mak.autogen I think. But I'm pretty glad for the kbuild style Makefile in git not requiring autoconf/automake/etc. > -g and -O2 are mutually exclusive. You can have either one but not both. Yes, and I think the default to cc matches -g, not -O2, hence my failures unless setting -O2. > I do have tcl and tk I'm sure... I might even find it burried somewhere on this machine too, but I have no real need for it. a. -- Aidan Van Dyk Create like a god, aidan@highrise.ca command like a king, http://www.highrise.ca/ work like a slave. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 23:44 ` Aidan Van Dyk @ 2008-07-31 0:00 ` Boyd Lynn Gerber 2008-07-31 0:11 ` Aidan Van Dyk 0 siblings, 1 reply; 14+ messages in thread From: Boyd Lynn Gerber @ 2008-07-31 0:00 UTC (permalink / raw) To: Aidan Van Dyk; +Cc: Junio C Hamano, git On Wed, 30 Jul 2008, Aidan Van Dyk wrote: > * Boyd Lynn Gerber <gerberb@zenez.com> [080730 19:30]: > > I have m4-1.4.3 at > > > > ftp://ftp.zenez.com/pub/zenez/prgms/m4-1.4.3-osr6-all.tar.gz > > > > I really have to be able to use configure for most of my OpenSource > > Projects for SCO OS's. > > > > I made the changes so that most things work with the auto tools. > > I'm not a SCO guru by any means... > > I'm just a user on someone else's SCO machine, just trying to make sure > that the software I write is "fairly portable"... > > I'm willing to carry a good and useful tool (like git) in my home > directory in that endeavour, but I'm not carrying all of the GNU stack > in my home directory so I can run configure git is a bit much ;-) That make sense. All though m4 is test5 > l /usr/local/bin/m4 -rwxr-xr-x 1 gerberb zenez 280524 Jul 23 2005 /usr/local/bin/m4 Which is not that big. I have it in my ~/.bin/ on my clients machines. You really need a good m4 for most things. Sendmail expecially. Also for the latest bind with the DNS security fix. I some times need bc as well. test5 > l /usr/local/bin/bc -rwxr-xr-x 1 bin bin 85088 May 19 17:20 /usr/local/bin/bc > > I did a VM install of OpenServer 6 to try things out. I was able to get > > your -Wall failure, but once I ran the CC=cc CXX=CC ./configure I was able > > to run gmake without any errors. I did have to install the M4 from above > > to get configure to work. So, the straight out of the box install has to > > have gnu m4 to run configure. > > So configure.ac must have some magic in it that allows configure to > notice -Wall doesn't work. You can see what it choose in > config.mak.autogen I think. But I'm pretty glad for the kbuild style > Makefile in git not requiring autoconf/automake/etc. I do not see anything really obvious, but below is config.mak.autogen test5 > cat config.mak.autogen # git Makefile configuration, included in main Makefile # config.mak.autogen. Generated from config.mak.in:config.mak.append by configure. CC = cc CFLAGS = -Kalloca -Kthread AR = gar TAR = gtar #INSTALL = @INSTALL@ # needs install-sh or install.sh in sources TCLTK_PATH = wish prefix = /usr/local exec_prefix = ${prefix} bindir = ${exec_prefix}/bin #gitexecdir = ${exec_prefix}/libexec/git-core/ datarootdir = @datarootdir@ template_dir = ${prefix}/share/git-core/templates/ mandir=${prefix}/man srcdir = . export exec_prefix mandir export srcdir VPATH ASCIIDOC8= NEEDS_SSL_WITH_CRYPTO= NO_OPENSSL= NO_CURL= NO_EXPAT= NEEDS_LIBICONV= NEEDS_SOCKET=YesPlease NO_SYS_SELECT_H= NO_D_INO_IN_DIRENT= NO_D_TYPE_IN_DIRENT=YesPlease NO_SOCKADDR_STORAGE= NO_IPV6= NO_C99_FORMAT= NO_STRCASESTR=YesPlease NO_MEMMEM=YesPlease NO_STRLCPY= NO_STRTOUMAX= NO_SETENV= NO_UNSETENV= NO_MKDTEMP=YesPlease NO_ICONV= OLD_ICONV= NO_DEFLATE_BOUND= FREAD_READS_DIRECTORIES=UnfortunatelyYes SNPRINTF_RETURNS_BOGUS=UnfortunatelyYes # config.mak.append. Generated by configure. > > -g and -O2 are mutually exclusive. You can have either one but not both. > > Yes, and I think the default to cc matches -g, not -O2, hence my > failures unless setting -O2. > > > I do have tcl and tk > > I'm sure... I might even find it burried somewhere on this machine too, > but I have no real need for it. OK. So what do you think we need to have. I really do not see the need for __OPENSERVER__. Do you? -- Boyd Gerber <gerberb@zenez.com> ZENEZ 1042 East Fort Union #135, Midvale Utah 84047 ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-31 0:00 ` Boyd Lynn Gerber @ 2008-07-31 0:11 ` Aidan Van Dyk 2008-07-31 0:32 ` Boyd Lynn Gerber 0 siblings, 1 reply; 14+ messages in thread From: Aidan Van Dyk @ 2008-07-31 0:11 UTC (permalink / raw) To: Boyd Lynn Gerber; +Cc: Junio C Hamano, git [-- Attachment #1: Type: text/plain, Size: 1037 bytes --] * Boyd Lynn Gerber <gerberb@zenez.com> [080730 20:00]: > So what do you think we need to have. I really do not see the need for > __OPENSERVER__. Do you? No, I think I saw that long ago, when I said: > Sorry, a bit premature on my end... With SNPRINTF_RETURNS_BOGUS and NO_MKDTEMP and CFLAGS set for make, I don't need any source code changes to compile on SCO. And as long as I have GNU bash and diff available, the test suite passes as well. Well, all except for t9500-gitweb-standalone-no-errors.sh: [Thu Jul 31 00:08:46 2008] gitweb.perl: -T and -B not implemented on filehandles at /u/aidan/git/t/trash directory/../../gitweb/gitweb.perl line 2444. Perl claims: This is perl, v5.8.8 built for i586-pc-sysv5 But again, I don't plan on running gitweb on this SCO box either... a. -- Aidan Van Dyk Create like a god, aidan@highrise.ca command like a king, http://www.highrise.ca/ work like a slave. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-31 0:11 ` Aidan Van Dyk @ 2008-07-31 0:32 ` Boyd Lynn Gerber 0 siblings, 0 replies; 14+ messages in thread From: Boyd Lynn Gerber @ 2008-07-31 0:32 UTC (permalink / raw) To: Aidan Van Dyk; +Cc: Junio C Hamano, git On Wed, 30 Jul 2008, Aidan Van Dyk wrote: > * Boyd Lynn Gerber <gerberb@zenez.com> [080730 20:00]: > > So what do you think we need to have. I really do not see the need for > > __OPENSERVER__. Do you? > > No, I think I saw that long ago, when I said: > > Sorry, a bit premature on my end... > > With SNPRINTF_RETURNS_BOGUS and NO_MKDTEMP and CFLAGS set for make, I > don't need any source code changes to compile on SCO. > > And as long as I have GNU bash and diff available, the test suite passes > as well. Well, all except for t9500-gitweb-standalone-no-errors.sh: > [Thu Jul 31 00:08:46 2008] gitweb.perl: -T and -B not implemented on filehandles at /u/aidan/git/t/trash directory/../../gitweb/gitweb.perl line 2444. > > Perl claims: > This is perl, v5.8.8 built for i586-pc-sysv5 > > But again, I don't plan on running gitweb on this SCO box either... OK, thanks, I did not want to not respond if things were needed. Thanks, -- Boyd Gerber <gerberb@zenez.com> ZENEZ 1042 East Fort Union #135, Midvale Utah 84047 ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Compile fix for SCO OPenServer 2008-07-30 20:01 ` Junio C Hamano 2008-07-30 20:09 ` Boyd Lynn Gerber @ 2008-07-30 20:13 ` Boyd Lynn Gerber 1 sibling, 0 replies; 14+ messages in thread From: Boyd Lynn Gerber @ 2008-07-30 20:13 UTC (permalink / raw) To: Junio C Hamano; +Cc: Aidan Van Dyk, git On Wed, 30 Jul 2008, Junio C Hamano wrote: > Aidan Van Dyk <aidan@highrise.ca> writes: > > > SCO OpenServer also hides the definitions of (at least) u_short and > > friends if _XOPEN_SOURCE is defined. > > I thought that was covered by 457bb45 (Port to 12 other Platforms., 2008-06-08). > > Boyd, does this make any of the earlier symbols you added redundant? On my machine !defined(__USLC__) covers both UnixWare 7.1.4 and OpenServer 6.0.0. !defined(_M_UNIX) covers my OpenServer 5.0.7 machine. The !defined(__USLC__) also covers my Novell OS's and others that use the USLC (Unix System Labotories Compiler). > > git-compat-util.h | 2 +- > > 1 files changed, 1 insertions(+), 1 deletions(-) > > > > diff --git a/git-compat-util.h b/git-compat-util.h > > index cf89cdf..42e3e0b 100644 > > --- a/git-compat-util.h > > +++ b/git-compat-util.h > > @@ -39,7 +39,7 @@ > > /* 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__) && !defined(__USLC__) && !defined(_M_UNIX) > > +#if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !defined(_M_UNIX) && !defined(__OPENSERVER__) > > #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 > > -- > > 1.6.0.rc1.dirty > -- Boyd Gerber <gerberb@zenez.com> ZENEZ 1042 East Fort Union #135, Midvale Utah 84047 ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2008-07-31 0:33 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2007-12-05 17:21 [PATCH] Compile fix for SCO OpenServer Aidan Van Dyk 2008-07-30 18:49 ` Compile fix for SCO OPenServer Aidan Van Dyk 2008-07-30 20:01 ` Junio C Hamano 2008-07-30 20:09 ` Boyd Lynn Gerber 2008-07-30 20:18 ` Junio C Hamano 2008-07-30 20:43 ` Aidan Van Dyk 2008-07-30 21:28 ` Boyd Lynn Gerber 2008-07-30 22:56 ` Aidan Van Dyk 2008-07-30 23:30 ` Boyd Lynn Gerber 2008-07-30 23:44 ` Aidan Van Dyk 2008-07-31 0:00 ` Boyd Lynn Gerber 2008-07-31 0:11 ` Aidan Van Dyk 2008-07-31 0:32 ` Boyd Lynn Gerber 2008-07-30 20:13 ` Boyd Lynn Gerber
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).