Crane, Keith A [ITS] | 1 May 01:26 2004

Installation on AIX 5.1

I had a couple of issues compiling directory libguile during installation on AIX 5.1. The Guile version was 1.6.4.

Variable $^ was not recognized by AIX Make utility. Had to replace $^ with actual file name version.h.in in libguile/Makefile.

Needed to change libguile/list.c to use header file stdarg.h. For some reason the preprocessor statement '#ifdef __STDC__' fails and varargs.h is included instead of stdarg.h. This causes the compile to fail with the following message: "list.c", line 118.3: 1506-045 (S) Undeclared identifier va_alist.

After making these changes I was able to produce the executable libguile/guile.

Thanks,

Keith Crane

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile
Kevin Ryde | 1 May 01:27 2004
Picon
Picon

Re: More problems on HP-UX ... 6

Andreas Vögele <voegelas <at> gmx.net> writes:
>
> Yes, but my German copy of "Programming in C, 2nd ed" says in section
> A.6.1: "A character [...] can be used everywhere in an expression
> where an integer object is required. [...]". And according to section
> A.7.3, subscript array references are expressions.

gcc being overly enthusiastic about warnings I suppose.

> Since the build only aborts if --enable-maintainer-mode, i.e. -Werror,
> is enabled I'd probably keep the "char" values. BTW, I use only one
> cast to fix this problem (in backtrace.c). In numbers.c I  changed the
> type of the variables to "int".

That would also work, but you do need to cast through unsigned char,
so 8-bit char values don't become negative ints, which are not
accepted by c99 ctype.h (though glibc is forgiving of them).

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Kevin Ryde | 1 May 01:40 2004
Picon
Picon

Re: More problems on HP-UX ... 2

Andreas Vögele <voegelas <at> gmx.net> writes:
>
> I think that the wrong call has to be replaced with one of the
> following calls.

Ah yes.

> But which one?

Dunno.  Do we have an expert here who can say?

t->base is the low address for an upward growing stack is it?, which
would mean it's just the cast which is wrong perhaps?

	scm_mark_locations (t->base, stack_len);

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Andreas Vögele | 1 May 14:55 2004
Picon
Picon

Re: More problems on HP-UX ... 3

Am 28.04.2004 um 00:41 schrieb Kevin Ryde:

> Andreas Vögele <voegelas <at> gmx.net> writes:
>>
>> On HP-UX, the gmtime_r() prototype isn't declared unless
>> -D_POSIX_C_SOURCE=199506L is passed to the C compiler.
>
> Thanks, I added that.

_POSIX_C_SOURCE is also required in libguile/filesys.c for readdir_r(). 
  Wouldn't it be better to change configure.in instead of the source 
files?

AC_CANONICAL_HOST

# On HP-UX, _POSIX_C_SOURCE must be defined to 199506L to get prototypes
# for reentrant functions like gmtime_r(), readdir_r() etc.
case "$host" in
   *-*-hpux* )
     CFLAGS="$CFLAGS -D_POSIX_C_SOURCE=199506L"
   ;;
esac

Currently, I can't build Guile CVS since autogen.sh fails on HP-UX as 
well as on Debian Woody (with autoconf and automake from 
backports.org). It get the error message "possible undefined macro: 
AM_INIT_AUTOMAKE".

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Gwguardian | 1 May 18:18 2004

Potentially unsafe attachment: Mail Delivery (failure sschultz <at> matcmadison.edu)


Your email message was rejected.  Our email system doesn't accept this type of attachment.

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Kevin Ryde | 1 May 22:59 2004
Picon
Picon

Re: More problems on HP-UX ... 3

Andreas Vögele <voegelas <at> gmx.net> writes:
>
> _POSIX_C_SOURCE is also required in libguile/filesys.c for
> readdir_r().

Beaut.

> Wouldn't it be better to change configure.in instead of
> the source files?

glibc advises putting it in the source file, so they're
self-contained.  I think that's the way these defines are meant to be
used.  It might be different if every single file needed something.

> Currently, I can't build Guile CVS since autogen.sh fails on HP-UX as
> well as on Debian Woody (with autoconf and automake from
> backports.org). It get the error message "possible undefined macro:
> AM_INIT_AUTOMAKE".

Usually that's from not re-running aclocal.  autoreconf in autogen.sh
might be meant to do that, but I always do it manually.

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Kevin Ryde | 1 May 23:12 2004
Picon
Picon

Re: Installation on AIX 5.1

"Crane, Keith A [ITS]" <KCrane01 <at> sprintspectrum.com> writes:
>
> Variable $^ was not recognized by AIX Make utility. Had to replace $^
> with actual file name version.h.in in libguile/Makefile.

Thanks, I made that change.

> Needed to change libguile/list.c to use header file stdarg.h. For some
> reason the preprocessor statement '#ifdef __STDC__' fails and varargs.h
> is included instead of stdarg.h. This causes the compile to fail with
> the following message: "list.c", line 118.3: 1506-045 (S) Undeclared
> identifier va_alist.

Thanks.  Yes, rumour has it all AIX compilers are ansi but don't
always define __STDC__.  I see there's no actual support for varargs.h
style in the way the va stuff is used.  I'll change it to stdarg.h
unconditionally.

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Kevin Ryde | 1 May 23:50 2004
Picon
Picon

Re: GCC 3.4 fails to build eval.c when --disable-deprecated is used

Andreas Vögele <voegelas <at> gmx.net> writes:
>
> If Guile CVS is built with --disable-deprecated GCC 3.4 fails to build
> eval.c.  The problem is that the function scm_macroexp(), which is
> used in line 1941 of eval.c, is not declared. The prototype is not
> declared in eval.h if deprecated functions are disabled and the
> function definition starts further below in line 2131. I solved this
> problem locally by adding a forward declaration to eval.c.

Thanks, I added that.

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Kevin Ryde | 2 May 00:00 2004
Picon
Picon

Re: GCC 3.4 fails to build eval.c when --disable-deprecated is used

Ah, no, I see this is still not right.  scm_m_generalized_set_x is
using scm_macroexp, but it's not defined at all under
--disable-deprecated.

Looks like this was a change by Marius not so long ago.  Dunno if it
should be using scm_macroexp, or something else now.

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile

Andreas Vögele | 2 May 09:06 2004
Picon
Picon

Re: More problems on HP-UX ... 3

Kevin Ryde writes:

>> Wouldn't it be better to change configure.in instead of
>> the source files?
>
> glibc advises putting it in the source file, so they're
> self-contained.  I think that's the way these defines are meant to be
> used.  It might be different if every single file needed something.

But it's more robust to define _POSIX_C_SOURCE in configure.in since 
developers who don't work on HP-UX don't have to remember to put the 
definition at the top of files that use reentrant functions.

_______________________________________________
Bug-guile mailing list
Bug-guile <at> gnu.org
http://mail.gnu.org/mailman/listinfo/bug-guile


Gmane