Date: Fri, 1 Jul 2011 18:31:59 +0000 (UTC) From: Marius Strobl <marius@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r223712 - in head/sys/boot: common userboot/userboot Message-ID: <201107011831.p61IVx62002080@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: marius Date: Fri Jul 1 18:31:59 2011 New Revision: 223712 URL: http://svn.freebsd.org/changeset/base/223712 Log: Fix r223695 to compile on architectures which don't use the MBR scheme; wrap the MBR support in the common part of the loader in #ifdef's and enable it only for userboot for now. Modified: head/sys/boot/common/disk.c head/sys/boot/userboot/userboot/Makefile Modified: head/sys/boot/common/disk.c ============================================================================== --- head/sys/boot/common/disk.c Fri Jul 1 12:30:34 2011 (r223711) +++ head/sys/boot/common/disk.c Fri Jul 1 18:31:59 2011 (r223712) @@ -93,6 +93,8 @@ static uuid_t ms_basic_data = GPT_ENT_TY #endif +#if defined(LOADER_GPT_SUPPORT) || defined(LOADER_MBR_SUPPORT) + /* Given a size in 512 byte sectors, convert it to a human-readable number. */ static char * display_size(uint64_t size) @@ -116,6 +118,10 @@ display_size(uint64_t size) return (buf); } +#endif + +#ifdef LOADER_MBR_SUPPORT + static void disk_checkextended(struct disk_devdesc *dev, struct dos_partition *slicetab, int slicenum, int *nslicesp) @@ -469,7 +475,7 @@ disk_printslice(struct disk_devdesc *dev pager_output(line); } -int +static int disk_printmbr(struct disk_devdesc *dev, char *prefix, int verbose) { struct dos_partition *slicetab; @@ -488,6 +494,8 @@ disk_printmbr(struct disk_devdesc *dev, return (0); } +#endif + #ifdef LOADER_GPT_SUPPORT static int @@ -630,7 +638,7 @@ disk_bestgpt(struct gpt_part *gpt, int n return (prefpart); } -int +static int disk_opengpt(struct disk_devdesc *dev) { struct gpt_part *gpt = NULL, *gp; @@ -759,6 +767,7 @@ disk_open(struct disk_devdesc *dev) { int rc; + rc = 0; /* * While we are reading disk metadata, make sure we do it relative * to the start of the disk @@ -769,7 +778,9 @@ disk_open(struct disk_devdesc *dev) rc = disk_opengpt(dev); if (rc) #endif +#ifdef LOADER_MBR_SUPPORT rc = disk_openmbr(dev); +#endif return (rc); } @@ -777,12 +788,12 @@ disk_open(struct disk_devdesc *dev) void disk_print(struct disk_devdesc *dev, char *prefix, int verbose) { - int rc; #ifdef LOADER_GPT_SUPPORT - rc = disk_printgpt(dev, prefix, verbose); - if (rc == 0) + if (disk_printgpt(dev, prefix, verbose) == 0) return; #endif +#ifdef LOADER_MBR_SUPPORT disk_printmbr(dev, prefix, verbose); +#endif } Modified: head/sys/boot/userboot/userboot/Makefile ============================================================================== --- head/sys/boot/userboot/userboot/Makefile Fri Jul 1 12:30:34 2011 (r223711) +++ head/sys/boot/userboot/userboot/Makefile Fri Jul 1 18:31:59 2011 (r223712) @@ -32,7 +32,7 @@ CFLAGS+= -I${.CURDIR}/../../common CFLAGS+= -I${.CURDIR}/../../.. CFLAGS+= -I${.CURDIR}/../../../../lib/libstand CFLAGS+= -ffreestanding -I. -CFLAGS+= -DLOADER_GPT_SUPPORT +CFLAGS+= -DLOADER_GPT_SUPPORT -DLOADER_MBR_SUPPORT LDFLAGS+= -nostdlib -Wl,-Bsymbolic
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201107011831.p61IVx62002080>