Automake: use EXTRA_LTLIBRARIES instead of noinst_LTLIBRARIES

noinst_LTLIBRARIES causes the libraries to be always built
unconditionally. EXTRA_LTLIBRARIES causes them to be built
only if other build target needs them.
In other words, avoid building libcommon.a and libtcolors.a
unless they are needed by another library/executable and
save some build time.

https://www.gnu.org/software/automake/manual/html_node/Libtool-Convenience-Libraries.html
This commit is contained in:
Luca Boccassi 2021-03-15 12:16:08 +00:00
parent 676fb001d6
commit c65953d72b
2 changed files with 3 additions and 3 deletions

View File

@ -49,7 +49,7 @@ bashcompletiondir = @bashcompletiondir@
dist_noinst_HEADERS =
noinst_PROGRAMS =
noinst_LTLIBRARIES =
EXTRA_LTLIBRARIES =
usrbin_exec_PROGRAMS =
usrsbin_exec_PROGRAMS =
dist_man_MANS =

View File

@ -9,7 +9,7 @@
# Note that you need "make install-strip" (or proper rpm / Debian build)
# to generate binaries with only relevant stuff.
#
noinst_LTLIBRARIES += libcommon.la
EXTRA_LTLIBRARIES += libcommon.la
libcommon_la_CFLAGS = $(AM_CFLAGS)
libcommon_la_SOURCES = \
lib/blkdev.c \
@ -60,7 +60,7 @@ libcommon_la_SOURCES += lib/sysfs.c
endif
endif
noinst_LTLIBRARIES += libtcolors.la
EXTRA_LTLIBRARIES += libtcolors.la
libtcolors_la_CFLAGS = $(AM_CFLAGS)
libtcolors_la_SOURCES = lib/colors.c lib/color-names.c include/colors.h include/color-names.h
libtcolors_la_LIBADD =