Do not build shared-only libs for --disable-shared
[openafs.git] / src / roken / Makefile.in
1 # A roken library for AFS
2
3 srcdir=@srcdir@
4 include @TOP_OBJDIR@/src/config/Makefile.config
5 include @TOP_OBJDIR@/src/config/Makefile.libtool
6 include @TOP_OBJDIR@/src/config/Makefile.pthread
7
8 LT_current = 2
9 LT_revision = 0
10 LT_age = 0
11
12 # ROKEN_LTLIBOBJS incorporates the pieces which configure has detected we
13 # need to replace/provide.  The values contained therein include a prefix
14 # ${LIBOBJDIR}, which is not set, so they will be sought in this directory.
15 LT_objs = $(ROKEN_LTLIBOBJS) base64.lo cloexec.lo ct.lo hex.lo issuid.lo \
16           mkdir.lo net_read.lo net_write.lo socket.lo snprintf.lo \
17           warnerr.lo
18
19 HEADERS = ${TOP_INCDIR}/base64.h \
20           ${TOP_INCDIR}/roken.h \
21           ${TOP_INCDIR}/roken-common.h
22
23 UPSTREAM = $(TOP_SRCDIR)/external/heimdal/roken
24
25 @SHARED_ONLY@SHARED_LIBS = librokenafs.la
26 @SHARED_ONLY@SHARED_SHLIBS_TOP = $(TOP_LIBDIR)/librokenafs.$(SHLIB_SUFFIX)
27
28 # TOP_LIBDIR is a convenient place where we can ensure that both the shared
29 # and static versions of the library will end up (I'm looking at you, AIX).
30 # Otherwise we could just use .libs directly, since only openafs-internal
31 # tools will be linking roken from that directory.
32 all: $(ROKEN_HEADERS) $(HEADERS) $(SHARED_SHLIBS_TOP) \
33         $(TOP_LIBDIR)/librokenafs.a
34
35 buildtools: $(ROKEN_HEADERS) $(HEADERS)
36
37 install: $(SHARED_LIBS) librokenafs.a
38         @SHARED_ONLY@$(LT_INSTALL_DATA) librokenafs.la $(DESTDIR)$(libdir)/librokenafs.la
39         @SHARED_ONLY@$(RM) $(DESTDIR)$(libdir)/librokenafs.la
40         $(INSTALL_DATA) librokenafs.a $(DESTDIR)$(libdir)/librokenafs.a
41
42 dest: $(SHARED_LIBS) librokenafs.a
43         @SHARED_ONLY@$(LT_INSTALL_DATA) librokenafs.la $(DEST)/lib/librokenafs.la
44         @SHARED_ONLY@$(RM) $(DEST)/lib/librokenafs.la
45         $(INSTALL_DATA) librokenafs.a $(DEST)/lib/librokenafs.a
46
47 clean:
48         $(LT_CLEAN)
49         $(RM) -f $(OBJECTS) librokenafs.a err.h roken.h
50
51 $(TOP_LIBDIR)/librokenafs.$(SHLIB_SUFFIX): librokenafs.la
52         $(LT_INSTALL_DATA) librokenafs.la $(TOP_LIBDIR)/librokenafs.la
53         # libtool gets confused if we leave these around
54         $(RM) $(TOP_LIBDIR)/librokenafs.la
55
56 librokenafs.la: librokenafs.la.sym $(LT_objs)
57         $(LT_LDLIB_shlib_missing) $(LT_objs)
58
59 $(TOP_LIBDIR)/librokenafs.a: librokenafs.a
60         $(INSTALL_DATA) $? $@
61
62 librokenafs.a: $(LT_objs)
63         $(LT_LDLIB_static) $(LT_objs)
64
65 $(TOP_INCDIR)/base64.h: ${UPSTREAM}/base64.h
66         $(INSTALL_DATA) $? $@
67
68 $(TOP_INCDIR)/err.h: ${UPSTREAM}/err.hin
69         $(INSTALL_DATA) $? $@
70
71 $(TOP_INCDIR)/roken.h: roken.h
72         $(INSTALL_DATA) $? $@
73
74 $(TOP_INCDIR)/roken-common.h: $(UPSTREAM)/roken-common.h
75         $(INSTALL_DATA) $? $@
76
77 err.h: ${UPSTREAM}/err.hin
78         $(INSTALL_DATA) $? $@
79
80 roken.h: $(UPSTREAM)/roken.h.in roken-post.h
81         cat $(UPSTREAM)/roken.h.in $(srcdir)/roken-post.h >$@
82
83 # Here we have explicit rules for all the libtool objects we might need to
84 # build.  The implicit rules don't work since the sources are in a different
85 # castle.
86 base64.lo: $(UPSTREAM)/base64.c ${HEADERS}
87         $(LT_CCRULE) $(UPSTREAM)/base64.c
88
89 cloexec.lo: ${UPSTREAM}/cloexec.c ${HEADERS}
90         $(LT_CCRULE) $(UPSTREAM)/cloexec.c
91
92 ct.lo: ${UPSTREAM}/ct.c ${HEADERS}
93         $(LT_CCRULE) $(UPSTREAM)/ct.c
94
95 daemon.lo: ${UPSTREAM}/daemon.c ${HEADERS}
96         $(LT_CCRULE) $(UPSTREAM)/daemon.c
97
98 ecalloc.lo: ${UPSTREAM}/ecalloc.c ${HEADERS}
99         $(LT_CCRULE) $(UPSTREAM)/ecalloc.c
100
101 emalloc.lo: ${UPSTREAM}/emalloc.c ${HEADERS}
102         $(LT_CCRULE) $(UPSTREAM)/emalloc.c
103
104 erealloc.lo: ${UPSTREAM}/erealloc.c ${HEADERS}
105         $(LT_CCRULE) $(UPSTREAM)/erealloc.c
106
107 err.lo: ${UPSTREAM}/err.c err.h ${HEADERS}
108         $(LT_CCRULE) $(UPSTREAM)/err.c
109
110 errx.lo: ${UPSTREAM}/errx.c err.h ${HEADERS}
111         $(LT_CCRULE) $(UPSTREAM)/errx.c
112
113 flock.lo: ${UPSTREAM}/flock.c ${HEADERS}
114         $(LT_CCRULE) $(UPSTREAM)/flock.c
115
116 getopt.lo: ${UPSTREAM}/getopt.c ${HEADERS}
117         $(LT_CCRULE) $(UPSTREAM)/getopt.c
118
119 getprogname.lo: ${UPSTREAM}/getprogname.c ${HEADERS}
120         $(LT_CCRULE) $(UPSTREAM)/getprogname.c
121
122 hex.lo: ${UPSTREAM}/hex.c ${HEADERS}
123         $(LT_CCRULE) $(UPSTREAM)/hex.c
124
125 issuid.lo: ${UPSTREAM}/issuid.c ${HEADERS}
126         $(LT_CCRULE) $(UPSTREAM)/issuid.c
127
128 mkstemp.lo: ${UPSTREAM}/mkstemp.c ${HEADERS}
129         $(LT_CCRULE) $(UPSTREAM)/mkstemp.c
130
131 mkdir.lo: ${UPSTREAM}/mkdir.c ${HEADERS}
132         $(LT_CCRULE) $(UPSTREAM)/mkdir.c
133
134 net_read.lo: ${UPSTREAM}/net_read.c ${HEADERS}
135         $(LT_CCRULE) $(UPSTREAM)/net_read.c
136
137 net_write.lo: ${UPSTREAM}/net_write.c ${HEADERS}
138         $(LT_CCRULE) $(UPSTREAM)/net_write.c
139
140 setenv.lo: ${UPSTREAM}/setenv.c ${HEADERS}
141         $(LT_CCRULE) $(UPSTREAM)/setenv.c
142
143 setprogname.lo: ${UPSTREAM}/setprogname.c ${HEADERS}
144         $(LT_CCRULE) $(UPSTREAM)/setprogname.c
145
146 socket.lo: ${UPSTREAM}/socket.c ${HEADERS}
147         $(LT_CCRULE) $(UPSTREAM)/socket.c
148
149 # The upstream snprintf.c has some pointer warnings in it
150 CFLAGS_snprintf.lo = @CFLAGS_NOERROR@
151
152 snprintf.lo: ${UPSTREAM}/snprintf.c ${HEADERS}
153         $(LT_CCRULE) $(UPSTREAM)/snprintf.c
154
155 strlcat.lo: ${UPSTREAM}/strlcat.c ${HEADERS}
156         $(LT_CCRULE) $(UPSTREAM)/strlcat.c
157
158 strlcpy.lo: ${UPSTREAM}/strlcpy.c ${HEADERS}
159         $(LT_CCRULE) $(UPSTREAM)/strlcpy.c
160
161 strnlen.lo: ${UPSTREAM}/strnlen.c ${HEADERS}
162         $(LT_CCRULE) $(UPSTREAM)/strnlen.c
163
164 strsep.lo: ${UPSTREAM}/strsep.c ${HEADERS}
165         $(LT_CCRULE) $(UPSTREAM)/strsep.c
166
167 unsetenv.lo: ${UPSTREAM}/unsetenv.c ${HEADERS}
168         $(LT_CCRULE) $(UPSTREAM)/unsetenv.c
169
170 verr.lo: ${UPSTREAM}/verr.c err.h ${HEADERS}
171         $(LT_CCRULE) $(UPSTREAM)/verr.c
172
173 verrx.lo: ${UPSTREAM}/verrx.c err.h ${HEADERS}
174         $(LT_CCRULE) $(UPSTREAM)/verrx.c
175
176 vsyslog.lo: ${UPSTREAM}/vsyslog.c ${HEADERS}
177         $(LT_CCRULE) $(UPSTREAM)/vsyslog.c
178
179 vwarn.lo: ${UPSTREAM}/vwarn.c err.h ${HEADERS}
180         $(LT_CCRULE) $(UPSTREAM)/vwarn.c
181
182 vwarnx.lo: ${UPSTREAM}/vwarnx.c err.h ${HEADERS}
183         $(LT_CCRULE) $(UPSTREAM)/vwarnx.c
184
185 warn.lo: ${UPSTREAM}/warn.c err.h ${HEADERS}
186         $(LT_CCRULE) $(UPSTREAM)/warn.c
187
188 warnerr.lo: ${UPSTREAM}/warnerr.c err.h ${HEADERS}
189         $(LT_CCRULE) $(UPSTREAM)/warnerr.c
190
191 warnx.lo: ${UPSTREAM}/warnx.c err.h ${HEADERS}
192         $(LT_CCRULE) $(UPSTREAM)/warnx.c