# SPDX-License-Identifier: GPL-2.0
# ===========================================================================
# Post-link s390 pass
# ===========================================================================
#
# 1. Separate relocations from vmlinux into relocs.S.
# 2. Strip relocations from vmlinux.

PHONY := __archpost
__archpost:

-include include/config/auto.conf
include $(srctree)/scripts/Kbuild.include
include $(srctree)/scripts/Makefile.lib

CMD_RELOCS=arch/s390/tools/relocs
OUT_RELOCS = arch/s390/boot
quiet_cmd_relocs = RELOCS  $(OUT_RELOCS)/relocs.S
      cmd_relocs = \
	mkdir -p $(OUT_RELOCS); \
	$(CMD_RELOCS) $@ > $(OUT_RELOCS)/relocs.S

vmlinux: FORCE
	$(call cmd,relocs)
	$(call cmd,strip_relocs)

clean:
	@rm -f $(OUT_RELOCS)/relocs.S

PHONY += FORCE clean

FORCE:

.PHONY: $(PHONY)
