On Monday, December 15, 2014 07:23:10 PM Jose Fonseca wrote:
> 
> On 15/12/14 18:56, Dylan Baker wrote:
> > This is nice because it should work on both windows and on linux, since
> > FindWaffle is provided by waffle itself.
> >
> > This is tested on Linux, but not on Windows.
> >
> > NOTE: There is a bug in FindWaffle.cmake that causes it to never check
> > that the requested version is present. There is a patch on the waffle
> > list for this problem.
> >
> > Signed-off-by: Dylan Baker <dylanx.c.ba...@intel.com>
> > ---
> >   CMakeLists.txt | 26 +-------------------------
> >   1 file changed, 1 insertion(+), 25 deletions(-)
> >
> > diff --git a/CMakeLists.txt b/CMakeLists.txt
> > index e85bb37..200dbbf 100644
> > --- a/CMakeLists.txt
> > +++ b/CMakeLists.txt
> > @@ -42,31 +42,7 @@ else()
> >   endif()
> >
> >   if(PIGLIT_USE_WAFFLE)
> > -   if (NOT MSVC)
> > -           pkg_check_modules(WAFFLE REQUIRED waffle-1)
> > -
> > -           if(NOT WAFFLE_FOUND)
> > -                   message(FATAL_ERROR "Failed to find Waffle. If Waffle"
> > -                   "is not packaged for your distribution, you can get "
> > -                   "it at 
> > https://urldefense.proofpoint.com/v2/url?u=http-3A__www.waffle-2Dgl.org_&d=AAIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=SFYpmK_kSJY6st6hV0UPqYb0RyGi0hmhIs-w1r41SnA&s=igTNwzIfRoh2YlND544S4c0lbruOUka8htnMKhjGMcE&e=
> >  ."
> > -           )
> > -           endif()
> > -   endif ()
> > -
> > -   # Check the installed waffle version.
> > -   #
> > -   # We cannot reliably check the version with pkg_check_modules(), but
> > -   # instead must check the version manually as below. The problem is that,
> > -   # if one passes a required version to pkg_check_modules(), CMake
> > -   # validates the required version at most once for the lifetime of the
> > -   # source tree.  If someone changes the required version by editing the
> > -   # CMakeLists, CMake fails to detect the new requirement.
> > -   set(WAFFLE_REQUIRED_VERSION "1.3.0")
> > -   if(WAFFLE_VERSION VERSION_LESS WAFFLE_REQUIRED_VERSION)
> > -           message(FATAL_ERROR "Found waffle-${WAFFLE_VERSION}, but "
> > -           "piglit requires waffle-${WAFFLE_REQUIRED_VERSION}")
> > -   endif()
> > -
> > +   find_package(Waffle, 1.3.0 REQUIRED)
> >     add_definitions(-DPIGLIT_USE_WAFFLE)
> >     add_definitions(-DWAFFLE_API_VERSION=0x0103)
> >   else()
> >
> 
> `pkg_check_modules(WAFFLE)` defines  WAFFLE_INCLUDE_DIRS and WAFFLE_LDFLAGS
> 
> But FindWaffle.cmake defines WAFFLE_INCLUDE_DIR & WAFFLE_LIBRARIES

Now that I've done a fully clean build it's not working for that reason.
I'll fix and send a v3

> 
> I'm surprised this works at all without renaming the variables everywhere.
> 
> 
> The Windows instructions will need to be updated, mentining that 
> -DCMAKE_MODULE_PATH=/path/to/where/FindWaffle.cmake/can/be/found should 
> be passed on command line.
> 
> 
> But otherwise I think it might be a good idea.
> 
> 
> Jose

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to