From ed32b997165d29a0a056254817ae8de92b91d72d Mon Sep 17 00:00:00 2001
From: "hp.com!davidm" <hp.com!davidm>
Date: Tue, 20 Apr 2004 16:53:44 +0000
Subject: [PATCH] (SOVERSION): Change from 2:0:1 to 3:0:2. (COMMON_SO_LDFLAGS):
 New macro. (libunwind_setjmp_la_LDFLAGS): Mention $(Common_SO_LDFLAGS).
 (libunwind_ia64_la_LDFLAGS): Likewise. (libunwind_hppa_la_LDFLAGS): Likewise.
 (libunwind_x86_la_LDFLAGS): Likewise. (libunwind_la_LDFLAGS): Likewise.
 (libunwind_setjmp_la_LIBADD): Mention -lc. (libunwind_ia64_la_LIBADD):
 Likewise. (libunwind_hppa_la_LIBADD): Likewise. (libunwind_x86_la_LIBADD):
 Likewise. (libunwind_la_LIBADD): Likewise. (libunwind_la_SOURCES_ia64):
 Mention mi/_ReadULEB.c and mi/_ReadSLEB.c. 	They are needed for Intel 8.0
 libunwind.so compatibility. ;-(

(Logical change 1.205)
---
 src/Makefile.am | 32 ++++++++++++++++++++++----------
 1 file changed, 22 insertions(+), 10 deletions(-)

diff --git a/src/Makefile.am b/src/Makefile.am
index 64f439e3..f267a542 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,5 +1,12 @@
-SOVERSION=2:0:1		# See comments at end of file.
+SOVERSION=3:0:2		# See comments at end of file.
 SETJMP_SO_VERSION=0:0:0
+#
+# Don't link with standard libraries, because those may mention
+# libunwind already.
+#
+COMMON_SO_LDFLAGS =	-XCClinker -nostartfiles	\
+			-XCClinker -nostdlib		\
+			$(LDFLAGS_STATIC_LIBCXA)
 
 if REMOTE_ONLY
 LIBRARIES_cdep			=
@@ -20,8 +27,9 @@ libunwind_ptrace_a_SOURCES =						  \
 	ptrace/_UPT_reg_offset.c ptrace/_UPT_resume.c
 
 ### libunwind-setjmp:
-libunwind_setjmp_la_LDFLAGS		= -version-info $(SETJMP_SO_VERSION)
-libunwind_setjmp_la_LIBADD		= libunwind-$(arch).la
+libunwind_setjmp_la_LDFLAGS		= $(COMMON_SO_LDFLAGS)		     \
+					  -version-info $(SETJMP_SO_VERSION)
+libunwind_setjmp_la_LIBADD		= libunwind-$(arch).la -lc
 libunwind_setjmp_la_SOURCES_common	= longjmp.c siglongjmp.c
 libunwind_setjmp_la_SOURCES_ia64	= ia64/setjmp-ia64.S		\
 					  ia64/sigsetjmp-ia64.S		\
@@ -102,6 +110,9 @@ libunwind_la_SOURCES_ia64 = $(libunwind_la_SOURCES_ia64_common)		   \
 									   \
 	elf64.c elf64.h							   \
 									   \
+	/* blech, needed for Intel C++ 8.0 compatibility */ 		   \
+	mi/_ReadULEB.c mi/_ReadSLEB.c					   \
+									   \
 	ia64/dyn_info_list-ia64.S ia64/getcontext-ia64.S		   \
 									   \
 	ia64/Lcreate_addr_space-ia64.c					   \
@@ -204,9 +215,9 @@ Lcursor_i.h: mk_Lcursor_i-ia64
  lib_LTLIBRARIES_arch = libunwind-ia64.la
  libunwind_la_SOURCES = $(libunwind_la_SOURCES_ia64)
  libunwind_ia64_la_SOURCES = $(libunwind_ia64_la_SOURCES_ia64)
- libunwind_ia64_la_LDFLAGS = -version-info $(SOVERSION)
+ libunwind_ia64_la_LDFLAGS = $(COMMON_SO_LDFLAGS) -version-info $(SOVERSION)
 if !REMOTE_ONLY
- libunwind_ia64_la_LIBADD = libunwind.la
+ libunwind_ia64_la_LIBADD = libunwind.la -lc
 endif
  libunwind_setjmp_la_SOURCES	= $(libunwind_setjmp_la_SOURCES_common) \
 				  $(libunwind_setjmp_la_SOURCES_ia64)
@@ -215,9 +226,9 @@ if ARCH_HPPA
  lib_LTLIBRARIES_arch = libunwind-hppa.la
  libunwind_la_SOURCES = $(libunwind_la_SOURCES_hppa)
  libunwind_hppa_la_SOURCES = $(libunwind_hppa_la_SOURCES_hppa)
- libunwind_hppa_la_LDFLAGS = -version-info $(SOVERSION)
+ libunwind_hppa_la_LDFLAGS = $(COMMON_SO_LDFLAGS) -version-info $(SOVERSION)
 if !REMOTE_ONLY
- libunwind_hppa_la_LIBADD = libunwind.la
+ libunwind_hppa_la_LIBADD = libunwind.la -lc
 endif
  libunwind_setjmp_la_SOURCES	= $(libunwind_setjmp_la_SOURCES_common) \
 				  $(libunwind_setjmp_la_SOURCES_hppa)
@@ -226,9 +237,9 @@ if ARCH_X86
  lib_LTLIBRARIES_arch = libunwind-x86.la
  libunwind_la_SOURCES = $(libunwind_la_SOURCES_x86)
  libunwind_x86_la_SOURCES = $(libunwind_x86_la_SOURCES_x86)
- libunwind_x86_la_LDFLAGS = -version-info $(SOVERSION)
+ libunwind_x86_la_LDFLAGS = $(COMMON_SO_LDFLAGS) -version-info $(SOVERSION)
 if !REMOTE_ONLY
- libunwind_x86_la_LIBADD = libunwind.la
+ libunwind_x86_la_LIBADD = libunwind.la -lc
 endif
  libunwind_setjmp_la_SOURCES	= $(libunwind_setjmp_la_SOURCES_common) \
 				  $(libunwind_setjmp_la_SOURCES_x86)
@@ -236,7 +247,8 @@ endif # ARCH_X86
 endif # ARCH_HPPA
 endif # ARCH_IA64
 
-libunwind_la_LDFLAGS = -XCClinker -nostartfiles	-version-info $(SOVERSION)
+libunwind_la_LDFLAGS =	$(COMMON_SO_LDFLAGS) -version-info $(SOVERSION)
+libunwind_la_LIBADD  = -lc
 
 lib_LIBRARIES = $(LIBRARIES_cdep)
 lib_LTLIBRARIES = $(lib_LTLIBRARIES_cdep) $(lib_LTLIBRARIES_arch)