1 # This shell script emits a C file. -*- C -*- 2 # Copyright (C) 2004-2014 Free Software Foundation, Inc. 3 # 4 # This file is part of the GNU Binutils. 5 # 6 # This program is free software; you can redistribute it and/or modify 7 # it under the terms of the GNU General Public License as published by 8 # the Free Software Foundation; either version 3 of the License, or 9 # (at your option) any later version. 10 # 11 # This program is distributed in the hope that it will be useful, 12 # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 # GNU General Public License for more details. 15 # 16 # You should have received a copy of the GNU General Public License 17 # along with this program; if not, write to the Free Software 18 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, 19 # MA 02110-1301, USA. 20 # 21 22 fragment <<EOF 23 24 #include "ld.h" 25 #include "ldmain.h" 26 #include "libiberty.h" 27 28 /* The native IRIX linker will always create a DT_SONAME for shared objects. 29 While this shouldn't really be necessary for ABI conformance, some versions 30 of the native linker will segfault if the tag is missing. */ 31 32 static void 33 irix_after_open (void) 34 { 35 if (link_info.shared && command_line.soname == 0) 36 command_line.soname 37 = (char *) lbasename (bfd_get_filename (link_info.output_bfd)); 38 39 gld${EMULATION_NAME}_after_open (); 40 } 41 EOF 42 43 LDEMUL_AFTER_OPEN=irix_after_open 44 source_em "${srcdir}/emultempl/mipself.em" 45