2009-05-03 Bean <bean123ch@gmail.com>

* Makefile.in (enable_efiemu): New variable.

	* conf/i386-pc.rmk: Only compile efiemu runtimes when enable_efiemu is
	set.
	(efiemu32.o): Use macro $< for source file, add $(srcdir) to include
	path.
	(efi64_c.o): Use macro $< for source file, add $(srcdir) to include
	path, add -mno-red-zone option.
	(efiemu64_s.o): Likewise.
	(efiemu64.o): Use macro $^ for source file.

	* configure.ac (--enable-efiemu): New option.
This commit is contained in:
bean 2009-05-03 06:39:37 +00:00
parent 7dd4a573a9
commit fc45fb586d
4 changed files with 29 additions and 4 deletions

View File

@ -1,3 +1,18 @@
2009-05-03 Bean <bean123ch@gmail.com>
* Makefile.in (enable_efiemu): New variable.
* conf/i386-pc.rmk: Only compile efiemu runtimes when enable_efiemu is
set.
(efiemu32.o): Use macro $< for source file, add $(srcdir) to include
path.
(efi64_c.o): Use macro $< for source file, add $(srcdir) to include
path, add -mno-red-zone option.
(efiemu64_s.o): Likewise.
(efiemu64.o): Use macro $^ for source file.
* configure.ac (--enable-efiemu): New option.
2009-05-03 Vladimir Serbinenko <phcoder@gmail.com>
xnu support

View File

@ -101,6 +101,7 @@ enable_lzo = @enable_lzo@
enable_grub_mkfont = @enable_grub_mkfont@
freetype_cflags = @freetype_cflags@
freetype_libs = @freetype_libs@
enable_efiemu = @enable_efiemu@
### General variables.

View File

@ -387,19 +387,23 @@ hdparm_mod_SOURCES = commands/hdparm.c lib/hexdump.c
hdparm_mod_CFLAGS = $(COMMON_CFLAGS)
hdparm_mod_LDFLAGS = $(COMMON_LDFLAGS)
ifeq ($(enable_efiemu), yes)
efiemu32.o: efiemu/runtime/efiemu.c
$(CC) -c -m32 -DELF32 -o $@ -Wall -Werror efiemu/runtime/efiemu.c -nostdlib -O2 -Iefiemu/runtime -Iinclude
$(CC) -c -m32 -DELF32 -o $@ -Wall -Werror $< -nostdlib -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
efiemu64_c.o: efiemu/runtime/efiemu.c
$(CC) -c -m64 -DELF64 -o $@ -Wall -Werror efiemu/runtime/efiemu.c -nostdlib -mcmodel=large -O2 -Iefiemu/runtime -Iinclude
$(CC) -c -m64 -DELF64 -o $@ -Wall -Werror $< -nostdlib -mcmodel=large -mno-red-zone -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
efiemu64_s.o: efiemu/runtime/efiemu.S
$(CC) -c -m64 -DELF64 -o $@ -Wall -Werror efiemu/runtime/efiemu.S -nostdlib -mcmodel=large -O2 -Iefiemu/runtime -Iinclude
$(CC) -c -m64 -DELF64 -o $@ -Wall -Werror $< -nostdlib -mcmodel=large -mno-red-zone -O2 -I$(srcdir)/efiemu/runtime -I$(srcdir)/include -Iinclude
efiemu64.o: efiemu64_c.o efiemu64_s.o
ld -melf_x86_64 -o $@ -r efiemu64_c.o efiemu64_s.o -nostdlib
ld -melf_x86_64 -o $@ -r $^ -nostdlib
CLEANFILES += efiemu32.o efiemu64.o efiemu64_c.o efiemu64_s.o
lib_DATA += efiemu32.o efiemu64.o
endif
include $(srcdir)/conf/i386.mk
include $(srcdir)/conf/common.mk

View File

@ -473,6 +473,11 @@ AC_SUBST([enable_grub_mkfont])
AC_SUBST([freetype_cflags])
AC_SUBST([freetype_libs])
AC_ARG_ENABLE([efiemu],
[AS_HELP_STRING([--enable-efiemu],
[build and install the efiemu runtimes])])
AC_SUBST([enable_efiemu])
# Output files.
grub_CHECK_LINK_DIR
if test x"$link_dir" = xyes ; then