Patchwork PATCH: PR target/48904: x86_64-knetbsd-gnu fails to build

login
register
mail settings
Submitter H.J. Lu
Date Sept. 21, 2012, 7:11 p.m.
Message ID <20120921191128.GA18459@intel.com>
Download mbox | patch
Permalink /patch/185886/
State New
Headers show

Comments

H.J. Lu - Sept. 21, 2012, 7:11 p.m.
Hi,

This patch adds i386/knetbsd-gnu64.h for x86_64-knetbsd-gnu.  OK to
install?

Thanks.

H.J.
---
2012-09-21  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/48904
	* config.gcc (tm_file): Add i386/knetbsd-gnu64.h for
	x86_64-*-knetbsd*-gnu.

	* config/i386/knetbsd-gnu64.h: New file.
aldot - May 8, 2015, 7:39 a.m.
On 21 September 2012 at 21:11, H.J. Lu <hongjiu.lu@intel.com> wrote:
> Hi,
>
> This patch adds i386/knetbsd-gnu64.h for x86_64-knetbsd-gnu.  OK to
> install?

I now installed this to trunk as r222903 after Jeff's approval.

Thanks!
>
> Thanks.
>
> H.J.
> ---
> 2012-09-21  H.J. Lu  <hongjiu.lu@intel.com>
>
>         PR target/48904
>         * config.gcc (tm_file): Add i386/knetbsd-gnu64.h for
>         x86_64-*-knetbsd*-gnu.
>
>         * config/i386/knetbsd-gnu64.h: New file.
>
> diff --git a/gcc/config.gcc b/gcc/config.gcc
> index d6c8153..00db1b4 100644
> --- a/gcc/config.gcc
> +++ b/gcc/config.gcc
> @@ -1275,7 +1275,7 @@ x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
>                 tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h"
>                 ;;
>         x86_64-*-knetbsd*-gnu)
> -               tm_file="${tm_file} knetbsd-gnu.h"
> +               tm_file="${tm_file} knetbsd-gnu.h i386/knetbsd-gnu64.h"
>                 ;;
>         esac
>         tmake_file="${tmake_file} i386/t-linux64"
> diff --git a/gcc/config/i386/knetbsd-gnu64.h b/gcc/config/i386/knetbsd-gnu64.h
> new file mode 100644
> index 0000000..d621bbe
> --- /dev/null
> +++ b/gcc/config/i386/knetbsd-gnu64.h
> @@ -0,0 +1,27 @@
> +/* Definitions for AMD x86-64 running kNetBSD-based GNU systems with ELF format
> +   Copyright (C) 2012
> +   Free Software Foundation, Inc.
> +
> +This file is part of GCC.
> +
> +GCC is free software; you can redistribute it and/or modify
> +it under the terms of the GNU General Public License as published by
> +the Free Software Foundation; either version 3, or (at your option)
> +any later version.
> +
> +GCC is distributed in the hope that it will be useful,
> +but WITHOUT ANY WARRANTY; without even the implied warranty of
> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +GNU General Public License for more details.
> +
> +You should have received a copy of the GNU General Public License
> +along with GCC; see the file COPYING3.  If not see
> +<http://www.gnu.org/licenses/>.  */
> +
> +#define GNU_USER_LINK_EMULATION32 "elf_i386"
> +#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
> +#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
> +
> +#define GNU_USER_DYNAMIC_LINKER32 "/lib/ld.so.1"
> +#define GNU_USER_DYNAMIC_LINKER64 "/lib/ld-knetbsd-x86-64.so.1"
> +#define GNU_USER_DYNAMIC_LINKERX32 "/lib/ld-knetbsd-x32.so.1"

Patch

diff --git a/gcc/config.gcc b/gcc/config.gcc
index d6c8153..00db1b4 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1275,7 +1275,7 @@  x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
 		tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h"
 		;;
 	x86_64-*-knetbsd*-gnu)
-		tm_file="${tm_file} knetbsd-gnu.h"
+		tm_file="${tm_file} knetbsd-gnu.h i386/knetbsd-gnu64.h"
 		;;
 	esac
 	tmake_file="${tmake_file} i386/t-linux64"
diff --git a/gcc/config/i386/knetbsd-gnu64.h b/gcc/config/i386/knetbsd-gnu64.h
new file mode 100644
index 0000000..d621bbe
--- /dev/null
+++ b/gcc/config/i386/knetbsd-gnu64.h
@@ -0,0 +1,27 @@ 
+/* Definitions for AMD x86-64 running kNetBSD-based GNU systems with ELF format
+   Copyright (C) 2012
+   Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING3.  If not see
+<http://www.gnu.org/licenses/>.  */
+
+#define GNU_USER_LINK_EMULATION32 "elf_i386"
+#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
+#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
+
+#define GNU_USER_DYNAMIC_LINKER32 "/lib/ld.so.1"
+#define GNU_USER_DYNAMIC_LINKER64 "/lib/ld-knetbsd-x86-64.so.1"
+#define GNU_USER_DYNAMIC_LINKERX32 "/lib/ld-knetbsd-x32.so.1"