Robert,

What Nsight Tegra version are you using? The AdditionalDependencies string 
you've described should be correctly parsed as libraries list with a group in 
the latest Nsight Tegra release.

Unfortunately, the existence of a declarative-style platform files workaround 
is unlikely - we do most of the processing in the build tasks DLL, which is 
written in C#, so you cannot easily alter things there.

-Dmitry

-----Original Message-----
From: Robert Goulet [mailto:robert.gou...@autodesk.com] 
Sent: Tuesday, January 13, 2015 6:37 PM
To: Brad King
Cc: Dmitry Polyanitsa; Justin Borodinsky; cmake-developers@cmake.org
Subject: RE: [cmake-developers] target_link_libraries and 
--start-group/--end-group ?

Hi all,

Dmitry suggestion didn't work. It outputs the following in the .vcxproj file:

<AdditionalDependencies>c;m;dl;log;android;EGL;GLESv2;OpenSLES;(;foo;bar;)</AdditionalDependencies>

...and Nsight Tegra interpreted it like this (clang compiler):

-l"c" -l"m" -l"dl" -l"log" -l"android" -l"EGL" -l"GLESv2" -l"OpenSLES" -l"(" 
-l"foo" -l"bar" -l")"

...which obviously generated a link error (cannot find library '(' and ')').

Using Brad's method of link multiplicity is too much work because we make use 
of packages and heavy generator expressions, making it a lot more difficult and 
much less elegant.

Dmitry, is there a work-around I could temporarily implement in the VS files 
until you issue a new version of Nsight Tegra? i.e. the files found under 
"C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Tegra-Android" ?

Thanks.

-----Original Message-----
From: Brad King [mailto:brad.k...@kitware.com]
Sent: Tuesday, January 13, 2015 9:11 AM
To: Robert Goulet
Cc: Dmitry Polyanitsa; Justin Borodinsky; cmake-developers@cmake.org
Subject: Re: [cmake-developers] target_link_libraries and 
--start-group/--end-group ?

On 1/13/2015 6:19 AM, Dmitry Polyanitsa wrote:
> you could try using parentheses instead of 
> -Wl,--start-group/-Wl,--end-group
[snip]
> it should serve as a workaround while we fix the prefix addition to 
> the -Wl flags in Nsight Tegra.

Thanks, Dmitry.

Robert, the linker group flags are platform-specific so the approach CMake 
offers for doing this in general is the "link multiplicity"
approach Robert Maynard mentioned earlier in this thread:

On 1/6/2015 3:50 PM, Robert Goulet wrote:
> But it doesn't seems to work when building for NVidia NSight Android 
> platform using Visual Studio IDE.

With IMPORTED_LINK_INTERFACE_MULTIPLICITY and circular settings for 
INTERFACE_LINK_LIBRARIES the libraries should show up repeated in the .vcxproj 
file.

-Brad

-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
-- 

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-developers

Reply via email to