On Thu, Jan 17, 2002 at 11:50:32PM +0100, Hrvoje Niksic wrote:
> Jeff Bailey <[EMAIL PROTECTED]> writes:
> 
> > wget 1.8 fails to link on i686-pc-sco3.2v5.0.6
> 
> Does the compiler on that machine really not have alloca()?  I'm
> usually wary of attempts to compile `alloca.c' because they usually
> point out a mistake in the configuration process.

Sadly, I don't know much about the SCO compiler.  My experience so far
is that it's broken in some crazy ways.  ``find / -name alloca\*
-print'' didn't return any results, however.  I can try some tests
today or next week if you can think of some to try.

Here is the relevant section from config.log:

configure:5876: checking for working alloca.h
configure:5888: cc -o conftest  -O -belf   conftest.c  1>&5
UX:acomp: ERROR: "configure", line 5882: cannot find include file: <alloca.h>
UX:acomp: WARNING: "configure", line 5884: improper pointer/integer combination: op "="
configure: failed program was:
#line 5881 "configure"
#include "confdefs.h"
#include <alloca.h>
int main() {
char *p = alloca(2 * sizeof(int));
; return 0; }
configure:5909: checking for alloca
configure:5942: cc -o conftest  -O -belf   conftest.c  1>&5
Undefined                       first referenced
 symbol                             in file
alloca                              conftest.o
UX:ld: ERROR: conftest: fatal error: Symbol referencing errors. No output written to 
conftest
configure: failed program was:
#line 5914 "configure"
#include "confdefs.h"

#ifdef __GNUC__
# define alloca __builtin_alloca
#else
# ifdef _MSC_VER
#  include <malloc.h>
#  define alloca _alloca
# else
#  if HAVE_ALLOCA_H
#   include <alloca.h>
#  else
#   ifdef _AIX
 #pragma alloca
#   else
#    ifndef alloca /* predefined by HP cc +Olibcalls */
char *alloca ();
#    endif
#   endif
#  endif
# endif
#endif


int main() {
char *p = (char *) alloca(1);
; return 0; }
configure:5974: checking whether alloca needs Cray hooks
configure:6059: checking stack direction for C alloca
configure:6086: cc -o conftest  -O -belf   conftest.c  1>&5
configure: failed program was:
#line 6067 "configure"
#include "confdefs.h"
find_stack_direction ()
{
  static char *addr = 0;
  auto char dummy;
  if (addr == 0)
    {
      addr = &dummy;
      return find_stack_direction ();
    }
  else
    return (&dummy > addr) ? 1 : -1;
}
main ()
{
  exit (find_stack_direction() < 0);
}
configure:6111: checking for unistd.h


-- 
Tofu - The other white meat.

Reply via email to