diff mbox series

linux-user: move target_flat.h to target subdirs

Message ID 20230129004625.11228-1-vapier@gentoo.org
State New
Headers show
Series linux-user: move target_flat.h to target subdirs | expand

Commit Message

Mike Frysinger Jan. 29, 2023, 12:46 a.m. UTC
This makes target_flat.h behave like every other target_xxx.h header.
It also makes it actually work -- while the current header says adding
a header to the target subdir overrides the common one, it doesn't.
This is for two reasons:
* meson.build adds -Ilinux-user before -Ilinux-user/$arch
* the compiler search path for "target_flat.h" looks in the same dir
  as the source file before searching -I paths.

This can be seen with the xtensa port -- the subdir settings aren't
used which breaks stack setup.

Move it to the generic/ subdir and add include stubs like every
other target_xxx.h header is handled.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 linux-user/aarch64/target_flat.h       | 1 +
 linux-user/arm/target_flat.h           | 1 +
 linux-user/{ => generic}/target_flat.h | 0
 linux-user/m68k/target_flat.h          | 1 +
 linux-user/microblaze/target_flat.h    | 1 +
 linux-user/sh4/target_flat.h           | 1 +
 6 files changed, 5 insertions(+)
 create mode 100644 linux-user/aarch64/target_flat.h
 create mode 100644 linux-user/arm/target_flat.h
 rename linux-user/{ => generic}/target_flat.h (100%)
 create mode 100644 linux-user/m68k/target_flat.h
 create mode 100644 linux-user/microblaze/target_flat.h
 create mode 100644 linux-user/sh4/target_flat.h

Comments

Richard Henderson Jan. 29, 2023, 5:46 a.m. UTC | #1
On 1/28/23 14:46, Mike Frysinger wrote:
> This makes target_flat.h behave like every other target_xxx.h header.
> It also makes it actually work -- while the current header says adding
> a header to the target subdir overrides the common one, it doesn't.
> This is for two reasons:
> * meson.build adds -Ilinux-user before -Ilinux-user/$arch
> * the compiler search path for "target_flat.h" looks in the same dir
>    as the source file before searching -I paths.
> 
> This can be seen with the xtensa port -- the subdir settings aren't
> used which breaks stack setup.
> 
> Move it to the generic/ subdir and add include stubs like every
> other target_xxx.h header is handled.
> 
> Signed-off-by: Mike Frysinger<vapier@gentoo.org>
> ---
>   linux-user/aarch64/target_flat.h       | 1 +
>   linux-user/arm/target_flat.h           | 1 +
>   linux-user/{ => generic}/target_flat.h | 0
>   linux-user/m68k/target_flat.h          | 1 +
>   linux-user/microblaze/target_flat.h    | 1 +
>   linux-user/sh4/target_flat.h           | 1 +
>   6 files changed, 5 insertions(+)
>   create mode 100644 linux-user/aarch64/target_flat.h
>   create mode 100644 linux-user/arm/target_flat.h
>   rename linux-user/{ => generic}/target_flat.h (100%)
>   create mode 100644 linux-user/m68k/target_flat.h
>   create mode 100644 linux-user/microblaze/target_flat.h
>   create mode 100644 linux-user/sh4/target_flat.h

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


r~
Laurent Vivier Jan. 30, 2023, 8:40 a.m. UTC | #2
Le 29/01/2023 à 01:46, Mike Frysinger a écrit :
> This makes target_flat.h behave like every other target_xxx.h header.
> It also makes it actually work -- while the current header says adding
> a header to the target subdir overrides the common one, it doesn't.
> This is for two reasons:
> * meson.build adds -Ilinux-user before -Ilinux-user/$arch
> * the compiler search path for "target_flat.h" looks in the same dir
>    as the source file before searching -I paths.
> 
> This can be seen with the xtensa port -- the subdir settings aren't
> used which breaks stack setup.
> 
> Move it to the generic/ subdir and add include stubs like every
> other target_xxx.h header is handled.
> 
> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
> ---
>   linux-user/aarch64/target_flat.h       | 1 +
>   linux-user/arm/target_flat.h           | 1 +
>   linux-user/{ => generic}/target_flat.h | 0
>   linux-user/m68k/target_flat.h          | 1 +
>   linux-user/microblaze/target_flat.h    | 1 +
>   linux-user/sh4/target_flat.h           | 1 +
>   6 files changed, 5 insertions(+)
>   create mode 100644 linux-user/aarch64/target_flat.h
>   create mode 100644 linux-user/arm/target_flat.h
>   rename linux-user/{ => generic}/target_flat.h (100%)
>   create mode 100644 linux-user/m68k/target_flat.h
>   create mode 100644 linux-user/microblaze/target_flat.h
>   create mode 100644 linux-user/sh4/target_flat.h
> 
> diff --git a/linux-user/aarch64/target_flat.h b/linux-user/aarch64/target_flat.h
> new file mode 100644
> index 000000000000..bc83224cea12
> --- /dev/null
> +++ b/linux-user/aarch64/target_flat.h
> @@ -0,0 +1 @@
> +#include "../generic/target_flat.h"
> diff --git a/linux-user/arm/target_flat.h b/linux-user/arm/target_flat.h
> new file mode 100644
> index 000000000000..bc83224cea12
> --- /dev/null
> +++ b/linux-user/arm/target_flat.h
> @@ -0,0 +1 @@
> +#include "../generic/target_flat.h"
> diff --git a/linux-user/target_flat.h b/linux-user/generic/target_flat.h
> similarity index 100%
> rename from linux-user/target_flat.h
> rename to linux-user/generic/target_flat.h
> diff --git a/linux-user/m68k/target_flat.h b/linux-user/m68k/target_flat.h
> new file mode 100644
> index 000000000000..bc83224cea12
> --- /dev/null
> +++ b/linux-user/m68k/target_flat.h
> @@ -0,0 +1 @@
> +#include "../generic/target_flat.h"
> diff --git a/linux-user/microblaze/target_flat.h b/linux-user/microblaze/target_flat.h
> new file mode 100644
> index 000000000000..bc83224cea12
> --- /dev/null
> +++ b/linux-user/microblaze/target_flat.h
> @@ -0,0 +1 @@
> +#include "../generic/target_flat.h"
> diff --git a/linux-user/sh4/target_flat.h b/linux-user/sh4/target_flat.h
> new file mode 100644
> index 000000000000..bc83224cea12
> --- /dev/null
> +++ b/linux-user/sh4/target_flat.h
> @@ -0,0 +1 @@
> +#include "../generic/target_flat.h"

Applied to my linux-user-for-8.0 branch.

Thanks,
Laurent
diff mbox series

Patch

diff --git a/linux-user/aarch64/target_flat.h b/linux-user/aarch64/target_flat.h
new file mode 100644
index 000000000000..bc83224cea12
--- /dev/null
+++ b/linux-user/aarch64/target_flat.h
@@ -0,0 +1 @@ 
+#include "../generic/target_flat.h"
diff --git a/linux-user/arm/target_flat.h b/linux-user/arm/target_flat.h
new file mode 100644
index 000000000000..bc83224cea12
--- /dev/null
+++ b/linux-user/arm/target_flat.h
@@ -0,0 +1 @@ 
+#include "../generic/target_flat.h"
diff --git a/linux-user/target_flat.h b/linux-user/generic/target_flat.h
similarity index 100%
rename from linux-user/target_flat.h
rename to linux-user/generic/target_flat.h
diff --git a/linux-user/m68k/target_flat.h b/linux-user/m68k/target_flat.h
new file mode 100644
index 000000000000..bc83224cea12
--- /dev/null
+++ b/linux-user/m68k/target_flat.h
@@ -0,0 +1 @@ 
+#include "../generic/target_flat.h"
diff --git a/linux-user/microblaze/target_flat.h b/linux-user/microblaze/target_flat.h
new file mode 100644
index 000000000000..bc83224cea12
--- /dev/null
+++ b/linux-user/microblaze/target_flat.h
@@ -0,0 +1 @@ 
+#include "../generic/target_flat.h"
diff --git a/linux-user/sh4/target_flat.h b/linux-user/sh4/target_flat.h
new file mode 100644
index 000000000000..bc83224cea12
--- /dev/null
+++ b/linux-user/sh4/target_flat.h
@@ -0,0 +1 @@ 
+#include "../generic/target_flat.h"