Re: [cmake-developers] Possible issue with UseQt4.cmake

2013-12-10 Thread clinton

- Original Message -
 I noticed today that the UseQt4 module appends a lot of different data
 to the COMPILE_DEFINITIONS property via add_definitions but appends
 only one item to various COMPILE_DEFINITIONS_CONFIG properties.
 
 Is this a bug in the UseQt4 module?

I don't think that is a bug.

 
 The reason I ran across this possible issue is I am implementing a new
 version of the UseQt4 module that communicates its compile definition
 results and its include_directory results via variables rather than
 setting directory properties (which is way too blunt an instrument for
 PLplot needs since that method affects every compilation in PLplot,
 not just the minority of Qt-related ones).

These situations is why I like the target usage requirements, which could make 
UseQt4.cmake, or perhaps any Use*.cmake obsolete.
http://community.kde.org/Frameworks/Epics/CMake_target_usage_requirements

Clint
--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


[cmake-developers] [CMake 0014642]: CMAKE does not find the 64 bit versions of wxWidgets on Windows

2013-12-10 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
http://www.cmake.org/Bug/view.php?id=14642 
== 
Reported By:philrosenberg
Assigned To:
== 
Project:CMake
Issue ID:   14642
Category:   CMake
Reproducibility:always
Severity:   major
Priority:   normal
Status: new
== 
Date Submitted: 2013-12-10 10:36 EST
Last Modified:  2013-12-10 10:36 EST
== 
Summary:CMAKE does not find the 64 bit versions of wxWidgets
on Windows
Description: 
FindwxWidgets.cmake always returns the 32 bit version of the wxWidget libraries,
even for a 64 bit build specified by using -G Visual Studio 11 Win64. If the
32 bit versions of the libraries do not exist then no libraries are found.

I've attached a patch for the FindwxWidgets.cmake file which fixes the problem
by checking for Win64 at the end of the generator. The patch doesn't make any
attempts to check in the case of gcc - I don't use it so don't know how 64 bit
is specified for this compiler.

Steps to Reproduce: 
use FindwxWidgets.cmake with -G Visual Studio 11 Win64 or any other Win64
version of Visual Studio
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2013-12-10 10:36 philrosenberg  New Issue
2013-12-10 10:36 philrosenberg  File Added: FindwxWidgets.cmake.patch   

==

--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


Re: [cmake-developers] Possible issue with UseQt4.cmake

2013-12-10 Thread Stephen Kelly
clin...@elemtech.com wrote:

 These situations is why I like the target usage requirements, which could
 make UseQt4.cmake, or perhaps any Use*.cmake obsolete.
 http://community.kde.org/Frameworks/Epics/CMake_target_usage_requirements
 

I've just pushed a branch fixing a minor issue in FindQt4.cmake.

As far as I know, that's the only thing missing, and there's nothing in that 
Use file which provides anything extra which can't be done with imported 
targets.

Thanks,

Steve.


--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


Re: [cmake-developers] documenting a CMake 'use' file

2013-12-10 Thread Matthew Woehlke

On 2013-11-22 15:49, Brad King wrote:

On 11/22/2013 03:24 PM, Matthew Woehlke wrote:

In particular, I am wondering if it is possible, and if so, what
recommendations there are if any, to document functions 'doxygen style',
i.e. the documentation immediately preceding the function definitions,
rather than all at the top.


See the cmake-developer.7 manual Module Documentation section.


Why is the copyright notice *after* the documentation? It seems like it 
should rather be first. (In almost all cases I have seen copyright 
notices they are the very first thing in the file so that they are 
prominent. Having it after may mean it is not visible until scrolling 
down some pages...)


--
Matthew

--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


Re: [cmake-developers] documenting a CMake 'use' file

2013-12-10 Thread Matthew Woehlke

On 2013-11-22 15:49, Brad King wrote:

On 11/22/2013 03:24 PM, Matthew Woehlke wrote:

In particular, I am wondering if it is possible, and if so, what
recommendations there are if any, to document functions 'doxygen style',
i.e. the documentation immediately preceding the function definitions,
rather than all at the top.


See the cmake-developer.7 manual Module Documentation section.


Thanks. Are there any guidelines on documenting the parameters of CMake 
functions/macros? I didn't see that in the mentioned document.


So far I'm doing this:

.. command:: sbk_cat

Concatenate strings in a list into a single string::
  sbk_cat(out , a b c d e)

Parameters
--

* ``VAR``: Output variable into which the result will be placed.
* ``SEP``: String used to join adjacent tokens.
* ``ARGN``: Tokens to be joined.


Related; is there a way to turn a CMake module file (that is outside of 
CMake's module directory) into (e.g. HTML) documentation?


--
Matthew

--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


[cmake-developers] [CMake 0014643]: ctest_update() problem with locked svn directory

2013-12-10 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
http://cmake.org/Bug/view.php?id=14643 
== 
Reported By:Clinton Stimpson
Assigned To:
== 
Project:CMake
Issue ID:   14643
Category:   CTest
Reproducibility:always
Severity:   minor
Priority:   normal
Status: new
== 
Date Submitted: 2013-12-10 21:40 EST
Last Modified:  2013-12-10 21:40 EST
== 
Summary:ctest_update() problem with locked svn directory
Description: 
If a connection is terminated during an svn update, the working directory
becomes locked.

CTest does not recognize that as an error and ctest_update() will not return a
-1 for the RETURN_VALUE.

The result is a continuous ctest script that goes silent.

I'd like it to return -1, so I can know to do a ctest_submit() with the svn
error message.
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2013-12-10 21:40 Clinton StimpsonNew Issue
==

--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


Re: [cmake-developers] FindBacktrace.cmake is slightly too chatty

2013-12-10 Thread Vadim Zhukov
2013/12/6 Rolf Eike Beer e...@sf-mail.de:
 Hi,

 I noticed that the message backtrace facility detected in default set of
 libraries appears every time CMake is run, and not just when the library is
 searched for, which is not what the modules usually do. Can this be changed?

It took a bit more thinking than I thought initially, sorrt. Anyway,
see the last update to find_backtrace topic. Worked fine for me.

--
  WBR,
  Vadim Zhukov
--

Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers


Re: [CMake] How to find/run external host executables when using cross compiling

2013-12-10 Thread Eric Noulard
2013/12/10 Eric Wing ewmail...@gmail.com:
 On 12/4/13, Eric Wing ewmail...@gmail.com wrote:
 I'm currently trying to port a rather large, complex project to
 Android. It has an existing CMake project so I'm trying to leverage
 that. I've taken and enhanced one of the Android-CMake toolchains I've
 found.

 This particular project I'm porting has unfortunate dependencies on
 running the host system's Perl, Python, and Ruby interpreters to do
 various kinds of on-the-fly code generation.

 The problem I'm having is that with the cross-compilation toolchain,
 none of these (host) dependencies are found with CMake (I think it
 uses FindPackage) because the cross-compilation toolchain has
 sandboxed off everything to look in the target toolchain which won't
 have Perl/Python/Ruby (which is completely reasonable; I'm not
 complaining).

 But I need to solve this problem and figure out how to find/invoke the
 host Perl/Python/Ruby/etc so my cross-compile can work.

 Can anybody give me suggestions on how I should approach this?

 Bump.
 I have a temporary workaround in place where I comment out the
 find_package calls for Perl/Python/Ruby, and then use -D switches with
 CMake to pre-populate the correct values for my host system.

find_package may not work entirely (because it looking for headers, lib etc...)
but find_program should if you set

CMAKE_FIND_ROOT_PATH_MODE_PROGRAM
to NEVER (or may be BOTH)
see:
http://www.cmake.org/Wiki/CMake_Cross_Compiling

host executable should be found.

-- 
Erk
L'élection n'est pas la démocratie -- http://www.le-message.org
--

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://www.cmake.org/mailman/listinfo/cmake


[CMake] Contents of link.txt differ between Solaris 8 and Linux

2013-12-10 Thread Tom Kacvinsky
Hi,

I am using cmake 2.8.11.2 on Solaris 8 and  Ubuntu 12.04.2 LTS, built from
source using the GCC tool chain.

I noted that the link.txt for one of our binaries on Solaris 8 are:

/home/tjk/gnatpro-7.1.2/bin/gnatmake
-aI/home/Users/tjk/vector/build/cmake/SunOS/.common-enums
-aI/home/Users/tjk/vector/build/cmake/SunOS/.chop_Linux
-aI/home/Users/tjk/vector/build/cmake/SunOS/.chop
-aI/home/Users/tjk/vector/build/cmake/SunOS/.chop_ada
-aI/home/Users/tjk/vector/source/cmake/vcast/
-aI/home/Users/tjk/vector/source/cmake/vcast/TGT_IO
-aO/home/Users/tjk/vector/build/cmake/SunOS/vcast/CMakeFiles/commonada.dir
-aO/home/Users/tjk/vector/build/cmake/SunOS/vcast/CMakeFiles/commonada.dir/__/.chop
-aO/home/Users/tjk/vector/build/cmake/SunOS/vcast/CMakeFiles/commonada.dir/__/.common-enums
monitor -o ../../vc/IO/monitor -cargs  -largs
-L/home/Users/tjk/vector/build/cmake/SunOS
-L/home/Users/tjk/vector/build/cmake/SunOS/vc/lib
-L/home/Users/tjk/kdchart-2.3.0-qt-4.8.5/lib
-L/home/FLEXlm/FLEXlm_10/sun4_u5
-L/home/FLEXlm/FLEXlm_10/sun4_u5/activation/lib  -L/home/tjk/python/libs
-L/usr/ccs/lib
-L/export/home/tjk/gnatpro-7.1.2/lib/gcc/sparc-sun-solaris2.8/4.7.3
-L/export/home/tjk/gnatpro-7.1.2/lib/gcc
-L/export/home/tjk/gnatpro-7.1.2/lib  ../../vc/lib/libcinterfacetoada.a
../../vc/lib/libcpputilsforada.a ../../libcommonada.a
/home/TOOLS/libxml2/libxml2-2.6.27/lib/libxml2.a -llmgr_nomt -lcrvs -lsb
/home/tjk/gnatpro-7.1.2/lib/gcc/sparc-sun-solaris2.8/4.7.3/adalib/libgnat.a
-lsocket -lnsl -lintl -ldl -lpthread -lrt ../../vc/lib/libvxml_c.a
../../vc/lib/libcutilsforada.a /home/FLEXlm/FLEXlm_10/sun4_u5/lm_new.o -ldl
-lm /home/TOOLS/libxml2/libxml2-2.6.27/lib/libxml2.a
../../vc/lib/libcinterfacetoadastubs.a
../../vc/lib/libcinterfacetoada_ada.a -lpthread -lrt
/home/FLEXlm/FLEXlm_10/sun4_u5/lm_new.o -lm -lc -lc -lstdc++ -lm -lc -lc

Note the duplication of lm_new.o and several system libraries (-lm and
-lc).  This causes problems with GNU binutils as there are multiply defined
symbols when the lm_new.o object file is duplicated.  What I noted is that
this duplication does not happen on Linux:

/home/GCC/gcc-4.1.2/bin/gnatmake
-aI/home/Users/tjk/vector/build/cmakeLinux/Linux/.common-enums
-aI/home/Users/tjk/vector/build/cmakeLinux/Linux/.chop_Linux
-aI/home/Users/tjk/vector/build/cmakeLinux/Linux/.chop
-aI/home/Users/tjk/vector/build/cmakeLinux/Linux/.chop_ada
-aI/home/Users/tjk/vector/source/cmakeLinux/vcast/
-aI/home/Users/tjk/vector/source/cmakeLinux/vcast/TGT_IO
-aO/home/Users/tjk/vector/build/cmakeLinux/Linux/vcast/CMakeFiles/commonada.dir
-aO/home/Users/tjk/vector/build/cmakeLinux/Linux/vcast/CMakeFiles/commonada.dir/__/.chop
-aO/home/Users/tjk/vector/build/cmakeLinux/Linux/vcast/CMakeFiles/commonada.dir/__/.common-enums
monitor -o ../../vc/IO/monitor -cargs  -largs
-L/home/Users/tjk/vector/build/cmakeLinux/Linux
-L/home/Users/tjk/vector/build/cmakeLinux/Linux/vc/lib
-L/home/TOOLS/kdchart-2.3.0-qt-4.6.2-release-gcc-4.1.2-release/lib
-L/home/FLEXlm/FLEXlm_11_9/i86_lsb
-L/home/FLEXlm/FLEXlm_11_9/i86_lsb/activation/lib
-L/home/TOOLS/python-2.7.5/libs
-L/Unix_Volume/GCC/Linux/gcc-4.1.2/lib/gcc/i686-pc-linux-gnu/4.1.2
-L/Unix_Volume/GCC/Linux/gcc-4.1.2/lib/gcc
-L/home/GCC/gcc-4.1.2/lib/gcc/i686-pc-linux-gnu/4.1.2
-L/Unix_Volume/GCC/Linux/gcc-4.1.2/lib  -L/home/GCC/gcc-4.1.2/lib -rdynamic
../../vc/lib/libcinterfacetoada.a ../../vc/lib/libcpputilsforada.a
../../libcommonada.a /home/TOOLS/libxml2/libxml2-2.6.27/lib/libxml2.a
-llmgr_nomt -lcrvs -lsb -lnoact -llmgr_dongle_stub
/home/GCC/gcc-4.1.2/lib/gcc/i686-pc-linux-gnu/4.1.2/adalib/libgnat.a -lutil
../../vc/lib/libvxml_c.a ../../vc/lib/libcutilsforada.a
/home/FLEXlm/FLEXlm_11_9/i86_lsb/lm_new.o -ldl -lm
/home/TOOLS/libxml2/libxml2-2.6.27/lib/libxml2.a
../../vc/lib/libcompat_glib_workaround.a
../../vc/lib/libcinterfacetoadastubs.a
../../vc/lib/libcinterfacetoada_ada.a -lc -lstdc++ -lm -lc

What do you need from me in terms of helping diagnose this issue?

Thanks,

Tom
--

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://www.cmake.org/mailman/listinfo/cmake

Re: [CMake] How to find/run external host executables when using cross compiling

2013-12-10 Thread Williams, Norman K
This is a case for using the ExternalProject module!


You have a top level 'SuperBuild' whose job it is to find all the
prerequisites for the actual project build.  Then it configures and builds
it.

This means that the tricky configuration is handled by CMake, instead of
working it out yourself by hand.

The Superbuild can be part of the project's source tree. The simplest
method is to make a SuperBuild subdirectory, and put in a CMakeLists.txt
something like this:

project(MySuperBuild)
include(ExternalProject)
# find all the prerequisite tools
ExternalProject_Add(MyActualProject
  DOWNLOAD_COMMAND 
  BINARY_DIR MyActualProject-build
  SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/.. # SuperBuild is subdir of
source directory
  CMAKE_ARGS# all the arguments to
configure your project.
-DPERL_EXECUTABLE:STRING=${PERL_EXECUTABLE} # for example
  INSTALL_COMMAND # deployment not handled
by install
)

On 12/9/13 6:57 PM, Eric Wing ewmail...@gmail.com wrote:

On 12/4/13, Eric Wing ewmail...@gmail.com wrote:
 I'm currently trying to port a rather large, complex project to
 Android. It has an existing CMake project so I'm trying to leverage
 that. I've taken and enhanced one of the Android-CMake toolchains I've
 found.

 This particular project I'm porting has unfortunate dependencies on
 running the host system's Perl, Python, and Ruby interpreters to do
 various kinds of on-the-fly code generation.

 The problem I'm having is that with the cross-compilation toolchain,
 none of these (host) dependencies are found with CMake (I think it
 uses FindPackage) because the cross-compilation toolchain has
 sandboxed off everything to look in the target toolchain which won't
 have Perl/Python/Ruby (which is completely reasonable; I'm not
 complaining).

 But I need to solve this problem and figure out how to find/invoke the
 host Perl/Python/Ruby/etc so my cross-compile can work.

 Can anybody give me suggestions on how I should approach this?

Bump.
I have a temporary workaround in place where I comment out the
find_package calls for Perl/Python/Ruby, and then use -D switches with
CMake to pre-populate the correct values for my host system.

Thanks,
Eric
--
Beginning iPhone Games Development
http://playcontrol.net/iphonegamebook/
--

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://www.cmake.org/mailman/listinfo/cmake




Notice: This UI Health Care e-mail (including attachments) is covered by the 
Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and 
may be legally privileged.  If you are not the intended recipient, you are 
hereby notified that any retention, dissemination, distribution, or copying of 
this communication is strictly prohibited.  Please reply to the sender that you 
have received the message in error, then delete it.  Thank you.

--

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://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] Windows XP + CMake + VS2013

2013-12-10 Thread Stefan Fendt
Hi Andrey,

 You should add CMake command option /|-T vc120_xp
 |/

Many thanks!

with best regards,
Stefan

--

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://www.cmake.org/mailman/listinfo/cmake

[CMake] How to prevent .lib file to be installed?

2013-12-10 Thread Totte Karlsson

Hi,
I'm creating a 'plugin' DLL and want to prevent the associated .lib file 
to be installed (cause its not being used).


My Install code looks like this now:

install (TARGETS ${target}
DESTINATION plugins
COMPONENT plugins
)

and it installs both a .DLL and a .lib file. Any simple fix?

tk

--
.
Totte Karlsson, Ph.D.
Dune Scientific, LLC
425-296 1980 (office)
425-780 9648 (cell)
www.dunescientific.com
.

--

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://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] How to prevent .lib file to be installed?

2013-12-10 Thread Rolf Eike Beer
Am Dienstag, 10. Dezember 2013, 13:07:07 schrieb Totte Karlsson:
 Hi,
 I'm creating a 'plugin' DLL and want to prevent the associated .lib file
 to be installed (cause its not being used).
 
 My Install code looks like this now:
 
 install (TARGETS ${target}
 DESTINATION plugins
 COMPONENT plugins
 )
 
 and it installs both a .DLL and a .lib file. Any simple fix?

If it is a plugin, i.e. it is only opened using dlopen() or the Windows 
equivalent that I forgot the name, and never linked against, don't use SHARED 
but MODULE in the add_library() call.

Eike

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

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://www.cmake.org/mailman/listinfo/cmake

Re: [CMake] How to prevent .lib file to be installed?

2013-12-10 Thread Totte Karlsson

Great, worked perfect!
Thanks,
Tk
On 12/10/2013 1:23 PM, Rolf Eike Beer wrote:

Am Dienstag, 10. Dezember 2013, 13:07:07 schrieb Totte Karlsson:

Hi,
I'm creating a 'plugin' DLL and want to prevent the associated .lib file
to be installed (cause its not being used).

My Install code looks like this now:

install (TARGETS ${target}
DESTINATION plugins
COMPONENT plugins
)

and it installs both a .DLL and a .lib file. Any simple fix?

If it is a plugin, i.e. it is only opened using dlopen() or the Windows
equivalent that I forgot the name, and never linked against, don't use SHARED
but MODULE in the add_library() call.

Eike


--
.
Totte Karlsson, Ph.D.
Dune Scientific, LLC
425-296 1980 (office)
425-780 9648 (cell)
www.dunescientific.com
.

--

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://www.cmake.org/mailman/listinfo/cmake


[Cmake-commits] CMake branch, next, updated. v2.8.12.1-6143-g1eea30f

2013-12-10 Thread Stephen Kelly
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project CMake.

The branch, next has been updated
   via  1eea30f266edfa503676a0697d4f37508760c43d (commit)
   via  97fae68b81d7dbb5dda9fe21f860863bcc0c7183 (commit)
  from  f9cd8dd68e193ba424a688e047648c700e26dde0 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1eea30f266edfa503676a0697d4f37508760c43d
commit 1eea30f266edfa503676a0697d4f37508760c43d
Merge: f9cd8dd 97fae68
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Dec 10 12:04:32 2013 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Dec 10 12:04:32 2013 -0500

Merge topic 'remove-INTERFACE-build-targets' into next

97fae68 Remove INTERFACE build targets.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=97fae68b81d7dbb5dda9fe21f860863bcc0c7183
commit 97fae68b81d7dbb5dda9fe21f860863bcc0c7183
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Dec 10 17:16:08 2013 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Tue Dec 10 17:58:36 2013 +0100

Remove INTERFACE build targets.

Commit b04f3b9a (Create make rules for INTERFACE_LIBRARY
targets., 2013-08-21) extended the makefile generator to create
build targets for INTERFACE_LIBRARY targets. No other generators
were extended with this feature.

This conflicts with the feature of whitelisting of target properties
read from INTERFACE_LIBRARY targets. The INTERFACE_* properties
of the INTERFACE_LIBRARY may legitimately contain TARGET_PROPERTY
generator expressions for reading properties from the 'head target'.
The 'head target' would be the INTERFACE_LIBRARY itself when creating
the build rules for it, which means that non-whitelisted properties
would be read.

diff --git a/Source/cmComputeTargetDepends.cxx 
b/Source/cmComputeTargetDepends.cxx
index cb9e37e..02fd173 100644
--- a/Source/cmComputeTargetDepends.cxx
+++ b/Source/cmComputeTargetDepends.cxx
@@ -199,6 +199,10 @@ void cmComputeTargetDepends::CollectTargetDepends(int 
depender_index)
 {
   // Get the depender.
   cmTarget* depender = this-Targets[depender_index];
+  if (depender-GetType() == cmTarget::INTERFACE_LIBRARY)
+{
+return;
+}
 
   // Loop over all targets linked directly in all configs.
   // We need to make targets depend on the union of all config-specific
@@ -208,15 +212,7 @@ void cmComputeTargetDepends::CollectTargetDepends(int 
depender_index)
   std::setcmStdString emitted;
   {
   std::vectorstd::string tlibs;
-  if (depender-GetType() == cmTarget::INTERFACE_LIBRARY)
-{
-// For INTERFACE_LIBRARY depend on the interface instead.
-depender-GetInterfaceLinkLibraries(0, tlibs, depender);
-}
-  else
-{
-depender-GetDirectLinkLibraries(0, tlibs, depender);
-}
+  depender-GetDirectLinkLibraries(0, tlibs, depender);
   // A target should not depend on itself.
   emitted.insert(depender-GetName());
   for(std::vectorstd::string::const_iterator lib = tlibs.begin();
@@ -237,15 +233,8 @@ void cmComputeTargetDepends::CollectTargetDepends(int 
depender_index)
 it != configs.end(); ++it)
 {
 std::vectorstd::string tlibs;
-if (depender-GetType() == cmTarget::INTERFACE_LIBRARY)
-  {
-  // For INTERFACE_LIBRARY depend on the interface instead.
-  depender-GetInterfaceLinkLibraries(it-c_str(), tlibs, depender);
-  }
-else
-  {
-  depender-GetDirectLinkLibraries(it-c_str(), tlibs, depender);
-  }
+depender-GetDirectLinkLibraries(it-c_str(), tlibs, depender);
+
 // A target should not depend on itself.
 emitted.insert(depender-GetName());
 for(std::vectorstd::string::const_iterator lib = tlibs.begin();
diff --git a/Source/cmGlobalUnixMakefileGenerator3.cxx 
b/Source/cmGlobalUnixMakefileGenerator3.cxx
index 6333873..52465dc 100644
--- a/Source/cmGlobalUnixMakefileGenerator3.cxx
+++ b/Source/cmGlobalUnixMakefileGenerator3.cxx
@@ -480,7 +480,6 @@ cmGlobalUnixMakefileGenerator3
(l-second-GetType() == cmTarget::SHARED_LIBRARY) ||
(l-second-GetType() == cmTarget::MODULE_LIBRARY) ||
(l-second-GetType() == cmTarget::OBJECT_LIBRARY) ||
-   (l-second-GetType() == cmTarget::INTERFACE_LIBRARY) ||
(l-second-GetType() == cmTarget::UTILITY))
   {
   if(l-second-Target-IsImported())
@@ -658,7 +657,6 @@ cmGlobalUnixMakefileGenerator3
   (t-second-GetType() == cmTarget::SHARED_LIBRARY) ||
   (t-second-GetType() == cmTarget::MODULE_LIBRARY) ||
   (t-second-GetType() == cmTarget::OBJECT_LIBRARY) ||
-  (t-second-GetType() == cmTarget::INTERFACE_LIBRARY) ||
   

[Cmake-commits] CMake branch, next, updated. v2.8.12.1-6145-g48aa072

2013-12-10 Thread Stephen Kelly
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project CMake.

The branch, next has been updated
   via  48aa0728067ab0a10c22e4ac44936f5eb7d9a80d (commit)
   via  b9f0d81c4b605af7667a1f384fc20c17a577f5a8 (commit)
  from  1eea30f266edfa503676a0697d4f37508760c43d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=48aa0728067ab0a10c22e4ac44936f5eb7d9a80d
commit 48aa0728067ab0a10c22e4ac44936f5eb7d9a80d
Merge: 1eea30f b9f0d81
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Dec 10 12:34:14 2013 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Dec 10 12:34:14 2013 -0500

Merge topic 'Qt4-NO_DEBUG-define' into next

b9f0d81 Define QT_NO_DEBUG for non-debug use of Qt 4.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b9f0d81c4b605af7667a1f384fc20c17a577f5a8
commit b9f0d81c4b605af7667a1f384fc20c17a577f5a8
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Dec 10 18:31:36 2013 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Tue Dec 10 18:33:52 2013 +0100

Define QT_NO_DEBUG for non-debug use of Qt 4.

diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake
index 24747f7..28b8454 100644
--- a/Modules/FindQt4.cmake
+++ b/Modules/FindQt4.cmake
@@ -1203,6 +1203,10 @@ if (QT_QMAKE_EXECUTABLE AND QTVERSION)
   ${QT_MKSPECS_DIR}/default
   ${QT_INCLUDE_DIR}
   )
+  set_property(TARGET Qt4::QtCore APPEND PROPERTY
+INTERFACE_COMPILE_DEFINITIONS
+  $$NOT:$CONFIG:Debug:QT_NO_DEBUG
+  )
   set_property(TARGET Qt4::QtCore PROPERTY
 INTERFACE_QT_MAJOR_VERSION 4
   )

---

Summary of changes:
 Modules/FindQt4.cmake |4 
 1 files changed, 4 insertions(+), 0 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v2.8.12.1-6149-g8d32f93

2013-12-10 Thread Alexander Neundorf
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project CMake.

The branch, next has been updated
   via  8d32f9302671f3ff0378998154c6c5ec800f33d1 (commit)
   via  bd177f5c96364b5480d3ec5c6c8b0c7ae8d67887 (commit)
   via  a7b64058256673762f43b2e3d0331468ba9200f0 (commit)
   via  a2489ce49c0cbf5582a29ef8c4a0d9728994f465 (commit)
  from  48aa0728067ab0a10c22e4ac44936f5eb7d9a80d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8d32f9302671f3ff0378998154c6c5ec800f33d1
commit 8d32f9302671f3ff0378998154c6c5ec800f33d1
Merge: 48aa072 bd177f5
Author: Alexander Neundorf neund...@kde.org
AuthorDate: Tue Dec 10 17:41:01 2013 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Dec 10 17:41:01 2013 -0500

Merge topic 'KateFixNinja' into next

bd177f5 kate: fix ninja support
a7b6405 Kate: remove unused function
a2489ce CMake Nightly Date Stamp


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bd177f5c96364b5480d3ec5c6c8b0c7ae8d67887
commit bd177f5c96364b5480d3ec5c6c8b0c7ae8d67887
Author: Alex Neundorf neund...@kde.org
AuthorDate: Tue Dec 10 22:52:15 2013 +0100
Commit: Alex Neundorf neund...@kde.org
CommitDate: Tue Dec 10 22:52:15 2013 +0100

kate: fix ninja support

ninja needs to be run from the toplevel build dir,
not from the target dir, as make

Alex

diff --git a/Source/cmExtraKateGenerator.cxx b/Source/cmExtraKateGenerator.cxx
index 340ffba..177ef8d 100644
--- a/Source/cmExtraKateGenerator.cxx
+++ b/Source/cmExtraKateGenerator.cxx
@@ -52,6 +52,8 @@ void cmExtraKateGenerator::Generate()
   this-ProjectName = this-GenerateProjectName(mf-GetProjectName(),
   mf-GetSafeDefinition(CMAKE_BUILD_TYPE),
   this-GetPathBasename(mf-GetHomeOutputDirectory()));
+  this-UseNinja = (strcmp(this-GlobalGenerator-GetName(), Ninja)==0);
+
   this-CreateKateProjectFile(mf);
   this-CreateDummyKateProjectFile(mf);
 }
@@ -95,11 +97,12 @@ cmExtraKateGenerator::WriteTargets(const cmMakefile* mf,
   const std::string make = mf-GetRequiredDefinition(CMAKE_MAKE_PROGRAM);
   const std::string makeArgs = mf-GetSafeDefinition(
   CMAKE_KATE_MAKE_ARGUMENTS);
+  const char* homeOutputDir = mf-GetHomeOutputDirectory();
 
   this-AppendTarget(fout, all, make, makeArgs,
- mf-GetHomeOutputDirectory());
+ homeOutputDir, homeOutputDir);
   this-AppendTarget(fout, clean, make, makeArgs,
- mf-GetHomeOutputDirectory());
+ homeOutputDir, homeOutputDir);
 
   // add all executable and library targets and some of the GLOBAL
   // and UTILITY targets
@@ -143,7 +146,8 @@ cmExtraKateGenerator::WriteTargets(const cmMakefile* mf,
 }
   if (insertTarget)
 {
-this-AppendTarget(fout, ti-first, make, makeArgs, currentDir);
+this-AppendTarget(fout, ti-first, make, makeArgs,
+   currentDir, homeOutputDir);
 }
 }
 break;
@@ -158,7 +162,8 @@ cmExtraKateGenerator::WriteTargets(const cmMakefile* mf,
   break;
 }
 
-this-AppendTarget(fout, ti-first, make, makeArgs, currentDir);
+this-AppendTarget(fout, ti-first, make, makeArgs,
+   currentDir, homeOutputDir);
   break;
 case cmTarget::EXECUTABLE:
 case cmTarget::STATIC_LIBRARY:
@@ -166,10 +171,12 @@ cmExtraKateGenerator::WriteTargets(const cmMakefile* mf,
 case cmTarget::MODULE_LIBRARY:
 case cmTarget::OBJECT_LIBRARY:
 {
-  this-AppendTarget(fout, ti-first, make, makeArgs, currentDir);
+  this-AppendTarget(fout, ti-first, make, makeArgs,
+ currentDir, homeOutputDir);
   std::string fastTarget = ti-first;
   fastTarget += /fast;
-  this-AppendTarget(fout, fastTarget, make, makeArgs, currentDir);
+  this-AppendTarget(fout, fastTarget, make, makeArgs,
+ currentDir, homeOutputDir);
 
 }
 break;
@@ -185,7 +192,7 @@ cmExtraKateGenerator::WriteTargets(const cmMakefile* mf,
 fit != objectFileTargets.end();
 ++fit)
   {
-  this-AppendTarget(fout, *fit, make, makeArgs, currentDir);
+  this-AppendTarget(fout, *fit, make, makeArgs, currentDir,homeOutputDir);
   }
   }
 
@@ -199,14 +206,18 @@ cmExtraKateGenerator::AppendTarget(cmGeneratedFileStream 
fout,
const std::string target,

[Cmake-commits] CMake branch, next, updated. v2.8.12.1-6151-g8de2b07

2013-12-10 Thread Stephen Kelly
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project CMake.

The branch, next has been updated
   via  8de2b07c14c1e1a6d7fea6473be4c31b67f9088f (commit)
   via  ba21786e4873d3dcedf4348283f0fb8f8e15faa6 (commit)
  from  8d32f9302671f3ff0378998154c6c5ec800f33d1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8de2b07c14c1e1a6d7fea6473be4c31b67f9088f
commit 8de2b07c14c1e1a6d7fea6473be4c31b67f9088f
Merge: 8d32f93 ba21786
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Dec 10 19:38:58 2013 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Dec 10 19:38:58 2013 -0500

Merge topic 'GenerateExportHeader-tests' into next

ba21786 Speed up the GenerateExportHeader unit test (#14453).


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ba21786e4873d3dcedf4348283f0fb8f8e15faa6
commit ba21786e4873d3dcedf4348283f0fb8f8e15faa6
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Wed Dec 11 01:01:50 2013 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Wed Dec 11 01:36:38 2013 +0100

Speed up the GenerateExportHeader unit test (#14453).

Instead of running many small tests with many cmake projects, simply
compare the generated export header against a reference.

diff --git a/Tests/Module/GenerateExportHeader/CMakeLists.txt 
b/Tests/Module/GenerateExportHeader/CMakeLists.txt
index 09f1881..dc1d7f2 100644
--- a/Tests/Module/GenerateExportHeader/CMakeLists.txt
+++ b/Tests/Module/GenerateExportHeader/CMakeLists.txt
@@ -159,13 +159,11 @@ macro(macro_add_test_library name)
 ${${name}_BINARY_DIR} # For the export header.
   )
   list(APPEND link_libraries ${name})
-  add_subdirectory(${name}test)
 endmacro()
 
 macro_add_test_library(libshared)
 macro_add_test_library(libstatic)
 add_subdirectory(lib_shared_and_static)
-add_subdirectory(lib_shared_and_statictest)
 
 add_subdirectory(override_symbol)
 add_subdirectory(nodeprecated)
@@ -175,7 +173,6 @@ if(NOT BORLAND)
 endif()
 
 if (CMAKE_COMPILER_IS_GNUCXX OR (${CMAKE_CXX_COMPILER_ID} MATCHES Clang))
-  # We deliberately call deprecated methods, and test for that elsewhere.
   # No need to clutter the test output with warnings.
   set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -Wno-deprecated-declarations)
 endif()
@@ -187,3 +184,13 @@ endif()
 add_executable(GenerateExportHeader exportheader_test.cpp)
 
 target_link_libraries(GenerateExportHeader ${link_libraries})
+if (WIN32)
+  set(_platform Win32)
+else()
+  set(_platform UNIX)
+endif()
+target_compile_definitions(GenerateExportHeader
+  PRIVATE
+SRC_DIR=${CMAKE_CURRENT_SOURCE_DIR}/reference/${_platform}
+BIN_DIR=${CMAKE_CURRENT_BINARY_DIR}
+)
diff --git a/Tests/Module/GenerateExportHeader/exportheader_test.cpp 
b/Tests/Module/GenerateExportHeader/exportheader_test.cpp
index 55c3c1a..ad6f351 100644
--- a/Tests/Module/GenerateExportHeader/exportheader_test.cpp
+++ b/Tests/Module/GenerateExportHeader/exportheader_test.cpp
@@ -11,6 +11,52 @@
 #define DOES_NOT_BUILD(function) function
 #endif
 
+#include fstream
+#include iostream
+#include cstdlib
+#include string
+
+void compare(const char* refName, const char* testName)
+{
+  std::ifstream ref;
+  ref.open(refName);
+  if (!ref.is_open())
+{
+std::cout  Could not open \  refName  \.  std::endl;
+std::exit(1);
+}
+  std::ifstream test;
+  test.open(testName);
+  if (!test.is_open())
+{
+std::cout  Could not open \  testName  \.  std::endl;
+exit(1);
+}
+
+  while (!ref.eof()  !test.eof())
+{
+std::string refLine;
+std::string testLine;
+getline(ref, refLine);
+getline(test, testLine);
+if (testLine.size()  testLine[testLine.size()-1] == ' ')
+  {
+  testLine = testLine.substr(0, testLine.size() - 1);
+  }
+if (refLine != testLine)
+  {
+  std::cout  Ref and test are not the same:\n  Ref:  \
+   refLine  \\n  Test: \  testLine  \\n;
+  exit(1);
+  }
+}
+  if (!ref.eof() || !test.eof())
+{
+std::cout  Ref and test have differing numbers of lines.;
+exit(1);
+}
+}
+
 int main()
 {
   {
@@ -78,5 +124,10 @@ int main()
   libstatic_not_exported();
   libstatic_excluded();
 
+  compare(SRC_DIR /libshared_export.h,
+  BIN_DIR /libshared/libshared_export.h);
+  compare(SRC_DIR /libstatic_export.h,
+  BIN_DIR /libstatic/libstatic_export.h);
+
   return 0;
 }
diff --git 
a/Tests/Module/GenerateExportHeader/lib_shared_and_statictest/CMakeLists.txt 
b/Tests/Module/GenerateExportHeader/lib_shared_and_statictest/CMakeLists.txt
deleted file mode 100644
index 207534d..000
--- 

[Cmake-commits] CMake branch, master, updated. v2.8.12.1-906-g62b9045

2013-12-10 Thread Kitware Robot
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project CMake.

The branch, master has been updated
   via  62b90453d701d655cc53b0cda4c9d3d800fefa26 (commit)
  from  a2489ce49c0cbf5582a29ef8c4a0d9728994f465 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=62b90453d701d655cc53b0cda4c9d3d800fefa26
commit 62b90453d701d655cc53b0cda4c9d3d800fefa26
Author: Kitware Robot kwro...@kitware.com
AuthorDate: Wed Dec 11 00:01:08 2013 -0500
Commit: Kitware Robot kwro...@kitware.com
CommitDate: Wed Dec 11 00:01:08 2013 -0500

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index ec3aadd..e4c4862 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -2,5 +2,5 @@
 set(CMake_VERSION_MAJOR 2)
 set(CMake_VERSION_MINOR 8)
 set(CMake_VERSION_PATCH 12)
-set(CMake_VERSION_TWEAK 20131210)
+set(CMake_VERSION_TWEAK 20131211)
 #set(CMake_VERSION_RC 1)

---

Summary of changes:
 Source/CMakeVersion.cmake |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits