git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Aidan Van Dyk <aidan@highrise.ca>
To: Boyd Lynn Gerber <gerberb@zenez.com>
Cc: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Subject: Re: Compile fix for SCO OPenServer
Date: Wed, 30 Jul 2008 18:56:35 -0400	[thread overview]
Message-ID: <20080730225635.GM10399@yugib.highrise.ca> (raw)
In-Reply-To: <alpine.LNX.1.10.0807301522140.13032@xenau.zenez.com>

[-- 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 --]

  reply	other threads:[~2008-07-30 22:57 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080730225635.GM10399@yugib.highrise.ca \
    --to=aidan@highrise.ca \
    --cc=gerberb@zenez.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).