]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/mips/linux.h
Update copyright years.
[thirdparty/gcc.git] / gcc / config / mips / linux.h
CommitLineData
18cae839 1/* Definitions for MIPS running Linux-based GNU systems with ELF format.
aeee4812 2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
18cae839 3
7ec022b2 4This file is part of GCC.
18cae839 5
7ec022b2 6GCC is free software; you can redistribute it and/or modify
18cae839 7it under the terms of the GNU General Public License as published by
2f83c7d6 8the Free Software Foundation; either version 3, or (at your option)
18cae839
RL
9any later version.
10
7ec022b2 11GCC is distributed in the hope that it will be useful,
18cae839
RL
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
2f83c7d6
NC
17along with GCC; see the file COPYING3. If not see
18<http://www.gnu.org/licenses/>. */
18cae839 19
9a7451a5
SE
20#define GNU_USER_LINK_EMULATION32 "elf32%{EB:b}%{EL:l}tsmip"
21#define GNU_USER_LINK_EMULATION64 "elf64%{EB:b}%{EL:l}tsmip"
22#define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
23
24#define GLIBC_DYNAMIC_LINKER32 \
ff3f3951 25 "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}"
9a7451a5
SE
26#define GLIBC_DYNAMIC_LINKER64 \
27 "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}"
28#define GLIBC_DYNAMIC_LINKERN32 \
29 "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}"
ff3f3951 30
9a7451a5
SE
31#undef UCLIBC_DYNAMIC_LINKER32
32#define UCLIBC_DYNAMIC_LINKER32 \
ff3f3951 33 "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
9a7451a5
SE
34#undef UCLIBC_DYNAMIC_LINKER64
35#define UCLIBC_DYNAMIC_LINKER64 \
36 "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}"
37#define UCLIBC_DYNAMIC_LINKERN32 \
38 "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
39
6bc59493 40#undef MUSL_DYNAMIC_LINKER32
384043e8
SN
41#define MUSL_DYNAMIC_LINKER32 \
42 "/lib/ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
6bc59493 43#undef MUSL_DYNAMIC_LINKER64
384043e8
SN
44#define MUSL_DYNAMIC_LINKER64 \
45 "/lib/ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
46#define MUSL_DYNAMIC_LINKERN32 \
47 "/lib/ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
6bc59493 48
9a7451a5
SE
49#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
50#define GNU_USER_DYNAMIC_LINKERN32 \
51 CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \
6bc59493 52 BIONIC_DYNAMIC_LINKERN32, MUSL_DYNAMIC_LINKERN32)
a3c1e1f2
DM
53
54#undef NEED_INDICATE_EXEC_STACK
55
54b3d52c
DM
56#ifdef TARGET_LIBC_GNUSTACK
57#define NEED_INDICATE_EXEC_STACK 1
58#else
a3c1e1f2 59#define NEED_INDICATE_EXEC_STACK TARGET_SOFT_FLOAT
54b3d52c 60#endif