|  | # Copyright (C) 2004-2016 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/>. | 
|  |  | 
|  | # Build libunwind for ELF with the GNU linker. | 
|  |  | 
|  | SHLIB_SOLINK = @shlib_base_name@.so | 
|  | SHLIB_OBJS = @shlib_objs@ | 
|  | SHLIB_DIR = @multilib_dir@ | 
|  | SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@ | 
|  |  | 
|  | # Use unwind-dw2-fde-dip | 
|  | LIBUNWIND = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde-dip.c | 
|  |  | 
|  | SHLIBUNWIND_SOVERSION = 7 | 
|  | SHLIBUNWIND_SONAME = @shlib_base_name@.so.$(SHLIBUNWIND_SOVERSION) | 
|  |  | 
|  | SHLIBUNWIND_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared \ | 
|  | -nodefaultlibs -Wl,-h,$(SHLIBUNWIND_SONAME) \ | 
|  | -Wl,-z,text -Wl,-z,defs -o $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME).tmp \ | 
|  | @multilib_flags@ $(SHLIB_OBJS) -lc && \ | 
|  | rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \ | 
|  | if [ -f $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME) ]; then \ | 
|  | mv -f $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME) \ | 
|  | $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME).backup; \ | 
|  | else true; fi && \ | 
|  | mv $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME).tmp \ | 
|  | $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME) && \ | 
|  | $(LN_S) $(SHLIBUNWIND_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK) | 
|  |  | 
|  | SHLIBUNWIND_INSTALL = \ | 
|  | $(SHELL) $(srcdir)/mkinstalldirs $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL); \ | 
|  | $(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIBUNWIND_SONAME) \ | 
|  | $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIBUNWIND_SONAME); \ | 
|  | rm -f $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \ | 
|  | $(LN_S) $(SHLIBUNWIND_SONAME) \ | 
|  | $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK) |