diff options
author | nwhitehorn <nwhitehorn@FreeBSD.org> | 2010-10-03 17:50:43 +0000 |
---|---|---|
committer | nwhitehorn <nwhitehorn@FreeBSD.org> | 2010-10-03 17:50:43 +0000 |
commit | c1b38741bcb69ccf0d03e8e7e1c37f17ecb6af1d (patch) | |
tree | 2ec2b73367e08fdd8d4fa82615fe3b5029a6936f | |
parent | 3948e2de3651703f691b85cdfda90966bf8c8a53 (diff) | |
download | FreeBSD-src-c1b38741bcb69ccf0d03e8e7e1c37f17ecb6af1d.zip FreeBSD-src-c1b38741bcb69ccf0d03e8e7e1c37f17ecb6af1d.tar.gz |
Extend sysinstall to handle powerpc64 by teaching it that powerpc64 has
a lib32 distribution, and that the GENERIC kernel is named GENERIC64.
More modifications will be required later for installations from ftp due
to the shared platform name with 32-bit powerpc, but this is enough for
snapshot CDs to work.
Reviewed by: brucec
-rw-r--r-- | usr.sbin/sysinstall/dist.c | 4 | ||||
-rw-r--r-- | usr.sbin/sysinstall/dist.h | 8 | ||||
-rw-r--r-- | usr.sbin/sysinstall/install.c | 2 | ||||
-rw-r--r-- | usr.sbin/sysinstall/menus.c | 2 | ||||
-rw-r--r-- | usr.sbin/sysinstall/sysinstall.8 | 2 |
5 files changed, 12 insertions, 6 deletions
diff --git a/usr.sbin/sysinstall/dist.c b/usr.sbin/sysinstall/dist.c index 8bd62d1..716a054 100644 --- a/usr.sbin/sysinstall/dist.c +++ b/usr.sbin/sysinstall/dist.c @@ -87,7 +87,7 @@ static Distribution DistTable[] = { DTE_TARBALL("proflibs", &Dists, PROFLIBS, "/"), DTE_TARBALL("dict", &Dists, DICT, "/"), DTE_TARBALL("info", &Dists, INFO, "/"), -#ifdef __amd64__ +#if defined(__amd64__) || defined(__powerpc64__) DTE_TARBALL("lib32", &Dists, LIB32, "/"), #endif DTE_SUBDIST("src", &Dists, SRC, SrcDistTable), @@ -98,7 +98,7 @@ static Distribution DistTable[] = { /* The kernel distributions */ static Distribution KernelDistTable[] = { - DTE_TARBALL("GENERIC", &KernelDists, KERNEL_GENERIC, "/boot"), + DTE_TARBALL(GENERIC_KERNEL_NAME, &KernelDists, KERNEL_GENERIC, "/boot"), DTE_END, }; diff --git a/usr.sbin/sysinstall/dist.h b/usr.sbin/sysinstall/dist.h index 59643ee..0fd004f 100644 --- a/usr.sbin/sysinstall/dist.h +++ b/usr.sbin/sysinstall/dist.h @@ -16,7 +16,7 @@ #define DIST_CATPAGES 0x00200 #define DIST_PORTS 0x00400 #define DIST_LOCAL 0x00800 -#ifdef __amd64__ +#if defined(__amd64__) || defined(__powerpc64__) #define DIST_LIB32 0x01000 #endif #define DIST_KERNEL 0x02000 @@ -75,6 +75,12 @@ #define DIST_KERNEL_SMP 0x00002 #define DIST_KERNEL_ALL 0xFFFFF +#ifdef __powerpc64__ +#define GENERIC_KERNEL_NAME "GENERIC64" +#else +#define GENERIC_KERNEL_NAME "GENERIC" +#endif + /* Canned distribution sets */ #define _DIST_USER \ diff --git a/usr.sbin/sysinstall/install.c b/usr.sbin/sysinstall/install.c index 07a16d1..4bf67ea 100644 --- a/usr.sbin/sysinstall/install.c +++ b/usr.sbin/sysinstall/install.c @@ -979,7 +979,7 @@ installFixupKernel(dialogMenuItem *self, int dists) * already and the /boot/kernel we remove is empty. */ vsystem("rm -rf /boot/kernel"); - vsystem("mv /boot/GENERIC /boot/kernel"); + vsystem("mv /boot/" GENERIC_KERNEL_NAME " /boot/kernel"); } return DITEM_SUCCESS | DITEM_RESTORE; } diff --git a/usr.sbin/sysinstall/menus.c b/usr.sbin/sysinstall/menus.c index 58a9950..2015978 100644 --- a/usr.sbin/sysinstall/menus.c +++ b/usr.sbin/sysinstall/menus.c @@ -993,7 +993,7 @@ DMenu MenuSubDistributions = { dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_GAMES }, { " info", "GNU info files", dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_INFO }, -#ifdef __amd64__ +#if defined(__amd64__) || defined(__powerpc64__) { " lib32", "32-bit runtime compatibility libraries", dmenuFlagCheck, dmenuSetFlag, NULL, &Dists, '[', 'X', ']', DIST_LIB32 }, #endif diff --git a/usr.sbin/sysinstall/sysinstall.8 b/usr.sbin/sysinstall/sysinstall.8 index b5c714b..64df1bb 100644 --- a/usr.sbin/sysinstall/sysinstall.8 +++ b/usr.sbin/sysinstall/sysinstall.8 @@ -428,7 +428,7 @@ Dictionary information (for tools like spell). .It Li info GNU info files and other extra docs. .It Li lib32 -(amd64 only) +(amd64 and powerpc64 only) 32-bit runtime compatibility libraries. .It Li ports The ports collection. |