[Skiboot] [PATCH] Make links target reusable
k0da at opensuse.org
k0da at opensuse.org
Tue Mar 29 20:27:14 AEDT 2016
From: Dinar Valeev <dvaleev at suse.com>
Move symlinking target to external/common/rules.mk, so the rule
could be reused by gard and opal-prd.
Signed-off-by: Dinar Valeev <dvaleev at suse.com>
---
external/common/rules.mk | 24 ++++++++++++++++++++++++
external/gard/Makefile | 18 +++---------------
external/opal-prd/Makefile | 25 ++-----------------------
3 files changed, 29 insertions(+), 38 deletions(-)
diff --git a/external/common/rules.mk b/external/common/rules.mk
index ec20593..4a929d6 100644
--- a/external/common/rules.mk
+++ b/external/common/rules.mk
@@ -17,6 +17,30 @@ endif
endif
endif
+# Use make V=1 for a verbose build.
+ifndef V
+ Q_CC= @echo ' CC ' $@;
+ Q_LINK= @echo ' LINK ' $@;
+ Q_LN= @echo ' LN ' $@;
+ Q_MKDIR=@echo ' MKDIR ' $@;
+endif
+
+
+.PHONY: links
+links: libflash ccan common
+
+libflash:
+ $(Q_LN)ln -sf ../../libflash ./libflash
+
+ccan:
+ $(Q_LN)ln -sf ../../ccan ./ccan
+
+common:
+ $(Q_LN)ln -sf ../common ./common
+
+make_version.sh:
+ $(Q_LN)ln -sf ../../make_version.sh
+
ARCH_SRC := $(addprefix common/,$(ARCH_FILES))
ARCH_OBJS := $(addprefix common-,$(ARCH_FILES:.c=.o))
diff --git a/external/gard/Makefile b/external/gard/Makefile
index be3d1ba..b640acd 100644
--- a/external/gard/Makefile
+++ b/external/gard/Makefile
@@ -3,22 +3,8 @@ include rules.mk
GET_ARCH = ../../external/common/get_arch.sh
include ../../external/common/rules.mk
-all: $(EXE)
+all: links $(EXE)
-.PHONY: links
-links: libflash ccan common make_version.sh
-
-libflash:
- ln -sf ../../libflash .
-
-ccan:
- ln -sf ../../ccan .
-
-common:
- ln -sf ../common .
-
-make_version.sh:
- ln -sf ../../make_version.sh
#Rebuild version.o so that the the version always matches
#what the test suite will get from ./make_version.sh
@@ -26,6 +12,8 @@ check: version.o all
@ln -sf ../../test/test.sh test/test.sh
@test/test-gard
+links += make_version.sh
+
$(OBJS): | links arch_links
.PHONY: VERSION-always
diff --git a/external/opal-prd/Makefile b/external/opal-prd/Makefile
index 3f34371..e89f73d 100644
--- a/external/opal-prd/Makefile
+++ b/external/opal-prd/Makefile
@@ -10,19 +10,11 @@ sbindir = $(prefix)/sbin
datadir = $(prefix)/share
mandir = $(datadir)/man
-all: opal-prd
+all: links arch_links | opal-prd
GET_ARCH = ../../external/common/get_arch.sh
include ../../external/common/rules.mk
-# Use make V=1 for a verbose build.
-ifndef V
- Q_CC= @echo ' CC ' $@;
- Q_LINK= @echo ' LINK ' $@;
- Q_LN= @echo ' LN ' $@;
- Q_MKDIR=@echo ' MKDIR ' $@;
-endif
-
LIBFLASH_OBJS = libflash-blocklevel.o libflash-libffs.o \
libflash-libflash.o libflash-ecc.o \
libflash-file.o
@@ -30,30 +22,17 @@ LIBFLASH_OBJS = libflash-blocklevel.o libflash-libffs.o \
OBJS = opal-prd.o thunk.o pnor.o i2c.o module.o version.o \
$(LIBFLASH_OBJS) common-arch_flash.o
-LINKS = ccan common libflash $(ARCH_LINKS)
-
OPAL_PRD_VERSION ?= $(shell ../../make_version.sh opal-prd)
ifdef KERNEL_DIR
-LINKS += asm/opal-prd.h
+links += asm/opal-prd.h
endif
-ccan:
- $(Q_LN)ln -sfr ../../ccan ./ccan
-
-libflash:
- $(Q_LN)ln -sfr ../../libflash ./libflash
-
-common:
- $(Q_LN)ln -sfr ../common ./common
-
asm/opal-prd.h:
$(Q_MKDIR)mkdir -p asm
$(Q_LN)ln -sfr $(KERNEL_DIR)/arch/powerpc/include/uapi/asm/opal-prd.h \
asm/opal-prd.h
-$(OBJS): | $(LINKS)
-
%.o: %.c
$(Q_CC)$(COMPILE.c) $< -o $@
--
2.1.4
More information about the Skiboot
mailing list