Bug 29789

Summary: TALLOC_CFLAGS not used properly
Product: Mesa Reporter: David Ronis <David.Ronis>
Component: OtherAssignee: mesa-dev
Status: RESOLVED NOTABUG QA Contact:
Severity: critical    
Priority: medium CC: nobled
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: add TALLOC_CFLAGS in src/mesa/Makefile
add TALLOC_CFLAGS to i965 classic driver

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.