public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 1/2] ArmPkg/ArmBaseLib: remove MemoryAllocationLib.h includes
@ 2016-09-08  9:44 Ard Biesheuvel
  2016-09-08  9:44 ` [PATCH 2/2] ArmPkg/ArmBaseLib: clean up directory structure Ard Biesheuvel
  0 siblings, 1 reply; 3+ messages in thread
From: Ard Biesheuvel @ 2016-09-08  9:44 UTC (permalink / raw)
  To: edk2-devel, leif.lindholm; +Cc: Ard Biesheuvel

The ArmBaseLib timer code does not depend on MemoryAllocationLib at
all, so remove the #includes referring to it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimer.c | 1 -
 ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c     | 1 -
 2 files changed, 2 deletions(-)

diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimer.c b/ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimer.c
index 63ce1978c091..31286eefff30 100644
--- a/ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimer.c
+++ b/ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimer.c
@@ -15,7 +15,6 @@
 #include <Uefi.h>
 #include <Chipset/AArch64.h>
 #include <Library/BaseMemoryLib.h>
-#include <Library/MemoryAllocationLib.h>
 #include <Library/ArmLib.h>
 #include <Library/BaseLib.h>
 #include <Library/DebugLib.h>
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c b/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c
index 49be71bbe088..c0b3a9ed5d24 100644
--- a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c
+++ b/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c
@@ -15,7 +15,6 @@
 #include <Uefi.h>
 #include <Chipset/ArmV7.h>
 #include <Library/BaseMemoryLib.h>
-#include <Library/MemoryAllocationLib.h>
 #include <Library/ArmLib.h>
 #include <Library/BaseLib.h>
 #include <Library/DebugLib.h>
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] ArmPkg/ArmBaseLib: clean up directory structure
  2016-09-08  9:44 [PATCH 1/2] ArmPkg/ArmBaseLib: remove MemoryAllocationLib.h includes Ard Biesheuvel
@ 2016-09-08  9:44 ` Ard Biesheuvel
  2016-09-08 15:11   ` Leif Lindholm
  0 siblings, 1 reply; 3+ messages in thread
From: Ard Biesheuvel @ 2016-09-08  9:44 UTC (permalink / raw)
  To: edk2-devel, leif.lindholm; +Cc: Ard Biesheuvel

For historical reasons, the files under ArmLib are split up into 'common'
files under Common/, containing common C files as well as AArch64 and Arm
specific asm files, and ArmV7 and AArch64 files under ArmV7/ and AArch64/,
respectively. This presumably dates back to the time when ArmLib supported
different revisions of the 32-bit architecture (i.e., pre-V7)

Since the PI spec requires V7 or later, we can simplify this to Arm/ and
AArch64, which aligns ArmLib with the majority of other modules that carry
ARM or AArch64 specific code.

So move the files around so that shared files live at the same level as
ArmBaseLib.inf, and ARM/AArch64 specific files live in Arm/ or AArch64/,
respectively.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 ArmPkg/Library/ArmLib/{Common => }/AArch64/ArmLibSupport.S     |  0
 ArmPkg/Library/ArmLib/{Common => }/Arm/ArmLibSupport.S         |  0
 ArmPkg/Library/ArmLib/{Common => }/Arm/ArmLibSupport.asm       |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmLibSupportV7.S         |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmLibSupportV7.asm       |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7ArchTimer.c          |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7ArchTimerSupport.S   |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7ArchTimerSupport.asm |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Lib.c                |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Lib.h                |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Support.S            |  0
 ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Support.asm          |  0
 ArmPkg/Library/ArmLib/ArmBaseLib.inf                           | 24 ++++++++++----------
 ArmPkg/Library/ArmLib/{Common => }/ArmLib.c                    |  0
 ArmPkg/Library/ArmLib/{Common => }/ArmLibPrivate.h             |  0
 15 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/ArmPkg/Library/ArmLib/Common/AArch64/ArmLibSupport.S b/ArmPkg/Library/ArmLib/AArch64/ArmLibSupport.S
similarity index 100%
rename from ArmPkg/Library/ArmLib/Common/AArch64/ArmLibSupport.S
rename to ArmPkg/Library/ArmLib/AArch64/ArmLibSupport.S
diff --git a/ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.S b/ArmPkg/Library/ArmLib/Arm/ArmLibSupport.S
similarity index 100%
rename from ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.S
rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupport.S
diff --git a/ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.asm b/ArmPkg/Library/ArmLib/Arm/ArmLibSupport.asm
similarity index 100%
rename from ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.asm
rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupport.asm
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.S b/ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.S
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.S
rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.S
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.asm b/ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.asm
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.asm
rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.asm
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c b/ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimer.c
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c
rename to ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimer.c
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.S b/ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.S
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.S
rename to ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.S
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.asm b/ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.asm
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.asm
rename to ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.asm
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.c b/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.c
rename to ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.h b/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.h
rename to ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S b/ArmPkg/Library/ArmLib/Arm/ArmV7Support.S
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S
rename to ArmPkg/Library/ArmLib/Arm/ArmV7Support.S
diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.asm b/ArmPkg/Library/ArmLib/Arm/ArmV7Support.asm
similarity index 100%
rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.asm
rename to ArmPkg/Library/ArmLib/Arm/ArmV7Support.asm
diff --git a/ArmPkg/Library/ArmLib/ArmBaseLib.inf b/ArmPkg/Library/ArmLib/ArmBaseLib.inf
index 3e9f19c3cab1..05a585343cda 100644
--- a/ArmPkg/Library/ArmLib/ArmBaseLib.inf
+++ b/ArmPkg/Library/ArmLib/ArmBaseLib.inf
@@ -23,30 +23,30 @@ [Defines]
   LIBRARY_CLASS                  = ArmLib
 
 [Sources]
-  Common/ArmLib.c
+  ArmLib.c
 
 [Sources.ARM]
-  ArmV7/ArmV7Lib.c
-  ArmV7/ArmV7ArchTimer.c
+  Arm/ArmV7Lib.c
+  Arm/ArmV7ArchTimer.c
 
-  ArmV7/ArmLibSupportV7.S         | GCC
-  ArmV7/ArmV7Support.S            | GCC
-  ArmV7/ArmV7ArchTimerSupport.S   | GCC
-  Common/Arm/ArmLibSupport.S      | GCC
+  Arm/ArmLibSupport.S           | GCC
+  Arm/ArmLibSupportV7.S         | GCC
+  Arm/ArmV7Support.S            | GCC
+  Arm/ArmV7ArchTimerSupport.S   | GCC
 
-  ArmV7/ArmLibSupportV7.asm       | RVCT
-  ArmV7/ArmV7Support.asm          | RVCT
-  ArmV7/ArmV7ArchTimerSupport.asm | RVCT
-  Common/Arm/ArmLibSupport.asm    | RVCT
+  Arm/ArmLibSupport.asm         | RVCT
+  Arm/ArmLibSupportV7.asm       | RVCT
+  Arm/ArmV7Support.asm          | RVCT
+  Arm/ArmV7ArchTimerSupport.asm | RVCT
 
 [Sources.AARCH64]
   AArch64/AArch64Lib.c
   AArch64/AArch64ArchTimer.c
 
+  AArch64/ArmLibSupport.S
   AArch64/ArmLibSupportV8.S
   AArch64/AArch64Support.S
   AArch64/AArch64ArchTimerSupport.S
-  Common/AArch64/ArmLibSupport.S
 
 [Packages]
   ArmPkg/ArmPkg.dec
diff --git a/ArmPkg/Library/ArmLib/Common/ArmLib.c b/ArmPkg/Library/ArmLib/ArmLib.c
similarity index 100%
rename from ArmPkg/Library/ArmLib/Common/ArmLib.c
rename to ArmPkg/Library/ArmLib/ArmLib.c
diff --git a/ArmPkg/Library/ArmLib/Common/ArmLibPrivate.h b/ArmPkg/Library/ArmLib/ArmLibPrivate.h
similarity index 100%
rename from ArmPkg/Library/ArmLib/Common/ArmLibPrivate.h
rename to ArmPkg/Library/ArmLib/ArmLibPrivate.h
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 2/2] ArmPkg/ArmBaseLib: clean up directory structure
  2016-09-08  9:44 ` [PATCH 2/2] ArmPkg/ArmBaseLib: clean up directory structure Ard Biesheuvel
@ 2016-09-08 15:11   ` Leif Lindholm
  0 siblings, 0 replies; 3+ messages in thread
From: Leif Lindholm @ 2016-09-08 15:11 UTC (permalink / raw)
  To: Ard Biesheuvel; +Cc: edk2-devel

On Thu, Sep 08, 2016 at 10:44:28AM +0100, Ard Biesheuvel wrote:
> For historical reasons, the files under ArmLib are split up into 'common'
> files under Common/, containing common C files as well as AArch64 and Arm
> specific asm files, and ArmV7 and AArch64 files under ArmV7/ and AArch64/,
> respectively. This presumably dates back to the time when ArmLib supported
> different revisions of the 32-bit architecture (i.e., pre-V7)
> 
> Since the PI spec requires V7 or later, we can simplify this to Arm/ and
> AArch64, which aligns ArmLib with the majority of other modules that carry
> ARM or AArch64 specific code.
> 
> So move the files around so that shared files live at the same level as
> ArmBaseLib.inf, and ARM/AArch64 specific files live in Arm/ or AArch64/,
> respectively.
> 
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

For the series:
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>

> ---
>  ArmPkg/Library/ArmLib/{Common => }/AArch64/ArmLibSupport.S     |  0
>  ArmPkg/Library/ArmLib/{Common => }/Arm/ArmLibSupport.S         |  0
>  ArmPkg/Library/ArmLib/{Common => }/Arm/ArmLibSupport.asm       |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmLibSupportV7.S         |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmLibSupportV7.asm       |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7ArchTimer.c          |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7ArchTimerSupport.S   |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7ArchTimerSupport.asm |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Lib.c                |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Lib.h                |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Support.S            |  0
>  ArmPkg/Library/ArmLib/{ArmV7 => Arm}/ArmV7Support.asm          |  0
>  ArmPkg/Library/ArmLib/ArmBaseLib.inf                           | 24 ++++++++++----------
>  ArmPkg/Library/ArmLib/{Common => }/ArmLib.c                    |  0
>  ArmPkg/Library/ArmLib/{Common => }/ArmLibPrivate.h             |  0
>  15 files changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/ArmPkg/Library/ArmLib/Common/AArch64/ArmLibSupport.S b/ArmPkg/Library/ArmLib/AArch64/ArmLibSupport.S
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/Common/AArch64/ArmLibSupport.S
> rename to ArmPkg/Library/ArmLib/AArch64/ArmLibSupport.S
> diff --git a/ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.S b/ArmPkg/Library/ArmLib/Arm/ArmLibSupport.S
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.S
> rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupport.S
> diff --git a/ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.asm b/ArmPkg/Library/ArmLib/Arm/ArmLibSupport.asm
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/Common/Arm/ArmLibSupport.asm
> rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupport.asm
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.S b/ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.S
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.S
> rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.S
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.asm b/ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.asm
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmLibSupportV7.asm
> rename to ArmPkg/Library/ArmLib/Arm/ArmLibSupportV7.asm
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c b/ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimer.c
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimer.c
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimer.c
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.S b/ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.S
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.S
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.S
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.asm b/ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.asm
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7ArchTimerSupport.asm
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7ArchTimerSupport.asm
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.c b/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.c
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7Lib.c
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.h b/ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.h
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7Lib.h
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S b/ArmPkg/Library/ArmLib/Arm/ArmV7Support.S
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7Support.S
> diff --git a/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.asm b/ArmPkg/Library/ArmLib/Arm/ArmV7Support.asm
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.asm
> rename to ArmPkg/Library/ArmLib/Arm/ArmV7Support.asm
> diff --git a/ArmPkg/Library/ArmLib/ArmBaseLib.inf b/ArmPkg/Library/ArmLib/ArmBaseLib.inf
> index 3e9f19c3cab1..05a585343cda 100644
> --- a/ArmPkg/Library/ArmLib/ArmBaseLib.inf
> +++ b/ArmPkg/Library/ArmLib/ArmBaseLib.inf
> @@ -23,30 +23,30 @@ [Defines]
>    LIBRARY_CLASS                  = ArmLib
>  
>  [Sources]
> -  Common/ArmLib.c
> +  ArmLib.c
>  
>  [Sources.ARM]
> -  ArmV7/ArmV7Lib.c
> -  ArmV7/ArmV7ArchTimer.c
> +  Arm/ArmV7Lib.c
> +  Arm/ArmV7ArchTimer.c
>  
> -  ArmV7/ArmLibSupportV7.S         | GCC
> -  ArmV7/ArmV7Support.S            | GCC
> -  ArmV7/ArmV7ArchTimerSupport.S   | GCC
> -  Common/Arm/ArmLibSupport.S      | GCC
> +  Arm/ArmLibSupport.S           | GCC
> +  Arm/ArmLibSupportV7.S         | GCC
> +  Arm/ArmV7Support.S            | GCC
> +  Arm/ArmV7ArchTimerSupport.S   | GCC
>  
> -  ArmV7/ArmLibSupportV7.asm       | RVCT
> -  ArmV7/ArmV7Support.asm          | RVCT
> -  ArmV7/ArmV7ArchTimerSupport.asm | RVCT
> -  Common/Arm/ArmLibSupport.asm    | RVCT
> +  Arm/ArmLibSupport.asm         | RVCT
> +  Arm/ArmLibSupportV7.asm       | RVCT
> +  Arm/ArmV7Support.asm          | RVCT
> +  Arm/ArmV7ArchTimerSupport.asm | RVCT
>  
>  [Sources.AARCH64]
>    AArch64/AArch64Lib.c
>    AArch64/AArch64ArchTimer.c
>  
> +  AArch64/ArmLibSupport.S
>    AArch64/ArmLibSupportV8.S
>    AArch64/AArch64Support.S
>    AArch64/AArch64ArchTimerSupport.S
> -  Common/AArch64/ArmLibSupport.S
>  
>  [Packages]
>    ArmPkg/ArmPkg.dec
> diff --git a/ArmPkg/Library/ArmLib/Common/ArmLib.c b/ArmPkg/Library/ArmLib/ArmLib.c
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/Common/ArmLib.c
> rename to ArmPkg/Library/ArmLib/ArmLib.c
> diff --git a/ArmPkg/Library/ArmLib/Common/ArmLibPrivate.h b/ArmPkg/Library/ArmLib/ArmLibPrivate.h
> similarity index 100%
> rename from ArmPkg/Library/ArmLib/Common/ArmLibPrivate.h
> rename to ArmPkg/Library/ArmLib/ArmLibPrivate.h
> -- 
> 2.7.4
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-09-08 15:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-08  9:44 [PATCH 1/2] ArmPkg/ArmBaseLib: remove MemoryAllocationLib.h includes Ard Biesheuvel
2016-09-08  9:44 ` [PATCH 2/2] ArmPkg/ArmBaseLib: clean up directory structure Ard Biesheuvel
2016-09-08 15:11   ` Leif Lindholm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox