Makefile 924 B

12345678910111213141516171819202122232425262728293031323334
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. LIB_C += luo_test_utils.c
  3. TEST_GEN_PROGS += liveupdate
  4. TEST_GEN_PROGS_EXTENDED += luo_kexec_simple
  5. TEST_GEN_PROGS_EXTENDED += luo_multi_session
  6. TEST_FILES += do_kexec.sh
  7. include ../lib.mk
  8. CFLAGS += $(KHDR_INCLUDES)
  9. CFLAGS += -Wall -O2 -Wno-unused-function
  10. CFLAGS += -MD
  11. LIB_O := $(patsubst %.c, $(OUTPUT)/%.o, $(LIB_C))
  12. TEST_O := $(patsubst %, %.o, $(TEST_GEN_PROGS))
  13. TEST_O += $(patsubst %, %.o, $(TEST_GEN_PROGS_EXTENDED))
  14. TEST_DEP_FILES := $(patsubst %.o, %.d, $(LIB_O))
  15. TEST_DEP_FILES += $(patsubst %.o, %.d, $(TEST_O))
  16. -include $(TEST_DEP_FILES)
  17. $(LIB_O): $(OUTPUT)/%.o: %.c
  18. $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
  19. $(TEST_GEN_PROGS) $(TEST_GEN_PROGS_EXTENDED): $(OUTPUT)/%: %.o $(LIB_O)
  20. $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH) $< $(LIB_O) $(LDLIBS) -o $@
  21. EXTRA_CLEAN += $(LIB_O)
  22. EXTRA_CLEAN += $(TEST_O)
  23. EXTRA_CLEAN += $(TEST_DEP_FILES)