]>
Commit | Line | Data |
---|---|---|
6d099807 | 1 | #! /bin/sh |
2 | # | |
3 | # Copyright (C) 2002, 2005 Free Software Foundation, Inc. | |
4 | # | |
5 | # This gensymlist.sh is free software; the author | |
6 | # gives unlimited permission to copy and/or distribute it, | |
7 | # with or without modifications, as long as this notice is preserved. | |
8 | # | |
9 | # This program is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without | |
11 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A | |
12 | # PARTICULAR PURPOSE. | |
13 | ||
14 | cat <<EOF | |
15 | /* This file is automatically generated by gensymlist.sh. DO NOT EDIT! */ | |
16 | /* | |
17 | * GRUB -- GRand Unified Bootloader | |
18 | * Copyright (C) 2002, 2005 Free Software Foundation, Inc. | |
19 | * | |
20 | * GRUB is free software; you can redistribute it and/or modify | |
21 | * it under the terms of the GNU General Public License as published by | |
22 | * the Free Software Foundation; either version 2 of the License, or | |
23 | * (at your option) any later version. | |
24 | * | |
25 | * This program is distributed in the hope that it will be useful, | |
26 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
27 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
28 | * GNU General Public License for more details. | |
29 | * | |
30 | * You should have received a copy of the GNU General Public License | |
31 | * along with GRUB; if not, write to the Free Software | |
32 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | |
33 | */ | |
34 | ||
35 | #include <grub_modules_init.h> | |
36 | ||
37 | EOF | |
38 | ||
39 | cat <<EOF | |
40 | void | |
41 | grub_init_all (void) | |
42 | { | |
43 | EOF | |
44 | ( | |
45 | cat grub_modules_init.lst | |
46 | for i in $*; do | |
47 | echo $i':' | |
48 | done | |
49 | ) | sort -r | uniq -d -W1 -t':' | sed -n '/GRUB_MOD_INIT *([a-zA-Z0-9_]*)/{s/.*GRUB_MOD_INIT *(\([a-zA-Z0-9_]*\)).*/ grub_\1_init ();/;p;}' | |
50 | ||
51 | cat <<EOF | |
52 | } | |
53 | EOF | |
54 | ||
55 | cat <<EOF | |
56 | void | |
57 | grub_fini_all (void) | |
58 | { | |
59 | EOF | |
60 | ||
61 | ( | |
62 | cat grub_modules_init.lst | |
63 | for i in $*; do | |
64 | echo $i':' | |
65 | done | |
66 | ) | sort -r | uniq -d -W1 -t':' | sed -n '/GRUB_MOD_INIT *([a-zA-Z0-9_]*)/{s/.*GRUB_MOD_INIT *(\([a-zA-Z0-9_]*\)).*/ grub_\1_fini ();/;p;}' | |
67 | ||
68 | cat <<EOF | |
69 | } | |
70 | EOF |