build: Share the all-local rule for linking libraries into the build dir

This consolidates how we link the libraries into the build directory.
It works for lib_LTLIBRARIES but not custom shared libraries like DRI
drivers or gallium state trackers which needs special casing (cf dri
mega drivers, for example)

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
Kristian Høgsberg
2014-01-29 11:40:25 -08:00
parent 7965908976
commit cbecd958a7
8 changed files with 21 additions and 42 deletions

14
install-lib-links.mk Normal file
View File

@@ -0,0 +1,14 @@
# Provide compatibility with scripts for the old Mesa build system for
# a while by putting a link to the driver into /lib of the build tree.
all-local : .libs/install-mesa-links
.libs/install-mesa-links : $(lib_LTLIBRARIES)
$(MKDIR_P) $(top_builddir)/$(LIB_DIR)
for f in $(lib_LTLIBRARIES:%.la=.libs/%.so*); do \
if test -h .libs/$$f; then \
cp -d $$f $(top_builddir)/$(LIB_DIR); \
else \
ln -f $$f $(top_builddir)/$(LIB_DIR); \
fi; \
done && touch $@