This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Re: Patch for x86 bootstrap


elf@florence.buici.com writes:

> On Thu, Apr 26, 2001 at 06:55:09PM +0100, Jonathan Larmour wrote:
> > elf@florence.buici.com wrote:
> > > 
> > > On Thu, Apr 26, 2001 at 04:11:20AM +0100, Jonathan Larmour wrote:
> > > > Ah yes, of course. I forgot that one. You have to do a "ecosconfig
> > > > remove libc_signals".
> > > 
> > > And how am I supposed to guess this?
> > 
> > Not every consequence of changing your configuration can be documented!
> > Although the more tractable course of action would be to choose either the
> > "posix" or "elix" template instead of the default one, using
> > Build->Templates. That way the conflict doesn't arise.
> 
> I think you are missing my point.  The ecosconfig error message doesn't
> indicate the type of problem.  This is two-fold.
> 
>   C CYGPKG_POSIX, "requires" constraint not satisfied:
>   CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == "<cyg/posix/signal.h>" C CYGPKG_POSIX,
>   "requires" constraint not satisfied: CYGBLD_ISO_SIGNAL_IMPL_HEADER ==
>   "<cyg/posix/signal.h>" C CYGINT_ISO_SIGNAL_NUMBERS, "requires" constraint
>   not satisfied: 1 >= CYGINT_ISO_SIGNAL_NUMBERS C CYGINT_ISO_SIGNAL_IMPL,
>   "requires" constraint not satisfied: 1 >= CYGINT_ISO_SIGNAL_IMPL
> 
> These errors don't give any hint that this might be a problem with multiple
> implementations.  I'd expect something like the Debian DEB format such as
> 
>   'signals' implementations conflict in
>     posix libc_signals

Right, this would help.

> 
> Second, it is unclear where these constants are defined so that I can discover
> the source of the unsatisfied constraints.  These are not present in the .ecc
> file, nor is there an indication of where to look.

>From the package directory, you could try something like:

 find . \( -name '*.cdl' -exec grep CYGINT_ISO_SIGNAL_NUMBERS {} \; \) -exec ls \
 -ld {} \;

which produces:

      implements     CYGINT_ISO_SIGNAL_NUMBERS
  -rw-rw-r--    1 user  group      10116 Apr  9 15:48 \
  packages/compat/posix/current/cdl/posix.cdl
      requires        CYGINT_ISO_SIGNAL_NUMBERS
      default_value   { CYGINT_ISO_SIGNAL_NUMBERS != 0 && \
  -rw-rw-r--    1 user  group       4436 Mar  8 09:57 \
  packages/io/serial/current/cdl/termios.cdl
          cdl_interface CYGINT_ISO_SIGNAL_NUMBERS {
              requires      { 1 >= CYGINT_ISO_SIGNAL_NUMBERS }
  -rw-rw-r--    1 user  group      37273 Apr  9 15:50 \
  packages/isoinfra/current/cdl/isoinfra.cdl
      implements    CYGINT_ISO_SIGNAL_NUMBERS
  -rw-rw-r--    1 user  group      11273 Mar  8 09:57 \
  packages/language/c/libc/signals/current/cdl/signals.cdl

and then look in ecos.ecc to see which *active* package/component implements
CYGINT_ISO_SIGNAL_NUMBERS.


Robin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]