1# Makefile for IPF unwind express library, libuwx.
2#
3# To build a cross-unwind library (i.e., one hosted on a
4# non-IPF, non-HP-UX system), omit the "self" callbacks
5# and the dependency on libuca by setting SELFOBJS and
6# SELFLIBS to empty strings.
7
8AR = ar
9RANLIB = :
10
11OTHERCFLAGS =
12# OTHERCFLAGS = -DUWX_TRACE_ENABLE	# Enables trace output
13# OTHERCFLAGS = +DD64			# Builds 64-bit library
14
15CFLAGS = -O $(OTHERCFLAGS)
16
17OBJS =		uwx_bstream.o uwx_context.o uwx_env.o uwx_scoreboard.o \
18		uwx_step.o uwx_str.o uwx_swap.o uwx_symbols.o \
19		uwx_trace.o uwx_uinfo.o uwx_utable.o
20
21# SELFOBJS =				# For cross-unwind library
22# SELFOBJS = 	uwx_self.o uwx_self_context.o uwx_ttrace.o
23SELFOBJS = 	uwx_self.o uwx_self_context.o
24
25# SELFLIBS =				# For cross-unwind library
26SELFLIBS =	-luca
27
28libuwx.a:	$(OBJS) $(SELFOBJS)
29	$(AR) rv libuwx.a $?
30	$(RANLIB) libuwx.a
31
32libuwx.so:	$(OBJS) $(SELFOBJS)
33	ld -b -o libuwx.so $(OBJS) $(SELFOBJS) $(SELFLIBS)
34
35libuwx.sl:	$(OBJS) $(SELFOBJS)
36	ld -b -o libuwx.sl $(OBJS) $(SELFOBJS) $(SELFLIBS)
37
38clean:
39	rm -f $(OBJS) $(SELFOBJS) libuwx.a libuwx.so libuwx.sl
40
41uwx_bstream.o:	uwx.h uwx_env.h uwx_bstream.h
42
43uwx_context.o:	uwx.h uwx_env.h uwx_scoreboard.h uwx_step.h uwx_trace.h
44
45uwx_env.o:	uwx.h uwx_env.h uwx_scoreboard.h uwx_str.h uwx_trace.h
46
47uwx_scoreboard.o: uwx.h uwx_env.h uwx_scoreboard.h uwx_trace.h
48
49uwx_step.o:	uwx.h uwx_env.h uwx_context.h uwx_utable.h \
50		uwx_uinfo.h uwx_scoreboard.h uwx_str.h uwx_trace.h
51
52uwx_str.o:	uwx.h uwx_env.h uwx_str.h
53
54uwx_swap.o:	uwx.h uwx_env.h uwx_swap.h
55
56uwx_symbols.o:	uwx.h uwx_env.h uwx_symbols.h
57
58uwx_trace.o:	uwx.h uwx_env.h uwx_uinfo.h uwx_scoreboard.h uwx_trace.h
59
60uwx_uinfo.o:	uwx.h uwx_env.h uwx_uinfo.h uwx_utable.h \
61		uwx_scoreboard.h uwx_bstream.h uwx_trace.h
62
63uwx_utable.o:	uwx.h uwx_env.h uwx_utable.h uwx_swap.h uwx_trace.h
64
65uwx_self.o:	uwx.h uwx_env.h uwx_context.h uwx_trace.h uwx_self.h \
66		uwx_symbols.h
67
68uwx_self_context.o:	uwx_self_context.s
69	$(CC) -c $(CFLAGS) -o uwx_self_context.o uwx_self_context.s
70
71uwx_ttrace.o:	uwx.h uwx_env.h uwx_context.h uwx_trace.h uwx_ttrace.h
72