summaryrefslogtreecommitdiffstats
path: root/contrib/initrd/include-modules
diff options
context:
space:
mode:
authorMarty Connor2010-01-17 03:47:39 +0100
committerMarty Connor2010-01-17 03:47:39 +0100
commit330abebddf67ab27998f64070f27d5874cbc7b06 (patch)
tree08f5954725930ee9c38b0afab4cb9a30c71ce7e3 /contrib/initrd/include-modules
parent[sanboot] Prevent leaking a stack reference for "keep-san" AoE (diff)
downloadipxe-330abebddf67ab27998f64070f27d5874cbc7b06.tar.gz
ipxe-330abebddf67ab27998f64070f27d5874cbc7b06.tar.xz
ipxe-330abebddf67ab27998f64070f27d5874cbc7b06.zip
[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/include-modules')
-rwxr-xr-xcontrib/initrd/include-modules63
1 files changed, 0 insertions, 63 deletions
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";
-}