mirror of https://github.com/ncroxon/gnu-efi
Enable silent rules for compiler output
This is similar to using automake's silent rules and, just as with automake, can be disabled by invoking 'make V=1'. Signed-off-by: Pete Batard <pete@akeo.ie>
This commit is contained in:
parent
7440e5ebb7
commit
2d6d426b8c
|
@ -60,9 +60,9 @@ override INSTALLROOT:=$(if $(call is_absolute,$(INSTALLROOT)),,$(TOPDIR)/)$(INST
|
|||
|
||||
PREFIX := /usr/local
|
||||
EXEC_PREFIX := $(PREFIX)
|
||||
LIBDIR := $(EXEC_PREFIX)/lib
|
||||
LIBDIR := $(EXEC_PREFIX)/lib
|
||||
INCLUDEDIR := $(PREFIX)/include
|
||||
INSTALL := install
|
||||
INSTALL := install
|
||||
|
||||
# Compilation tools
|
||||
HOSTCC := $(prefix)gcc
|
||||
|
@ -73,6 +73,16 @@ AR := $(prefix)$(CROSS_COMPILE)ar
|
|||
RANLIB := $(prefix)$(CROSS_COMPILE)ranlib
|
||||
OBJCOPY := $(prefix)$(CROSS_COMPILE)objcopy
|
||||
|
||||
# Set verbose or nonverbose output similarly to automake's silent rules.
|
||||
# Default is nonverbose, but, just like with automake, it can be disabled
|
||||
# with: 'make V=1'
|
||||
ifneq ($(V),1)
|
||||
HIDE=@
|
||||
ECHO=echo
|
||||
else
|
||||
HIDE=
|
||||
ECHO=true
|
||||
endif
|
||||
|
||||
# Host/target identification
|
||||
OS := $(shell uname -s)
|
||||
|
@ -205,9 +215,13 @@ CFLAGS += $(ARCH3264) -g -O2 -Wall -Wextra -Wno-pointer-sign -Werror \
|
|||
$(if $(findstring gcc,$(CC)),-fno-merge-all-constants,)
|
||||
endif
|
||||
|
||||
ifeq ($(V),1)
|
||||
ARFLAGS := rDv
|
||||
else
|
||||
ARFLAGS := rD
|
||||
endif
|
||||
ASFLAGS += $(ARCH3264)
|
||||
LDFLAGS += -nostdlib
|
||||
LDFLAGS += -nostdlib
|
||||
ifeq ($(IS_MINGW32),)
|
||||
LDFLAGS += --warn-common --no-undefined --fatal-warnings \
|
||||
--build-id=sha1 -z nocombreloc -z norelro
|
||||
|
|
27
Make.rules
27
Make.rules
|
@ -38,34 +38,43 @@
|
|||
|
||||
ifeq ($(IS_MINGW32),)
|
||||
%.efi: %.so
|
||||
$(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .rodata -j .rel \
|
||||
@$(ECHO) " OBJCOPY $(notdir $@)"
|
||||
$(HIDE)$(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .rodata -j .rel \
|
||||
-j .rela -j .rel.* -j .rela.* -j .rel* -j .rela* \
|
||||
-j .areloc -j .reloc $(FORMAT) $*.so $@
|
||||
|
||||
%.efi.debug: %.so
|
||||
$(OBJCOPY) -j .debug_info -j .debug_abbrev -j .debug_aranges \
|
||||
@$(ECHO) " OBJCOPY $(notdir $@)"
|
||||
$(HIDE)$(OBJCOPY) -j .debug_info -j .debug_abbrev -j .debug_aranges \
|
||||
-j .debug_line -j .debug_str -j .debug_ranges \
|
||||
-j .note.gnu.build-id \
|
||||
$(FORMAT) $*.so $@
|
||||
|
||||
%.so: %.o
|
||||
$(LD) $(LDFLAGS) $^ -o $@ $(LOADLIBES)
|
||||
@$(ECHO) " LD $(notdir $@)"
|
||||
$(HIDE)$(LD) $(LDFLAGS) $^ -o $@ $(LOADLIBES)
|
||||
else
|
||||
%.efi: %.o
|
||||
$(CC) $(LDFLAGS) $< -o $@ $(LOADLIBES)
|
||||
@$(ECHO) " CCLD $(notdir $@)"
|
||||
$(HIDE)$(CC) $(LDFLAGS) $< -o $@ $(LOADLIBES)
|
||||
endif
|
||||
|
||||
%.o: %.c
|
||||
$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
|
||||
@$(ECHO) " CC $(notdir $@)"
|
||||
$(HIDE)$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
|
||||
|
||||
%.s: %.c
|
||||
$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -S $< -o $@
|
||||
@$(ECHO) " CC $(notdir $@)"
|
||||
$(HIDE)$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -S $< -o $@
|
||||
|
||||
%.i: %.c
|
||||
$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -E $< -o $@
|
||||
@$(ECHO) " CPP $(notdir $@)"
|
||||
$(HIDE)$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -E $< -o $@
|
||||
|
||||
%.o: %.S
|
||||
$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
|
||||
@$(ECHO) " CC $(notdir $@)"
|
||||
$(HIDE)$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
|
||||
|
||||
%.s: %.S
|
||||
$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -E $< -o $@
|
||||
@$(ECHO) " CPP $(notdir $@)"
|
||||
$(HIDE)$(CC) $(INCDIR) $(CFLAGS) $(CPPFLAGS) -E $< -o $@
|
||||
|
|
|
@ -85,10 +85,12 @@ TARGETS = crt0-efi-$(ARCH).o libgnuefi.a
|
|||
all: $(TARGETS) gnu-efi.pc
|
||||
|
||||
libgnuefi.a: $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $^
|
||||
@$(ECHO) " AR $(notdir $@)"
|
||||
$(HIDE)$(AR) $(ARFLAGS) $@ $^
|
||||
|
||||
gnu-efi.pc:
|
||||
sed \
|
||||
@$(ECHO) " GEN $(notdir $@)"
|
||||
$(HIDE)sed \
|
||||
-e 's:@PREFIX@:$(PREFIX):g' \
|
||||
-e 's:@EXEC_PREFIX@:$(EXEC_PREFIX):g' \
|
||||
-e 's:@INCLUDEDIR@:$(INCLUDEDIR):g' \
|
||||
|
|
|
@ -43,9 +43,9 @@ include $(SRCDIR)/../Make.defaults
|
|||
|
||||
FILES = boxdraw smbios console crc data debug dpath \
|
||||
entry error event exit guid hand hw init lock \
|
||||
misc pause print sread str cmdline\
|
||||
runtime/rtlock runtime/efirtlib runtime/rtstr runtime/vm runtime/rtdata \
|
||||
$(ARCH)/initplat $(ARCH)/math $(ARCH)/setjmp
|
||||
misc pause print sread str cmdline runtime/rtlock \
|
||||
runtime/efirtlib runtime/rtstr runtime/vm runtime/rtdata \
|
||||
$(ARCH)/initplat $(ARCH)/math $(ARCH)/setjmp
|
||||
|
||||
ifeq ($(ARCH),ia64)
|
||||
FILES += $(ARCH)/salpal $(ARCH)/palproc
|
||||
|
@ -75,7 +75,8 @@ libsubdirs:
|
|||
$(OBJS): libsubdirs
|
||||
|
||||
libefi.a: $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $^
|
||||
@$(ECHO) " AR $(notdir $@)"
|
||||
$(HIDE)$(AR) $(ARFLAGS) $@ $^
|
||||
|
||||
clean:
|
||||
@rm -vf libefi.a *~ $(OBJS) */*.o
|
||||
|
|
Loading…
Reference in New Issue