2008-09-25 Robert Millan <rmh@aybabtu.com>

* conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Remove
        `util/i386/get_disk_name.c'.
        * conf/i386-efi.rmk: Likewise.
        * conf/x86_64-efi.rmk: Likewise.
        * conf/i386-coreboot.rmk: Likewise.
        * conf/i386-ieee1275.rmk: Likewise.
        * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Remove
        `util/ieee1275/get_disk_name.c'.
        * include/grub/util/misc.h (grub_util_get_disk_name): Remove.
        * util/ieee1275/get_disk_name.c: Remove file.
        * util/i386/get_disk_name.c: Remove file.
        * util/grub-mkdevicemap.c (make_device_map): Back to hardcoding
        "hd%d" for device.map entries, rather than using
        grub_util_get_disk_name().
This commit is contained in:
robertmh 2008-09-25 14:15:24 +00:00
parent 81a06771bf
commit d2a367b86f
11 changed files with 29 additions and 129 deletions

View file

@ -450,11 +450,8 @@ make_device_map (const char *device_map, int floppy_disks)
if (realpath (discn, name))
{
char *p;
strcat (name, "/disc");
p = grub_util_get_disk_name (num_hd, name);
fprintf (fp, "(%s)\t%s\n", p, name);
free (p);
fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
}
num_hd++;
@ -472,10 +469,7 @@ make_device_map (const char *device_map, int floppy_disks)
get_ide_disk_name (name, i);
if (check_device (name))
{
char *p;
p = grub_util_get_disk_name (num_hd, name);
fprintf (fp, "(%s)\t%s\n", p, name);
free (p);
fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
num_hd++;
}
}
@ -505,10 +499,7 @@ make_device_map (const char *device_map, int floppy_disks)
get_ataraid_disk_name (name, i);
if (check_device (name))
{
char *p;
p = grub_util_get_disk_name (num_hd, name);
fprintf (fp, "(%s)\t%s\n", p, name);
free (p);
fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
num_hd++;
}
}
@ -538,10 +529,7 @@ make_device_map (const char *device_map, int floppy_disks)
get_scsi_disk_name (name, i);
if (check_device (name))
{
char *p;
p = grub_util_get_disk_name (num_hd, name);
fprintf (fp, "(%s)\t%s\n", p, name);
free (p);
fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
num_hd++;
}
}
@ -564,10 +552,7 @@ make_device_map (const char *device_map, int floppy_disks)
get_dac960_disk_name (name, controller, drive);
if (check_device (name))
{
char *p;
p = grub_util_get_disk_name (num_hd, name);
fprintf (fp, "(%s)\t%s\n", p, name);
free (p);
fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
num_hd++;
}
}
@ -633,10 +618,7 @@ make_device_map (const char *device_map, int floppy_disks)
get_i2o_disk_name (name, unit);
if (check_device (name))
{
char *p;
p = grub_util_get_disk_name (num_hd, name);
fprintf (fp, "(%s)\t%s\n", p, name);
free (p);
fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
num_hd++;
}
}

View file

@ -1,31 +0,0 @@
/* get_disk_name.c */
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2007 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* GRUB is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
#include <grub/util/misc.h>
char *
grub_util_get_disk_name (int disk, char *name __attribute__ ((unused)))
{
char *p;
p = xmalloc (16);
sprintf (p, "hd%d", disk);
return p;
}

View file

@ -1,61 +0,0 @@
/* get_disk_name.c */
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2007 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* GRUB is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
#include <config.h>
#include <stdio.h>
#include <grub/util/misc.h>
char *
grub_util_get_disk_name (int disk __attribute__ ((unused)), char *name)
{
int p[2];
char *line = NULL;
size_t zero = 0;
int len;
pipe (p);
switch (fork ())
{
case -1:
perror ("fork");
exit (1);
case 0:
close (1);
dup (p[1]);
close (p[0]);
close (p[1]);
execlp ("ofpathname", "ofpathname", "-a", name, NULL);
perror ("execlp");
default:
close (0);
dup (p[0]);
close (p[0]);
close (p[1]);
}
len = getline (&line, &zero, stdin);
if (len < 2)
grub_util_error ("ofpathname didn't print a meaningful alias name");
line[len - 1] = '\0';
return line;
}