public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Gary Thomas <gthomas@redhat.com>
To: bgat@open-widgets.com
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] build error in net directory
Date: Sun, 07 Jan 2001 18:34:00 -0000	[thread overview]
Message-ID: <XFMail.20010107193422.gthomas@redhat.com> (raw)
In-Reply-To: <20010107145109.B15782@sr1.open-widgets.com>

[-- Attachment #1: Type: text/plain, Size: 1382 bytes --]

On 07-Jan-2001 bgat@open-widgets.com wrote:
> Gary:
> 
> 
> You know, I bet one of these days I'm going to need to RTFM.  :^)
> 
> Thanks for the help.  It also applies to snmp, I presume?

No, I don't think so.  I'm pretty sure that SNMP can be added, and be
sufficient, all by itself.

As for the manual, this point might have been hard to find there :-(
The problem is that the 'net' package, while mostly self contained in terms
of compilation, etc, needs additional packages such as the ethernet
driver framework to be complete.  It would be good [I'll look into this]
for the code which requires additional packages to make sure that they
are available and issue a more useful diagnostic when they are not.

In fact, the attached patch goes a long way towards this goal.

> 
> b.g.
> 
> 
> On Sun, Jan 07, 2001 at 08:27:34AM -0700, Gary Thomas wrote:
>>  
>> On 06-Jan-2001 bgat@open-widgets.com wrote:
>> > Guys:
>> > 
>> > 
>> > I just updated to the latest CVS and tried to build as follows:
>> > 
>> > 
>> > ecosconfig new mbx
>> > ecosconfig add net
>> 
>> Don't do it this way.  The 'net' package is not self sufficient.  What
>> you really want is:
>>   % ecosconfig new mbx net
>> 
>> The 'net' template adds both the basic network stack _and_ the ethernet
>> driver framework, which is where 'netdev.h' comes from.
>> 
> 
> -- 
> Bill Gatliff
> bgat@open-widgets.com

[-- Attachment #2: diffs --]
[-- Type: text/x-diff, Size: 2744 bytes --]

Index: io/eth/current/cdl/eth_drivers.cdl
===================================================================
RCS file: /home/cvs/ecc/ecc/io/eth/current/cdl/eth_drivers.cdl,v
retrieving revision 1.6
diff -u -5 -p -r1.6 eth_drivers.cdl
--- io/eth/current/cdl/eth_drivers.cdl	2000/10/17 15:45:50	1.6
+++ io/eth/current/cdl/eth_drivers.cdl	2001/01/08 02:26:11
@@ -44,10 +44,12 @@ cdl_package CYGPKG_IO_ETH_DRIVERS {
     display       "Common ethernet support"
     include_dir   .
     parent        CYGPKG_IO
     description   "Platform independent ethernet drivers"
 
+    implements    CYGPKG_NET_DRIVER_FRAMEWORK
+
     cdl_component CYGPKG_IO_ETH_DRIVERS_NET {
         display       "Support for standard eCos TCP/IP stack."
         flavor        bool
         active_if     CYGPKG_NET
         no_define
Index: net/tcpip/current/cdl/net.cdl
===================================================================
RCS file: /home/cvs/ecc/ecc/net/tcpip/current/cdl/net.cdl,v
retrieving revision 1.32
diff -u -5 -p -r1.32 net.cdl
--- net/tcpip/current/cdl/net.cdl	2000/09/14 16:13:30	1.32
+++ net/tcpip/current/cdl/net.cdl	2001/01/07 21:34:17
@@ -49,10 +49,17 @@ cdl_package CYGPKG_NET {
     requires      CYGPKG_LIBC_TIME
     requires      CYGPKG_ERROR
     requires      CYGPKG_MEMALLOC
     description   "Basic networking support, including TCP/IP."
 
+    cdl_interface     CYGPKG_NET_DRIVER_FRAMEWORK {
+        display   "Suitable driver framework interface, used by network package"
+        description "
+          In order to decouple the network stack from driver specifics, the
+          driver framework must be defined in a separate package."
+    }
+
     # Export our types to <sys/types.h>
     implements    CYGINT_ISO_BSDTYPES
     requires      { CYGBLD_ISO_BSDTYPES_HEADER == "<sys/bsdtypes.h>" }
     
     compile ecos/support.c \
Index: net/tcpip/current/src/ecos/support.c
===================================================================
RCS file: /home/cvs/ecc/ecc/net/tcpip/current/src/ecos/support.c,v
retrieving revision 1.23
diff -u -5 -p -r1.23 support.c
--- net/tcpip/current/src/ecos/support.c	2000/11/10 18:30:14	1.23
+++ net/tcpip/current/src/ecos/support.c	2001/01/08 02:30:09
@@ -79,10 +79,13 @@
 #include <cyg/hal/hal_intr.h>
 #include <cyg/kernel/kapi.h>
 
 #include <cyg/infra/cyg_ass.h>
 
+#if !CYGPKG_NET_DRIVER_FRAMEWORK
+#error At least one network driver framework must be defined!
+#else
 #include <netdev.h>
 
 // Define table boundaries
 CYG_HAL_TABLE_BEGIN( __NETDEVTAB__, netdev );
 CYG_HAL_TABLE_END( __NETDEVTAB_END__, netdev );
@@ -615,7 +618,9 @@ cyg_net_init(void)
     domaininit();
 
     // Done
     _init = true;
 }
+
+#endif // CYGPKG_NET_DRIVER_FRAMEWORK
 
 // EOF support.c

  reply	other threads:[~2001-01-07 18:34 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-01-06  8:27 bgat
2001-01-07  7:27 ` Gary Thomas
2001-01-07 12:51   ` bgat
2001-01-07 18:34     ` Gary Thomas [this message]
2001-01-08  4:16       ` Hugo Tyson
2001-01-08  8:40   ` Grant Edwards
2001-01-08  8:43     ` Gary Thomas
2001-01-08 15:16     ` Jonathan Larmour
2001-01-08  4:48 Doug Fraser

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=XFMail.20010107193422.gthomas@redhat.com \
    --to=gthomas@redhat.com \
    --cc=bgat@open-widgets.com \
    --cc=ecos-discuss@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).