summaryrefslogtreecommitdiff
path: root/src/Makefile.am
diff options
context:
space:
mode:
authorTommi Rantala <tt.rantala@gmail.com>2012-07-31 15:01:02 +0300
committerTommi Rantala <tt.rantala@gmail.com>2012-07-31 16:03:53 +0300
commit354b3fd45b441f5338ea3514f0784092ada107b3 (patch)
tree850d4ff0e03b113d6795989877dad3efe0e2407d /src/Makefile.am
parenta06f189baf4080374729299516b3b9f8ce60dd25 (diff)
downloadlibunwind-354b3fd45b441f5338ea3514f0784092ada107b3.tar.gz
Allow IA64 cross-compilation
Change the way we generate the cursor header files, so that we do not need to invoke IA64 binaries, which would fail when cross-compiling libunwind. Adopt the strategy used in the Linux kernel build system, and parse our annotated offset information from the assembler file produced by the compiler.
Diffstat (limited to 'src/Makefile.am')
-rw-r--r--src/Makefile.am15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 281f2f5d..b3fd0433 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -400,14 +400,15 @@ endif
libunwind_setjmp_la_SOURCES += arm/siglongjmp.S
else
if ARCH_IA64
- ia64_mk_Gcursor_i_SOURCES = ia64/mk_Gcursor_i.c
- ia64_mk_Lcursor_i_SOURCES = ia64/mk_Lcursor_i.c
- noinst_PROGRAMS = ia64/mk_Gcursor_i ia64/mk_Lcursor_i
BUILT_SOURCES = Gcursor_i.h Lcursor_i.h
-Gcursor_i.h: ia64/mk_Gcursor_i
- ia64/mk_Gcursor_i > $@
-Lcursor_i.h: ia64/mk_Lcursor_i
- ia64/mk_Lcursor_i > $@
+mk_Gcursor_i.s: ia64/mk_Gcursor_i.c
+ $(COMPILE) -S ia64/mk_Gcursor_i.c -o mk_Gcursor_i.s
+mk_Lcursor_i.s: ia64/mk_Lcursor_i.c
+ $(COMPILE) -S ia64/mk_Lcursor_i.c -o mk_Lcursor_i.s
+Gcursor_i.h: mk_Gcursor_i.s
+ ia64/mk_cursor_i mk_Gcursor_i.s > Gcursor_i.h
+Lcursor_i.h: mk_Lcursor_i.s
+ ia64/mk_cursor_i mk_Lcursor_i.s > Lcursor_i.h
lib_LTLIBRARIES += libunwind-ia64.la
libunwind_la_SOURCES = $(libunwind_la_SOURCES_ia64)