mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
zipl/boot: compile the bootloaders only if HOST_ARCH is s390x
The zipl bootloaders are s390x specific, so only build them if the `HOST_ARCH' is set to s390x. While at it, rename `INC_FILES` to `EMBEDDED_BOOTLOADERS`. Also introduce `EXTERNAL_BOOTLOADERS` variable and use it in the `install` Makefile target. Reviewed-by: Steffen Eiden <seiden@linux.ibm.com> Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
committed by
Jan Höppner
parent
54937495e2
commit
65222d03b9
@@ -1,6 +1,27 @@
|
||||
# Common definitions
|
||||
include ../../common.mak
|
||||
|
||||
EMBEDDED_BOOTLOADERS := fba0.bin fba1b.bin fba2.bin \
|
||||
eckd0_ldl.bin eckd0_cdl.bin \
|
||||
eckd1.bin eckd1b.bin eckd2.bin \
|
||||
tape0.bin \
|
||||
eckd2dump_sv.bin tape2dump.bin fba2dump.bin eckd2dump_mv.bin
|
||||
DEBUG_EMBEDDED_BOOTLOADERS := $(addsuffix .debug,$(EMBEDDED_BOOTLOADERS))
|
||||
EXTERNAL_BOOTLOADERS := stage3.bin
|
||||
DEBUG_EXTERNAL_BOOTLOADERS := $(addsuffix .debug,$(EXTERNAL_BOOTLOADERS))
|
||||
|
||||
.loaders: $(EMBEDDED_BOOTLOADERS) $(DEBUG_EMBEDDED_BOOTLOADERS)
|
||||
touch .loaders
|
||||
|
||||
.DEFAULT_GOAL := all
|
||||
all: .loaders $(EXTERNAL_BOOTLOADERS) $(DEBUG_EXTERNAL_BOOTLOADERS)
|
||||
|
||||
clean:
|
||||
rm -f -- ./**/*.o *.o *.exec *.bin *.lds .*.lds.d .loaders *.debug
|
||||
|
||||
.PHONY: all clean
|
||||
|
||||
ifeq ($(HOST_ARCH),s390x)
|
||||
INCLUDE_PATHS := $(rootdir)/zipl/include $(rootdir)/include
|
||||
INCLUDE_PARMS := $(addprefix -I,$(INCLUDE_PATHS))
|
||||
|
||||
@@ -13,23 +34,6 @@ ALL_CFLAGS = $(NO_PIE_CFLAGS) -Os -g $(INCLUDE_PARMS) \
|
||||
-W -Wall -Wformat-security -fno-sanitize=all -Wno-array-bounds
|
||||
ALL_LDFLAGS += -fno-sanitize=all
|
||||
|
||||
INC_FILES := fba0.bin fba1b.bin fba2.bin \
|
||||
eckd0_ldl.bin eckd0_cdl.bin \
|
||||
eckd1.bin eckd1b.bin eckd2.bin \
|
||||
tape0.bin \
|
||||
eckd2dump_sv.bin tape2dump.bin fba2dump.bin eckd2dump_mv.bin
|
||||
FILES := $(INC_FILES) stage3.bin
|
||||
DEBUG_FILES := $(addsuffix .debug,$(FILES))
|
||||
|
||||
all: .loaders $(FILES) $(DEBUG_FILES)
|
||||
|
||||
.loaders: $(INC_FILES)
|
||||
touch .loaders
|
||||
|
||||
install: stage3.bin
|
||||
$(INSTALL) -d -m 755 "$(DESTDIR)$(TOOLS_LIBDIR)"
|
||||
$(INSTALL) -g $(GROUP) -o $(OWNER) -m 644 stage3.bin "$(DESTDIR)$(TOOLS_LIBDIR)"
|
||||
|
||||
# Prevent make from using some default rules...
|
||||
%: %.S
|
||||
|
||||
@@ -91,8 +95,17 @@ stage3.exec: head.o stage3.o kdump3.o libc.o ebcdic.o ebcdic_conv.o sclp.o \
|
||||
$(OBJCOPY) -O binary $< $@
|
||||
@chmod a-x $@
|
||||
|
||||
install: $(EXTERNAL_BOOTLOADERS)
|
||||
$(INSTALL) -d -m 755 "$(DESTDIR)$(TOOLS_LIBDIR)"
|
||||
$(INSTALL) -g $(GROUP) -o $(OWNER) -m 644 $(EXTERNAL_BOOTLOADERS) "$(DESTDIR)$(TOOLS_LIBDIR)"
|
||||
else
|
||||
# Don't generate the dependency files (see `common.mak` for the
|
||||
# `-include $(dependencies_c)` statement).
|
||||
.PHONY: $(dependencies_c)
|
||||
|
||||
clean:
|
||||
rm -f -- ./**/*.o *.o *.exec *.bin *.lds .*.lds.d .loaders *.debug
|
||||
$(EMBEDDED_BOOTLOADERS) $(DEBUG_EMBEDDED_BOOTLOADERS) $(EXTERNAL_BOOTLOADERS) $(DEBUG_EXTERNAL_BOOTLOADERS):
|
||||
echo " SKIP $@ due to HOST_ARCH != s390x"
|
||||
|
||||
.PHONY: all clean
|
||||
install:
|
||||
echo " SKIP Bootloader installation due to HOST_ARCH != s390x"
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user