1 # A roken library for AFS
7 include @TOP_OBJDIR@/src/config/Makefile.config
8 include @TOP_OBJDIR@/src/config/Makefile.shared
11 INSTALL_DATA = @INSTALL_DATA@
13 HEADERS = ${TOP_INCDIR}/roken.h \
14 ${TOP_INCDIR}/roken-common.h
16 UPSTREAM = $(TOP_SRCDIR)/external/heimdal/roken
18 SHLIBOBJ = librokenafs.${SHLIB_SUFFIX}.${LIBMAJOR}.${LIBMINOR}
20 all: $(ROKEN_HEADERS) $(HEADERS) \
21 $(TOP_LIBDIR)/$(SHLIBOBJ) \
22 $(TOP_LIBDIR)/librokenafs.a
24 install: librokenafs.a $(SHLIBOBJ)
25 $(TOP_OBJDIR)/src/config/shlib-install -d $(DESTDIR)$(libdir) \
26 -l librokenafs -M $(LIBMAJOR) -m $(LIBMINOR)
27 $(INSTALL_DATA) librokenafs.a $(DESTDIR)$(libdir)/librokenafs.a
29 dest: librokenafs.a $(SHLIBOBJ)
30 $(TOP_OBJDIR)/src/config/shlib-install -d $(DEST)/lib \
31 -l librokenafs -M $(LIBMAJOR) -m $(LIBMINOR)
32 $(INSTALL_DATA) librokenafs.a $(DEST)/lib/librokenafs.a
35 $(RM) -f $(OBJECTS) $(SHLIBOBJ) librokenafs.a librokenafs.exp
37 OBJECTS = $(ROKEN_LIBOBJS) \
38 cloexec.o ct.o hex.o issuid.o net_read.o net_write.o socket.o \
41 $(TOP_LIBDIR)/$(SHLIBOBJ): $(SHLIBOBJ)
42 $(TOP_OBJDIR)/src/config/shlib-install -d $(TOP_LIBDIR) \
43 -l librokenafs -M $(LIBMAJOR) -m $(LIBMINOR)
45 $(SHLIBOBJ): $(OBJECTS) librokenafs.map
46 $(TOP_OBJDIR)/src/config/shlib-build -i -d $(srcdir) -l librokenafs \
47 -M $(LIBMAJOR) -m $(LIBMINOR) -- \
50 $(TOP_LIBDIR)/librokenafs.a: librokenafs.a
53 librokenafs.a: $(OBJECTS)
55 $(AR) crv $@ $(OBJECTS)
58 $(TOP_INCDIR)/err.h: ${UPSTREAM}/err.hin
61 $(TOP_INCDIR)/roken.h: $(UPSTREAM)/roken.h.in
64 $(TOP_INCDIR)/roken-common.h: $(UPSTREAM)/roken-common.h
67 err.h: ${UPSTREAM}/err.hin
70 cloexec.o: ${UPSTREAM}/cloexec.c
71 $(AFS_CCRULE) $(UPSTREAM)/cloexec.c
73 ct.o: ${UPSTREAM}/ct.c
74 $(AFS_CCRULE) $(UPSTREAM)/ct.c
76 daemon.o: ${UPSTREAM}/daemon.c
77 $(AFS_CCRULE) $(UPSTREAM)/daemon.c
79 ecalloc.o: ${UPSTREAM}/ecalloc.c
80 $(AFS_CCRULE) $(UPSTREAM)/ecalloc.c
82 emalloc.o: ${UPSTREAM}/emalloc.c
83 $(AFS_CCRULE) $(UPSTREAM)/emalloc.c
85 erealloc.o: ${UPSTREAM}/erealloc.c
86 $(AFS_CCRULE) $(UPSTREAM)/erealloc.c
88 err.o: ${UPSTREAM}/err.c err.h
89 $(AFS_CCRULE) $(UPSTREAM)/err.c
91 errx.o: ${UPSTREAM}/errx.c err.h
92 $(AFS_CCRULE) $(UPSTREAM)/errx.c
94 getopt.o: ${UPSTREAM}/getopt.c
95 $(AFS_CCRULE) $(UPSTREAM)/getopt.c
97 getprogname.o: ${UPSTREAM}/getprogname.c
98 $(AFS_CCRULE) $(UPSTREAM)/getprogname.c
100 hex.o: ${UPSTREAM}/hex.c
101 $(AFS_CCRULE) $(UPSTREAM)/hex.c
103 issuid.o: ${UPSTREAM}/issuid.c
104 $(AFS_CCRULE) $(UPSTREAM)/issuid.c
106 net_read.o: ${UPSTREAM}/net_read.c
107 $(AFS_CCRULE) $(UPSTREAM)/net_read.c
109 net_write.o: ${UPSTREAM}/net_write.c
110 $(AFS_CCRULE) $(UPSTREAM)/net_write.c
112 socket.o: ${UPSTREAM}/socket.c
113 $(AFS_CCRULE) $(UPSTREAM)/socket.c
115 # The upstream snprintf.c has some pointer warnings in it
116 CFLAGS_snprintf.o = @CFLAGS_NOERROR@
118 snprintf.o: ${UPSTREAM}/snprintf.c
119 $(AFS_CCRULE) $(UPSTREAM)/snprintf.c
121 strlcat.o: ${UPSTREAM}/strlcat.c
122 $(AFS_CCRULE) $(UPSTREAM)/strlcat.c
124 strlcpy.o: ${UPSTREAM}/strlcpy.c
125 $(AFS_CCRULE) $(UPSTREAM)/strlcpy.c
127 strnlen.o: ${UPSTREAM}/strnlen.c
128 $(AFS_CCRULE) $(UPSTREAM)/strnlen.c
130 verr.o: ${UPSTREAM}/verr.c err.h
131 $(AFS_CCRULE) $(UPSTREAM)/verr.c
133 verrx.o: ${UPSTREAM}/verrx.c err.h
134 $(AFS_CCRULE) $(UPSTREAM)/verrx.c
136 vsyslog.o: ${UPSTREAM}/vsyslog.c
137 $(AFS_CCRULE) $(UPSTREAM)/vsyslog.c
139 vwarn.o: ${UPSTREAM}/vwarn.c err.h
140 $(AFS_CCRULE) $(UPSTREAM)/vwarn.c
142 vwarnx.o: ${UPSTREAM}/vwarnx.c err.h
143 $(AFS_CCRULE) $(UPSTREAM)/vwarnx.c
145 warn.o: ${UPSTREAM}/warn.c err.h
146 $(AFS_CCRULE) $(UPSTREAM)/warn.c
148 warnerr.o: ${UPSTREAM}/warnerr.c err.h
149 $(AFS_CCRULE) $(UPSTREAM)/warnerr.c
151 warnx.o: ${UPSTREAM}/warnx.c err.h
152 $(AFS_CCRULE) $(UPSTREAM)/warnx.c