bug-guile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

patches for compiling Guile-1.4.1 with Sun cc and HP cc


From: bernard URBAN
Subject: patches for compiling Guile-1.4.1 with Sun cc and HP cc
Date: 30 Nov 2000 18:00:55 +0100

Hello!

Here a diff file against CVS from 27 November:

1) HP-UX cpp does not like ; after #undef

diff -r -c -C 2 guile-1.4.1NEW/libguile/gh_data.c guile-1.4.1/libguile/gh_data.c
*** guile-1.4.1NEW/libguile/gh_data.c   Tue Nov 28 15:23:29 2000
--- guile-1.4.1/libguile/gh_data.c      Thu Nov 23 14:54:49 2000
***************
*** 259,263 ****
    return SCM_CHAR (obj);
  }
! #undef FUNC_NAME
  
  /* Convert a vector, weak vector, string, substring or uniform vector
--- 259,263 ----
    return SCM_CHAR (obj);
  }
! #undef FUNC_NAME;
  
  /* Convert a vector, weak vector, string, substring or uniform vector

2) IMPORTANT !!! Probably a bug in goops.c, catched by HP-UX cc

diff -r -c -C 2 guile-1.4.1NEW/libguile/objects.h guile-1.4.1/libguile/objects.h
*** guile-1.4.1NEW/libguile/objects.h   Tue Nov 28 15:23:24 2000
--- guile-1.4.1/libguile/objects.h      Wed Oct 25 16:50:28 2000
***************
*** 95,100 ****
          (SCM_STRUCT_DATA (obj) [scm_struct_i_procedure] = SCM_UNPACK (v))
  #define SCM_ENTITY_SETTER(obj) (SCM_PACK (SCM_STRUCT_DATA 
(obj)[scm_struct_i_setter]))
- #define SCM_SET_ENTITY_SETTER(obj,v) \
-         (SCM_STRUCT_DATA (obj) [scm_struct_i_setter] = SCM_UNPACK (v))
  
  #define SCM_SET_CLASS_DESTRUCTOR(c, d) SCM_SET_VTABLE_DESTRUCTOR (c, d)
--- 95,98 ----
diff -r -c -C 2 guile-1.4.1NEW/libguile/goops.c guile-1.4.1/libguile/goops.c
*** guile-1.4.1NEW/libguile/goops.c     Tue Nov 28 15:23:23 2000
--- guile-1.4.1/libguile/goops.c        Fri Nov 24 15:43:41 2000
***************
*** 1385,1389 ****
              s_sys_set_object_setter_x);
    if (SCM_I_ENTITYP (obj))
!     SCM_SET_ENTITY_SETTER (obj, setter);
    else
      SCM_OPERATOR_CLASS (obj)->setter = setter;
--- 1385,1389 ----
              s_sys_set_object_setter_x);
    if (SCM_I_ENTITYP (obj))
!     SCM_ENTITY_SETTER (obj) = setter;
    else
      SCM_OPERATOR_CLASS (obj)->setter = setter;
***************
*** 1566,1570 ****
  clear_method_cache (SCM gf)
  {
!   SCM_SET_ENTITY_PROCEDURE (gf, scm_make_method_cache (gf));
    SCM_SLOT (gf, scm_si_used_by) = SCM_BOOL_F;
  }
--- 1566,1570 ----
  clear_method_cache (SCM gf)
  {
!   SCM_ENTITY_PROCEDURE (gf) = scm_make_method_cache (gf);
    SCM_SLOT (gf, scm_si_used_by) = SCM_BOOL_F;
  }

3) Or an unresolved reference occurs at linking with HP-UX cc
   (probably a libtool bug ?)

diff -r -c -C 2 guile-1.4.1NEW/libguile/guile.c guile-1.4.1/libguile/guile.c
*** guile-1.4.1NEW/libguile/guile.c     Tue Nov 28 15:30:08 2000
--- guile-1.4.1/libguile/guile.c        Mon Jun 12 14:28:23 2000
***************
*** 72,76 ****
  {
  #ifdef DYNAMIC_LINKING
!   /*LTDL_SET_PRELOADED_SYMBOLS ();*/
  #endif
    scm_boot_guile (argc, argv, inner_main, 0);
--- 72,76 ----
  {
  #ifdef DYNAMIC_LINKING
!   LTDL_SET_PRELOADED_SYMBOLS ();
  #endif
    scm_boot_guile (argc, argv, inner_main, 0);

4) HP-UX cpp does not like the absence of a space between a closing )
   and a following macro

diff -r -c -C 2 guile-1.4.1NEW/libguile/snarf.h guile-1.4.1/libguile/snarf.h
*** guile-1.4.1NEW/libguile/snarf.h     Tue Nov 28 15:23:26 2000
--- guile-1.4.1/libguile/snarf.h        Wed Jun 21 10:43:12 2000
***************
*** 125,129 ****
  static const char RANAME[]=STR;\
  static SCM GF \
! ) SCM_SNARF_INIT(\
  GF = SCM_PACK (0);  /* Dirk:FIXME:: Can we safely use #f instead of 0? */ \
  scm_make_gsubr_with_generic (RANAME, REQ, OPT, VAR, \
--- 125,129 ----
  static const char RANAME[]=STR;\
  static SCM GF \
! )SCM_SNARF_INIT(\
  GF = SCM_PACK (0);  /* Dirk:FIXME:: Can we safely use #f instead of 0? */ \
  scm_make_gsubr_with_generic (RANAME, REQ, OPT, VAR, \
***************
*** 142,146 ****
  static const char RANAME[]=STR; \
  static SCM GF \
! ) SCM_SNARF_INIT(\
  GF = SCM_PACK (0);  /* Dirk:FIXME:: Can we safely use #f instead of 0? */ \
  scm_make_subr_with_generic (RANAME, TYPE, \
--- 142,146 ----
  static const char RANAME[]=STR; \
  static SCM GF \
! )SCM_SNARF_INIT(\
  GF = SCM_PACK (0);  /* Dirk:FIXME:: Can we safely use #f instead of 0? */ \
  scm_make_subr_with_generic (RANAME, TYPE, \

5) A bug in libtool for HP-UX

diff -r -c -C 2 guile-1.4.1NEW/libltdl/configure.in 
guile-1.4.1/libltdl/configure.in
*** guile-1.4.1NEW/libltdl/configure.in Mon Nov 27 17:14:16 2000
--- guile-1.4.1/libltdl/configure.in    Mon Nov 27 10:04:33 2000
***************
*** 22,26 ****
  AC_C_CONST
  AC_C_INLINE
- AM_PROG_CC_STDC
  AM_PROG_LIBTOOL
  AC_SUBST(LIBTOOL_DEPS)
--- 22,25 ----

Notice also BOTH Sun cpp and HP-UX cpp do not generate a correct guile.texi.

Regards.

-- 

Bernard Urban



reply via email to

[Prev in Thread] Current Thread [Next in Thread]