68 lines
2.5 KiB
Diff
68 lines
2.5 KiB
Diff
|
--- mac-fdisk-0.1.orig/fdisklabel.h.old 1997-01-14 20:34:13.000000000 +0000
|
||
|
+++ mac-fdisk-0.1.orig/fdisklabel.h 2018-06-01 06:13:09.065722112 +0000
|
||
|
@@ -35,27 +35,23 @@
|
||
|
#define BSD_MAXPARTITIONS 8
|
||
|
#define BSD_LINUX_BOOTDIR "/usr/ucb/mdec"
|
||
|
|
||
|
-#if defined (i386)
|
||
|
+/* Thanks, util-linux! */
|
||
|
+#if defined (i386) || defined (__sparc__) || defined (__arm__) || defined (__mips__) || defined (__s390__) || defined (__sh__) || defined(__x86_64__)
|
||
|
#define BSD_LABELSECTOR 1
|
||
|
#define BSD_LABELOFFSET 0
|
||
|
-#define BSD_BBSIZE 8192 /* size of boot area, with label */
|
||
|
-#define BSD_SBSIZE 8192 /* max size of fs superblock */
|
||
|
-#elif defined (__alpha__)
|
||
|
-#error LABELSECTOR, LABELOFFSET, BBSIZE & SBSIZE are undefined for __alpha__
|
||
|
-#define BSD_LABELSECTOR 0
|
||
|
-#define BSD_LABELOFFSET 0
|
||
|
-#define BSD_BBSIZE 0
|
||
|
-#define BSD_SBSIZE 0
|
||
|
-#elif defined (__powerpc__)
|
||
|
-/* LABELSECTOR, LABELOFFSET, BBSIZE & SBSIZE are undefined for __powerpc__ */
|
||
|
+#elif defined (__alpha__) || defined (__powerpc__) || defined (__ia64__) || defined (__hppa__)
|
||
|
#define BSD_LABELSECTOR 0
|
||
|
+#define BSD_LABELOFFSET 64
|
||
|
+#elif defined (__s390__) || defined (__s390x__)
|
||
|
+#define BSD_LABELSECTOR 1
|
||
|
#define BSD_LABELOFFSET 0
|
||
|
-#define BSD_BBSIZE 0
|
||
|
-#define BSD_SBSIZE 0
|
||
|
#else
|
||
|
#error unknown architecture
|
||
|
#endif
|
||
|
|
||
|
+#define BSD_BBSIZE 8192 /* size of boot area, with label */
|
||
|
+#define BSD_SBSIZE 8192 /* max size of fs superblock */
|
||
|
+
|
||
|
struct disklabel {
|
||
|
u_long d_magic; /* the magic number */
|
||
|
short d_type; /* drive type */
|
||
|
--- mac-fdisk-0.1.orig/fdisklabel.c.old 2018-06-01 06:19:35.113347714 +0000
|
||
|
+++ mac-fdisk-0.1.orig/fdisklabel.c 2018-06-01 06:20:36.734576024 +0000
|
||
|
@@ -82,10 +82,8 @@
|
||
|
|
||
|
static struct disklabel bsd_dlabel;
|
||
|
static char buffer[BSD_BBSIZE];
|
||
|
-#if defined (i386)
|
||
|
static struct partition *bsd_part;
|
||
|
static int bsd_part_index;
|
||
|
-#endif
|
||
|
|
||
|
void
|
||
|
bmenu (void)
|
||
|
@@ -373,10 +371,11 @@
|
||
|
while (1)
|
||
|
if ((c = tolower (read_char ("Do you want to create a disklabel? (y/n) "))) == 'y')
|
||
|
{
|
||
|
-#if defined (i386)
|
||
|
- if (bsd_initlabel (bsd_part, &bsd_dlabel, bsd_part_index) == 1)
|
||
|
-#elif defined (__alpha__) || defined (__powerpc__) || defined (__mc68000__)
|
||
|
+#if defined (__alpha__) || defined (__powerpc__) || defined (__hppa__) || \
|
||
|
+ defined (__s390__) || defined (__s390x__) || defined(__mc68000__)
|
||
|
if (bsd_initlabel (NULL, &bsd_dlabel, 0) == 1)
|
||
|
+#else
|
||
|
+ if (bsd_initlabel (bsd_part, &bsd_dlabel, bsd_part_index) == 1)
|
||
|
#endif
|
||
|
{
|
||
|
bsd_print_disklabel (1);
|