Bug 29789 - TALLOC_CFLAGS not used properly
Summary: TALLOC_CFLAGS not used properly
Alias: None
Product: Mesa
Classification: Unclassified
Component: Other (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium critical
Assignee: mesa-dev
QA Contact:
: 29620 (view as bug list)
Depends on:
Reported: 2010-08-24 14:43 UTC by David Ronis
Modified: 2011-04-12 10:10 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

add TALLOC_CFLAGS in src/mesa/Makefile (1.14 KB, patch)
2010-10-04 06:52 UTC, nobled
Details | Splinter Review
add TALLOC_CFLAGS to i965 classic driver (1.01 KB, patch)
2010-10-04 06:54 UTC, nobled
Details | Splinter Review

Description David Ronis 2010-08-24 14:43:02 UTC
I have talloc installed in /usr/local/samba and "pkg-config --cflags talloc" returns -I/usr/local/samba/include as it should.   This is correctly set in configs/current; however, it doesn't seem to make it to CFLAGS and CXXFLAGS which makes the build die.

For now I manually added $(TALLOC_CFLAGS) to CFLAGS and CXXFLAGS, which works.
Comment 1 David Ronis 2010-09-02 18:29:58 UTC
Ping!  I just updated to the git/master.  The problem remains.
Comment 2 David Ronis 2010-09-19 12:18:11 UTC
Folks, this should be trivial to fix, but hasn't been.
Comment 3 Brian Paul 2010-09-20 07:47:27 UTC
How are you building Mesa?
What is your proposed patch?

I don't see a problem here.  TALLOC_CFLAGS seems to be used where needed when I build here.
Comment 4 Kenneth Graunke 2010-09-20 08:47:30 UTC
I haven't seen a problem either (I build with autogen.sh then make).
Comment 5 David Ronis 2010-09-20 10:44:03 UTC
I too build with autogen.sh (with "--enable-gallium-nouveau --enable-gallium-radeon)  and then  make.  The problem isn't that TALLOC_CFLAGS is incorrect, rather it doesn't seem to be used in the Makefile's CFLAGS.    I "fixed" the problem by making a symlink to talloc.h in /usr/local/include which is part of the default search path.  My bet is that the reason you don't see the problem is that your talloc installation is to /usr or /usr/local, and the includes end up in the default places.  My installation puts them into /usr/local/samba.
Comment 6 nobled 2010-09-24 12:46:34 UTC
Where exactly does the build fail, though?

The INCLUDES variable in src/glsl/Makefile should be covering this.
Comment 7 nobled 2010-10-04 06:52:09 UTC
Created attachment 39151 [details] [review]
add TALLOC_CFLAGS in src/mesa/Makefile

(In reply to comment #6)
*crickets chirp*

Okay, I tried it myself by moving talloc.h out of its normal location and hardcoding TALLOC_CFLAGS to point to it in configure.ac, and I fixed the problem. Apparently talloc *isn't* just used by the new glsl2 compiler, but nobody told the Makefiles. Patch 1 attached. (can these go in 7.9?)
Comment 8 nobled 2010-10-04 06:54:06 UTC
Created attachment 39152 [details] [review]
add TALLOC_CFLAGS to i965 classic driver

Also, this was using the wrong Makefile variable (INCLUDES is just overwritten by Makefile.template) - so is i915, btw.
Comment 9 Eric Anholt 2011-04-12 10:10:27 UTC
this is obsoleted by the change to use an internal talloc-like library.
Comment 10 Eric Anholt 2011-04-12 10:10:59 UTC
*** Bug 29620 has been marked as a duplicate of this bug. ***

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.