summaryrefslogtreecommitdiff
path: root/kexec_test
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2007-12-13 16:18:53 +0900
committerSimon Horman <horms@verge.net.au>2007-12-19 14:50:07 +0900
commitadf85cbc1756e56c1f52f56235a3c08b3c5b8e05 (patch)
tree480e2d89501d7e51f3c7abf3291930932c3a3371 /kexec_test
parentac12ceecf15f637e024e6be9a030497e732a74eb (diff)
Build system simplification/standardisation
This change makes kexec-tools work more like a standard configure-make- make-install-type project: * Remove $(OBJDIR) stuff. To do an out-of-tree build, just configure from a different directory. * Use the implicit Makefile rules more, and just edit the compiler flags for specific targets. * Simplify compiler/linker flags - no need for EXTRA_* * Add TARGET_CC, and improve checks for BUILD_CC too. * Set arch-specific flags in arch-specific makefiles, not conditional on $(ARCH). * Generate dependency files in the main compile, rather than as a separate step. * Don't #include sha256.c, but re-build it into the purgatory. Still a work-in-progress. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec_test')
-rw-r--r--kexec_test/Makefile28
1 files changed, 11 insertions, 17 deletions
diff --git a/kexec_test/Makefile b/kexec_test/Makefile
index 70542de..000f832 100644
--- a/kexec_test/Makefile
+++ b/kexec_test/Makefile
@@ -3,28 +3,22 @@
#
RELOC:=0x10000
KEXEC_TEST_S_SRCS:= kexec_test/kexec_test16.S kexec_test/kexec_test.S
-KEXEC_TEST_S_TEMPS:=$(patsubst %.S, $(OBJDIR)/%.s, $(KEXEC_TEST_S_SRCS))
-KEXEC_TEST_S_OBJS:=$(patsubst $(OBJDIR)/%.s, $(OBJDIR)/%.o, $(KEXEC_TEST_S_TEMPS))
-KEXEC_TEST_S_DEPS:=$(patsubst %.S, $(OBJDIR)/%.d, $(KEXEC_TEST_S_SRCS))
+KEXEC_TEST_S_OBJS:=$(patsubst %.S, %.o, $(KEXEC_TEST_S_SRCS))
+KEXEC_TEST_S_DEPS:=$(patsubst %.S, %.d, $(KEXEC_TEST_S_SRCS))
KEXEC_TEST_SRCS:= $(KEXEC_TEST_S_SRCS)
KEXEC_TEST_OBJS:= $(KEXEC_TEST_S_OBJS)
KEXEC_TEST_DEPS:= $(KEXEC_TEST_S_DEPS)
KEXEC_TEST:=$(PKGLIBDIR)/kexec_test
-include $(KEXEC_TEST_DEPS)
+-include $(KEXEC_TEST_DEPS)
-$(KEXEC_TEST_S_DEPS): $(OBJDIR)/%.d: %.S
- mkdir -p $(@D)
- $(CC) -m32 $(CFLAGS) $(EXTRA_CFLAGS) -M $< | sed -e 's|$(patsubst %.d,%.o,$(@F))|$(patsubst %.d,%.o,$(@))|' > $@
-
-$(KEXEC_TEST_S_TEMPS): $(OBJDIR)/%.s: %.S
- mkdir -p $(@D)
- $(CPP) $(CPPFLAGS) $(EXTRA_CPPFLAGS) -DRELOC=$(RELOC) $< > $@
-
-$(KEXEC_TEST_S_OBJS): $(OBJDIR)/%.o: $(OBJDIR)/%.s
- mkdir -p $(@D)
- $(AS) --32 -o $@ $<
+$(KEXEC_TEST): CPPFLAGS+=-DRELOC=$(RELOC)
+$(KEXEC_TEST): ASFLAGS+=-m32
+#$(KEXEC_TEST): LDFLAGS=-m32 -Wl,-e -Wl,_start -Wl,-Ttext -Wl,$(RELOC) \
+# -nostartfiles
+$(KEXEC_TEST): LDFLAGS=-melf_i386 -e _start -Ttext $(RELOC)
-$(KEXEC_TEST): $(KEXEC_TEST_OBJS)
+$(KEXEC_TEST): $(KEXEC_TEST_OBJS)
mkdir -p $(@D)
- $(LD) -m elf_i386 -e _start -Ttext $(RELOC) $(KEXEC_TEST_OBJS) -o $@
+ #$(LINK.o) -o $@ $^
+ $(LD) $(LDFLAGS) -o $@ $^