Sounds like overkill...
Looks like CHECK_INCLUDE_FILES("windows.h;mmsystem.h" HAVE_MMSYSTEM_H) will do
the trick, which is I presume what is being called under the hood? If the
first arg to BRLCAD_INCLUDE_FILE() is just passed through, then the fix I made
in r48941 should do it.
Header's that require other headers aren't best practice but are quite common.
cmake had to have some means for checking them.
Cheers!
Sean
On Jan 18, 2012, at 10:03 AM, Clifford Yapp wrote:
> Probably the right thing to do then is to construct a cross-platform
> test-file for mmsystem.h and use that to do the test instead of the
> standard BRLCAD_INCLUDE_FILE macro.
>
> Daniel, since you're seeing the issue right now can you construct a
> small .c file that makes the tests needed for mmsystem.h? I'll see if
> I can't wire it into the build in place of the current inadequate test
> - I've got a couple thoughts on what CMake logic is needed in such
> situations, and this will be a good reason to figure it out - there
> are at least a few other situations where the standard CMake macros
> are insufficient to test what needs testing, so a general approach
> needs to be put in place.
>
> Thanks,
> Cliff
>
>
>
> On Wed, Jan 18, 2012 at 7:49 AM, Daniel Roßberg
> <[email protected]> wrote:
>> Indeed, unfortunately the automatic detection of mmsystem.h fails.
>> The test-file can't be compiled. It probable needs an additional
>> windows.h include.
>>
>> Daniel
>>
>>
>> 2012/1/17 brlcad <[email protected]>:
>>>
>>> MSVC 2008 should have gotten into the HAVE_MMSYSTEM_H section, no? We use
>>> #warning in a bunch of other places (such as common.h) mainly to throw a
>>> compile-time message saying that the compilation is wrong or lacking.
>>>
>>> Sounds like maybe the cmake mmsystem.h test failed when it should not have?
>>>
>>> Cheers!
>>> Sean
>>>
>>>
>>>
>>> On Jan 17, 2012, at 11:28 AM, [email protected] wrote:
>>>
>>> Revision: 48886
>>> http://brlcad.svn.sourceforge.net/brlcad/?rev=48886&view=rev
>>> Author: d_rossberg
>>> Date: 2012-01-17 16:28:47 +0000 (Tue, 17 Jan 2012)
>>> Log Message:
>>> -----------
>>> there is no preprocessor directive #warning in MSVC 2008
>>> there is an equivalent preprocessor directive but then we need an additional
>>> compiler switch ...
>>>
>>> Modified Paths:
>>> --------------
>>> brlcad/trunk/src/libbu/timer.c
>>>
>>> Modified: brlcad/trunk/src/libbu/timer.c
>>> ===================================================================
>>> --- brlcad/trunk/src/libbu/timer.c 2012-01-17 16:20:17 UTC (rev 48885)
>>> +++ brlcad/trunk/src/libbu/timer.c 2012-01-17 16:28:47 UTC (rev 48886)
>>> @@ -71,7 +71,6 @@
>>> return 1e6*count.QuadPart/freq.QuadPart;
>>>
>>> # else /* HAVE_MMSYSTEM_H */
>>> -# warning "bu_gettime() implementation missing for this machine type"
>>>
>>> bu_log("timer.c: WARNING, no gettime implementation for this machine
>>> type.\n");
>>> return -1;
>>>
>>> This was sent by the SourceForge.net collaborative development platform, the
>>> world's largest Open Source development site.
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Keep Your Developer Skills Current with LearnDevNow!
>>> The most comprehensive online learning library for Microsoft developers
>>> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
>>> Metro Style Apps, more. Free future releases when you subscribe now!
>>> http://p.sf.net/sfu/learndevnow-d2d
>>> _______________________________________________
>>> BRL-CAD Source Commits mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/brlcad-commits
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Keep Your Developer Skills Current with LearnDevNow!
>>> The most comprehensive online learning library for Microsoft developers
>>> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
>>> Metro Style Apps, more. Free future releases when you subscribe now!
>>> http://p.sf.net/sfu/learndevnow-d2d
>>> _______________________________________________
>>> BRL-CAD Developer mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/brlcad-devel
>>>
>>
>> ------------------------------------------------------------------------------
>> Keep Your Developer Skills Current with LearnDevNow!
>> The most comprehensive online learning library for Microsoft developers
>> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
>> Metro Style Apps, more. Free future releases when you subscribe now!
>> http://p.sf.net/sfu/learndevnow-d2d
>> _______________________________________________
>> BRL-CAD Developer mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/brlcad-devel
>
> ------------------------------------------------------------------------------
> Keep Your Developer Skills Current with LearnDevNow!
> The most comprehensive online learning library for Microsoft developers
> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
> Metro Style Apps, more. Free future releases when you subscribe now!
> http://p.sf.net/sfu/learndevnow-d2d
> _______________________________________________
> BRL-CAD Developer mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/brlcad-devel
------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
BRL-CAD Developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-devel