diff options
author | Marty Connor <mdc@etherboot.org> | 2010-01-16 21:47:39 -0500 |
---|---|---|
committer | Marty Connor <mdc@etherboot.org> | 2010-01-16 21:47:39 -0500 |
commit | 330abebddf67ab27998f64070f27d5874cbc7b06 (patch) | |
tree | 08f5954725930ee9c38b0afab4cb9a30c71ce7e3 /contrib/initrd | |
parent | 37883e99fd791571c6771c9d1d8721a11e7e8a8f (diff) | |
download | ipxe-330abebddf67ab27998f64070f27d5874cbc7b06.tar.gz |
[contrib] Move most contrib content to a separate repository
Most of the content that was previously in this directory has been
moved to a separate git repository:
http://git.etherboot.org/?p=contrib.git;a=summary
or the Etherboot Project wiki:
http://etherboot.org/
Diffstat (limited to 'contrib/initrd')
-rw-r--r-- | contrib/initrd/ChangeLog | 46 | ||||
-rw-r--r-- | contrib/initrd/Makefile | 187 | ||||
-rw-r--r-- | contrib/initrd/Manifest | 15 | ||||
-rw-r--r-- | contrib/initrd/README | 37 | ||||
-rw-r--r-- | contrib/initrd/dhcpd.conf.etherboot.include | 207 | ||||
-rwxr-xr-x | contrib/initrd/include-modules | 63 | ||||
-rw-r--r-- | contrib/initrd/linux-wlan.cfg | 7 | ||||
-rw-r--r-- | contrib/initrd/linuxrc | 76 | ||||
-rwxr-xr-x | contrib/initrd/mkinitrd-net | 165 | ||||
-rw-r--r-- | contrib/initrd/mkinitrd-net.spec | 112 | ||||
-rwxr-xr-x | contrib/initrd/mknbi-set | 200 | ||||
-rw-r--r-- | contrib/initrd/mknbi-set.conf | 27 | ||||
-rw-r--r-- | contrib/initrd/script.c.patch | 11 | ||||
-rw-r--r-- | contrib/initrd/udhcpc-post | 25 |
14 files changed, 0 insertions, 1178 deletions
diff --git a/contrib/initrd/ChangeLog b/contrib/initrd/ChangeLog deleted file mode 100644 index 94f8f6aa5..000000000 --- a/contrib/initrd/ChangeLog +++ /dev/null @@ -1,46 +0,0 @@ -mkinitrd-net ChangeLog - -Last Modified: Fri Jul 26 23:08:28 2002 - -$Log$ -Revision 1.1 2005/05/17 16:45:02 mcb30 -Initial revision - -Revision 1.1 2002/11/06 06:31:06 ken_yap -Contributed by Michael Brown. - -Revision 1.10 2002/07/26 23:09:13 mcb30 -Support for new binary etherboot.nic-dev-id structure -Added --kernel option patch from Stew Benedict at MandrakeSoft -Only try to use sudo if we are not already root - -Revision 1.9 2002/06/05 13:31:50 mcb30 -Modifications to allow DHCP, TFTP and NFS servers to be separate machines. - -Revision 1.8 2002/05/30 11:41:18 mcb30 -/tftpboot symlinked to /var/lib/tftpboot -Has ability to be quiet if "quiet" specified on kernel cmdline - -Revision 1.7 2002/05/26 11:15:04 mcb30 -PCI-ID auto-mapping via dhcpd.conf.etherboot-pcimap.include - -Revision 1.6 2002/05/24 02:05:11 mcb30 -Bugfixes, migrated /tftpboot to /var/lib/tftpboot - -Revision 1.5 2002/05/23 21:29:58 mcb30 -Now includes dhcpd.conf.etherboot.include -Automatically scans for all network modules in the pcimap file - -Revision 1.4 2002/05/08 09:04:31 mcb30 -Bugfixes: tmpdir selection, linuxrc typos, ifconfig peculiarities - -Revision 1.3 2002/05/04 21:44:13 mcb30 -During %make, LIBDIR must be set for mknbi -Added %post scriptlet since %trigger seems not to be being triggered... - -Revision 1.2 2002/05/04 21:20:32 mcb30 -Added extra sources instead of requiring "make" to download them - -Revision 1.1 2002/05/04 13:19:40 mcb30 -First attempt at an RPM package - diff --git a/contrib/initrd/Makefile b/contrib/initrd/Makefile deleted file mode 100644 index f18b73f6e..000000000 --- a/contrib/initrd/Makefile +++ /dev/null @@ -1,187 +0,0 @@ -UCLIBC_VERSION = 0.9.11 -UCLIBC = uClibc-$(UCLIBC_VERSION) -$(UCLIBC)_SOURCE = http://www.uclibc.org/downloads/$(UCLIBC).tar.bz2 -UCLIBC_INSTALL = $(CURDIR)/uClibc - -UDHCP_VERSION = 0.9.7 -UDHCP = udhcp-$(UDHCP_VERSION) -$(UDHCP)_SOURCE = http://udhcp.busybox.net/source/$(UDHCP).tar.gz - -BUSYBOX_VERSION = 0.60.3 -BUSYBOX = busybox-$(BUSYBOX_VERSION) -$(BUSYBOX)_SOURCE = http://www.busybox.net/downloads/$(BUSYBOX).tar.bz2 - -LINUX_WLAN_VERSION = 0.1.13 -LINUX_WLAN = linux-wlan-ng-$(LINUX_WLAN_VERSION) -$(LINUX_WLAN)_SOURCE = ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/$(LINUX_WLAN).tar.gz - -MKNBI_VERSION = 1.2 -MKNBI = mknbi-$(MKNBI_VERSION) -$(MKNBI)_SOURCE = http://belnet.dl.sourceforge.net/sourceforge/etherboot/$(MKNBI).tar.gz - -export PATH := $(UCLIBC_INSTALL)/bin:$(PATH) - -all : utils initrd-skel mknbi mknbi-linux - # Run "make tftpboot/initrd-kernel_module.img" to generate a suitable initrd - # Run "make tftpboot/boot-kernel_module.nbi" to generate a suitable NBI - # Run "make all-nbi" to generate a complete set of NBIs - -%.tar.bz2 : - [ -d $* ] || wget $($*_SOURCE) - [ -f $*.t*gz ] && ( gunzip $*.t*gz ; bzip2 -9 $*.tar ) || true - -UTILS = udhcpc busybox wlanctl - -utils : $(UTILS) - -clean : partlyclean - rm -rf uClibc - rm -rf $(UCLIBC) - rm -rf tftpboot/* - -partlyclean : - rm -rf $(UDHCP) - rm -rf $(BUSYBOX) - rm -rf $(LINUX_WLAN) - rm -rf $(MKNBI) - rm -rf initrd-skel - rm -f *.img *.ird *.nbi insert-modules - rm -f $(UTILS) mknbi-linux - rm -f *.uClibc *.busybox *.udhcpc *.wlanctl - -.PHONY : all utils clean partlyclean - -uClibc : $(UCLIBC) - rm -rf $@ - $(MAKE) -C $(UCLIBC) install - -$(UCLIBC) : $(UCLIBC).tar.bz2 - [ -d $@ ] || tar xvjf $< - [ -f $(UCLIBC)/Config ] || perl -pe 's/^(INCLUDE_RPC).*/$$1 = true/ ;' \ - -e 's{^(DEVEL_PREFIX).*}{$$1 = $(UCLIBC_INSTALL)} ;' \ - -e 's{^(SHARED_LIB_LOADER_PATH).*}{$$1 = /lib} ;' \ - $(UCLIBC)/extra/Configs/Config.i386 > $(UCLIBC)/Config - # Stripping out spurious CVS directories (screws up local cvs update) - rm -rf `find $(UCLIBC) -name CVS` - $(MAKE) -C $(UCLIBC) - install -m 644 $(UCLIBC)/COPYING.LIB COPYING.uClibc - -udhcpc : $(UDHCP) - install -m 755 -s $(UDHCP)/$@ $@ - -$(UDHCP) : $(UDHCP).tar.bz2 uClibc - [ -d $@ ] || tar xvjf $< - if [ ! -f $@/.script.c.patch ]; then \ - patch -d $@ -b -z .orig < script.c.patch ; \ - touch $@/.script.c.patch ; \ - fi - $(MAKE) LDFLAGS+=-static -C $(UDHCP) - install -m 644 $(UDHCP)/AUTHORS AUTHORS.udhcpc - install -m 644 $(UDHCP)/COPYING COPYING.udhcpc - -busybox : $(BUSYBOX) - install -m 755 -s $(BUSYBOX)/$@ $@ - -$(BUSYBOX) : $(BUSYBOX).tar.bz2 uClibc - [ -d $@ ] || tar xvjf $< - perl -pi.orig -e \ - 's/^.*(#define BB_(FEATURE_NFSMOUNT|INSMOD|PIVOT_ROOT|IFCONFIG|ROUTE)).*/$$1/' \ - $(BUSYBOX)/Config.h - perl -pi.orig -e \ - 's/^(DOSTATIC).*$$/$$1 = true/' \ - $(BUSYBOX)/Makefile - $(MAKE) -C $(BUSYBOX) - install -m 644 $(BUSYBOX)/AUTHORS AUTHORS.busybox - install -m 644 $(BUSYBOX)/LICENSE LICENSE.busybox - -wlanctl : $(LINUX_WLAN) - install -m 755 -s $(LINUX_WLAN)/src/wlanctl/$@ $@ - -$(LINUX_WLAN) : $(LINUX_WLAN).tar.bz2 uClibc linux-wlan.cfg - [ -d $@ ] || tar xvjf $< - cd $(LINUX_WLAN) ; ./Configure -d ../linux-wlan.cfg - perl -pi.orig -e \ - 's/(-o wlanctl)/-static $$1/' \ - $(LINUX_WLAN)/src/wlanctl/Makefile - $(MAKE) -C $(LINUX_WLAN)/src/wlanctl - install -m 644 $(LINUX_WLAN)/COPYING COPYING.wlanctl - install -m 644 $(LINUX_WLAN)/LICENSE LICENSE.wlanctl - install -m 644 $(LINUX_WLAN)/THANKS THANKS.wlanctl - -mknbi-linux : $(MKNBI) - -mknbi : $(MKNBI) - -$(MKNBI) : $(MKNBI).tar.bz2 - [ -d $@ ] || tar xvjf $< - if [ ! -f $@/.mknbi-encap.patch ]; then \ - patch -d $@ -b -z .orig < mknbi-encap.patch ; \ - touch $@/.mknbi-encap.patch ; \ - fi - make -C $(MKNBI) LIBDIR=`pwd`/$(MKNBI) mknbi - install -m 755 $(MKNBI)/mknbi mknbi-linux - make -C $(MKNBI) clean - make -C $(MKNBI) - -initrd-skel : $(UTILS) linuxrc udhcpc-post include-modules - rm -rf $@ - mkdir -p $@ - mkdir -p $@/dev - mkdir -p $@/etc - mkdir -p $@/bin - mkdir -p $@/lib - mkdir -p $@/lib/modules - mkdir -p $@/proc - mkdir -p $@/sysroot - ln -s bin $@/sbin - install -m 755 busybox $@/bin/ - install -m 755 udhcpc $@/bin/ - install -m 755 wlanctl $@/bin/ - ln -s busybox $@/bin/sh - ln -s busybox $@/bin/echo - ln -s busybox $@/bin/mknod - ln -s busybox $@/bin/chmod - ln -s busybox $@/bin/insmod - ln -s busybox $@/bin/ifconfig - ln -s busybox $@/bin/route - ln -s busybox $@/bin/mount - ln -s busybox $@/bin/pivot_root - ln -s busybox $@/bin/umount - ln -s busybox $@/bin/[ - ln -s busybox $@/bin/sleep - ln -s busybox $@/bin/grep - - install -m 755 linuxrc $@/linuxrc - install -m 755 udhcpc-post $@/bin/udhcpc-post - -tftpboot/initrd-%.img : initrd-skel - ./mkinitrd-net -l `echo $* | tr . " "` - -tftpboot/boot-%.nbi : tftpboot/initrd-%.img mknbi-linux - ./mknbi-linux --format=nbi --target=linux /boot/vmlinuz $< > $@ - sudo cp $@ $(tftpbootdir) - -all-nbi : all - ./mknbi-set -l -v - ls tftpboot - -prefix = /usr -sysconfdir = /etc -bindir = $(prefix)/bin -libdir = $(prefix)/lib -mandir = $(prefix)/share/man -docdir = $(prefix)/share/doc -tftpbootdir = /var/lib/tftpboot -initrdskeldir = $(prefix)/lib/mkinitrd-net/initrd-skel - -install : - mkdir -p $(libdir)/mknbi - mkdir -p $(bindir) - mkdir -p $(sysconfdir) - mkdir -p $(tftpbootdir) - mkdir -p $(initrdskeldir) - install -m 755 mkinitrd-net include-modules mknbi-set $(bindir)/ - cp -a initrd-skel/* $(initrdskeldir)/ - install -m 644 mknbi-set.conf dhcpd.conf.etherboot.include $(sysconfdir) - make -C $(MKNBI) INSTPREFIX=$(prefix) MANDIR=$(mandir)/man1 \ - DOCDIR=$(docdir)/$(MKNBI) install diff --git a/contrib/initrd/Manifest b/contrib/initrd/Manifest deleted file mode 100644 index b41e72556..000000000 --- a/contrib/initrd/Manifest +++ /dev/null @@ -1,15 +0,0 @@ -initrd/ChangeLog -initrd/Makefile -initrd/Manifest -initrd/README -initrd/dhcpd.conf.etherboot.include -initrd/include-modules -initrd/linux-wlan.cfg -initrd/linuxrc -initrd/mkinitrd-net -initrd/mkinitrd-net.spec -initrd/mknbi-encap.patch -initrd/mknbi-set -initrd/mknbi-set.conf -initrd/script.c.patch -initrd/udhcpc-post diff --git a/contrib/initrd/README b/contrib/initrd/README deleted file mode 100644 index 5152425ab..000000000 --- a/contrib/initrd/README +++ /dev/null @@ -1,37 +0,0 @@ -README for mkinitrd-net - -mkinitrd-net enables you to use your distribution's stock kernel for -diskless workstations, without having to compile in support for the -relevant network card(s). It creates an initial ramdisk image containing -the required network-card kernel modules and bootstrap scripts to load the -module, obtain an IP address via DHCP and mount the root filesystem via -NFS. - -mkinitrd-net also generates a dhcpd.conf file fragment that can be used to -automate the process of mapping NBI files to clients, based on the PCI IDs -of their network cards. Etherboot will send the PCI ID of the network -card to the DHCP server in the etherboot-encapsulated-options field -(Etherboot 5.0.7 and newer) and the DHCP server can use this to identify -the correct NBI to point the client towards. - -The end result is that: - -a) You can avoid the hassle of compiling custom kernels for diskless - workstations. - -b) Diskless workstations will automatically download the correct - kernel+initrd. - -c) You have an easier life! :-) - - - -mkinitrd-net is Copyright Fen Systems Ltd. 2001. mkinitrd-net itself is -licensed under the GNU GPL. It incorporates code from the uClibc, -busybox, udhcpc and Etherboot projects, each of which has its own licence -terms. Standard disclaimers apply. - -The copy of mkinitrd-net in the Etherboot contribs is not the -authoritative copy of mkinitrd-net; please do not make modifications to -this copy. Patches should be sent to Michael Brown -<mbrown@fensystems.co.uk>. diff --git a/contrib/initrd/dhcpd.conf.etherboot.include b/contrib/initrd/dhcpd.conf.etherboot.include deleted file mode 100644 index 9cec1dc18..000000000 --- a/contrib/initrd/dhcpd.conf.etherboot.include +++ /dev/null @@ -1,207 +0,0 @@ -# dhcpd.conf include file for Etherboot -# -# Include this file from your /etc/dhcpd.conf -# $Id$ - -# Definition of Etherboot options -# (taken from vendortags.html) - -# We use an encapsulated option space to avoid polluting the site-local DHCP option space -# -option space etherboot; -option etherboot-encapsulated-options code 150 = encapsulate etherboot; - -# Definition of option codes within the etherboot-encapsulated-options space -# -option etherboot.extensions-path code 18 = string; -option etherboot.magic code 128 = string; -option etherboot.kernel-cmdline code 129 = string; -option etherboot.menu-opts code 160 = string; -option etherboot.nic-dev-id code 175 = string; -option etherboot.menu-selection code 176 = unsigned integer 8; -option etherboot.motd-1 code 184 = string; -option etherboot.motd-2 code 185 = string; -option etherboot.motd-3 code 186 = string; -option etherboot.motd-4 code 187 = string; -option etherboot.motd-5 code 188 = string; -option etherboot.motd-6 code 189 = string; -option etherboot.motd-7 code 190 = string; -option etherboot.motd-8 code 191 = string; -option etherboot.image-1 code 192 = string; -option etherboot.image-2 code 193 = string; -option etherboot.image-3 code 194 = string; -option etherboot.image-4 code 195 = string; -option etherboot.image-5 code 196 = string; -option etherboot.image-6 code 197 = string; -option etherboot.image-7 code 198 = string; -option etherboot.image-8 code 199 = string; -option etherboot.image-9 code 200 = string; -option etherboot.image-10 code 201 = string; -option etherboot.image-11 code 202 = string; -option etherboot.image-12 code 203 = string; -option etherboot.image-13 code 204 = string; -option etherboot.image-14 code 205 = string; -option etherboot.image-15 code 206 = string; -option etherboot.image-16 code 207 = string; -option etherboot.kmod code 254 = string; - -# Legacy support for Etherboot options as site-local options (i.e. non-encapsulated) -# Note: options defined after the switch to encapsulated options should not be defined here -# -option legacy-etherboot-magic code 128 = string; -option legacy-etherboot-kernel-cmdline code 129 = string; -option legacy-etherboot-menu-opts code 160 = string; -option legacy-etherboot-menu-selection code 176 = unsigned integer 8; -option legacy-etherboot-motd-1 code 184 = string; -option legacy-etherboot-motd-2 code 185 = string; -option legacy-etherboot-motd-3 code 186 = string; -option legacy-etherboot-motd-4 code 187 = string; -option legacy-etherboot-motd-5 code 188 = string; -option legacy-etherboot-motd-6 code 189 = string; -option legacy-etherboot-motd-7 code 190 = string; -option legacy-etherboot-motd-8 code 191 = string; -option legacy-etherboot-image-1 code 192 = string; -option legacy-etherboot-image-2 code 193 = string; -option legacy-etherboot-image-3 code 194 = string; -option legacy-etherboot-image-4 code 195 = string; -option legacy-etherboot-image-5 code 196 = string; -option legacy-etherboot-image-6 code 197 = string; -option legacy-etherboot-image-7 code 198 = string; -option legacy-etherboot-image-8 code 199 = string; -option legacy-etherboot-image-9 code 200 = string; -option legacy-etherboot-image-10 code 201 = string; -option legacy-etherboot-image-11 code 202 = string; -option legacy-etherboot-image-12 code 203 = string; -option legacy-etherboot-image-13 code 204 = string; -option legacy-etherboot-image-14 code 205 = string; -option legacy-etherboot-image-15 code 206 = string; -option legacy-etherboot-image-16 code 207 = string; - -# Apply Etherboot options only for Etherboot clients -# -if substring ( option vendor-class-identifier, 0, 9 ) = "Etherboot" { - - # We must specify this value for etherboot-magic, or Etherboot will - # ignore all other options. - # - option etherboot.magic E4:45:74:68:00:00; - - # Bootfile name: derive from etherboot.kmod (calculated below) - # Use boot.nbi if no NIC_DEV_ID option present - # (i.e. if etherboot.kmod doesn't get set) - # Also pass filename back in filename field - # - option bootfile-name = pick-first-value ( concat ( "boot-", - config-option etherboot.kmod, - ".nbi" ), - "boot.nbi" ) ; - filename = config-option bootfile-name; - - # "Sensible" default values for some options - - # Mount devfs (will probably be needed for a network-boot) - option etherboot.kernel-cmdline " devfs=mount"; - - # Info message (includes client IP address, MAC address, hardware ID string, - # server IP address and name of boot file) - option etherboot.motd-4 = concat ( "Using Etherboot to boot ", - binary-to-ascii ( 10, 8, ".", leased-address ), - " [", - binary-to-ascii ( 16, 8, ":", suffix ( hardware, 6 ) ), - "] [", - pick-first-value ( option etherboot.nic-dev-id, "unknown card" ), - "]", 0d:0a, " from ", - binary-to-ascii ( 10, 8, ".", option dhcp-server-identifier ), - " with file ", - config-option tftp-server-name, - ":", - config-option bootfile-name, - " [", - pick-first-value ( config-option etherboot.kmod, "unknown module" ), - "]", 0d:0a ); - - # Legacy site-local option support - # If client does not include an etherboot-encapsulated-options field in its DHCPREQUEST, then - # it will not understand etherboot-encapsulated-options in the DHCPACK and so we must send - # back the options as site-local options (i.e. not encapsulated). - # Note: we need do this only for options that existed prior to the switch to encapsulation. - # - if not exists etherboot-encapsulated-options { - option legacy-etherboot-magic = config-option etherboot.magic; - option legacy-etherboot-kernel-cmdline = config-option etherboot.kernel-cmdline; - option legacy-etherboot-menu-opts = config-option etherboot.menu-opts; - option legacy-etherboot-menu-selection = config-option etherboot.menu-selection; - option legacy-etherboot-motd-1 = config-option etherboot.motd-1; - option legacy-etherboot-motd-2 = config-option etherboot.motd-2; - option legacy-etherboot-motd-3 = config-option etherboot.motd-3; - option legacy-etherboot-motd-4 = config-option etherboot.motd-4; - option legacy-etherboot-motd-5 = config-option etherboot.motd-5; - option legacy-etherboot-motd-6 = config-option etherboot.motd-6; - option legacy-etherboot-motd-7 = config-option etherboot.motd-7; - option legacy-etherboot-motd-8 = config-option etherboot.motd-8; - option legacy-etherboot-image-1 = config-option etherboot.image-1; - option legacy-etherboot-image-2 = config-option etherboot.image-2; - option legacy-etherboot-image-3 = config-option etherboot.image-3; - option legacy-etherboot-image-4 = config-option etherboot.image-4; - option legacy-etherboot-image-5 = config-option etherboot.image-5; - option legacy-etherboot-image-6 = config-option etherboot.image-6; - option legacy-etherboot-image-7 = config-option etherboot.image-7; - option legacy-etherboot-image-8 = config-option etherboot.image-8; - option legacy-etherboot-image-9 = config-option etherboot.image-9; - option legacy-etherboot-image-10 = config-option etherboot.image-10; - option legacy-etherboot-image-11 = config-option etherboot.image-11; - option legacy-etherboot-image-12 = config-option etherboot.image-12; - option legacy-etherboot-image-13 = config-option etherboot.image-13; - option legacy-etherboot-image-14 = config-option etherboot.image-14; - option legacy-etherboot-image-15 = config-option etherboot.image-15; - option legacy-etherboot-image-16 = config-option etherboot.image-16; - } -} - -# Some options should be set for both Etherboot and the udhcpc client -# -if ( ( substring ( option vendor-class-identifier, 0, 9 ) = "Etherboot" ) - or ( substring ( option vendor-class-identifier, 0, 5 ) = "udhcp" ) ) { - - # TFTP server defaults to DHCP server and is specified in both - # next-server field and tftp-server-name option field - # - option tftp-server-name = binary-to-ascii ( 10, 8, ".", config-option dhcp-server-identifier ); - server-name = config-option tftp-server-name; - next-server = config-option dhcp-server-identifier; - - # Root path defaults to root of TFTP server - option root-path = concat ( config-option tftp-server-name, ":/" ); - - # A fallback hostname, generated from the IP address - option host-name = concat ( "client_", binary-to-ascii ( 10, 8, "_", leased-address ) ); -} - -# Force some items onto parameter request list for udhcp -# -if substring ( option vendor-class-identifier, 0, 5 ) = "udhcp" { - # Forcibly add root-path to list - option dhcp-parameter-request-list = concat ( option dhcp-parameter-request-list, 11 ); -} - -# Etherboot sends a string to identify the NIC in etherboot.nic-dev-id. -# For PCI NICs, this string is of the form "PCI:vvvv:dddd" where vvvv is the -# vendor identifier and dddd the device identifier, in lower-case ASCII hex. -# For ISA NICs, the format of the string is "ISA:..." where ... is not yet -# decided upon. -# -# We use the identifier to select the NBI image that will be specified via -# the "bootfile-name" option. -# -# PCI NICs - use PCI vendor and device IDs -# Listed in file generated by mknbi-set -# -include "/etc/dhcpd.conf.etherboot-pcimap.include"; - -# ISA NICs -# -if substring ( option vendor-class-identifier, 0, 9 ) = "Etherboot" { - if exists etherboot.nic-dev-id { - - } -} diff --git a/contrib/initrd/include-modules b/contrib/initrd/include-modules deleted file mode 100755 index 60e76fc6f..000000000 --- a/contrib/initrd/include-modules +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/perl -w -# -# Retrieve modules required for an initrd image -# $Id$ - -unless ( @ARGV ) { - die "Syntax: $0 [ -d target_directory ] module_1 module_2 module_3\n" -} - -# Parse command line arguments -my @requested_modules = (); -my $target_dir = ""; -my $kernel_ver; -my $quiet; -chomp ( my $current_kernel_ver = `uname -r` ); -while ( $_ = shift ) { - if ( /-d/ ) { $target_dir = shift } - elsif ( /-k/ ) { $kernel_ver = shift } - elsif ( /-q/ ) { $quiet = 1 } - else { push @requested_modules, $_ }; -} - -# Create target directory if required -if ( $target_dir ) { - print STDERR "Target directory is $target_dir\n" unless $quiet; - system ( "mkdir -p $target_dir" ); - chdir $target_dir; -} - -# Use modprobe -nav to retrieve locations of modules and their dependencies -print STDERR "Requested modules ". join (' ', @requested_modules)."\n" unless $quiet; -my @modules_dups; -foreach my $module ( @requested_modules ) { - my @module_list = map { /^\S+\s+(.*)$/ ; $1 } `/sbin/modprobe -nva $module`; - die "Cannot find any modules matching $module\n" unless @module_list; - push @modules_dups, @module_list; -} - -# Remove duplicates from list -my %module_basenames = (); -my @modules = (); -foreach my $module ( @modules_dups ) { - # Ugly hack : assume that dependencies are independent of kernel version - # This seems to be necessary because we can't run modprobe and specify - # an alternate modules.dep file; it refuses to understand lines of the - # form "depfile=XXX" as documented in modules.conf(5) - $module =~ s/$current_kernel_ver/$kernel_ver/ if $kernel_ver; - push @modules, $module unless $module_basenames{$module}; - ( my $basename ) = ( $module =~ /([^\/]+)\.o/ ); - $module_basenames{$module} = $basename; -} - -# Process module list -print "#!/bin/sh\n"; -foreach my $module ( @modules ) { - my $basename = $module_basenames{$module}; - # Report via stdout - print STDERR "Using module $basename from $module\n" unless $quiet; - # Copy uncompressed module to current directory - system ("gunzip -c $module > $basename.o"); - # Print insmod line to stdout - print "insmod $basename\n"; -} diff --git a/contrib/initrd/linux-wlan.cfg b/contrib/initrd/linux-wlan.cfg deleted file mode 100644 index 7df4a0597..000000000 --- a/contrib/initrd/linux-wlan.cfg +++ /dev/null @@ -1,7 +0,0 @@ -# Dummy config file for building only wlanctl -# $Id$ - -PRISM2_PLX=n -PRISM2_PCMCIA=n -PRISM2_PCI=n -PRISM2_USB=n diff --git a/contrib/initrd/linuxrc b/contrib/initrd/linuxrc deleted file mode 100644 index 24bdb0df8..000000000 --- a/contrib/initrd/linuxrc +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh -# $Id$ - -PATH=/sbin:/bin - -echo Busybox /linuxrc starting - -echo Mounting /proc filesystem -mount -t proc none /proc - -echo=echo -if grep '\bquiet\b' /proc/cmdline > /dev/null; then - echo=true - quiet=1 -fi - -$echo Creating root device -mknod /dev/root b 1 0 2>/dev/null -chmod 700 /dev/root -echo 0x100 > /proc/sys/kernel/real-root-dev - -$echo Inserting modules -if [ -z "$quiet" ]; then - /bin/insert-modules -else - /bin/insert-modules >/dev/null -fi - -$echo Bringing up loopback interface -ifconfig lo 127.0.0.1 up -route add -net 127.0.0.0 netmask 255.0.0.0 lo - -# Hack required for prism2 cards -# It is not yet possible to use iwconfig to configure these cards, -# so we need wlanctl. -if ifconfig wlan0 down 2> /dev/null; then - $echo Setting up wireless link - wlanctl wlan0 lnxreq_ifstate ifstate=enable - wlanctl wlan0 lnxreq_autojoin ssid= authtype=opensystem -fi - -$echo Obtaining IP address via DHCP -$echo Trying to obtain IP address via wired link [eth0] -if udhcpc -i eth0 -f -n -q -s /bin/udhcpc-post; then - $echo Successfully obtained IP address via wired link [eth0] -else - $echo Failed to obtain IP address via wired link [eth0] - $echo Trying to obtain IP address via wireless link [wlan0] - udhcpc -i wlan0 -f -n -q -s /bin/udhcpc-post -fi - -if [ -d /sysroot/initrd ]; then - $echo Unmounting /proc prior to pivot_root - umount /proc - - $echo Pivoting root to /sysroot - pivot_root /sysroot /sysroot/initrd - cd / - - $echo Remounting devfs at correct place - mount -t devfs none /dev - - $echo Releasing locks on old devfs - exec 0</dev/null - exec 1>/dev/console - exec 2>/dev/console - - $echo Unmounting old devfs - umount /initrd/dev -else - # Failed to mount root: report error and hang - echo FATAL ERROR: Failed to mount root filesystem - echo Press Alt-SysRq-B or hit the reset switch to reboot - while : ; do sleep 6000 ; done -fi - diff --git a/contrib/initrd/mkinitrd-net b/contrib/initrd/mkinitrd-net deleted file mode 100755 index 0c95ebd1b..000000000 --- a/contrib/initrd/mkinitrd-net +++ /dev/null @@ -1,165 +0,0 @@ -#!/bin/sh -# -# $Id$ -# initrd builder for network booting - -# Utility function to determine whether or not a filesystem is usable for -# loopback mounts. Lifted verbatim from Erik Troan's mkinitrd script. -# -is_good_fs() { - local parttype= tmpname= - local dir=$1 - [[ -d $dir ]] || return 1 - [[ -w $dir ]] || return 1 - [[ $dir == */ ]] && dir=${dir%/} - parttype=$(awk "{if (\$2 == \""$dir"\") print \$3 }" /proc/mounts) - - while tmpname=${dir%/*} && [[ -z $parttype ]];do - [[ -z $tmpname ]] && tmpname=/ - parttype=$(awk "{if (\$2 == \""$tmpname"\") print \$3 }" /proc/mounts) - dir=$tmpname - done - - case $parttype in - nfs|tmpfs) return 1;; - *) return 0; - esac -} - -# Find a suitable temporary directory (i.e. not tmpfs or nfs) -if is_good_fs $TMPDIR; then - tmpdir=$TMPDIR -elif is_good_fs /tmp; then - tmpdir=/tmp -elif is_good_fs /var/tmp; then - tmpdir=/var/tmp -elif is_good_fs /root/tmp; then - tmpdir=/root/tmp -else - echo "Cannot use a tmp directory" >&2 - exit 1 -fi - -# Default settings (some can be overridden by command-line options) -include_modules=include-modules -initrd_skel=/usr/lib/mkinitrd-net/initrd-skel -kernel_ver=`uname -r` -use_sudo=y -keep=n -output_dir=/var/lib/tftpboot -make_link=y -quiet= - -# No need to use sudo if we are root -if [ $UID -eq 0 ]; then - use_sudo=n -fi - -USAGE="Usage: $0 [-k|--kernel <kernel_ver>] [-n|--nolink] [-q|--quiet] [-l|--local] [--nosudo] [--keep] [--help] module_list ..." - -# Parse command-line options -while [ $# -gt 0 ]; do - case "$1" in - -l|--local) - shift - use_local=y ;; - -k|--kernel) - shift - kernel_ver=$1 - shift ;; - --nosudo) shift ; use_sudo=n ;; - --keep) shift ; keep=y ;; - --n|--nolink) - shift ; make_link=n ;; - -q|--quiet) shift ; quiet=-q ;; - --help) shift ; do_help=y ;; - --) shift ; break ;; - -*) echo "${0}: ${1}: invalid option" >&2 - echo $USAGE >& 2 - exit 2 ;; - *) break ;; - esac -done - -# Build list of requested modules -modules="$*" -requested_modules="$modules" -modules="$modules nfs" # Always require nfs for nfs mount -modules="$modules af_packet" # Always require af_packet for udhcpc - -# --help => Print help message -if [ "$do_help" == "y" ]; then - echo $USAGE - echo " -k, --kernel Specify kernel version" - echo " -n, --nolink Do not create a matching symbolic link" - echo " -l, --local Run locally from CVS (for developers only)" - echo " --nosudo Do not use sudo (i.e. must run as root instead)" - echo " --keep Keep temporary files instead of deleting them" - exit 0; -fi - -# --local => we are running directly from CVS, rather than -# from an installed copy, so use local files and directories -if [ "$use_local" == "y" ]; then - include_modules=./include-modules - initrd_skel=initrd-skel - output_dir=tftpboot -fi - -# If use_sudo is set, check that sudo exists -sudo=/usr/bin/sudo -if [ "$use_sudo" == "y" ]; then - if [ ! -x $sudo ]; then - use_sudo=n - echo "WARNING: --nosudo not specified but $sudo not found" - fi -fi -if [ "$use_sudo" == "n" ]; then - sudo= -fi - -# Create temporary working files -initrd=`mktemp -d ${tmpdir}/initrd.XXXXXX` -initrdimg=`mktemp ${tmpdir}/initrd.img.XXXXXX` -initrdmnt=`mktemp -d ${tmpdir}/initrd.mnt.XXXXXX` - -# Copy skeleton into temporary area -cp -a $initrd_skel/* $initrd/ -mkdir -p $initrd/lib/modules/$kernel_ver -$include_modules $quiet -k $kernel_ver -d $initrd/lib/modules/$kernel_ver $modules > $initrd/bin/insert-modules || exit 1 -chmod 755 $initrd/bin/insert-modules - -# Create empty ext2fs image file -dd if=/dev/zero bs=1k of=$initrdimg count=$((`du -sk $initrd | cut -f1` * 7 / 6)) 2> /dev/null -/sbin/mke2fs -q -F $initrdimg 2> /dev/null - -# Mount image file, copy files on, create /dev entries, display free space, umount -$sudo mount -o loop $initrdimg $initrdmnt -cp -a $initrd/* $initrdmnt/ -$sudo mknod $initrdmnt/dev/console c 5 1 -$sudo mknod $initrdmnt/dev/null c 1 3 -$sudo mknod $initrdmnt/dev/ram b 1 1 -$sudo mknod $initrdmnt/dev/systty c 4 0 -for i in 1 2 3 4; do $sudo mknod $initrdmnt/dev/tty$i c 4 $i; done -if [ "$quiet" == "n" ]; then - df -h $initrdmnt -fi -$sudo umount $initrdmnt - -# Create output file -initrd_suffix=`echo $requested_modules | tr " " .` -gzip -9 -n -c $initrdimg > $output_dir/initrd-$initrd_suffix.$kernel_ver.img - -# Create symlink -if [ "$make_link" == "y" ]; then - link=$output_dir/initrd-$initrd_suffix.img - [ -L $link ] && rm -f $link - ln -s initrd-$initrd_suffix.$kernel_ver.img $link -fi - -# Remove temporary files -if [ "$keep" == "n" ]; then - rm -rf $initrd - rm -f $initrdimg - rmdir $initrdmnt -fi diff --git a/contrib/initrd/mkinitrd-net.spec b/contrib/initrd/mkinitrd-net.spec deleted file mode 100644 index 94f5d9dbf..000000000 --- a/contrib/initrd/mkinitrd-net.spec +++ /dev/null @@ -1,112 +0,0 @@ -%define name mkinitrd-net -%define version 1.10 -%define release 1fs - -Summary: Network-booting initrd builder -Name: %{name} -Version: %{version} -Release: %{release} -Source0: %{name}-%{version}.tar.bz2 -Source1: http://belnet.dl.sourceforge.net/sourceforge/etherboot/mknbi-1.2.tar.bz2 -Source2: http://www.busybox.net/downloads/busybox-0.60.3.tar.bz2 -Source3: http://www.uclibc.org/downloads/uClibc-0.9.11.tar.bz2 -Source4: ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-0.1.13.tar.bz2 -Source5: http://udhcp.busybox.net/source/udhcp-0.9.7.tar.bz2 -Copyright: GPL/LGPL/MPL -Group: System/Kernel and hardware -BuildRoot: %{_tmppath}/%{name}-buildroot -Prefix: %{_prefix} -Requires: tftp-server - -%description -mkinitrd-net allows you to build initial ramdisk images (initrds) suitable -for use with Etherboot and other network-booting software. This package -contains two main utilities: mkinitrd-net (to build an initrd containing a -specified set of network-card modules) and mknbi (to generate -Etherboot-usable NBI images from a given kernel and initrd). It also -contains a helper script mknbi-set which will maintain sets of initrds to -match all your currently-installed kernels. - -mkinitrd-net uses code from the uClibc, busybox, udhcp and Etherboot -projects. - -%prep -%setup -n initrd -a1 -a2 -a3 -a4 -a5 - -%build -%make LIBDIR=%{_libdir}/mknbi - -%install -rm -rf $RPM_BUILD_ROOT -%makeinstall tftpbootdir=$RPM_BUILD_ROOT%{_localstatedir}/tftpboot -touch $RPM_BUILD_ROOT%{_sysconfdir}/dhcpd.conf.etherboot-pcimap.include -ln -s %{_localstatedir}/tftpboot $RPM_BUILD_ROOT/tftpboot - -%clean -rm -rf $RPM_BUILD_ROOT - -%post -%{_bindir}/mknbi-set - -%triggerin -- kernel kernel-smp kernel-secure kernel-enterprise -%{_bindir}/mknbi-set - -%files -%defattr(-,root,root) -%config(noreplace) %{_sysconfdir}/mknbi-set.conf -%config(noreplace) %{_sysconfdir}/dhcpd.conf.etherboot.include -%ghost %{_sysconfdir}/dhcpd.conf.etherboot-pcimap.include -%{_bindir}/mknbi-* -%{_bindir}/mkelf-* -%{_bindir}/dis* -%{_bindir}/mkinitrd-net -%{_bindir}/include-modules -%{_libdir}/mknbi -%{_libdir}/mkinitrd-net -%{_mandir}/man*/* -/tftpboot -%{_localstatedir}/tftpboot -%doc README -%doc AUTHORS.busybox LICENSE.busybox -%doc AUTHORS.udhcpc COPYING.udhcpc -%doc COPYING.wlanctl LICENSE.wlanctl THANKS.wlanctl -%doc COPYING.uClibc -%docdir %{_docdir}/mknbi* -%{_docdir}/mknbi* - -%changelog -* Fri Jul 26 2002 Michael Brown <mbrown@fensystems.co.uk> 1.10-1fs -- Support for new binary etherboot.nic-dev-id structure -- Added --kernel option patch from Stew Benedict at MandrakeSoft -- Only try to use sudo if we are not already root - -* Wed Jun 05 2002 Michael Brown <mbrown@fensystems.co.uk> 1.9-1fs -- Modifications to allow DHCP, TFTP and NFS servers to be separate machines. - -* Thu May 30 2002 Michael Brown <mbrown@fensystems.co.uk> 1.8-1fs -- /tftpboot symlinked to /var/lib/tftpboot -- Has ability to be quiet if "quiet" specified on kernel cmdline - -* Sun May 26 2002 Michael Brown <mbrown@fensystems.co.uk> 1.7-1fs -- PCI-ID auto-mapping via dhcpd.conf.etherboot-pcimap.include - -* Fri May 24 2002 Michael Brown <mbrown@fensystems.co.uk> 1.6-1fs -- Bugfixes, migrated /tftpboot to /var/lib/tftpboot - -* Thu May 23 2002 Michael Brown <mbrown@fensystems.co.uk> 1.5-1fs -- Now includes dhcpd.conf.etherboot.include -- Automatically scans for all network modules in the pcimap file - -* Wed May 08 2002 Michael Brown <mbrown@fensystems.co.uk> 1.4-1fs -- Bugfixes: tmpdir selection, linuxrc typos, ifconfig peculiarities - -* Sat May 04 2002 Michael Brown <mbrown@fensystems.co.uk> 1.3-1fs -- During %make, LIBDIR must be set for mknbi -- Added %post scriptlet since %trigger seems not to be being triggered... - -* Sat May 04 2002 Michael Brown <mbrown@fensystems.co.uk> 1.2-1fs -- Added extra sources instead of requiring "make" to download them - -* Sat May 04 2002 Michael Brown <mbrown@fensystems.co.uk> 1.1-1fs -- First attempt at an RPM package - diff --git a/contrib/initrd/mknbi-set b/contrib/initrd/mknbi-set deleted file mode 100755 index e61acac9f..000000000 --- a/contrib/initrd/mknbi-set +++ /dev/null @@ -1,200 +0,0 @@ -#!/usr/bin/perl -w -# -# $Id$ -# Maintains set of NBIs based on currently-installed kernels -# Network card module sets are taken from /etc/mknbi-set.conf - -use strict; -use vars qw($verbosity); - -use constant EB_PCI_DEVICE => 1; - -# Utility function: calculate output id given a kernel file name and -# space-separated list of modules -sub calc_output_id ($$) { - my $kernel = shift; - my $moduleset = shift; - my $kernel_ver = ""; - ( $kernel_ver ) = ( $kernel =~ /vmlinuz-(.*)$/ ); - ( my $output_id = "$moduleset".( $kernel_ver ? ".$kernel_ver" : "" ) ) =~ tr/,/./; - return ( $kernel_ver, $output_id ); -} - -# Utility function: read modules.pcimap-style file -# Add modules to modulesets hash, write out dhcpd.conf fragment -sub read_config_file ($$$$) { - my $configfile = shift; - my $modulesets = shift; - my $dhcpfh = shift; - my $alwaysuse = shift; - - print "Scanning through $configfile for network modules...\n" if $verbosity >= 1; - open CF, $configfile or die "Could not open $configfile: $!\n"; - chomp ( my $tempmodule = `mktemp /tmp/mknbi-set.XXXXXX` ); - chomp ( my $cwd = `pwd` ); chdir '/'; # Modprobe searches the current directory... - print $dhcpfh " \# Generated from $configfile\n"; - while (<CF>) { - chomp; - next if /^[\#;]/ or /^\s*$/; - ( my $module, undef, my $vendor, my $device ) = /^(\S+)(\s+(\S+)\s+(\S+))?/ ; - $modulesets->{$module} = 1 if $alwaysuse; - if ( ! exists $modulesets->{$module} ) { - # Check to see if module is a network module - # Only do this the first time we encounter a module - my @modulepaths = `/sbin/modprobe -l $module.o*` ; - chomp ( my $modulepath = $modulepaths[0] ); - if ( $modulepath ) { - if ( $modulepath =~ /.o.gz$/ ) { - system ( "zcat $modulepath > $tempmodule" ); - } else { - system ( "cp $modulepath $tempmodule" ); - } - $modulesets->{$module} = 0; - foreach ( `nm $tempmodule` ) { - chomp; - $modulesets->{$module} = 1 if /(ether|wlan)/ ; - } - unlink $tempmodule; - } else { - print STDERR "Cannot locate module $module specified in $configfile\n"; - } - } - if ( $modulesets->{$module} ) { - if ( $vendor ) { - print "$module ($vendor,$device) listed in $configfile\n" if $verbosity >= 2; - printf $dhcpfh ( " if option etherboot.nic-dev-id = %02x:%02x:%02x:%02x:%02x { option etherboot.kmod \"%s\"; }\n", - EB_PCI_DEVICE, - ( hex($vendor) >> 8 ) & 0xff, hex($vendor) & 0xff, - ( hex($device) >> 8 ) & 0xff, hex($device) & 0xff, - $module ); - } else { - print "$module (without PCI IDs) listed in $configfile\n" if $verbosity >= 2; - } - } - } - close CF; - print $dhcpfh "\n"; - chdir $cwd; -} - -my $conffile = '/etc/mknbi-set.conf'; -my $mkinitrd_net = 'mkinitrd-net'; -my $mknbi = 'mknbi-linux'; -my $output_dir = '/var/lib/tftpboot'; -my $dhcpfile = '/etc/dhcpd.conf.etherboot-pcimap.include'; -my $use_local; -our $verbosity = 1; -my $modulesets = {}; -my $kernel = ''; -my @kernels = (); - -my $usage="Usage: $0 [-l|--local] [-q] [-v] [-r|--refresh module[,module...]] [--help]"; - -# Parse command-line options -while ( $_ = shift ) { - if ( /-l|--local/ ) { - $conffile = 'mknbi-set.conf'; - $mkinitrd_net = './mkinitrd-net'; - $mknbi = './mknbi-linux --format=nbi --target=linux'; - $output_dir = 'tftpboot'; - $dhcpfile = 'tftpboot/dhcpd.conf.etherboot-pcimap.include'; - $use_local = 1; - } elsif ( /-r|--refresh/ ) { - my $moduleset = shift; - $modulesets->{$moduleset} = 1; - } elsif ( /-k|--kernel/ ) { - $kernel = shift; - } elsif ( /-v|--verbose/ ) { - $verbosity++; - } elsif ( /-q|--quiet/ ) { - $verbosity--; - } elsif ( /--help/ ) { - die "$usage\n". - " -k, --kernel Build NBIs for a particular kernel\n". - " -l, --local Run locally from CVS (for developers only)\n". - " -r, --refresh Refresh NBI for a particular module\n". - " -v, --verbose Be more verbose\n". - " -q, --quiet Be less verbose\n"; - } else { - die "$usage\n"; - } -} - -# Get set of current kernels -if ($kernel) { - @kernels = ( $kernel ); -} else { - @kernels = glob('/boot/vmlinuz*'); -} -die "Could not find any kernels in /boot\n" unless @kernels; - -# If modules have been specified via --refresh, do not scan for modules or rewrite the -# dhcpd.conf fragment file -unless ( %$modulesets ) { - # Write dhcpd.conf fragment file - open my $dhcpfh, ">$dhcpfile" or die "Could not open $dhcpfile for writing: $!\n"; - print $dhcpfh "# Etherboot PCI ID -> Linux kernel module mapping file\n"; - print $dhcpfh "# Generated by mknbi-set on ".(scalar localtime)."\n"; - print $dhcpfh "#\n"; - print $dhcpfh "if substring ( option vendor-class-identifier, 0, 9 ) = \"Etherboot\" {\n"; - print $dhcpfh " if exists etherboot.nic-dev-id {\n"; - print $dhcpfh " \# Legacy nic-dev-id mechanism: there are some DLink DFE538 cards in circulation that\n"; - print $dhcpfh " \# predated the change to the new nic-dev-id binary structure\n"; - print $dhcpfh " if option etherboot.nic-dev-id = \"PCI:1186:1300\" { option etherboot.kmod \"8139too\"; }\n"; - print $dhcpfh "\n"; - - # Get set of network modules to build NBIs for - # Read explicitly-specified module sets from $conffile - read_config_file($conffile, $modulesets, $dhcpfh, 1); - # Obtain list of all network modules from pcimap file - my $pcimap; - foreach ( `/sbin/modprobe -c` ) { - $pcimap = $1 if /^pcimap.*?=(.*)$/; - } - if ( $pcimap ) { - read_config_file($pcimap, $modulesets, $dhcpfh, 0); - } else { - print STDERR "Could not identify pcimap file\n"; - } - # Finish off dhcpd.conf fragment file - print $dhcpfh " }\n}\n"; - close $dhcpfh; -} - -# Build initrd and nbi for each kernel-moduleset combination -foreach my $moduleset ( sort keys %$modulesets ) { - next unless $modulesets->{$moduleset}; # Ignore if value is 0 - print "Building NBIs for module set $moduleset\n" if $verbosity >= 1; - foreach my $kernel ( @kernels ) { - ( my $kernel_ver, my $output_id ) = calc_output_id ( $kernel, $moduleset ); - if ( -l $kernel ) { - # Symbolic link; create matching symlink - my $real_kernel = readlink ( $kernel ); - ( my $real_kernel_ver, my $real_output_id ) = calc_output_id ( $real_kernel, $moduleset ); - print "Symlinking $output_id to $real_output_id\n" if $verbosity >= 2; - my $initrd_file = "$output_dir/initrd-$output_id.img"; - unlink ( $initrd_file ) if -l $initrd_file; - system ( "ln -s initrd-$real_output_id.img $initrd_file" ) == 0 or print STDERR "Could not symlink $initrd_file to initrd-$real_output_id.img: $!\n"; - my $nbi_file = "$output_dir/boot-$output_id.nbi"; - unlink ( $nbi_file ) if -l $nbi_file; - system ( "ln -s boot-$real_output_id.nbi $nbi_file" ) == 0 or print STDERR "Could not symlink $nbi_file to boot-$real_output_id.nbi: $!\n"; - } else { - # Real file: create initrd and nbi - print "Creating initrd and nbi for $output_id\n" if $verbosity >= 2; - ( my $moduleset_spaces = $moduleset ) =~ tr/,/ /; - my $initrd_cmd = "$mkinitrd_net --nolink ". - ( $use_local ? "--local " : "" ). - ( $kernel_ver ? "--kernel $kernel_ver " : "" ). - ( $verbosity >= 2 ? "" : "-q " ). - $moduleset_spaces; - print "$initrd_cmd\n" if $verbosity >= 3; - if ( system ( $initrd_cmd ) == 0 ) { - my $mknbi_cmd = "$mknbi $kernel $output_dir/initrd-$output_id.img > $output_dir/boot-$output_id.nbi"; - print "$mknbi_cmd\n" if $verbosity >= 3; - system ( $mknbi_cmd ) == 0 or print STDERR "mknbi failed: $!\n"; - } else { - print STDERR "$initrd_cmd failed: $!\n"; - } - } - } -} diff --git a/contrib/initrd/mknbi-set.conf b/contrib/initrd/mknbi-set.conf deleted file mode 100644 index f24846ca7..000000000 --- a/contrib/initrd/mknbi-set.conf +++ /dev/null @@ -1,27 +0,0 @@ -# This file specifies the network cards for which NBI images should be built -# Each line contains a list of kernel modules to be used, separated by commas -# You can optionally specify PCI vendor and device IDs that should be automatically -# mapped to this module. -# -# The format is similar to modutils' modules.pcimap file. -# -# Examples: -# RTL8139-based ethernet card -; 8139too -# RTL8139-based ethernet card with PCI IDs vendor=0x1186, device=0x1300 -; 8139too 0x1186 0x1300 -# RTL8139 and Prism2_pci in same image -; 8139too,prism2_pci - -# Some modules do not include the MODULE_DEVICE_TABLE macro, and so end up not -# being listed in the pcimap file. These modules are included here to force -# the creation of corresponding initrds. -prism2_pci 0x1260 0x3873 -prism2_plx 0x1638 0x1100 -prism2_plx 0x16ab 0x1101 -prism2_plx 0x16ab 0x1102 -prism2_plx 0x1385 0x4100 -prism2_plx 0x15e8 0x0130 -prism2_plx 0x16ec 0x3685 -prism2_plx 0x16ab 0x1102 -prism2_plx 0x15e8 0x0131 diff --git a/contrib/initrd/script.c.patch b/contrib/initrd/script.c.patch deleted file mode 100644 index 127b881c7..000000000 --- a/contrib/initrd/script.c.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- script.c.orig Tue Apr 2 23:49:33 2002 -+++ script.c Wed Jun 5 14:17:22 2002 -@@ -179,7 +179,7 @@ - } - if (packet->siaddr) { - envp[j] = malloc(sizeof("siaddr=255.255.255.255")); -- sprintip(envp[j++], "siaddr=", (unsigned char *) &packet->yiaddr); -+ sprintip(envp[j++], "siaddr=", (unsigned char *) &packet->siaddr); - } - if (!(over & FILE_FIELD) && packet->file[0]) { - /* watch out for invalid packets */ diff --git a/contrib/initrd/udhcpc-post b/contrib/initrd/udhcpc-post deleted file mode 100644 index 395d6c591..000000000 --- a/contrib/initrd/udhcpc-post +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -# $Id$ - -if [ "$1" = "deconfig" ]; then - ifconfig $interface 0.0.0.0 up -else if [ "$1" = "bound" ] ; then - echo UDHCPC: I am $ip [$hostname], booting from $serverid - [ -n "$hostname" ] && echo $hostname > /proc/sys/kernel/hostname - [ -n "$broadcast" ] && BROADCAST="broadcast $broadcast" - [ -n "$subnet" ] && NETMASK="netmask $subnet" - ifconfig $interface $ip $BROADCAST $NETMASK - route add default gw $router dev $interface - echo -n > /etc/resolv.conf - for i in $dns; do - echo nameserver $i >> /etc/resolv.conf - done - [ -n "$siaddr" ] || siaddr=$serverid - [ -n "$rootpath" ] || rootpath=$siaddr:/ - echo Mounting root filesystem $rootpath at /sysroot - echo If this appears to hang, check that the server of $rootpath is able to - echo reverse-map my IP address $ip to obtain my hostname $hostname - mount -t nfs -o nolock,rsize=8192,wsize=8192 $rootpath /sysroot - fi -fi - |