1/* Definitions of target machine for GNU compiler 2 for Alpha Linux-based GNU systems using ELF. 3 Copyright (C) 1996-2020 Free Software Foundation, Inc. 4 Contributed by Richard Henderson. 5 6This file is part of GCC. 7 8GCC is free software; you can redistribute it and/or modify 9it under the terms of the GNU General Public License as published by 10the Free Software Foundation; either version 3, or (at your option) 11any later version. 12 13GCC is distributed in the hope that it will be useful, 14but WITHOUT ANY WARRANTY; without even the implied warranty of 15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16GNU General Public License for more details. 17 18You should have received a copy of the GNU General Public License 19along with GCC; see the file COPYING3. If not see 20<http://www.gnu.org/licenses/>. */ 21 22#undef EXTRA_SPECS 23#define EXTRA_SPECS \ 24{ "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, 25 26#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" 27#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" 28#if DEFAULT_LIBC == LIBC_UCLIBC 29#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" 30#elif DEFAULT_LIBC == LIBC_GLIBC 31#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}" 32#else 33#error "Unsupported DEFAULT_LIBC" 34#endif 35#define GNU_USER_DYNAMIC_LINKER \ 36 CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) 37 38#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER 39 40#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ 41 %{O*:-O3} %{!O*:-O1} \ 42 %{shared:-shared} \ 43 %{!shared: \ 44 %{!static: \ 45 %{rdynamic:-export-dynamic} \ 46 -dynamic-linker %(elf_dynamic_linker)} \ 47 %{static:-static}}" 48 49#undef LIB_SPEC 50#define LIB_SPEC \ 51"%{pthread:-lpthread} %{shared:-lc}%{!shared:%{profile:-lc_p}%{!profile:-lc}} " 52 53#define TARGET_ASM_FILE_END file_end_indicate_exec_stack 54