diff mbox series

[boot-wrapper,12/12] Move common source files to `common` directory

Message ID 20210729152050.23635-13-mark.rutland@arm.com (mailing list archive)
State New, archived
Headers show
Series Preparatory fixes and cleanup | expand

Commit Message

Mark Rutland July 29, 2021, 3:20 p.m. UTC
The top-level directory is getting increasingly cluttered. For clarity
let's move the common source files into their own directory. At the same
time let's clean up the way we generate object lists so that it's
consistent for arch/common objects, and doesn't require special casing
each optional object.

Note that we also need to create a common/ directory for out-of-tree
builds.

There should be no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
---
 Makefile.am                           | 29 +++++++++++++++++------------
 bakery_lock.c => common/bakery_lock.c |  0
 boot_common.c => common/boot.c        |  2 +-
 gic-v3.c => common/gic-v3.c           |  0
 gic.c => common/gic.c                 |  0
 lib.c => common/lib.c                 |  0
 platform.c => common/platform.c       |  0
 psci.c => common/psci.c               |  0
 8 files changed, 18 insertions(+), 13 deletions(-)
 rename bakery_lock.c => common/bakery_lock.c (100%)
 rename boot_common.c => common/boot.c (96%)
 rename gic-v3.c => common/gic-v3.c (100%)
 rename gic.c => common/gic.c (100%)
 rename lib.c => common/lib.c (100%)
 rename platform.c => common/platform.c (100%)
 rename psci.c => common/psci.c (100%)

Comments

Andre Przywara July 30, 2021, 5:40 p.m. UTC | #1
On Thu, 29 Jul 2021 16:20:50 +0100
Mark Rutland <mark.rutland@arm.com> wrote:

> The top-level directory is getting increasingly cluttered. For clarity
> let's move the common source files into their own directory. At the same
> time let's clean up the way we generate object lists so that it's
> consistent for arch/common objects, and doesn't require special casing
> each optional object.
> 
> Note that we also need to create a common/ directory for out-of-tree
> builds.
> 
> There should be no functional change as a result of this patch.
> 
> Signed-off-by: Mark Rutland <mark.rutland@arm.com>

Looks like a good cleanup.

Reviewed-by: Andre Przywara <andre.przywara@arm.com>

Thanks,
Andre

> ---
>  Makefile.am                           | 29 +++++++++++++++++------------
>  bakery_lock.c => common/bakery_lock.c |  0
>  boot_common.c => common/boot.c        |  2 +-
>  gic-v3.c => common/gic-v3.c           |  0
>  gic.c => common/gic.c                 |  0
>  lib.c => common/lib.c                 |  0
>  platform.c => common/platform.c       |  0
>  psci.c => common/psci.c               |  0
>  8 files changed, 18 insertions(+), 13 deletions(-)
>  rename bakery_lock.c => common/bakery_lock.c (100%)
>  rename boot_common.c => common/boot.c (96%)
>  rename gic-v3.c => common/gic-v3.c (100%)
>  rename gic.c => common/gic.c (100%)
>  rename lib.c => common/lib.c (100%)
>  rename platform.c => common/platform.c (100%)
>  rename psci.c => common/psci.c (100%)
> 
> diff --git a/Makefile.am b/Makefile.am
> index 5d34cc8..68f23d3 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -33,7 +33,10 @@ PSCI_CPU_ON	:= 0xc4000003
>  endif
>  PSCI_CPU_OFF	:= 0x84000002
>  
> -OFILES		=
> +COMMON_SRC	:= common/
> +COMMON_OBJ	:= boot.o bakery_lock.o platform.o lib.o
> +
> +ARCH_OBJ	:= boot.o stack.o utils.o
>  
>  if BOOTWRAPPER_32
>  CPPFLAGS	+= -DBOOTWRAPPER_32
> @@ -45,8 +48,8 @@ ARCH_SRC	:= arch/aarch64/
>  endif
>  
>  if PSCI
> -BOOTMETHOD	:= psci.o
> -OFILES		+= psci.o
> +ARCH_OBJ	+= psci.o
> +COMMON_OBJ	+= psci.o
>  PSCI_NODE	:= psci {				\
>  			compatible = \"arm,psci\";	\
>  			method = \"smc\";		\
> @@ -55,7 +58,7 @@ PSCI_NODE	:= psci {				\
>  		   };
>  CPU_NODES	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/addpsci.pl $(KERNEL_DTB))
>  else
> -BOOTMETHOD	:= spin.o
> +ARCH_OBJ	+= spin.o
>  PSCI_NODE	:=
>  CPU_NODES	:=
>  endif
> @@ -65,13 +68,13 @@ GIC_DIST_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNE
>  GIC_RDIST_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNEL_DTB) 1 'arm,gic-v3')
>  DEFINES		+= -DGIC_DIST_BASE=$(GIC_DIST_BASE)
>  DEFINES		+= -DGIC_RDIST_BASE=$(GIC_RDIST_BASE)
> -GIC		:= gic-v3.o
> +COMMON_OBJ	+= gic-v3.o
>  else
>  GIC_DIST_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNEL_DTB) 0 'arm,cortex-a15-gic')
>  GIC_CPU_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNEL_DTB) 1 'arm,cortex-a15-gic')
>  DEFINES		+= -DGIC_CPU_BASE=$(GIC_CPU_BASE)
>  DEFINES		+= -DGIC_DIST_BASE=$(GIC_DIST_BASE)
> -GIC		:= gic.o
> +COMMON_OBJ	+= gic.o
>  endif
>  
>  if KERNEL_32
> @@ -125,8 +128,7 @@ CFLAGS		+= -Wall -fomit-frame-pointer
>  CFLAGS		+= -ffunction-sections -fdata-sections
>  LDFLAGS		+= --gc-sections
>  
> -OFILES		+= boot_common.o bakery_lock.o platform.o $(GIC) lib.o
> -OFILES		+= $(addprefix $(ARCH_SRC),boot.o stack.o $(BOOTMETHOD) utils.o)
> +OBJ		:= $(addprefix $(ARCH_SRC),$(ARCH_OBJ)) $(addprefix $(COMMON_SRC),$(COMMON_OBJ))
>  
>  # Don't lookup all prerequisites in $(top_srcdir), only the source files. When
>  # building outside the source tree $(ARCH_SRC) needs to be created.
> @@ -136,18 +138,21 @@ vpath %.S $(top_srcdir)
>  
>  all: $(IMAGE)
>  
> -CLEANFILES = $(IMAGE) linux-system.axf xen-system.axf $(OFILES) model.lds fdt.dtb
> +CLEANFILES = $(IMAGE) linux-system.axf xen-system.axf $(OBJ) model.lds fdt.dtb
>  
> -$(IMAGE): $(OFILES) model.lds fdt.dtb $(KERNEL_IMAGE) $(FILESYSTEM) $(XEN_IMAGE)
> -	$(LD) $(LDFLAGS) $(OFILES) -o $@ --script=model.lds
> +$(IMAGE): $(OBJ) model.lds fdt.dtb $(KERNEL_IMAGE) $(FILESYSTEM) $(XEN_IMAGE)
> +	$(LD) $(LDFLAGS) $(OBJ) -o $@ --script=model.lds
>  
>  $(ARCH_SRC):
>  	$(MKDIR_P) $@
>  
> +$(COMMON_SRC):
> +	$(MKDIR_P) $@
> +
>  %.o: %.S Makefile | $(ARCH_SRC)
>  	$(CC) $(CPPFLAGS) -D__ASSEMBLY__ $(CFLAGS) $(DEFINES) -c -o $@ $<
>  
> -%.o: %.c Makefile
> +%.o: %.c Makefile | $(COMMON_SRC)
>  	$(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c -o $@ $<
>  
>  model.lds: $(LD_SCRIPT) Makefile
> diff --git a/bakery_lock.c b/common/bakery_lock.c
> similarity index 100%
> rename from bakery_lock.c
> rename to common/bakery_lock.c
> diff --git a/boot_common.c b/common/boot.c
> similarity index 96%
> rename from boot_common.c
> rename to common/boot.c
> index eada179..c74d34c 100644
> --- a/boot_common.c
> +++ b/common/boot.c
> @@ -1,5 +1,5 @@
>  /*
> - * boot_common.c - common spin function for all boot methods
> + * boot.c - common spin function for all boot methods
>   *
>   * Copyright (C) 2015 ARM Limited. All rights reserved.
>   *
> diff --git a/gic-v3.c b/common/gic-v3.c
> similarity index 100%
> rename from gic-v3.c
> rename to common/gic-v3.c
> diff --git a/gic.c b/common/gic.c
> similarity index 100%
> rename from gic.c
> rename to common/gic.c
> diff --git a/lib.c b/common/lib.c
> similarity index 100%
> rename from lib.c
> rename to common/lib.c
> diff --git a/platform.c b/common/platform.c
> similarity index 100%
> rename from platform.c
> rename to common/platform.c
> diff --git a/psci.c b/common/psci.c
> similarity index 100%
> rename from psci.c
> rename to common/psci.c
diff mbox series

Patch

diff --git a/Makefile.am b/Makefile.am
index 5d34cc8..68f23d3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -33,7 +33,10 @@  PSCI_CPU_ON	:= 0xc4000003
 endif
 PSCI_CPU_OFF	:= 0x84000002
 
-OFILES		=
+COMMON_SRC	:= common/
+COMMON_OBJ	:= boot.o bakery_lock.o platform.o lib.o
+
+ARCH_OBJ	:= boot.o stack.o utils.o
 
 if BOOTWRAPPER_32
 CPPFLAGS	+= -DBOOTWRAPPER_32
@@ -45,8 +48,8 @@  ARCH_SRC	:= arch/aarch64/
 endif
 
 if PSCI
-BOOTMETHOD	:= psci.o
-OFILES		+= psci.o
+ARCH_OBJ	+= psci.o
+COMMON_OBJ	+= psci.o
 PSCI_NODE	:= psci {				\
 			compatible = \"arm,psci\";	\
 			method = \"smc\";		\
@@ -55,7 +58,7 @@  PSCI_NODE	:= psci {				\
 		   };
 CPU_NODES	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/addpsci.pl $(KERNEL_DTB))
 else
-BOOTMETHOD	:= spin.o
+ARCH_OBJ	+= spin.o
 PSCI_NODE	:=
 CPU_NODES	:=
 endif
@@ -65,13 +68,13 @@  GIC_DIST_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNE
 GIC_RDIST_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNEL_DTB) 1 'arm,gic-v3')
 DEFINES		+= -DGIC_DIST_BASE=$(GIC_DIST_BASE)
 DEFINES		+= -DGIC_RDIST_BASE=$(GIC_RDIST_BASE)
-GIC		:= gic-v3.o
+COMMON_OBJ	+= gic-v3.o
 else
 GIC_DIST_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNEL_DTB) 0 'arm,cortex-a15-gic')
 GIC_CPU_BASE	:= $(shell perl -I $(SCRIPT_DIR) $(SCRIPT_DIR)/findbase.pl $(KERNEL_DTB) 1 'arm,cortex-a15-gic')
 DEFINES		+= -DGIC_CPU_BASE=$(GIC_CPU_BASE)
 DEFINES		+= -DGIC_DIST_BASE=$(GIC_DIST_BASE)
-GIC		:= gic.o
+COMMON_OBJ	+= gic.o
 endif
 
 if KERNEL_32
@@ -125,8 +128,7 @@  CFLAGS		+= -Wall -fomit-frame-pointer
 CFLAGS		+= -ffunction-sections -fdata-sections
 LDFLAGS		+= --gc-sections
 
-OFILES		+= boot_common.o bakery_lock.o platform.o $(GIC) lib.o
-OFILES		+= $(addprefix $(ARCH_SRC),boot.o stack.o $(BOOTMETHOD) utils.o)
+OBJ		:= $(addprefix $(ARCH_SRC),$(ARCH_OBJ)) $(addprefix $(COMMON_SRC),$(COMMON_OBJ))
 
 # Don't lookup all prerequisites in $(top_srcdir), only the source files. When
 # building outside the source tree $(ARCH_SRC) needs to be created.
@@ -136,18 +138,21 @@  vpath %.S $(top_srcdir)
 
 all: $(IMAGE)
 
-CLEANFILES = $(IMAGE) linux-system.axf xen-system.axf $(OFILES) model.lds fdt.dtb
+CLEANFILES = $(IMAGE) linux-system.axf xen-system.axf $(OBJ) model.lds fdt.dtb
 
-$(IMAGE): $(OFILES) model.lds fdt.dtb $(KERNEL_IMAGE) $(FILESYSTEM) $(XEN_IMAGE)
-	$(LD) $(LDFLAGS) $(OFILES) -o $@ --script=model.lds
+$(IMAGE): $(OBJ) model.lds fdt.dtb $(KERNEL_IMAGE) $(FILESYSTEM) $(XEN_IMAGE)
+	$(LD) $(LDFLAGS) $(OBJ) -o $@ --script=model.lds
 
 $(ARCH_SRC):
 	$(MKDIR_P) $@
 
+$(COMMON_SRC):
+	$(MKDIR_P) $@
+
 %.o: %.S Makefile | $(ARCH_SRC)
 	$(CC) $(CPPFLAGS) -D__ASSEMBLY__ $(CFLAGS) $(DEFINES) -c -o $@ $<
 
-%.o: %.c Makefile
+%.o: %.c Makefile | $(COMMON_SRC)
 	$(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c -o $@ $<
 
 model.lds: $(LD_SCRIPT) Makefile
diff --git a/bakery_lock.c b/common/bakery_lock.c
similarity index 100%
rename from bakery_lock.c
rename to common/bakery_lock.c
diff --git a/boot_common.c b/common/boot.c
similarity index 96%
rename from boot_common.c
rename to common/boot.c
index eada179..c74d34c 100644
--- a/boot_common.c
+++ b/common/boot.c
@@ -1,5 +1,5 @@ 
 /*
- * boot_common.c - common spin function for all boot methods
+ * boot.c - common spin function for all boot methods
  *
  * Copyright (C) 2015 ARM Limited. All rights reserved.
  *
diff --git a/gic-v3.c b/common/gic-v3.c
similarity index 100%
rename from gic-v3.c
rename to common/gic-v3.c
diff --git a/gic.c b/common/gic.c
similarity index 100%
rename from gic.c
rename to common/gic.c
diff --git a/lib.c b/common/lib.c
similarity index 100%
rename from lib.c
rename to common/lib.c
diff --git a/platform.c b/common/platform.c
similarity index 100%
rename from platform.c
rename to common/platform.c
diff --git a/psci.c b/common/psci.c
similarity index 100%
rename from psci.c
rename to common/psci.c