gummiboot/sd-boot/systemd-boot: rename galore

What used to be gummiboot, was renamed sd-boot when it was merged into
systemd. Let's try to be a bit more consistent with the rest of systemd
and rename it again as follows:

The EFI bootloader is now called 'systemd-bootx64.efi', and its sources are in
'src/boot/efi/'. The drop-in directory where bootctl will find EFI loaders
is now /usr/lib/systemd/boot/efi/.
This commit is contained in:
Tom Gundersen
2015-02-18 15:23:23 +01:00
parent 8d4efa540a
commit e7dd673d1e
18 changed files with 68 additions and 68 deletions
+1 -1
View File
@@ -46,7 +46,7 @@
/mtd_probe /mtd_probe
/networkctl /networkctl
/linuxx64.efi.stub /linuxx64.efi.stub
/sd-bootx64.efi /systemd-bootx64.efi
/test-efi-disk.img /test-efi-disk.img
/scsi_id /scsi_id
/systemadm /systemadm
+36 -36
View File
@@ -111,7 +111,7 @@ catalogdir=$(prefix)/lib/systemd/catalog
kernelinstalldir = $(prefix)/lib/kernel/install.d kernelinstalldir = $(prefix)/lib/kernel/install.d
factory_etcdir = $(prefix)/share/factory/etc factory_etcdir = $(prefix)/share/factory/etc
factory_pamdir = $(prefix)/share/factory/etc/pam.d factory_pamdir = $(prefix)/share/factory/etc/pam.d
sd_bootlibdir = $(prefix)/lib/systemd/sd-boot bootlibdir = $(prefix)/lib/systemd/boot/efi
# And these are the special ones for / # And these are the special ones for /
rootprefix=@rootprefix@ rootprefix=@rootprefix@
@@ -2484,7 +2484,7 @@ bootctl_SOURCES = \
bootctl_CPPFLAGS = \ bootctl_CPPFLAGS = \
$(AM_CPPFLAGS) \ $(AM_CPPFLAGS) \
-DEFI_MACHINE_TYPE_NAME=\"$(EFI_MACHINE_TYPE_NAME)\" \ -DEFI_MACHINE_TYPE_NAME=\"$(EFI_MACHINE_TYPE_NAME)\" \
-DSD_BOOTLIBDIR=\"$(sd_bootlibdir)\" -DBOOTLIBDIR=\"$(bootlibdir)\"
bootctl_CFLAGS = \ bootctl_CFLAGS = \
$(AM_CFLAGS) \ $(AM_CFLAGS) \
@@ -2548,63 +2548,63 @@ efi_ldflags = \
$(EFI_LDS_DIR)/crt0-efi-$(EFI_ARCH).o $(EFI_LDS_DIR)/crt0-efi-$(EFI_ARCH).o
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
sd_boot_headers = \ systemd_boot_headers = \
src/sd-boot/util.h \ src/boot/efi/util.h \
src/sd-boot/console.h \ src/boot/efi/console.h \
src/sd-boot/graphics.h \ src/boot/efi/graphics.h \
src/sd-boot/pefile.h src/boot/efi/pefile.h
sd_boot_sources = \ systemd_boot_sources = \
src/sd-boot/util.c \ src/boot/efi/util.c \
src/sd-boot/console.c \ src/boot/efi/console.c \
src/sd-boot/graphics.c \ src/boot/efi/graphics.c \
src/sd-boot/pefile.c \ src/boot/efi/pefile.c \
src/sd-boot/sd-boot.c src/boot/efi/boot.c
sd_boot_objects = $(addprefix $(top_builddir)/,$(sd_boot_sources:.c=.o)) systemd_boot_objects = $(addprefix $(top_builddir)/,$(systemd_boot_sources:.c=.o))
sd_boot_solib = $(top_builddir)/src/sd-boot/sd_boot.so systemd_boot_solib = $(top_builddir)/src/boot/efi/systemd_boot.so
sd_boot = sd-boot$(EFI_MACHINE_TYPE_NAME).efi systemd_boot = systemd-boot$(EFI_MACHINE_TYPE_NAME).efi
sd_bootlib_DATA = $(sd_boot) bootlib_DATA = $(systemd_boot)
CLEANFILES += $(sd_boot_objects) $(sd_boot_solib) $(sd_boot) CLEANFILES += $(systemd_boot_objects) $(systemd_boot_solib) $(systemd_boot)
EXTRA_DIST += $(sd_boot_sources) $(sd_boot_headers) EXTRA_DIST += $(systemd_boot_sources) $(systemd_boot_headers)
$(top_builddir)/src/sd-boot/%.o: $(top_srcdir)/src/sd-boot/%.c $(addprefix $(top_srcdir)/,$(sd_boot_headers)) $(top_builddir)/src/boot/efi/%.o: $(top_srcdir)/src/boot/efi/%.c $(addprefix $(top_srcdir)/,$(systemd_boot_headers))
@$(MKDIR_P) $(top_builddir)/src/sd-boot/ @$(MKDIR_P) $(top_builddir)/src/boot/efi/
$(AM_V_CC)$(EFI_CC) $(efi_cppflags) $(efi_cflags) -c $< -o $@ $(AM_V_CC)$(EFI_CC) $(efi_cppflags) $(efi_cflags) -c $< -o $@
$(sd_boot_solib): $(sd_boot_objects) $(systemd_boot_solib): $(systemd_boot_objects)
$(AM_V_CCLD)$(LD) $(efi_ldflags) $(sd_boot_objects) \ $(AM_V_CCLD)$(LD) $(efi_ldflags) $(systemd_boot_objects) \
-o $@ -lefi -lgnuefi $(shell $(CC) -print-libgcc-file-name); \ -o $@ -lefi -lgnuefi $(shell $(CC) -print-libgcc-file-name); \
nm -D -u $@ | grep ' U ' && exit 1 || : nm -D -u $@ | grep ' U ' && exit 1 || :
$(sd_boot): $(sd_boot_solib) $(systemd_boot): $(systemd_boot_solib)
$(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \ $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \
-j .dynsym -j .rel -j .rela -j .reloc \ -j .dynsym -j .rel -j .rela -j .reloc \
--target=efi-app-$(EFI_ARCH) $< $@ --target=efi-app-$(EFI_ARCH) $< $@
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
stub_headers = \ stub_headers = \
src/sd-boot/util.h \ src/boot/efi/util.h \
src/sd-boot/pefile.h \ src/boot/efi/pefile.h \
src/sd-boot/linux.h src/boot/efi/linux.h
stub_sources = \ stub_sources = \
src/sd-boot/util.c \ src/boot/efi/util.c \
src/sd-boot/pefile.c \ src/boot/efi/pefile.c \
src/sd-boot/linux.c \ src/boot/efi/linux.c \
src/sd-boot/stub.c src/boot/efi/stub.c
stub_objects = $(addprefix $(top_builddir)/,$(stub_sources:.c=.o)) stub_objects = $(addprefix $(top_builddir)/,$(stub_sources:.c=.o))
stub_solib = $(top_builddir)/src/sd-boot/stub.so stub_solib = $(top_builddir)/src/boot/efi/stub.so
stub = linux$(EFI_MACHINE_TYPE_NAME).efi.stub stub = linux$(EFI_MACHINE_TYPE_NAME).efi.stub
sd_bootlib_DATA += $(stub) bootlib_DATA += $(stub)
CLEANFILES += $(stub_objects) $(stub_solib) $(stub) CLEANFILES += $(stub_objects) $(stub_solib) $(stub)
EXTRA_DIST += $(stub_sources) $(stub_headers) EXTRA_DIST += $(stub_sources) $(stub_headers)
$(top_builddir)/src/sd-boot/%.o: $(top_srcdir)/src/sd-boot/%.c $(addprefix $(top_srcdir)/,$(stub_headers)) $(top_builddir)/src/boot/efi/%.o: $(top_srcdir)/src/boot/efi/%.c $(addprefix $(top_srcdir)/,$(stub_headers))
@$(MKDIR_P) $(top_builddir)/src/sd-boot/ @$(MKDIR_P) $(top_builddir)/src/boot/efi/
$(AM_V_CC)$(EFI_CC) $(efi_cppflags) $(efi_cflags) -c $< -o $@ $(AM_V_CC)$(EFI_CC) $(efi_cppflags) $(efi_cflags) -c $< -o $@
$(stub_solib): $(stub_objects) $(stub_solib): $(stub_objects)
@@ -2621,7 +2621,7 @@ $(stub): $(stub_solib)
CLEANFILES += test-efi-disk.img CLEANFILES += test-efi-disk.img
EXTRA_DIST += test/test-efi-create-disk.sh EXTRA_DIST += test/test-efi-create-disk.sh
test-efi-disk.img: $(sd_boot) $(stub) test/test-efi-create-disk.sh test-efi-disk.img: $(systemd_boot) $(stub) test/test-efi-create-disk.sh
$(AM_V_GEN)test/test-efi-create-disk.sh $(AM_V_GEN)test/test-efi-create-disk.sh
test-efi: test-efi-disk.img test-efi: test-efi-disk.img
+9 -9
View File
@@ -72,22 +72,22 @@
all current EFI boot variables.</para> all current EFI boot variables.</para>
<para><command>bootctl update</command> updates all installed <para><command>bootctl update</command> updates all installed
versions of sd-boot, if the current version is newer than the versions of systemd-boot, if the current version is newer than the
version installed in the EFI system partition. This also includes version installed in the EFI system partition. This also includes
the EFI default/fallback loader at /EFI/Boot/boot*.efi. An the EFI default/fallback loader at /EFI/Boot/boot*.efi. A
sd-boot entry in the EFI boot variables is created, if there systemd-boot entry in the EFI boot variables is created, if there
is no current entry. A created entry will be added to the end of is no current entry. The created entry will be added to the end of
the boot order list.</para> the boot order list.</para>
<para><command>bootctl install</command> installs sd-boot into <para><command>bootctl install</command> installs systemd-boot into
the EFI system partition. A copy of sd-boot will be stored as the EFI system partition. A copy of systemd-boot will be stored as
the EFI default/fallback loader at /EFI/Boot/boot*.efi. An sd-boot the EFI default/fallback loader at /EFI/Boot/boot*.efi. A systemd-boot
entry in the EFI boot variables is created and added to the top entry in the EFI boot variables is created and added to the top
of the boot order list.</para> of the boot order list.</para>
<para><command>bootctl remove</command> removes all installed <para><command>bootctl remove</command> removes all installed
versions of sd-boot from the EFI system partition, and removes versions of systemd-boot from the EFI system partition, and removes
sd-boot from the EFI boot variables.</para> systemd-boot from the EFI boot variables.</para>
<para>If no command is passed <command>status</command> is <para>If no command is passed <command>status</command> is
implied.</para> implied.</para>
+17 -17
View File
@@ -215,7 +215,7 @@ fail:
return r; return r;
} }
/* search for "#### LoaderInfo: sd-boot 218 ####" string inside the binary */ /* search for "#### LoaderInfo: systemd-boot 218 ####" string inside the binary */
static int get_file_version(FILE *f, char **v) { static int get_file_version(FILE *f, char **v) {
struct stat st; struct stat st;
char *buf; char *buf;
@@ -351,7 +351,7 @@ static int status_binaries(const char *esp_path, sd_id128_t partition) {
r = enumerate_binaries(esp_path, "EFI/systemd", NULL); r = enumerate_binaries(esp_path, "EFI/systemd", NULL);
if (r == 0) if (r == 0)
fprintf(stderr, "sd-boot not installed in ESP.\n"); fprintf(stderr, "systemd-boot not installed in ESP.\n");
else if (r < 0) else if (r < 0)
return r; return r;
@@ -710,7 +710,7 @@ static int copy_one_file(const char *esp_path, const char *name, bool force) {
_cleanup_free_ char *v = NULL; _cleanup_free_ char *v = NULL;
int r; int r;
if (asprintf(&p, SD_BOOTLIBDIR "/%s", name) < 0) { if (asprintf(&p, BOOTLIBDIR "/%s", name) < 0) {
fprintf(stderr, "Out of memory.\n"); fprintf(stderr, "Out of memory.\n");
return -ENOMEM; return -ENOMEM;
} }
@@ -722,11 +722,11 @@ static int copy_one_file(const char *esp_path, const char *name, bool force) {
r = copy_file(p, q, force); r = copy_file(p, q, force);
if (startswith(name, "sd-boot")) { if (startswith(name, "systemd-boot")) {
int k; int k;
/* Create the EFI default boot loader name (specified for removable devices) */ /* Create the EFI default boot loader name (specified for removable devices) */
if (asprintf(&v, "%s/EFI/Boot/BOOT%s", esp_path, name + strlen("sd-boot")) < 0) { if (asprintf(&v, "%s/EFI/Boot/BOOT%s", esp_path, name + strlen("systemd-boot")) < 0) {
fprintf(stderr, "Out of memory.\n"); fprintf(stderr, "Out of memory.\n");
return -ENOMEM; return -ENOMEM;
} }
@@ -756,9 +756,9 @@ static int install_binaries(const char *esp_path, bool force) {
return r; return r;
} }
d = opendir(SD_BOOTLIBDIR); d = opendir(BOOTLIBDIR);
if (!d) { if (!d) {
fprintf(stderr, "Failed to open "SD_BOOTLIBDIR": %m\n"); fprintf(stderr, "Failed to open "BOOTLIBDIR": %m\n");
return -errno; return -errno;
} }
@@ -814,7 +814,7 @@ static int find_slot(sd_id128_t uuid, const char *path, uint16_t *id) {
if (n_options < 0) if (n_options < 0)
return n_options; return n_options;
/* find already existing sd-boot entry */ /* find already existing systemd-boot entry */
for (i = 0; i < n_options; i++) for (i = 0; i < n_options; i++)
if (same_entry(options[i], uuid, path)) { if (same_entry(options[i], uuid, path)) {
new_id = options[i]; new_id = options[i];
@@ -1036,7 +1036,7 @@ static int remove_boot_efi(const char *esp_path) {
if (r < 0) if (r < 0)
goto finish; goto finish;
if (r > 0 && strncmp(v, "sd-boot ", 10) == 0) { if (r > 0 && strncmp(v, "systemd-boot ", 10) == 0) {
r = unlink(q); r = unlink(q);
if (r < 0) { if (r < 0) {
@@ -1089,7 +1089,7 @@ static int remove_binaries(const char *esp_path) {
char *p; char *p;
int r, q; int r, q;
if (asprintf(&p, "%s/EFI/sd-boot", esp_path) < 0) { if (asprintf(&p, "%s/EFI/systemd-boot", esp_path) < 0) {
fprintf(stderr, "Out of memory.\n"); fprintf(stderr, "Out of memory.\n");
return -ENOMEM; return -ENOMEM;
} }
@@ -1113,7 +1113,7 @@ static int remove_binaries(const char *esp_path) {
if (q < 0 && r == 0) if (q < 0 && r == 0)
r = q; r = q;
q = rmdir_one(esp_path, "EFI/sd-boot"); q = rmdir_one(esp_path, "EFI/systemd-boot");
if (q < 0 && r == 0) if (q < 0 && r == 0)
r = q; r = q;
@@ -1196,10 +1196,10 @@ static int help(void) {
" --no-variables Don't touch EFI variables\n" " --no-variables Don't touch EFI variables\n"
"\n" "\n"
"Comands:\n" "Comands:\n"
" status Show status of installed sd-boot and EFI variables\n" " status Show status of installed systemd-boot and EFI variables\n"
" install Install sd-boot to the ESP and EFI variables\n" " install Install systemd-boot to the ESP and EFI variables\n"
" update Update sd-boot in the ESP and EFI variables\n" " update Update systemd-boot in the ESP and EFI variables\n"
" remove Remove sd-boot from the ESP and EFI variables\n", " remove Remove systemd-boot from the ESP and EFI variables\n",
program_invocation_short_name); program_invocation_short_name);
return 0; return 0;
@@ -1371,7 +1371,7 @@ static int bootctl_main(int argc, char*argv[]) {
if (arg_touch_variables) if (arg_touch_variables)
r = install_variables(arg_path, r = install_variables(arg_path,
part, pstart, psize, uuid, part, pstart, psize, uuid,
"/EFI/systemd/sd-boot" EFI_MACHINE_TYPE_NAME ".efi", "/EFI/systemd/systemd-boot" EFI_MACHINE_TYPE_NAME ".efi",
arg_action == ACTION_INSTALL); arg_action == ACTION_INSTALL);
break; break;
@@ -1379,7 +1379,7 @@ static int bootctl_main(int argc, char*argv[]) {
r = remove_binaries(arg_path); r = remove_binaries(arg_path);
if (arg_touch_variables) { if (arg_touch_variables) {
q = remove_variables(uuid, "/EFI/systemd/sd-boot" EFI_MACHINE_TYPE_NAME ".efi", true); q = remove_variables(uuid, "/EFI/systemd/systemd-boot" EFI_MACHINE_TYPE_NAME ".efi", true);
if (q < 0 && r == 0) if (q < 0 && r == 0)
r = q; r = q;
} }
@@ -29,7 +29,7 @@
#endif #endif
/* magic string to find in the binary image */ /* magic string to find in the binary image */
static const char __attribute__((used)) magic[] = "#### LoaderInfo: sd-boot " VERSION " ####"; static const char __attribute__((used)) magic[] = "#### LoaderInfo: systemd-boot " VERSION " ####";
static const EFI_GUID global_guid = EFI_GLOBAL_VARIABLE; static const EFI_GUID global_guid = EFI_GLOBAL_VARIABLE;
@@ -405,7 +405,7 @@ static VOID print_status(Config *config, EFI_FILE *root_dir, CHAR16 *loaded_imag
break; break;
} }
Print(L"sd-boot version: " VERSION "\n"); Print(L"systemd-boot version: " VERSION "\n");
Print(L"architecture: " EFI_MACHINE_TYPE_NAME "\n"); Print(L"architecture: " EFI_MACHINE_TYPE_NAME "\n");
Print(L"loaded image: %s\n", loaded_image_path); Print(L"loaded image: %s\n", loaded_image_path);
Print(L"UEFI specification: %d.%02d\n", ST->Hdr.Revision >> 16, ST->Hdr.Revision & 0xffff); Print(L"UEFI specification: %d.%02d\n", ST->Hdr.Revision >> 16, ST->Hdr.Revision & 0xffff);
@@ -844,7 +844,7 @@ static BOOLEAN menu_run(Config *config, ConfigEntry **chosen_entry, EFI_FILE *ro
break; break;
case KEYPRESS(0, 0, 'v'): case KEYPRESS(0, 0, 'v'):
status = PoolPrint(L"sd-boot " VERSION " (" EFI_MACHINE_TYPE_NAME "), UEFI Specification %d.%02d, Vendor %s %d.%02d", status = PoolPrint(L"systemd-boot " VERSION " (" EFI_MACHINE_TYPE_NAME "), UEFI Specification %d.%02d, Vendor %s %d.%02d",
ST->Hdr.Revision >> 16, ST->Hdr.Revision & 0xffff, ST->Hdr.Revision >> 16, ST->Hdr.Revision & 0xffff,
ST->FirmwareVendor, ST->FirmwareRevision >> 16, ST->FirmwareRevision & 0xffff); ST->FirmwareVendor, ST->FirmwareRevision >> 16, ST->FirmwareRevision & 0xffff);
break; break;
@@ -1831,7 +1831,7 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *sys_table) {
InitializeLib(image, sys_table); InitializeLib(image, sys_table);
init_usec = time_usec(); init_usec = time_usec();
efivar_set_time_usec(L"LoaderTimeInitUSec", init_usec); efivar_set_time_usec(L"LoaderTimeInitUSec", init_usec);
efivar_set(L"LoaderInfo", L"sd-boot " VERSION, FALSE); efivar_set(L"LoaderInfo", L"systemd-boot " VERSION, FALSE);
s = PoolPrint(L"%s %d.%02d", ST->FirmwareVendor, ST->FirmwareRevision >> 16, ST->FirmwareRevision & 0xffff); s = PoolPrint(L"%s %d.%02d", ST->FirmwareVendor, ST->FirmwareRevision >> 16, ST->FirmwareRevision & 0xffff);
efivar_set(L"LoaderFirmwareInfo", s, FALSE); efivar_set(L"LoaderFirmwareInfo", s, FALSE);
FreePool(s); FreePool(s);
+1 -1
View File
@@ -12,7 +12,7 @@ mkdir -p mnt
mount ${LOOP}p1 mnt mount ${LOOP}p1 mnt
mkdir -p mnt/EFI/{Boot,systemd} mkdir -p mnt/EFI/{Boot,systemd}
cp sd-bootx64.efi mnt/EFI/Boot/bootx64.efi cp systemd-bootx64.efi mnt/EFI/Boot/bootx64.efi
cp test/splash.bmp mnt/EFI/systemd/ cp test/splash.bmp mnt/EFI/systemd/
[ -e /boot/shellx64.efi ] && cp /boot/shellx64.efi mnt/ [ -e /boot/shellx64.efi ] && cp /boot/shellx64.efi mnt/