Bug 88369

Summary: Build break: generated format_*pack.c files are accessed from wrong directory
Product: Mesa Reporter: Eero Tamminen <eero.t.tamminen>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED INVALID QA Contact:
Severity: normal    
Priority: medium CC: siglesias
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Eero Tamminen 2015-01-13 12:19:19 UTC
While the generated format_*pack.c files work when build is done in the source directory, things break when build is done in a separate directory (which has worked fine until now).

$ make
make[4]: Entering directory '<path>/mesa/64bit/src/mesa'
  CCLD   libmesa_sse41.la
make[4]: *** No rule to make target '../../../src/mesa/main/format_pack.c', needed by 'format_pack.lo'.  Stop.
$ find .. -name format_pack.c
../64bit/src/mesa/main/format_pack.c

Makefile refers to generated files from source directory although it should refer to them from build directory.
Comment 1 Samuel Iglesias Gonsálvez 2015-01-13 12:31:48 UTC
Thanks for reporting the bug.

Have you rerun autogen.sh in the separate directory? It will regenerate the Makefile.in files.

This is happening because format_pack.c and format_unpack.c were tracked by git before but now they are autogenerated, so the Makefiles need to be updated.

More info in this email [0] and the previous replies in the same thread.

[0] http://lists.freedesktop.org/archives/mesa-dev/2015-January/074254.html

If this is not working, please explain your setup (build directory, source directory, etc) so I can reproduce your issue.
Comment 2 Eero Tamminen 2015-01-13 14:54:09 UTC
> Have you rerun autogen.sh in the separate directory? It will regenerate the Makefile.in files.

Yes, I had run it (and "make clean").  Re-running them didn't help either.

However, everything works with clean checkout. -> INVALID & Sorry for the noise.

(It seems that my checkout and/or build directory had stale files that don't get re-generated by autogen.sh and/or aren't (anymore) in git, but which still manage to break the build.  I remember something similar happening with the driver transition.)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.