summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStéphane Veyret <sveyret@gmail.com>2019-04-10 17:29:29 +0200
committerGeorgy Yakovlev <gyakovlev@gentoo.org>2019-05-01 14:41:27 -0700
commitb1193c44d34f7af290c04f4aaf8df0781c1c9836 (patch)
treedff98c45862daf165dd58b5ebe68266e0cdfeae7 /sys-boot/udk/files/2018-makefile.template
parentsys-boot/udk: Correct issues with latest compiler versions (diff)
downloadgentoo-b1193c44d34f7af290c04f4aaf8df0781c1c9836.tar.gz
gentoo-b1193c44d34f7af290c04f4aaf8df0781c1c9836.tar.bz2
gentoo-b1193c44d34f7af290c04f4aaf8df0781c1c9836.zip
sys-boot/udk: Bump to version 2018
Signed-off-by: Stéphane VEYRET <sveyret@gmail.com> Closes: https://bugs.gentoo.org/628300 Bug: https://bugs.gentoo.org/603986 Bug: https://bugs.gentoo.org/598042 Package-Manager: Portage-2.3.62, Repoman-2.3.11 Closes: https://github.com/gentoo/gentoo/pull/11655 Reviewed-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'sys-boot/udk/files/2018-makefile.template')
-rw-r--r--sys-boot/udk/files/2018-makefile.template41
1 files changed, 41 insertions, 0 deletions
diff --git a/sys-boot/udk/files/2018-makefile.template b/sys-boot/udk/files/2018-makefile.template
new file mode 100644
index 000000000000..049a94facd81
--- /dev/null
+++ b/sys-boot/udk/files/2018-makefile.template
@@ -0,0 +1,41 @@
+TOP := $(abspath $(dir $(lastword $(MAKEFILE_LIST))))
+BASE_NAME = «MODULE»
+EXEC = «MODULE».efi
+SRC = $(shell find $(TOP) -type f -name '*.c')
+OBJ = $(SRC:.c=.o)
+INC_DIR = /usr/include/«PACKAGE_NAME»
+LIB_DIR = «LIB_DIR»
+DEST_DIR_DEBUG = .
+«STATIC_LIBS»
+
+EFI_LDS = «EFI_LDS»
+«MODULE_TYPE»
+«VARIABLES»
+
+comma:= ,
+empty:=
+space:= $(empty) $(empty)
+
+all: $(EXEC)
+
+%.efi: $(OBJ)
+ $(DLINK) -o $(@:.efi=.dll) $(DLINK_FLAGS) \
+ -Wl,--script,$(EFI_LDS) -Wl,--defsym=PECOFF_HEADER_SIZE=«PECOFF_HEADER_SIZE» \
+ -Wl,$(subst $(space),$(comma),--start-group $(STATIC_LIBRARY_FILES)$^ --end-group)
+ $(OBJCOPY) $(OBJCOPY_FLAGS) $(@:.efi=.dll)
+ $(CP) $(@:.efi=.dll) $(@:.efi=.debug)
+ $(OBJCOPY) --strip-unneeded -R .eh_frame $(@:.efi=.dll)
+ $(OBJCOPY) --add-gnu-debuglink=$(@:.efi=.debug) $(@:.efi=.dll)
+ $(GENFW) -e $(MODULE_TYPE) -o $@ $(@:.efi=.dll) $(GENFW_FLAGS)
+ $(RM) $(@:.efi=.dll)
+
+%.o: %.c
+ $(CC) $(CC_FLAGS) -I$(INC_DIR) -iquote$(TOP) -c -o $@ $^
+
+clean:
+ $(RM) *.o
+
+mrproper: clean
+ $(RM) $(EXEC) $(EXEC:.efi=.debug)
+
+.PHONY: all clean mrproper