Add new all_video module.

* grub-core/Makefile.am (moddep.lst): Make dependent on video.lst.
	* grub-core/Makefile.core.def (all_video): New module.
	* grub-core/genmoddep.awk: Generate dependency of all_video from
	video.lst.
	* grub-core/lib/fake_module.c: New file.
	* grub-core/normal/main.c (features): Add feature_all_video_module.
	* util/grub.d/00_header.in: Define locale_dir based on $prefix and
	don't do explicit search again.
	insmod all_video in load_video if available.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2012-02-26 18:09:07 +01:00
parent 67093bc0ed
commit 22c7ce85fe
7 changed files with 49 additions and 16 deletions

View file

@ -336,7 +336,7 @@ syminfo.lst: gensyminfo.sh kernel_syms.lst $(MODULE_FILES)
mv $@.new $@
# generate global module dependencies list
moddep.lst: syminfo.lst genmoddep.awk
moddep.lst: syminfo.lst genmoddep.awk video.lst
cat $< | sort | awk -f $(srcdir)/genmoddep.awk > $@ || (rm -f $@; exit 1)
platform_DATA += moddep.lst
CLEANFILES += config.log syminfo.lst moddep.lst

View file

@ -1794,3 +1794,8 @@ module = {
name = crc64;
common = lib/crc64.c;
};
module = {
name = all_video;
common = lib/fake_module.c;
};

View file

@ -57,6 +57,14 @@ END {
for (depmod in uniqmods) {
modlist = modlist " " depmod;
}
if (mod == "all_video") {
continue;
}
printf "%s:%s\n", mod, modlist;
}
modlist = ""
while (getline <"video.lst") {
modlist = modlist " " $1;
}
printf "all_video:%s\n", modlist;
}

View file

@ -0,0 +1,4 @@
/* This file is intentionally empty: it's used to generate modules with no code or data. (purely dependency modules) */
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");

View file

@ -475,7 +475,7 @@ static grub_command_t cmd_clear;
static void (*grub_xputs_saved) (const char *str);
static const char *features[] = {
"feature_chainloader_bpb", "feature_ntldr", "feature_platform_search_hint",
"feature_default_font_path"
"feature_default_font_path", "feature_all_video_module"
};
GRUB_MOD_INIT(normal)