[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cmake
Subject:    Re: [CMake] Imported libraries and cross platform target names
From:       "Ette, Anthony (CDS)" <Anthony.R.Ette () controlsdata ! com>
Date:       2015-08-21 13:03:54
Message-ID: 2A375B5C08C24643A8A3F8CC2B98C1084BB212AE () USINDPR-MBX003 ! Rolls-Royce ! Local
[Download RAW message or body]

[Attachment #2 (text/plain)]

Thank you; unset works perfectly.

Anthony Ette
Control Systems Engineer

Rolls-Royce Controls and Data Services
7661 N Perimeter Rd
Indianapolis, IN 46241
tel: +1 (317) 230-6943
mob: +1 (317) 864-7975
email: Anthony.R.Ette@controlsdata.com<mailto:Anthony.R.Ette@controlsdata.com>

From: David Cole [mailto:DLRdave@aol.com]
Sent: Friday, August 21, 2015 8:17 AM
To: Ette, Anthony (CDS)
Cc: Parag Chandra; CMake@cmake.org
Subject: Re: [CMake] Imported libraries and cross platform target names

Find_library results are cached. If you want to re-find a potentially moved library \
every time you run, you would have to unset the cache variable prior to finding it.

D


On Thursday, August 20, 2015, Ette, Anthony (CDS) \
<Anthony.R.Ette@controlsdata.com<mailto:Anthony.R.Ette@controlsdata.com>> wrote: Ok \
so I've got this going now (kind of) but FIND_LIBRARY doesn't seem to update when the \
specified PATH changes.  Since we are developing and releasing our own static \
libraries on a separate development cycle from the final applications, a final \
application may use a different library release than another.  This means the \
application developer needs a method to point to different library releases \
(different locations on the filesystem).  We've always used environment variables for \
this and the developer issues a "workon" prior to developing an application.  The \
workon sets up all the necessary env vars but FIND_LIBRARY doesn't update when the \
env var does.  For example, using either method 1 or 2 below to set an internal cmake \
variable doesn't do the trick for the FIND_LIBRARY command to pick up a new libtest \
file in the new location.



1)      FILE(TO_CMAKE_PATH $ENV{LIB_DIR} LIB_D)

2)      SET(LIB_D $ENV{LIB_DIR} CACHE STRING "lib dir" FORCE)

FIND_LIBRARY(libtest     NAMES test     PATHS {LIB_D} NO_DEFAULT_PATH)



I've also tried using the env string directly in the FIND_LIBRARY command as below, \
but the library being used in the build tree Makefiles still does not get updated.  \
I've also confirmed that the env var is  updated when CMake is rerun using MESSAGE \
command, so I believe it is merely a problem with triggering a change to the \
FIND_LIBRARY command.  How does this triggering work?  How can I force FIND_LIBRARY \
to check again each time CMake runs?

FIND_LIBRARY(libtest     NAMES test     PATHS $ENV{LIB_DIR} NO_DEFAULT_PATH)


Thanks,
Anthony Ette
Control Systems Engineer

Rolls-Royce Controls and Data Services
7661 N Perimeter Rd
Indianapolis, IN 46241
tel: +1 (317) 230-6943
mob: +1 (317) 864-7975
email: Anthony.R.Ette@controlsdata.com<javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');>


From: Parag Chandra [mailto:parag@ionicsecurity.com<javascript:_e(%7B%7D,'cvml','parag@ionicsecurity.com');>]
                
Sent: Tuesday, August 18, 2015 3:08 PM
To: Ette, Anthony (CDS); \
                CMake@cmake.org<javascript:_e(%7B%7D,'cvml','CMake@cmake.org');>
Subject: Re: [CMake] Imported libraries and cross platform target names

Yes, very similar. When I set out to convert our existing build system, which \
consists of many individual .sln and .vcxproj files, I got a requirement that the \
developers do not all want to work out of the same "uber" Xcode workspace/VS solution \
that contains all of the projects. They want to continue working with solutions that \
contain only the library of interest plus its associated test project. So when a \
developer runs CMake, a dependency like "timer" may refer to another CMake-generated \
project within the current build system, or it may refer to an \
already-built/downloaded dependency of the same name.

Parag Chandra
Senior Software Engineer, Mobile Team
Mobile: +1.919.824.1410

[https://www.ionicsecurity.com/IonicSigHz.png]<https://ionic.com>

Ionic Security Inc.
1170 Peachtree St. NE STE 400, Atlanta, GA 30309



From: <Ette>, "Anthony (CDS)" \
<Anthony.R.Ette@controlsdata.com<javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');>>
                
Date: Tuesday, August 18, 2015 at 2:59 PM
To: Parag Chandra <parag@ionicsecurity.com<javascript:_e(%7B%7D,'cvml','parag@ionicsecurity.com');>>, \
"CMake@cmake.org<javascript:_e(%7B%7D,'cvml','CMake@cmake.org');>" \
                <CMake@cmake.org<javascript:_e(%7B%7D,'cvml','CMake@cmake.org');>>
Subject: RE: [CMake] Imported libraries and cross platform target names

Thank you, I will take a look at find_library.  The static libraries are ones we \
build in-house but in a separate CMake-generated build system.  The reason we use a \
separate build system is because our common library code is used by all applications \
and, as such, is on a separate development cycle than the applications themselves.  \
In other words, while there may be advantages to combining them, I don't think it \
would really make sense in our case….any thoughts?  Are you in a similar situation?

Anthony Ette
Control Systems Engineer

Rolls-Royce Controls and Data Services
7661 N Perimeter Rd
Indianapolis, IN 46241
tel: +1 (317) 230-6943
mob: +1 (317) 864-7975
email: Anthony.R.Ette@controlsdata.com<javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');>


From: Parag Chandra [mailto:parag@ionicsecurity.com<javascript:_e(%7B%7D,'cvml','parag@ionicsecurity.com');>]
                
Sent: Tuesday, August 18, 2015 2:45 PM
To: Ette, Anthony (CDS); \
                CMake@cmake.org<javascript:_e(%7B%7D,'cvml','CMake@cmake.org');>
Subject: Re: [CMake] Imported libraries and cross platform target names

You just specify the "basename" of the library, so something like this:

find_library (timer NAMES timer PATHS your/library/directory)
target_link_libraries(test timer)

And Cmake takes care of the rest. It's even easier if "timer" is also part of the \
same CMake-generated build system. In that case, the find_library isn't even needed.

Things do get a little more complicated when you want to distinguish between \
release/debug variants of the same library. For that you can use the DEBUG and \
OPTIMIZED keywords of target_link_libraries().


Parag Chandra
Senior Software Engineer, Mobile Team
Mobile: +1.919.824.1410

[https://www.ionicsecurity.com/IonicSigHz.png]<https://ionic.com>

Ionic Security Inc.
1170 Peachtree St. NE STE 400, Atlanta, GA 30309



From: <Ette>, "Anthony (CDS)" \
<Anthony.R.Ette@controlsdata.com<javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');>>
                
Date: Tuesday, August 18, 2015 at 2:29 PM
To: "CMake@cmake.org<javascript:_e(%7B%7D,'cvml','CMake@cmake.org');>" \
                <CMake@cmake.org<javascript:_e(%7B%7D,'cvml','CMake@cmake.org');>>
Subject: [CMake] Imported libraries and cross platform target names

Given that add_library() produces a unique filename per platform (the "actual file \
name of the library built is constructed based on conventions of the native platform \
(such as lib<name>.a or<name>.lib"), how does one add the library to the final \
application without having to deal with the filename difference?  In other words, \
I've got one library that, by default, produces ‘libtest.a' on Linux and \
‘test.lib' on Windows.  How can I add this imported library into the final \
application in a cross platform manner?  I know I can specify two different imported \
locations (see below), but it seems odd to me that Cmake – the cross-platform build \
env generator – doesn't have a better native way of dealing with this….

The snippet below will work, but just seems wrong given the nature of what CMake is \
intended to do…is there a better way that I'm missing?!  If not, can I request that \
a future release of Cmake handle platform naming convention difference internally \
when invoking ADD_LIBRARY with the IMPORTED tag set?  Ok so, to be fair, Cmake can be \
used to cross compile and that certainly complicates my feature request but, when not \
cross compiling, CMake knows what platform it's being executed on so it should be \
able to resolve static archive platform decorations internally.

ADD_LIBRARY(testSTATICIMPORTED)
if(WIN32)
   SET_PROPERTY(TARGETtestPROPERTYIMPORTED_LOCATION ${LIB_D}/timer.lib)
endif()
if(UNIX)
   SET_PROPERTY(TARGETtestPROPERTYIMPORTED_LOCATION ${LIB_D}/libtimer.a)
endif()

Thanks in advance,
Anthony Ette
Control Systems Engineer

Rolls-Royce Controls and Data Services
7661 N Perimeter Rd
Indianapolis, IN 46241
tel: +1 (317) 230-6943
mob: +1 (317) 864-7975
email: Anthony.R.Ette@controlsdata.com<javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');>


This e-mail (including attachments) contains contents owned by Rolls-Royce plc and \
its subsidiaries, affiliated companies or customers and covered by the laws of \
England and Wales, Brazil, US, or Canada (federal, state or provincial). The \
information contained in this email is intended to be confidential, may be legally \
privileged and subject to export controls which may restrict the access to and \
transfer of the information. If you are not the intended recipient, you are hereby \
notified that any retention, dissemination, distribution, interception or copying of \
this communication is strictly prohibited and may subject you to further legal \
action. Reply to the sender if you received this email by accident, and then delete \
the email and any attachments.

______________________________________________________________________
This email has been scanned.
This e-mail (including attachments) contains contents owned by Rolls-Royce plc and \
its subsidiaries, affiliated companies or customers and covered by the laws of \
England and Wales, Brazil, US, or Canada (federal, state or provincial). The \
information contained in this email is intended to be confidential, may be legally \
privileged and subject to export controls which may restrict the access to and \
transfer of the information. If you are not the intended recipient, you are hereby \
notified that any retention, dissemination, distribution, interception or copying of \
this communication is strictly prohibited and may subject you to further legal \
action. Reply to the sender if you received this email by accident, and then delete \
the email and any attachments.

______________________________________________________________________
This email has been scanned.
This e-mail (including attachments) contains contents owned by Rolls-Royce plc and \
its subsidiaries, affiliated companies or customers and covered by the laws of \
England and Wales, Brazil, US, or Canada (federal, state or provincial). The \
information contained in this email is intended to be confidential, may be legally \
privileged and subject to export controls which may restrict the access to and \
transfer of the information. If you are not the intended recipient, you are hereby \
notified that any retention, dissemination, distribution, interception or copying of \
this communication is strictly prohibited and may subject you to further legal \
action. Reply to the sender if you received this email by accident, and then delete \
the email and any attachments.

______________________________________________________________________
This email has been scanned.
This e-mail (including attachments) contains contents owned by Rolls-Royce plc and \
its subsidiaries, affiliated companies or customers and covered by the laws of \
England and Wales, Brazil, US, or Canada (federal, state or provincial). The \
information contained in this email is intended to be confidential, may be legally \
privileged and subject to export controls which may restrict the access to and \
transfer of the information. If you are not the intended recipient, you are hereby \
notified that any retention, dissemination, distribution, interception or copying of \
this communication is strictly prohibited and may subject you to further legal \
action. Reply to the sender if you received this email by accident, and then delete \
the email and any attachments.


[Attachment #3 (text/html)]

<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:Consolas;
	panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
	{mso-style-priority:99;
	mso-style-link:"Balloon Text Char";
	margin:0in;
	margin-bottom:.0001pt;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
span.BalloonTextChar
	{mso-style-name:"Balloon Text Char";
	mso-style-priority:99;
	mso-style-link:"Balloon Text";
	font-family:"Tahoma","sans-serif";}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri","sans-serif";}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Thank \
you; unset works perfectly.<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
 <p class="MsoNormal" style="margin-top:6.0pt"><b><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">Anthony \
Ette<br> </span></b><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">Control \
Systems Engineer<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB"><o:p>&nbsp;</o:p></span></p>
 <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">Rolls-Royce \
Controls and Data Services</span><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB"><o:p></o:p></span></p>
 <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">7661 \
N Perimeter Rd<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">Indianapolis, \
IN 46241<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">tel: \
&#43;1 (317) 230-6943<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D;mso-fareast-language:EN-GB">mob: \
&#43;1 (317) 864-7975<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">email:
 <a href="mailto:Anthony.R.Ette@controlsdata.com"><span \
style="color:blue">Anthony.R.Ette@controlsdata.com</span></a><o:p></o:p></span></p> \
<p class="MsoNormal"><span \
style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
 <p class="MsoNormal"><b><span \
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span \
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> David \
Cole [mailto:DLRdave@aol.com] <br>
<b>Sent:</b> Friday, August 21, 2015 8:17 AM<br>
<b>To:</b> Ette, Anthony (CDS)<br>
<b>Cc:</b> Parag Chandra; CMake@cmake.org<br>
<b>Subject:</b> Re: [CMake] Imported libraries and cross platform target \
names<o:p></o:p></span></p> <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">Find_library results are cached. If you want to re-find a \
potentially moved library every time you run, you would have to unset the cache \
variable prior to finding it.<br> <br>
D<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal"><br>
On Thursday, August 20, 2015, Ette, Anthony (CDS) &lt;<a \
href="mailto:Anthony.R.Ette@controlsdata.com">Anthony.R.Ette@controlsdata.com</a>&gt; \
wrote:<o:p></o:p></p> <div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">Ok so I've got this going now (kind of) but FIND_LIBRARY \
doesn't seem to update when the specified PATH changes.&nbsp; Since we are developing \
and releasing  our own static libraries on a separate development cycle from the \
final applications, a final application may use a different library release than \
another.&nbsp; This means the application developer needs a method to point to \
different library releases (different  locations on the filesystem).&nbsp; We've \
always used environment variables for this and the developer issues a "workon" prior \
to developing an application.&nbsp; The workon sets up all the necessary env vars but \
FIND_LIBRARY doesn't update when the env var does.&nbsp; For  example, using either \
method 1 or 2 below to set an internal cmake variable doesn't do the trick for the \
FIND_LIBRARY command to pick up a new libtest file in the new \
location.</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p><span \
style="color:#1F497D">1)</span><span \
style="font-size:7.0pt;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span \
style="font-size:10.0pt;font-family:Consolas;color:navy">FILE</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">TO_CMAKE_PATH</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">  $</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">ENV</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">{LIB_DIR} \
LIB_D)</span><o:p></o:p></p> <p><span style="color:#1F497D">2)</span><span \
style="font-size:7.0pt;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span \
style="font-size:10.0pt;font-family:Consolas;color:navy">SET</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#345981">LIB_D</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">  $</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">ENV</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">{LIB_DIR} </span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">CACHE</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black"> STRING </span><span \
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF">&quot;lib \
dir&quot;</span><span style="font-size:10.0pt;font-family:Consolas;color:black"> \
</span><span style="font-size:10.0pt;font-family:Consolas;color:#7F5555">FORCE</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">)</span><o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none"> <span \
style="font-size:10.0pt;font-family:Consolas;color:navy">FIND_LIBRARY</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#345981">libtest</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">&nbsp;&nbsp;&nbsp;&nbsp; \
</span><span style="font-size:10.0pt;font-family:Consolas;color:#7F5555">NAMES</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black"> \
test&nbsp;&nbsp;&nbsp;&nbsp; </span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">PATHS</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black"> {LIB_D} </span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">NO_DEFAULT_PATH</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">)</span><o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">I've also tried using the env string directly in the \
FIND_LIBRARY command as below, but the library being used in the build tree Makefiles \
still does  not get updated.&nbsp; I've also confirmed that the env var <i>is</i> \
&nbsp;updated when CMake is rerun using MESSAGE command, so I believe it is merely a \
problem with triggering a change to the FIND_LIBRARY command.&nbsp; How does this \
triggering work?&nbsp; How can I force  FIND_LIBRARY to check again each time CMake \
runs?</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.0pt;font-family:Consolas;color:navy">FIND_LIBRARY</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#345981">libtest</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">&nbsp;&nbsp;&nbsp;&nbsp; \
</span><span style="font-size:10.0pt;font-family:Consolas;color:#7F5555">NAMES</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black"> \
test&nbsp;&nbsp;&nbsp;&nbsp; </span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">PATHS</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black"> $</span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">ENV</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">{LIB_DIR} </span><span \
style="font-size:10.0pt;font-family:Consolas;color:#7F5555">NO_DEFAULT_PATH</span><span \
style="font-size:10.0pt;font-family:Consolas;color:black">)</span><o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">Thanks,</span><o:p></o:p></p> <div>
<p class="MsoNormal" style="margin-top:6.0pt;mso-margin-bottom-alt:auto"><b><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Anthony \
Ette<br> </span></b><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Control \
Systems Engineer</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Rolls-Royce \
Controls and Data Services</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">7661 N \
Perimeter Rd</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Indianapolis, \
IN 46241</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">tel: \
&#43;1 (317) 230-6943</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">mob: \
&#43;1 (317) 864-7975</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">email: <a \
href="javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');" \
target="_blank"> Anthony.R.Ette@controlsdata.com</a></span><o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span \
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span \
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Parag \
Chandra [mailto:<a href="javascript:_e(%7B%7D,'cvml','parag@ionicsecurity.com');" \
target="_blank">parag@ionicsecurity.com</a>] <br>
<b>Sent:</b> Tuesday, August 18, 2015 3:08 PM<br>
<b>To:</b> Ette, Anthony (CDS); <a \
href="javascript:_e(%7B%7D,'cvml','CMake@cmake.org');" target="_blank"> \
CMake@cmake.org</a><br> <b>Subject:</b> Re: [CMake] Imported libraries and cross \
platform target names</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p> \
<div> <div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">Yes, very similar. When I set out to convert our \
existing build system, which consists of many individual .sln and .vcxproj files, I \
got  a requirement that the developers do not all want to work out of the same "uber" \
Xcode workspace/VS solution that contains all of the projects. They want to continue \
working with solutions that contain only the library of interest plus its associated \
test  project. So when a developer runs CMake, a dependency like "timer" may refer to \
another CMake-generated project within the current build system, or it may refer to \
an already-built/downloaded dependency of the same name.</span><o:p></o:p></p> </div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black"><br> </span><strong><span \
style="font-size:10.5pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:black">Parag \
Chandra</span></strong><b><span style="font-size:10.5pt;color:black"><br> \
</span></b><span style="font-size:10.5pt;color:black">Senior Software Engineer, \
                Mobile Team<br>
Mobile: &#43;1.919.824.1410<br>
<br>
<a href="https://ionic.com" target="_blank"><span style="text-decoration:none"><img \
border="0" id="_x0000_i1025" \
src="https://www.ionicsecurity.com/IonicSigHz.png"></span></a>&nbsp;<br> <br>
Ionic Security Inc.<br>
1170 Peachtree St. NE STE 400, Atlanta, GA 30309 </span><o:p></o:p></p>
<table class="MsoNormalTable" border="0" cellpadding="0" style="background:white">
<tbody>
<tr>
<td nowrap="" style="padding:.75pt .75pt .75pt .75pt"></td>
<td nowrap="" valign="top" style="padding:.75pt .75pt .75pt .75pt"></td>
<td nowrap="" style="padding:.75pt .75pt .75pt .75pt"></td>
<td nowrap="" style="padding:.75pt .75pt .75pt .75pt"></td>
</tr>
<tr>
<td width="5" nowrap="" style="width:3.75pt;padding:.75pt .75pt .75pt .75pt"></td>
<td width="70" nowrap="" valign="top" style="width:52.5pt;padding:.75pt .75pt .75pt \
.75pt"> </td>
<td width="5" nowrap="" style="width:3.75pt;padding:.75pt .75pt .75pt .75pt"></td>
<td width="287" nowrap="" valign="top" style="width:215.25pt;padding:.75pt .75pt \
.75pt .75pt"> </td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span \
style="color:black">From: </span></b><span style="color:black">&lt;Ette&gt;, \
&quot;Anthony (CDS)&quot; &lt;<a \
href="javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');" \
target="_blank">Anthony.R.Ette@controlsdata.com</a>&gt;<br> <b>Date: </b>Tuesday, \
August 18, 2015 at 2:59 PM<br> <b>To: </b>Parag Chandra &lt;<a \
href="javascript:_e(%7B%7D,'cvml','parag@ionicsecurity.com');" \
target="_blank">parag@ionicsecurity.com</a>&gt;, &quot;<a \
href="javascript:_e(%7B%7D,'cvml','CMake@cmake.org');" \
target="_blank">CMake@cmake.org</a>&quot; &lt;<a \
href="javascript:_e(%7B%7D,'cvml','CMake@cmake.org');" \
target="_blank">CMake@cmake.org</a>&gt;<br> <b>Subject: </b>RE: [CMake] Imported \
libraries and cross platform target names</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">Thank you, I will take a look at find_library.&nbsp; The static \
libraries are ones we build in-house but in a separate CMake-generated build \
system.&nbsp; The  reason we use a separate build system is because our common \
library code is used by all applications and, as such, is on a separate development \
cycle than the applications themselves.&nbsp; In other words, while there may be \
advantages to combining them, I don't  think it would really make sense in our \
case….any thoughts?&nbsp; Are you in a similar situation?</span><o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <div>
<p class="MsoNormal" style="margin-top:6.0pt;mso-margin-bottom-alt:auto"><b><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Anthony \
Ette<br> </span></b><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Control \
Systems Engineer</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Rolls-Royce \
Controls and Data Services</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">7661 N \
Perimeter Rd</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">Indianapolis, \
IN 46241</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">tel: \
&#43;1 (317) 230-6943</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">mob: \
&#43;1 (317) 864-7975</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#1F497D">email: <a \
href="javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');" \
target="_blank"> Anthony.R.Ette@controlsdata.com</a></span><o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:#1F497D">&nbsp;</span><o:p></o:p></p> <div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span \
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:black">From:</span></b><span \
style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;;color:black"> \
Parag  Chandra [<a href="javascript:_e(%7B%7D,'cvml','parag@ionicsecurity.com');" \
target="_blank">mailto:parag@ionicsecurity.com</a>] <br>
<b>Sent:</b> Tuesday, August 18, 2015 2:45 PM<br>
<b>To:</b> Ette, Anthony (CDS); <a \
href="javascript:_e(%7B%7D,'cvml','CMake@cmake.org');" target="_blank"> \
CMake@cmake.org</a><br> <b>Subject:</b> Re: [CMake] Imported libraries and cross \
platform target names</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">&nbsp;</span><o:p></o:p></p> <div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">You just specify the "basename" of the library, \
so something like this:</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">find_library (timer NAMES timer PATHS \
your/library/directory)</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">target_link_libraries(test \
timer)</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">And Cmake takes care of the rest. It's even \
easier if "timer" is also part of the same CMake-generated build system. In that \
case, the  find_library isn't even needed.</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">Things do get a little more complicated when you \
want to distinguish between release/debug variants of the same library. For that you  \
can use the DEBUG and OPTIMIZED keywords of \
target_link_libraries().</span><o:p></o:p></p> </div>
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black"><br> </span><strong><span \
style="font-size:10.5pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:black">Parag \
Chandra</span></strong><b><span style="font-size:10.5pt;color:black"><br> \
</span></b><span style="font-size:10.5pt;color:black">Senior Software Engineer, \
                Mobile Team<br>
Mobile: &#43;1.919.824.1410<br>
<br>
<a href="https://ionic.com" target="_blank"><span style="text-decoration:none"><img \
border="0" id="_x0000_i1026" \
src="https://www.ionicsecurity.com/IonicSigHz.png"></span></a>&nbsp;<br> <br>
Ionic Security Inc.<br>
1170 Peachtree St. NE STE 400, Atlanta, GA 30309 </span><o:p></o:p></p>
<table class="MsoNormalTable" border="0" cellpadding="0" style="background:white">
<tbody>
<tr>
<td nowrap="" style="padding:.75pt .75pt .75pt .75pt"></td>
<td nowrap="" valign="top" style="padding:.75pt .75pt .75pt .75pt"></td>
<td nowrap="" style="padding:.75pt .75pt .75pt .75pt"></td>
<td nowrap="" style="padding:.75pt .75pt .75pt .75pt"></td>
</tr>
<tr>
<td width="5" nowrap="" style="width:3.75pt;padding:.75pt .75pt .75pt .75pt"></td>
<td width="70" nowrap="" valign="top" style="width:52.5pt;padding:.75pt .75pt .75pt \
.75pt"> </td>
<td width="5" nowrap="" style="width:3.75pt;padding:.75pt .75pt .75pt .75pt"></td>
<td width="287" nowrap="" valign="top" style="width:215.25pt;padding:.75pt .75pt \
.75pt .75pt"> </td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span \
style="color:black">From: </span></b><span style="color:black">&lt;Ette&gt;, \
&quot;Anthony (CDS)&quot; &lt;<a \
href="javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');" \
target="_blank">Anthony.R.Ette@controlsdata.com</a>&gt;<br> <b>Date: </b>Tuesday, \
August 18, 2015 at 2:29 PM<br> <b>To: </b>&quot;<a \
href="javascript:_e(%7B%7D,'cvml','CMake@cmake.org');" \
target="_blank">CMake@cmake.org</a>&quot; &lt;<a \
href="javascript:_e(%7B%7D,'cvml','CMake@cmake.org');" \
target="_blank">CMake@cmake.org</a>&gt;<br> <b>Subject: </b>[CMake] Imported \
libraries and cross platform target names</span><o:p></o:p></p> </div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">&nbsp;</span><o:p></o:p></p> </div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">Given that add_library() produces a unique filename per platform \
(the "actual file name of the library built is constructed based on conventions of \
the  native platform (such as <span \
style="background:#ECF0F3">lib&lt;name&gt;.a</span> or<span \
style="background:#ECF0F3">&lt;name&gt;.lib"</span>), how does one add the library to \
the final application without having to deal with the filename difference?&nbsp; In \
other words,  I've got one library that, by default, produces ‘libtest.a' on Linux \
and ‘test.lib' on Windows.&nbsp; How can I add this imported library into the final \
application in a cross platform manner?&nbsp; I know I can specify two different \
imported locations (see below),  but it seems odd to me that Cmake – the \
cross-platform build env generator – doesn't have a better native way of dealing \
with this….</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">The snippet below will work, but just seems wrong given the \
nature of what CMake is intended to do…is there a better way that I'm \
missing?!&nbsp; If not, can  I request that a future release of Cmake handle platform \
naming convention difference internally when invoking ADD_LIBRARY with the IMPORTED \
tag set?&nbsp; Ok so, to be fair, Cmake can be used to cross compile and that \
certainly complicates my feature request but,  when not cross compiling, CMake knows \
what platform it's being executed on so it should be able to resolve static archive \
platform decorations internally.</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:8.0pt;font-family:Consolas;color:navy">ADD_LIBRARY</span><span \
style="font-size:8.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#345981">test</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#7F5555">STATIC</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#007F55">IMPORTED</span><span \
style="font-size:8.0pt;font-family:Consolas;color:black">)</span><o:p></o:p></p> <p \
class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:8.0pt;font-family:Consolas;color:black">if(WIN32)</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none"> <span \
style="font-size:8.0pt;font-family:Consolas;color:navy">&nbsp;&nbsp; \
SET_PROPERTY</span><span \
style="font-size:8.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#7F5555">TARGET</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#345981">test</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#7F5555">PROPERTY</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#007F55">IMPORTED_LOCATION</span><span \
style="font-size:8.0pt;font-family:Consolas;color:black">  \
${LIB_D}/timer.lib)</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:8.0pt;font-family:Consolas;color:black">endif()</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:8.0pt;font-family:Consolas;color:black">if(UNIX)</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:8.0pt;font-family:Consolas;color:black">&nbsp;&nbsp; </span><span \
style="font-size:8.0pt;font-family:Consolas;color:navy">SET_PROPERTY</span><span \
style="font-size:8.0pt;font-family:Consolas;color:black">(</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#7F5555">TARGET</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#345981">test</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#7F5555">PROPERTY</span><span \
style="font-size:8.0pt;font-family:Consolas;color:#007F55">IMPORTED_LOCATION</span><span \
style="font-size:8.0pt;font-family:Consolas;color:black">  \
${LIB_D}/libtimer.a)</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:8.0pt;font-family:Consolas;color:black">endif()</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">Thanks in advance,</span><o:p></o:p></p> <p class="MsoNormal" \
style="margin-top:6.0pt;mso-margin-bottom-alt:auto"><b><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">Anthony \
Ette<br> </span></b><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">Control \
Systems Engineer</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">&nbsp;</span><o:p></o:p></p>
 <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">Rolls-Royce \
Controls and Data Services</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">7661 N \
Perimeter Rd</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">Indianapolis, \
IN 46241</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">tel: &#43;1 \
(317) 230-6943</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">mob: &#43;1 \
(317) 864-7975</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:black">email: <a \
href="javascript:_e(%7B%7D,'cvml','Anthony.R.Ette@controlsdata.com');" \
target="_blank"> Anthony.R.Ette@controlsdata.com</a></span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="color:black">&nbsp;</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">This e-mail (including attachments) contains \
contents owned by Rolls-Royce plc and its subsidiaries, affiliated companies or \
customers  and covered by the laws of England and Wales, Brazil, US, or Canada \
(federal, state or provincial). The information contained in this email is intended \
to be confidential, may be legally privileged and subject to export controls which \
may restrict the access  to and transfer of the information. If you are not the \
intended recipient, you are hereby notified that any retention, dissemination, \
distribution, interception or copying of this communication is strictly prohibited \
and may subject you to further legal action.  Reply to the sender if you received \
this email by accident, and then delete the email and any attachments. \
</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black"><br> \
______________________________________________________________________<br> This email \
has been scanned.</span><o:p></o:p></p> <p class="MsoNormal" \
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black">This e-mail (including attachments) contains \
contents owned by Rolls-Royce plc and its subsidiaries, affiliated companies or \
customers  and covered by the laws of England and Wales, Brazil, US, or Canada \
(federal, state or provincial). The information contained in this email is intended \
to be confidential, may be legally privileged and subject to export controls which \
may restrict the access  to and transfer of the information. If you are not the \
intended recipient, you are hereby notified that any retention, dissemination, \
distribution, interception or copying of this communication is strictly prohibited \
and may subject you to further legal action.  Reply to the sender if you received \
this email by accident, and then delete the email and any attachments. \
</span><o:p></o:p></p> </div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span \
style="font-size:10.5pt;color:black"><br> \
______________________________________________________________________<br> This email \
has been scanned.</span><o:p></o:p></p> </div>
<p class="MsoNormal">This e-mail (including attachments) contains contents owned by \
Rolls-Royce plc and its subsidiaries, affiliated companies or customers and covered \
by the laws of England and Wales, Brazil, US, or Canada (federal, state or \
provincial). The  information contained in this email is intended to be confidential, \
may be legally privileged and subject to export controls which may restrict the \
access to and transfer of the information. If you are not the intended recipient, you \
are hereby notified that  any retention, dissemination, distribution, interception or \
copying of this communication is strictly prohibited and may subject you to further \
legal action. Reply to the sender if you received this email by accident, and then \
delete the email and any attachments. <o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><br>
______________________________________________________________________<br>
This email has been scanned.<o:p></o:p></p>
</div>
This e-mail (including attachments) contains contents owned by Rolls-Royce plc and \
its subsidiaries, affiliated companies or customers and covered by the laws of \
England and Wales, Brazil, US, or Canada (federal, state or provincial). The \
information contained  in this email is intended to be confidential, may be legally \
privileged and subject to export controls which may restrict the access to and \
transfer of the information. If you are not the intended recipient, you are hereby \
notified that any retention, dissemination,  distribution, interception or copying of \
this communication is strictly prohibited and may subject you to further legal \
action. Reply to the sender if you received this email by accident, and then delete \
the email and any attachments. </body>
</html>



-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: \
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information \
on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at \
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
--===============0688679169==--



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic