Bug in net-tools' build system?

Oliver Brakmann obrakmann at gmx.net
Mon Apr 28 10:21:39 PDT 2003

On Mon, 2003-04-28 01:43, Steve Crosby wrote...

> To be honest, even the "make" stage appears superflous, since the make 
> update target includes "all" as a dependency, and should perform the 
> necessary steps. I'll just go and test that now...
> Yep...issuing *only* a 
>     	yes "" | make update
> from a freshly untarred source works as expected (answers the questions 
> with defaults, compiles and installs fine).

*sigh* I never argued that net-tools wouldn't build with the defaults. But
with the current instructions it builds _ONLY_ the defaults. Even if you ran
`yes | make' instead of `yes "" | make'.
> Adminttedly the defaults do not install mii-tools, which I think was the 
> original problem

*sigh* Nope, read the thread again. The problem is that, if you deviate from
the defaults, it will still only build the defaults.

Try this: untar the fresh tarball, run make manually (that is, without `yes'),
and answer `y' to the last three questions (because they are the easiest
to verify):

Here's a screen dump if you don't believe it:

bash-2.05a$ tar -xjf ~/net-tools-1.60.tar.bz2 
bash-2.05a$ cd net-tools-1.60/
bash-2.05a$ ls
ABOUT-NLS      hostname.c  ipmaddr.c   mii-tool.c    po/          RPM/
arp.c          ifconfig.c  iptunnel.c  nameif.c      rarp.c       slattach.c
config.in      include/    lib/        netstat.c     README       statistics.c
configure.sh*  INSTALLING  Makefile    nls/          README.ipv6  TODO
COPYING        intl.h      man/        plipconfig.c  route.c
bash-2.05a$ make
Configuring the Linux net-tools (NET-3 Base Utilities)...

*              Internationalization
* The net-tools package has currently been translated to French,
* German and Brazilian Portugese.  Other translations are, of
* course, welcome.  Answer `n' here if you have no support for
* internationalization on your system.
Does your system support GNU gettext? (I18N) [n] 
*             Protocol Families.
UNIX protocol family (HAVE_AFUNIX) [y] 
INET (TCP/IP) protocol family (HAVE_AFINET) [y] 
INET6 (IPv6) protocol family (HAVE_AFINET6) [n] 
Novell IPX/SPX protocol family (HAVE_AFIPX) [y] 
Appletalk DDP protocol family (HAVE_AFATALK) [y] 
AX25 (packet radio) protocol family (HAVE_AFAX25) [y] 
NET/ROM (packet radio) protocol family (HAVE_AFNETROM) [y] 
Rose (packet radio) protocol family (HAVE_AFROSE) [n] 
X.25 (CCITT) protocol family (HAVE_AFX25) [y] 
Econet protocol family (HAVE_AFECONET) [n] 
DECnet protocol family (HAVE_AFDECnet) [n] 
Ash protocol family (HAVE_AFASH) [n] 
*            Device Hardware types.
Ethernet (generic) support (HAVE_HWETHER) [y] 
ARCnet support (HAVE_HWARC) [y] 
SLIP (serial line) support (HAVE_HWSLIP) [y] 
PPP (serial line) support (HAVE_HWPPP) [y] 
IPIP Tunnel support (HAVE_HWTUNNEL) [y] 
STRIP (Metricom radio) support (HAVE_HWSTRIP) [y] 
Token ring (generic) support (HAVE_HWTR) [y] 
AX25 (packet radio) support (HAVE_HWAX25) [y] 
Rose (packet radio) support (HAVE_HWROSE) [n] 
NET/ROM (packet radio) support (HAVE_HWNETROM) [y] 
X.25 (generic) support (HAVE_HWX25) [y] 
DLCI/FRAD (frame relay) support (HAVE_HWFR) [y] 
SIT (IPv6-in-IPv4) support (HAVE_HWSIT) [n] 
FDDI (generic) support (HAVE_HWFDDI) [n] 
HIPPI (generic) support (HAVE_HWHIPPI) [n] 
Ash hardware support (HAVE_HWASH) [n] 
(Cisco)-HDLC/LAPB support (HAVE_HWHDLCLAPB) [n] 
IrDA support (HAVE_HWIRDA) [y] 
Econet hardware support (HAVE_HWEC) [n] 
*           Other Features.
IP Masquerading support (HAVE_FW_MASQUERADE) [n] y
Build iptunnel and ipmaddr (HAVE_IP_TOOLS) [n] y
Build mii-tool (HAVE_MII) [n] y

[... compilation omitted, be grateful ...]

bash-2.05a$ ls
ABOUT-NLS      COPYING     intl.h      nameif.o      rarp*        slattach*
arp*           hostname*   ipmaddr.c   netstat*      rarp.c       slattach.c
arp.c          hostname.c  iptunnel.c  netstat.c     rarp.o       slattach.o
arp.o          hostname.o  lib/        netstat.o     README       statistics.c
config.h       ifconfig*   Makefile    nls/          README.ipv6  statistics.o
config.in      ifconfig.c  man/        plipconfig*   route*       TODO
config.make    ifconfig.o  mii-tool.c  plipconfig.c  route.c      version.h
config.status  include/    nameif*     plipconfig.o  route.o
configure.sh*  INSTALLING  nameif.c    po/           RPM/

Huzzah! No, mii-tool, no iptunnel and no ipmaddr.

Running "make config && make" instead does The Right Thing[tm].

Y'Honour, case closed.


PS: Can you tell I'm feeling stupid defending the supplied documentation?

bash-2.05a$ head -14 INSTALLING | tail -6

cd /usr/src ; tar xvzf net-tools*.tar.gz
less Makefile ; make config ; make ; make -n install ; make install


/"\   ASCII Ribbon   | Reg. Linux User #198843            http://counter.li.org
\ /    Campaign -    | Reg.  LFS  User  #3082       http://linuxfromscratch.org
 x    Against HTML   |
/ \ in mail and news | NP: Helium Vola - Omnis mundi creatura
Unsubscribe: send email to listar at linuxfromscratch.org
and put 'unsubscribe lfs-dev' in the subject header of the message

More information about the lfs-dev mailing list