1 # rules to build a library
3 SHLIB= lib${LIB}.so.${SHLIB_MAJOR}
4 SHLIB_LINK= lib${LIB}.so
10 LIBS?= ${LIBNAME} ${SHLIB}
12 CLEANFILES+= ${OBJS} ${SOBJS} ${LIBS} ${SHLIB_LINK}
14 LIBINSTALL?= _libinstall
19 ${CC} ${CFLAGS} ${CPPFLAGS} -c $< -o $@
22 ${CC} ${PICFLAG} -DPIC ${CPPFLAGS} ${CFLAGS} -c $< -o $@
26 ${LIBNAME}: ${OBJS} ${STATICOBJS}
27 @${ECHO} building static library $@
28 ${AR} cr $@ ${STATICOBJS} ${OBJS}
32 @${ECHO} building shared library $@
33 @rm -f $@ ${SHLIB_LINK}
34 @ln -fs $@ ${SHLIB_LINK}
35 ${CC} ${LDFLAGS} -shared -Wl,-x -o $@ -Wl,-soname,${SONAME} \
39 ${INSTALL} -d ${DESTDIR}${LIBDIR}
40 ${INSTALL} -m ${LIBMODE} ${LIB} ${DESTDIR}${LIBDIR}
41 ${INSTALL} -d ${DESTDIR}${SHLIBDIR}
42 ${INSTALL} -m ${LIBMODE} ${SHLIB} ${DESTDIR}${SHLIBDIR}
43 ln -fs ${SHLIB} ${DESTDIR}${SHLIBDIR}/${SHLIB_LINK}
44 ${INSTALL} -d ${DESTDIR}${INCDIR}
45 for x in ${INCS}; do ${INSTALL} -m ${INCMODE} $$x ${DESTDIR}${INCDIR}; done
47 install: ${LIBINSTALL}
50 rm -f ${OBJS} ${SOBJS} ${LIBS} ${SHLIB_LINK} ${CLEANFILES}
54 ${SED} -e 's/^\([^\.]*\).o[ ]*:/\1.o \1.So:/' .depend > $${TMP}; \
58 include ${MK}/depend.mk