Subject: Re: rpcgen generates "ifdef 1" in rpcb_prot.h
To: Oliver Paulzen <opp@MuFFiN.Org>
From: Martin Husemann <martin@duskware.de>
List: port-sparc64
Date: 07/23/2001 17:12:38
--ELM995901158-321-1_
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII

> I blamed the missing string class on the "slightly broken"
> toolchain...

Well, you are right. The toolchain is just good enough to compile any c++
code in the source tree. Any serious c++ program will not work with this
(nor the -current) toolchain.

I've not been able to use any STL template classes with the old toolchain,
while the current one works for simple things.

An obvious bug is easy to fix: the /usr/include/sparc64/_G_config.h file
is missing, the old version from 1.5 is attached. But this does not make
the C++ compiler work.

> What does the "soon" in soon-to-be-integrated mean? Shell I wait for a
> newer toolchain or try to find my way around?

Soon to be integrated into -current, and probably never going to be pulled 
up to the 1.5 branch :-(

I'm not sure if a snapshot of that toolchain will be made available for
1.5.1 (or be used for 1.5.2).

Sorry,


Martin

--ELM995901158-321-1_
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=ISO-8859-1
Content-Disposition: attachment; filename=_G_config.h
Content-Description: /usr/include/sparc64/_G_config.h

/* AUTOMATICALLY GENERATED; DO NOT EDIT! */ 
#ifndef _G_config_h
#define _G_config_h
#define _G_LIB_VERSION "2.9.0"
#define _G_NAMES_HAVE_UNDERSCORE 0
#define _G_VTABLE_LABEL_HAS_LENGTH 1
#define _G_VTABLE_LABEL_PREFIX "_vt."
#define _G_HAVE_ST_BLKSIZE 1

#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
typedef          int   _G_int8_t __attribute__((__mode__(__QI__)));
typedef unsigned int  _G_uint8_t __attribute__((__mode__(__QI__)));
typedef          int  _G_int16_t __attribute__((__mode__(__HI__)));
typedef unsigned int _G_uint16_t __attribute__((__mode__(__HI__)));
typedef          int  _G_int32_t __attribute__((__mode__(__SI__)));
typedef unsigned int _G_uint32_t __attribute__((__mode__(__SI__)));
typedef          int  _G_int64_t __attribute__((__mode__(__DI__)));
typedef unsigned int _G_uint64_t __attribute__((__mode__(__DI__)));
#if __GNUC__ > 2 || __GNUC_MINOR__ >= 8
__extension__ typedef long long _G_llong;
__extension__ typedef unsigned long long _G_ullong;
#endif
#else
typedef  short  _G_int16_t;
typedef unsigned short _G_uint16_t;
typedef  int  _G_int32_t;
typedef unsigned int _G_uint32_t;
#endif

typedef int _G_clock_t;
typedef unsigned int _G_dev_t;
typedef long _G_fpos_t;
typedef unsigned int _G_gid_t;
typedef unsigned int _G_ino_t;
typedef unsigned int _G_mode_t;
typedef unsigned int _G_nlink_t;
typedef long _G_off_t;
typedef int _G_pid_t;
#ifndef __PTRDIFF_TYPE__
#define __PTRDIFF_TYPE__ long
#endif
typedef __PTRDIFF_TYPE__ _G_ptrdiff_t;
typedef int /* default */ _G_sigset_t;
#ifndef __SIZE_TYPE__
#define __SIZE_TYPE__ unsigned long
#endif
typedef __SIZE_TYPE__ _G_size_t;
typedef int _G_time_t;
typedef unsigned int _G_uid_t;
typedef int _G_wchar_t;

#define _G_BUFSIZ 1024
#define _G_FOPEN_MAX 20
#define _G_FILENAME_MAX 1024
#if defined (__cplusplus) || defined (__STDC__)
#define _G_ARGS(ARGLIST) ARGLIST
#else
#define _G_ARGS(ARGLIST) ()
#endif
#if !defined (__GNUG__) || defined (__STRICT_ANSI__)
#define _G_NO_NRV
#endif
#if !defined (__GNUG__)
#define _G_NO_EXTERN_TEMPLATES
#endif
typedef long _G_ssize_t;
typedef int _G_wint_t;
typedef char * _G_va_list;
#define _G_signal_return_type void
#define _G_sprintf_return_type int
#define _G_HAVE_ATEXIT 1
#define _G_HAVE_SYS_RESOURCE 1
#define _G_HAVE_SYS_TIMES 1
#define _G_HAVE_SYS_SOCKET 1
#define _G_HAVE_SYS_CDEFS 1
#define _G_HAVE_SYS_WAIT 1
#define _G_HAVE_UNISTD 1
#define _G_HAVE_DIRENT 1
#define _G_HAVE_CURSES 1
#define _G_MATH_H_INLINES 0
#define _G_HAVE_BOOL 1
#define _G_HAVE_PRINTF_FP 0
#define _G_HAVE_LONG_DOUBLE_IO 0
#undef NULL
#define __need_NULL
#include <stddef.h>
#endif /* !_G_config_h */

--ELM995901158-321-1_--