unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* SCM_INTERNAL causes problems
@ 2008-06-21  4:15 Patrick Horgan
  2008-06-23 10:04 ` Ludovic Courtès
  0 siblings, 1 reply; 2+ messages in thread
From: Patrick Horgan @ 2008-06-21  4:15 UTC (permalink / raw)
  To: bug-guile

When building lilypond the following variables:
`scm_i_gc_admin_mutex'          SCM_INTERNAL gc.h
`scm_i_init_mutex'              SCM_INTERNAL init.h
`scm_i_locale_mutex'            SCM_INTERNAL posix.h
`scm_i_misc_mutex'              SCM_INTERNAL threads.h
`scm_i_port_table_mutex'        SCM_INTERNAL ports.h
`scm_i_port_table_room'         SCM_INTERNAL ports.h
`scm_i_port_weak_hash'          SCM_INTERNAL ports.h
`scm_i_signal_delivery_thread'  SCM_INTERNAL scmsigs.h
`scm_i_structs_to_free'         SCM_INTERNAL struct.h
`scm_i_sweep_mutex'             SCM_INTERNAL gc.h

show up as multiple defines in the link phase and keep lilypond from 
building.  The problem is that the include files they are in are 
included in different .c files, so the variable definitions are in 
various .o files.  If they are really supposed to just have internal 
visibility in guile libraries wouldn't it be better to not put them in 
include files that are installed as part of make install?  I mean, you 
could put #ifdefs around them so that they wouldn't show up in builds of 
other programs like lilypond, but it seems a cleaner solution to put 
them in private include files that are never installed publicly, but 
only used in the build.

Patrick




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: SCM_INTERNAL causes problems
  2008-06-21  4:15 SCM_INTERNAL causes problems Patrick Horgan
@ 2008-06-23 10:04 ` Ludovic Courtès
  0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2008-06-23 10:04 UTC (permalink / raw)
  To: bug-guile; +Cc: Patrick Horgan

Hello again Patrick,

Patrick Horgan <phorgan1@gmail.com> writes:

> When building lilypond the following variables:
> `scm_i_gc_admin_mutex'          SCM_INTERNAL gc.h
> `scm_i_init_mutex'              SCM_INTERNAL init.h
> `scm_i_locale_mutex'            SCM_INTERNAL posix.h
> `scm_i_misc_mutex'              SCM_INTERNAL threads.h
> `scm_i_port_table_mutex'        SCM_INTERNAL ports.h
> `scm_i_port_table_room'         SCM_INTERNAL ports.h
> `scm_i_port_weak_hash'          SCM_INTERNAL ports.h
> `scm_i_signal_delivery_thread'  SCM_INTERNAL scmsigs.h
> `scm_i_structs_to_free'         SCM_INTERNAL struct.h
> `scm_i_sweep_mutex'             SCM_INTERNAL gc.h
>
> show up as multiple defines in the link phase and keep lilypond from
> building.  The problem is that the include files they are in are
> included in different .c files, so the variable definitions are in
> various .o files.

What compiler and platform are you using?  MacOS X?  The `.h' files
contain only declarations, so these symbols should not end up multiply
defined AIUI.

Thanks,
Ludovic.





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-06-23 10:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-21  4:15 SCM_INTERNAL causes problems Patrick Horgan
2008-06-23 10:04 ` Ludovic Courtès

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 read-only IMAP folder(s) and NNTP newsgroup(s).