From 9ed8ce33646e0253fda91471fe528d1800bdf70c Mon Sep 17 00:00:00 2001 From: Zack Corr Date: Sat, 27 Oct 2012 21:16:26 +1000 Subject: [PATCH] Correct makefiles to build linenoise correctly --- Makefile.in | 4 +++- mk/linenoise.mk | 23 +++++++++++++++++++++++ mk/target.mk | 11 ----------- 3 files changed, 26 insertions(+), 12 deletions(-) create mode 100644 mk/linenoise.mk diff --git a/Makefile.in b/Makefile.in index 26365917a3d..93cf3a82fca 100644 --- a/Makefile.in +++ b/Makefile.in @@ -337,7 +337,8 @@ HSREQ$(1)_H_$(3) = \ TSREQ$(1)_T_$(2)_H_$(3) = \ $$(HSREQ$(1)_H_$(3)) \ $$(TLIB$(1)_T_$(2)_H_$(3))/$$(CFG_RUNTIME) \ - $$(TLIB$(1)_T_$(2)_H_$(3))/libmorestack.a + $$(TLIB$(1)_T_$(2)_H_$(3))/libmorestack.a \ + $$(TLIB$(1)_T_$(2)_H_$(3))/liblinenoise.a # Prerequisites for complete stageN targets SREQ$(1)_T_$(2)_H_$(3) = \ @@ -491,6 +492,7 @@ include $(CFG_SRC_DIR)mk/host.mk include $(CFG_SRC_DIR)mk/stage0.mk include $(CFG_SRC_DIR)mk/rt.mk include $(CFG_SRC_DIR)mk/rustllvm.mk +include $(CFG_SRC_DIR)mk/linenoise.mk include $(CFG_SRC_DIR)mk/tools.mk include $(CFG_SRC_DIR)mk/docs.mk include $(CFG_SRC_DIR)mk/llvm.mk diff --git a/mk/linenoise.mk b/mk/linenoise.mk new file mode 100644 index 00000000000..19a94a429b3 --- /dev/null +++ b/mk/linenoise.mk @@ -0,0 +1,23 @@ +###################################################################### +# linenoise - minimalistic readline alternative used by the REPL +###################################################################### + +define DEF_LINENOISE_TARGETS + +LINENOISE_CS_$(1) := $$(addprefix linenoise/, linenoise.c) +LINENOISE_OBJS_$(1) := $(LINENOISE_CS_$(1):linenoise/%.c=linenoise/$(1)/%.o) + +ALL_OBJ_FILES += $$(LINENOISE_OBJS_$(1)) + +linenoise/$(1)/liblinenoise.a: $$(LINENOISE_OBJS_$(1)) + @$$(call E, link: $$@) + $$(Q)ar rcs $$@ $$< + +linenoise/$(1)/%.o: linenoise/%.c $$(MKFILE_DEPS) + @$$(call E, compile: $$@) + $$(Q)$$(call CFG_COMPILE_C_$(1), $$@,) $$< +endef + +# Instantiate template for all stages +$(foreach target,$(CFG_TARGET_TRIPLES), \ + $(eval $(call DEF_LINENOISE_TARGETS,$(target)))) diff --git a/mk/target.mk b/mk/target.mk index 51c89597ca6..231bf56ba83 100644 --- a/mk/target.mk +++ b/mk/target.mk @@ -12,17 +12,6 @@ USE_SNAPSHOT_RUNTIME=0 USE_SNAPSHOT_CORELIB=0 USE_SNAPSHOT_STDLIB=0 -LINENOISE_OBJS_$(2) := linenoise/$(2)/linenoise.o -ALL_OBJ_FILES += $$(LINENOISE_OBJS_$(2)) - -linenoise/$(2)/linenoise.o: linenoise/linenoise.c $$(MKFILE_DEPS) - @$$(call E, compile: $$@) - $$(Q)$$(call CFG_COMPILE_C_$(2), $$@,) $$< - -linenoise/$(2)/liblinenoise.a: $$(LINENOISE_OBJS_$(2)) - @$$(call E, link: $$@) - $$(Q)ar rcs $$@ $$< - define TARGET_STAGE_N $$(TLIB$(1)_T_$(2)_H_$(3))/libmorestack.a: \