Makefile.am revision ad7f1470e3ada2f6f5b2c7dc913b3cd3df4aa2c7
1SOVERSION=1:0:0 # See comments at end of file. 2SETJMP_SO_VERSION=0:0:0 3 4if REMOTE_ONLY 5# Nothing special. 6else 7 8libunwind_la_SOURCES_cdep = \ 9 _UPT_internal.h \ 10 \ 11 _UPT_accessors.c _UPT_access_fpreg.c _UPT_access_mem.c \ 12 _UPT_access_reg.c _UPT_create.c _UPT_destroy.c _UPT_find_proc_info.c \ 13 _UPT_get_dyn_info_list_addr.c _UPT_put_unwind_info.c \ 14 _UPT_reg_offset.c 15 16lib_LTLIBRARIES_cdep = libunwind-setjmp.la 17libunwind_setjmp_la_SOURCES_common = longjmp.c siglongjmp.c 18libunwind_setjmp_la_LDFLAGS = -version-info $(SETJMP_SO_VERSION) 19libunwind_setjmp_la_LIBADD = libunwind-$(arch).la 20 21libunwind_setjmp_la_SOURCES_ia64 = ia64/setjmp-ia64.S ia64/sigsetjmp-ia64.S \ 22 ia64/siglongjmp-ia64.S 23libunwind_setjmp_la_SOURCES_hppa = setjmp.c sigsetjmp.c hppa/siglongjmp-hppa.S 24libunwind_setjmp_la_SOURCES_x86 = setjmp.c sigsetjmp.c x86/siglongjmp-x86.S 25# 26# This is not ideal, but I know of no other way to install an 27# alias for a library. 28# 29install-exec-hook: 30 $(LN_S) -f libunwind-$(arch).a $(DESTDIR)$(libdir)/libunwind.a 31 $(LN_S) -f libunwind-$(arch).so $(DESTDIR)$(libdir)/libunwind.so 32 33endif 34 35if OS_LINUX 36 libunwind_la_SOURCES_os = os-linux.h os-linux.c 37endif 38 39libunwind_la_SOURCES_common = $(libunwind_la_SOURCES_cdep) \ 40 $(libunwind_la_SOURCES_os) \ 41 backtrace.c get_proc_name.c \ 42 dyn-cancel.c dyn-extract.c dyn-register.c \ 43 dyn-remote.c \ 44 mi-init.c \ 45 mempool.c \ 46 Gfind_dynamic_proc_info.c Gput_dynamic_unwind_info.c \ 47 Lfind_dynamic_proc_info.c Lput_dynamic_unwind_info.c 48 49# 50# Note: As of automake-1.6, there is a stupid limitation which requires 51# that each filename is unique. This prevents us from having, e.g., 52# ia64/tables.c and x86/tables.c. The fix for now is to uglify the 53# filenames by appending the arch-name (e.g., tables-ia64.c). Oh, well. 54# 55 56libunwind_la_SOURCES_ia64 = $(libunwind_la_SOURCES_common) \ 57 ia64/init.h ia64/offsets.h ia64/regs.h ia64/rse.h \ 58 ia64/ucontext_i.h ia64/unwind_decoder.h ia64/unwind_i.h \ 59 \ 60 elf64.c \ 61 ia64/_Uia64_install_context.S ia64/global-ia64.c ia64/rbs-ia64.c \ 62 ia64/tables-ia64.c ia64/get_accessors-ia64.c \ 63 ia64/flush_cache-ia64.c ia64/set_caching_policy-ia64.c \ 64 ia64/regname-ia64.c \ 65 \ 66 ia64/Ginit-ia64.c ia64/Gparser-ia64.c ia64/Gregs-ia64.c \ 67 ia64/Gscript-ia64.c ia64/Gcreate_addr_space-ia64.c \ 68 ia64/Gdestroy_addr_space-ia64.c \ 69 ia64/Gget_proc_info-ia64.c ia64/Gget_proc_name-ia64.c \ 70 ia64/Gget_reg-ia64.c ia64/Gget_fpreg-ia64.c ia64/Gget_save_loc-ia64.c \ 71 ia64/Gis_signal_frame-ia64.c \ 72 ia64/Gresume-ia64.c ia64/Gset_reg-ia64.c ia64/Gset_fpreg-ia64.c \ 73 ia64/Ginit_local-ia64.c ia64/Ginit_remote-ia64.c ia64/Gstep-ia64.c \ 74 \ 75 ia64/Linit-ia64.c ia64/Lparser-ia64.c ia64/Lregs-ia64.c \ 76 ia64/Lscript-ia64.c ia64/Lcreate_addr_space-ia64.c \ 77 ia64/Ldestroy_addr_space-ia64.c \ 78 ia64/Lget_proc_info-ia64.c ia64/Lget_proc_name-ia64.c \ 79 ia64/Lget_reg-ia64.c ia64/Lget_fpreg-ia64.c ia64/Lget_save_loc-ia64.c \ 80 ia64/Lis_signal_frame-ia64.c \ 81 ia64/Lresume-ia64.c ia64/Lset_reg-ia64.c ia64/Lset_fpreg-ia64.c \ 82 ia64/Linit_local-ia64.c ia64/Linit_remote-ia64.c ia64/Lstep-ia64.c 83 84libunwind_la_SOURCES_hppa = $(libunwind_la_SOURCES_common) \ 85 hppa/flush_cache-hppa.c hppa/get_accessors-hppa.c \ 86 hppa/global-hppa.c hppa/tables-hppa.c \ 87 hppa/init.h hppa/unwind_i.h \ 88 \ 89 hppa/Gget_reg-hppa.c hppa/Gget_proc_name-hppa.c \ 90 hppa/Ginit-hppa.c hppa/Ginit_local-hppa.c \ 91 hppa/Gget_proc_info-hppa.c hppa/Gregs-hppa.c hppa/Gstep-hppa.c \ 92 \ 93 hppa/Lget_reg-hppa.c hppa/Lget_proc_name-hppa.c \ 94 hppa/Linit-hppa.c hppa/Linit_local-hppa.c \ 95 hppa/Lget_proc_info-hppa.c hppa/Lregs-hppa.c hppa/Lstep-hppa.c 96 97libunwind_la_SOURCES_x86 = $(libunwind_la_SOURCES_common) \ 98 x86/flush_cache-x86.c x86/get_accessors-x86.c x86/global-x86.c \ 99 x86/tables-x86.c \ 100 x86/init.h x86/unwind_i.h \ 101 \ 102 x86/Gget_reg-x86.c x86/Gget_proc_name-x86.c x86/Ginit-x86.c \ 103 x86/Ginit_local-x86.c x86/Gget_proc_info-x86.c x86/Gregs-x86.c \ 104 x86/Gstep-x86.c \ 105 \ 106 x86/Lget_reg-x86.c x86/Lget_proc_name-x86.c x86/Linit-x86.c \ 107 x86/Linit_local-x86.c x86/Lget_proc_info-x86.c x86/Lregs-x86.c \ 108 x86/Lstep-x86.c 109 110if ARCH_IA64 111 mk_cursor_i_ia64_SOURCES = ia64/mk_cursor_i-ia64.c 112 noinst_PROGRAMS = mk_cursor_i-ia64 113 BUILT_SOURCES = cursor_i.h 114cursor_i.h: mk_cursor_i-ia64 115 mk_cursor_i-ia64 > $@ 116 lib_LTLIBRARIES_arch = libunwind-ia64.la 117 libunwind_ia64_la_SOURCES = $(libunwind_la_SOURCES_ia64) 118 libunwind_ia64_la_LDFLAGS = -version-info $(SOVERSION) 119 libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ 120 $(libunwind_setjmp_la_SOURCES_ia64) 121else 122if ARCH_HPPA 123 lib_LTLIBRARIES_arch = libunwind-hppa.la 124 libunwind_hppa_la_SOURCES = $(libunwind_la_SOURCES_hppa) 125 libunwind_hppa_la_LDFLAGS = -version-info $(SOVERSION) 126 libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ 127 $(libunwind_setjmp_la_SOURCES_hppa) 128else 129if ARCH_X86 130 lib_LTLIBRARIES_arch = libunwind-x86.la 131 libunwind_x86_la_SOURCES = $(libunwind_la_SOURCES_x86) 132 libunwind_x86_la_LDFLAGS = -version-info $(SOVERSION) 133 libunwind_setjmp_la_SOURCES = $(libunwind_setjmp_la_SOURCES_common) \ 134 $(libunwind_setjmp_la_SOURCES_x86) 135endif # ARCH_X86 136endif # ARCH_HPPA 137endif # ARCH_IA64 138 139lib_LTLIBRARIES = $(lib_LTLIBRARIES_cdep) $(lib_LTLIBRARIES_arch) 140 141# XXX Need to create symlinks from libunwind-ia64.so to libunwind.so 142# XXX end libunwind-ia64.a to libunwind.a 143 144AM_CPPFLAGS = -I$(top_srcdir)/include -I. 145AM_CCASFLAGS = $(AM_CPPFLAGS) 146 147# The -version-info flag accepts an argument of the form 148# `current[:revision[:age]]'. So, passing `-version-info 3:12:1' sets 149# current to 3, revision to 12, and age to 1. 150 151# If either revision or age are omitted, they default to 0. Also note 152# that age must be less than or equal to the current interface number. 153 154# Here are a set of rules to help you update your library version 155# information: 156 157# 1. Start with version information of `0:0:0' for each libtool 158# library. 159 160# 2. Update the version information only immediately before a public 161# release of your software. More frequent updates are unnecessary, 162# and only guarantee that the current interface number gets larger 163# faster. 164 165# 3. If the library source code has changed at all since the last 166# update, then increment revision (`c:r:a' becomes `c:r+1:a'). 167 168# 4. If any interfaces have been added, removed, or changed since the 169# last update, increment current, and set revision to 0. 170 171# 5. If any interfaces have been added since the last public release, 172# then increment age. 173 174# 6. If any interfaces have been removed since the last public 175# release, then set age to 0. 176