summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorWilliam Hubbs <williamh@gentoo.org>2011-11-17 18:56:53 -0600
committerWilliam Hubbs <williamh@gentoo.org>2011-11-18 08:55:30 -0600
commit9a3d6c76009a58746d42d54c284058725131a854 (patch)
treef526d7c2acde1b3168b89b503230046b739ccb16 /mk
parenta5ba2f3264397ac1ca1545ae67fbfdafa1b30b67 (diff)
downloadopenrc-9a3d6c76009a58746d42d54c284058725131a854.tar.gz
openrc-9a3d6c76009a58746d42d54c284058725131a854.tar.bz2
openrc-9a3d6c76009a58746d42d54c284058725131a854.tar.xz
Add MKSTATICLIBS switch
The MKSTATICLIBS switch, which defaults to yes, controls whether or not static libraries are built and installed. Reported-by: Agostino Sarubbo <ago@autistici.org> x-Gentoo-Bug: 378267 x-Gentoo-Bug-URL: http://bugs.gentoo.org/show_bug.cgi?id=378267
Diffstat (limited to 'mk')
-rw-r--r--mk/lib.mk12
1 files changed, 10 insertions, 2 deletions
diff --git a/mk/lib.mk b/mk/lib.mk
index c7bd1aa..1cf006c 100644
--- a/mk/lib.mk
+++ b/mk/lib.mk
@@ -8,9 +8,15 @@ SHLIB_NAME= lib${LIB}.so.${SHLIB_MAJOR}
SHLIB_LINK= lib${LIB}.so
SONAME?= ${SHLIB_NAME}
+SOBJS+= ${SRCS:.c=.So}
+
+MKSTATICLIBS?= yes
+ifeq (${MKSTATICLIBS},yes)
OBJS+= ${SRCS:.c=.o}
-SOBJS+= ${OBJS:.o=.So}
-_LIBS= lib${LIB}.a ${SHLIB_NAME}
+_LIBS+= lib${LIB}.a
+endif
+
+_LIBS+= ${SHLIB_NAME}
CLEANFILES+= ${OBJS} ${SOBJS} ${_LIBS} ${SHLIB_LINK}
@@ -39,8 +45,10 @@ ${SHLIB_NAME}: ${SOBJS}
${SOBJS} ${LDADD}
install: all
+ifeq (${MKSTATICLIBS},yes)
${INSTALL} -d ${DESTDIR}${LIBDIR}
${INSTALL} -m ${LIBMODE} lib${LIB}.a ${DESTDIR}${LIBDIR}
+endif
${INSTALL} -d ${DESTDIR}${SHLIBDIR}
${INSTALL} -m ${LIBMODE} ${SHLIB_NAME} ${DESTDIR}${SHLIBDIR}
ln -fs ${SHLIB_NAME} ${DESTDIR}${SHLIBDIR}/${SHLIB_LINK}