mirror of https://github.com/xemu-project/xemu.git
Add machine type aliases
Add an 'alias' field to QEMUMachine and display it in the output of 'qemu -M ?' with an '(aliased to foo)' suffix. Aliases can change targets in newer versions of qemu, so management tools may choose canonicalize machine types to ensure that if a user chooses an alias, that the actual machine type used will remain compatible in future. This is intended to mimic a symlink to a machine description file. Signed-off-by: Mark McLoughlin <markmc@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
c1d6eed7e8
commit
3f6599e675
|
@ -14,6 +14,7 @@ typedef void QEMUMachineInitFunc(ram_addr_t ram_size,
|
||||||
|
|
||||||
typedef struct QEMUMachine {
|
typedef struct QEMUMachine {
|
||||||
const char *name;
|
const char *name;
|
||||||
|
const char *alias;
|
||||||
const char *desc;
|
const char *desc;
|
||||||
QEMUMachineInitFunc *init;
|
QEMUMachineInitFunc *init;
|
||||||
int use_scsi;
|
int use_scsi;
|
||||||
|
|
5
vl.c
5
vl.c
|
@ -3359,6 +3359,8 @@ static QEMUMachine *find_machine(const char *name)
|
||||||
for(m = first_machine; m != NULL; m = m->next) {
|
for(m = first_machine; m != NULL; m = m->next) {
|
||||||
if (!strcmp(m->name, name))
|
if (!strcmp(m->name, name))
|
||||||
return m;
|
return m;
|
||||||
|
if (m->alias && !strcmp(m->alias, name))
|
||||||
|
return m;
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -4995,6 +4997,9 @@ int main(int argc, char **argv, char **envp)
|
||||||
QEMUMachine *m;
|
QEMUMachine *m;
|
||||||
printf("Supported machines are:\n");
|
printf("Supported machines are:\n");
|
||||||
for(m = first_machine; m != NULL; m = m->next) {
|
for(m = first_machine; m != NULL; m = m->next) {
|
||||||
|
if (m->alias)
|
||||||
|
printf("%-10s %s (alias of %s)\n",
|
||||||
|
m->alias, m->desc, m->name);
|
||||||
printf("%-10s %s%s\n",
|
printf("%-10s %s%s\n",
|
||||||
m->name, m->desc,
|
m->name, m->desc,
|
||||||
m->is_default ? " (default)" : "");
|
m->is_default ? " (default)" : "");
|
||||||
|
|
Loading…
Reference in New Issue