anv: vulkan: remove the anv_device.$(OBJEXT) rule
authorEmil Velikov <emmil.velikov@collabora.com>
Wed, 6 Jul 2016 15:18:21 +0000 (16:18 +0100)
committerMark Janes <mark.a.janes@intel.com>
Wed, 6 Jul 2016 17:19:19 +0000 (10:19 -0700)
Atm the actual rule will expand to foo.o which is used for static
libraries only.

Thus the automake manual recommendation [to use OBJEXT] won't help us,
since since we're working with a shared library.

Thus let's 'demote' the file and add it back to BUILT_SOURCES. This will
manage all the complexity for us, at the (existing expense) of working
only with the all, check and install targets.

The crazy (why the issue was hard to spot):
If the dependencies (.deps/*.Plo) are already created one can alter the
anv_device.$(OBJEXT) line and/or nuke it all together. That won't lead
to any warnings/issues, even though the Makefile is regenerated.

Moral of the story:
Always rm -rf top_builddir or don't resolve the dependencies manually
and use BUILT_SOURCES.

Cc: "12.0" <mesa-stable@lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96825
Fixes: d7a604c3f7a ("anv: use cache uuid based on the build timestamp.")
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Tested-by: Mark Janes <mark.a.janes@intel.com>
src/intel/vulkan/Makefile.am
src/intel/vulkan/Makefile.sources

index 07c81a8..fe7371e 100644 (file)
@@ -137,10 +137,8 @@ anv_timestamp.h:
        @echo "Updating anv_timestamp.h"
        $(AM_V_GEN) echo "#define ANV_TIMESTAMP \"$(TIMESTAMP_CMD)\"" > $@
 
-anv_device.$(OBJEXT): anv_timestamp.h
-
 BUILT_SOURCES = $(VULKAN_GENERATED_FILES)
-CLEANFILES = $(BUILT_SOURCES) dev_icd.json anv_timestamp.h
+CLEANFILES = $(BUILT_SOURCES) dev_icd.json
 EXTRA_DIST = \
        $(top_srcdir)/include/vulkan/vk_icd.h \
        anv_entrypoints_gen.py \
index aa1459a..7303995 100644 (file)
@@ -66,7 +66,8 @@ VULKAN_GEM_STUB_FILES := \
 
 VULKAN_GENERATED_FILES := \
        anv_entrypoints.c \
-       anv_entrypoints.h
+       anv_entrypoints.h \
+       anv_timestamp.h
 
 
 GEN7_FILES := \