Re: [cmake-developers] Volunteering to maintain a new module: FindGSL.cmake

2014-12-04 Thread Stephen Kelly
Thompson, KT wrote:

 Stephen Kelly wrote:
 
 #  GSL_INCLUDE_DIRS   - Location of GSL header files.
 #  GSL_LIBRARIES  - The GSL libraries.
 
 I'm curious: Given that you provide IMPORTED targets, what would a user
 need these variables for? Do you have a particular use-case that needs
 them?
 
 These are defined mostly as a courtesy for folks who don't use imported
 targets yet.  Additionally, the CMake documentation for
 developers::Modules
 (http://www.cmake.org/cmake/help/v3.0/manual/cmake-developer.7.html#modules)
 mentions these as typical outputs from FindXXX.cmake modules.

Yes. They are useful at least when a FindXXX does not provide IMPORTED 
targets. The presence of those variables though indicates to users that they 
have to add

 include_directories(${Xxx_INCLUDE_DIRS})

to their projects which

* Is not necessary/Is redundant
* Is noisy
* Is directory scoped, rather than target scoped, as they get for free 
already with IMPORTED targets.

There is a mind-set change needed to avoid lines like that. CMake does not 
have to be noisy anymore :). I don't see a hard need for new modules which 
provide IMPORTED targets need to provide such variables. As you write below, 
you only use them for informational purposes.

 In my own
 projects, I use these to provide informational output during the
 configuration.  I suppose I could query the imported targets for the same
 information.

If the informational output is general enough, maybe we can add a module to 
CMake to simplify getting this output for IMPORTED targets.

 After thinking about this for a couple of minutes, I don't have a strong
 opinion on it.  However, I will leave them in place (to make this module
 have similar behavior to other incorporated modules) unless I hear a
 strong consensus from this list to remove them.

The similarity to other modules keeps alive the illusion that they are 
needed or are a part of mysterious body of 'I have to do this to make it 
work' boiler plate which people accumulate and forget about in their CMake 
code.

 I will
 be responding to comments that Brad King made yesterday in my next email
 to the list.  Can you review my updated implementation as presented in
 that email?

Sure, thanks for the update.

 Is it possible/reasonable to determine if a particular GSL package has a
 dependency? On ATLAS, for example.
 
 You can certainly build GSL against any BLAS implementation, but I've
 never seen that done in production.  If a custom BLAS is used, the
 pkgconfig script will correctly report the alternate BLAS library
 (Unix/Linux platforms).  For other types of installations, I'm not sure
 how to query for the BLAS using when compiling GSL (e.g. Windows).  If the
 GSL is a shred library, I might be able to use system tools to inspect the
 rpath - but I'm not sure that level of complexity is required for this
 simple module.

I agree that that level of complexity is not needed. But I wondered if GSL 
had build output which contains that information. Or gsl-config.exe or 
whatever.

Thanks,

Steve.


-- 

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


Re: [cmake-developers] Volunteering to maintain a new module: FindGSL.cmake

2014-12-04 Thread Brad King
On 12/04/2014 02:29 PM, Stephen Kelly wrote:
 #  GSL_INCLUDE_DIRS   - Location of GSL header files.
 #  GSL_LIBRARIES  - The GSL libraries.

 These are defined mostly as a courtesy for folks who don't use imported
 targets yet.
 
 Yes. They are useful at least when a FindXXX does not provide IMPORTED 
 targets.

I think we should keep them for now, even in new modules.

 There is a mind-set change needed to avoid lines like that. CMake does not 
 have to be noisy anymore :). I don't see a hard need for new modules which 
 provide IMPORTED targets need to provide such variables.

IMO we're not ready to make that call yet.  Only when there is a dedicated
and sweeping effort to make imported targets the norm for most of the
find modules that come with CMake should we stop adding the variables to
new modules.

We're still learning the process of providing imported targets from
find modules.  As evidenced by the recent trouble with FindOpenGL:

 http://www.cmake.org/Bug/view.php?id=15267

they cannot be the norm yet.

-Brad

-- 

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


Re: [cmake-developers] suggestion: rename FindXerces to FindXercesC

2014-12-04 Thread Roger Leigh
On Thu, Dec 04, 2014 at 10:32:53AM -0500, Brad King wrote:
 On 12/04/2014 10:09 AM, Erik Sjölund wrote:
  I think it is a good idea to rename FindXerces to FindXercesC or
  something similar, just to indicate that is about the C++
  implementation.
 
 Thanks for pointing out the distinct implementations.  The module
 is new in CMake 3.1 so our last chance to rename it now before the
 final release of that version.  Actually it looks like we're missing
 a release note for it too.
 
 The documentation of the module starts off with:
 
  Find the Apache Xerces-C++ validating XML parser...
 
 which is pretty clear, though that is not visible at the call
 sites of find_package(Xerces).
 
 Roger, as the contributor of this module do you have any reason
 not to change the name?

No.  Either is fine with me; I didn't expect this to be problematic
to omit the C suffix, but happy to have it added if it will avoid
confusion.

I just saw your other mail saying you'd made a patch.  Do you need me
to do anything else?


Thanks,
Roger

-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linuxhttp://people.debian.org/~rleigh/
 `. `'   schroot and sbuild  http://alioth.debian.org/projects/buildd-tools
   `-GPG Public Key  F33D 281D 470A B443 6756 147C 07B3 C8BC 4083 E800
-- 

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


[CMake] CMake and 64-bit Systems

2014-12-04 Thread Micha Renner
Hallo,

does CMake run on 64-bit OS (e.g. Ubuntu 14.10 64-bit) without problems
or are there some workarounds necessary to get it run? If so, is there a
description available?

Greetings

Michael





-- 

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


Re: [CMake] CMake and 64-bit Systems

2014-12-04 Thread John Drescher
 does CMake run on 64-bit OS (e.g. Ubuntu 14.10 64-bit) without problems
 or are there some workarounds necessary to get it run? If so, is there a
 description available?


I have not had any real issue with cmake (32 or 64 bit binary) on 64
bit linux or windows.

John
-- 

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


Re: [CMake] CMake and 64-bit Systems

2014-12-04 Thread Jakub Zakrzewski
Hallo Michael,

 does CMake run on 64-bit OS (e.g. Ubuntu 14.10 64-bit) without problems or 
 are there some workarounds necessary
 to get it run? If so, is there a description available?

CMake runs smoothly on much more exotic than 64-bit OS, so what makes you think 
it wouldn't work on those?

But let's be clear. It runs without problems on my OpenSUSE, Gentoo, Solaris 
10/11 and Windows 64-bit boxes. Just install / build and off you go.

--
Gruesse,
Jakub


-- 

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


[CMake] Visual Studio 12 C++ Compiler Detection

2014-12-04 Thread Allen Barnett
Hi: I'm trying to create a 64-bit Visual Studio 12 (aka 2013) project with 
CMake 3.0.2. My CMakeLists.txt file is really simple:

cmake_minimum_required( VERSION 3.0 )
project( cmc CXX )
# What compiler did we find?
message( C++: ${CMAKE_CXX_COMPILER} )

From a windows shell I do:

 c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat
 cmake -G Visual Studio 12 Win64 .
-- The CXX compiler identification is MSVC 18.0.31101.0
-- Check for working CXX compiler using: Visual Studio 12 2013 Win64
-- Check for working CXX compiler using: Visual Studio 12 2013 Win64 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
C++: C:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/x86_amd64/cl.exe
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/dbarnett/cmc/build

So, it appears to find the compiler OK since it emits the correct compiler 
identification. But, the actual value of CMAKE_CXX_COMPILER is not usable. If 
you try to execute C:/Program/x86_amd64/cl.exe from within a CMake script 
or even from the command line, it will fail and produce the well-known 
0xc07b dialog (missing DLL). Unless you've sourced vcvarsx86_amd64.bat, 
the correct environment variables are not set for this version of the compiler.

On the other hand, if I do cmake -G NMake Makefiles, I get what I expect:

-- The CXX compiler identification is MSVC 18.0.31101.0
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual 
Studio 12.0/VC/bin/amd64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual 
Studio 12.0/VC/bin/amd64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
C++: C:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/amd64/cl.exe
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/dbarnett/cmc/other

Namely, it finds C:/Program/amd64/cl.exe.

I've looked through the CMake Modules, but I could not really find the place 
where CMake derives the value for CMAKE_CXX_COMPILER when you generate a VS 
project. Could someone point me to the source code where this occurs? I would 
like to see how it is coming up with this version of the compiler which isn't 
even in the PATH.

Thanks,
Allen
-- 

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

[CMake] project directive overwrites CMAKE_INSTALL_PREFIX?

2014-12-04 Thread Chris Johnson
I have a global include file used by all of the CMakeLists.txt files in my
project. In it, I set the value of CMAKE_INSTALL_PREFIX, as well as a
number of other variables and functions.

In my CMakeLists.txt file, I had this:

cmake_minimum_require(VERSION 2.8.4)
include(global.inc)
project(whatever)

When I run cmake, the value of CMAKE_INSTALL_PREFIX is lost! Instead, in
the resulting cmake_install.cmake file has been defaulted back to
/usr/local which is completely wrong.

However, if I change the order to this:

cmake_minimum_require(VERSION 2.8.4)
project(whatever)
include(global.inc)

It appears to work.

I find nothing in the documentation saying that the project() directive
will set CMAKE_INSTALL_PREFIX.

Even more strangely, if I run cmake a second time with the first
configuration (include before project), it will rewrite cmake_install.cmake
with the correct value.
​ ​
That is, the behavior of cmake appears to be different based on whether the
build directory is empty or already contains cmake_install.cmake and
CMakeCache.txt files
​, even though they contain the wrong path value for CMAKE_INSTALL_PREFIX.​

What is going on here?
-- 

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

Re: [CMake] project directive overwrites CMAKE_INSTALL_PREFIX?

2014-12-04 Thread J Decker
I find it's better to define CMAKE_INSTALL_PREFIX on the command line when
building

I do have this bit of code...

IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
  SET(CMAKE_INSTALL_PREFIX
${CMAKE_BINARY_DIR}/../${CMAKE_BUILD_TYPE}_out CACHE PATH Install
default 'out' in this directory. FORCE
)
ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)


which keeps it from overwriting an already set value (from the command
line); and make sure it's in the cache so cmake-gui can edit it...

(if  project() does something with cmake_isnstall_prefix might also be a
bug)

On Thu, Dec 4, 2014 at 7:27 PM, Chris Johnson cxjohn...@gmail.com wrote:

 I have a global include file used by all of the CMakeLists.txt files in my
 project. In it, I set the value of CMAKE_INSTALL_PREFIX, as well as a
 number of other variables and functions.

 In my CMakeLists.txt file, I had this:

 cmake_minimum_require(VERSION 2.8.4)
 include(global.inc)
 project(whatever)

 When I run cmake, the value of CMAKE_INSTALL_PREFIX is lost! Instead, in
 the resulting cmake_install.cmake file has been defaulted back to
 /usr/local which is completely wrong.

 However, if I change the order to this:

 cmake_minimum_require(VERSION 2.8.4)
 project(whatever)
 include(global.inc)

 It appears to work.

 I find nothing in the documentation saying that the project() directive
 will set CMAKE_INSTALL_PREFIX.

 Even more strangely, if I run cmake a second time with the first
 configuration (include before project), it will rewrite cmake_install.cmake
 with the correct value.
 ​ ​
 That is, the behavior of cmake appears to be different based on whether
 the build directory is empty or already contains cmake_install.cmake and
 CMakeCache.txt files
 ​, even though they contain the wrong path value for CMAKE_INSTALL_PREFIX.​

 What is going on here?






 --

 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

-- 

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

[CMake] Correct settings to add docopt.cpp to target list

2014-12-04 Thread Adam Getchell
Hello all,

I’m trying to use the docopt.cpp parser for my project[1]:

https://github.com/docopt/docopt.cpp https://github.com/docopt/docopt.cpp

The usual invocation to build works:

┌─[adam][Hapkido][±][docopt ✗][~/CDT-plusplus/src/docopt]
└─▪ clang++ --std=c++11 --stdlib=libc++ -I . docopt.cpp examples/naval_fate.cpp 
-o naval_fate

So, I want to add docopt.cpp and have the compiler look for header files in the 
same directory, and add that to my executable.

So far, what I’ve attempted is to add the lines:

include_directories (BEFORE src/docopt)
add_library(docopt.cpp src/docopt/docopt.cpp”)

My program uses CGAL[2], and all of those library headers are incorporated 
using the create_single_source_cgal_program function in the 
CGAL_CreateSingleSourceCGALProgram.cmake module.

The error messages I’m getting correspond to the ones I get when docopt.cpp is 
not included:

┌─[adam][Hapkido][±][docopt ✗][~/CDT-plusplus/src/docopt]
└─▪ clang++ --std=c++11 --stdlib=libc++ -I . examples/naval_fate.cpp -o 
naval_fate
Undefined symbols for architecture x86_64:
  docopt::docopt(std::__1::basic_stringchar, std::__1::char_traitschar, 
std::__1::allocatorchar  const, 
std::__1::vectorstd::__1::basic_stringchar, std::__1::char_traitschar, 
std::__1::allocatorchar , std::__1::allocatorstd::__1::basic_stringchar, 
std::__1::char_traitschar, std::__1::allocatorcharconst, bool, 
std::__1::basic_stringchar, std::__1::char_traitschar, 
std::__1::allocatorchar  const, bool), referenced from:
  _main in naval_fate-780283.o
  docopt::operator(std::__1::basic_ostreamchar, std::__1::char_traitschar 
, docopt::value const), referenced from:
  _main in naval_fate-780283.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Compare to:

┌─[adam][Hapkido][±][docopt ✗][~/CDT-plusplus]
└─▪ ./build.sh 
-- The C compiler identification is AppleClang 6.0.0.654
-- The CXX compiler identification is AppleClang 6.0.0.654
-- Check for working C compiler using: Ninja
-- Check for working C compiler using: Ninja -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler using: Ninja
-- Check for working CXX compiler using: Ninja -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Build type: Release
-- USING CXXFLAGS = ' -O3 -DNDEBUG'
-- USING EXEFLAGS = '  
-Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
 '
-- Targetting Ninja
-- Using /usr/bin/c++ compiler.
-- DARWIN_VERSION=14
-- Mac Leopard detected
-- Requested component: Core
-- Requested component: MPFR
-- Requested component: GMP
-- Found Eigen3: /usr/local/include/eigen3 (found suitable version 3.2.2, 
minimum required is 3.1.0) 
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/adam/CDT-plusplus/build
[10/13] Linking CXX executable cdt-docopt
FAILED: :  /usr/bin/c++   -O3 -DNDEBUG -Wl,-search_paths_first 
-Wl,-headerpad_max_install_names 
-Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
 CMakeFiles/cdt-docopt.dir/src/cdt-docopt.cpp.o  -o cdt-docopt 
-L/Users/adam/gmock-1.7.0/lib/.libs  -L/Users/adam/gmock-1.7.0/gtest/lib/.libs 
/usr/local/lib/libmpfr.dylib /usr/local/lib/libgmp.dylib 
/usr/local/lib/libCGAL_Core.dylib /usr/local/lib/libCGAL.dylib 
/usr/local/lib/libboost_thread-mt.dylib /usr/local/lib/libboost_system-mt.dylib 
/usr/local/lib/libCGAL_Core.dylib /usr/local/lib/libCGAL.dylib 
/usr/local/lib/libboost_thread-mt.dylib /usr/local/lib/libboost_system-mt.dylib 
-Wl,-rpath,/Users/adam/gmock-1.7.0/lib/.libs 
-Wl,-rpath,/Users/adam/gmock-1.7.0/gtest/lib/.libs  :
Undefined symbols for architecture x86_64:
  docopt::docopt(std::__1::basic_stringchar, std::__1::char_traitschar, 
std::__1::allocatorchar  const, 
std::__1::vectorstd::__1::basic_stringchar, std::__1::char_traitschar, 
std::__1::allocatorchar , std::__1::allocatorstd::__1::basic_stringchar, 
std::__1::char_traitschar, std::__1::allocatorcharconst, bool, 
std::__1::basic_stringchar, std::__1::char_traitschar, 
std::__1::allocatorchar  const, bool), referenced from:
  _main in cdt-docopt.cpp.o
  docopt::operator(std::__1::basic_ostreamchar, std::__1::char_traitschar 
, docopt::value const), referenced from:
  _main in cdt-docopt.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[10/13] Building CXX object 
CMakeFiles/unittests.dir/unittests/Triangulated2SphereTest.cpp.o
ninja: build stopped: subcommand failed.

Any suggestions?

[1] https://github.com/acgetchell/CDT-plusplus/tree/docopt 
https://github.com/acgetchell/CDT-plusplus/tree/docopt
[2] 

Re: [CMake] Correct settings to add docopt.cpp to target list

2014-12-04 Thread Adam Getchell
I should note that I'm doing an out of source build, and that for my
project the following line works:

┌─[*adam*][Hapkido][*±*][docopt *✓*][~/CDT-plusplus/build]

└─▪ clang++ --std=c++11 --stdlib=libc++ -I ../src/docopt
../src/docopt/docopt.cpp ../src/cdt-docopt.cpp -o cdt_docopt

On Thu, Dec 4, 2014 at 9:30 PM, Adam Getchell adam.getch...@gmail.com
wrote:

 Hello all,

 I’m trying to use the docopt.cpp parser for my project[1]:

 https://github.com/docopt/docopt.cpp

 The usual invocation to build works:

 ┌─[*adam*][Hapkido][*±*][docopt *✗*][~/CDT-plusplus/src/docopt]
 └─▪ clang++ --std=c++11 --stdlib=libc++ -I . docopt.cpp
 examples/naval_fate.cpp -o naval_fate

 So, I want to add docopt.cpp and have the compiler look for header files
 in the same directory, and add that to my executable.

 So far, what I’ve attempted is to add the lines:

 include_directories (BEFORE src/docopt)
 add_library(docopt.cpp src/docopt/docopt.cpp”)

 My program uses CGAL[2], and all of those library headers are incorporated
 using the create_single_source_cgal_program function in the
 CGAL_CreateSingleSourceCGALProgram.cmake module.

 The error messages I’m getting correspond to the ones I get when
 docopt.cpp is not included:

 ┌─[*adam*][Hapkido][*±*][docopt *✗*][~/CDT-plusplus/src/docopt]
 └─▪ clang++ --std=c++11 --stdlib=libc++ -I . examples/naval_fate.cpp -o
 naval_fate
 Undefined symbols for architecture x86_64:
   docopt::docopt(std::__1::basic_stringchar,
 std::__1::char_traitschar, std::__1::allocatorchar  const,
 std::__1::vectorstd::__1::basic_stringchar, std::__1::char_traitschar,
 std::__1::allocatorchar ,
 std::__1::allocatorstd::__1::basic_stringchar,
 std::__1::char_traitschar, std::__1::allocatorcharconst, bool,
 std::__1::basic_stringchar, std::__1::char_traitschar,
 std::__1::allocatorchar  const, bool), referenced from:
   _main in naval_fate-780283.o
   docopt::operator(std::__1::basic_ostreamchar,
 std::__1::char_traitschar , docopt::value const), referenced from:
   _main in naval_fate-780283.o
 ld: symbol(s) not found for architecture x86_64
 clang: error: linker command failed with exit code 1 (use -v to see
 invocation)

 Compare to:

 ┌─[*adam*][Hapkido][*±*][docopt *✗*][~/CDT-plusplus]
 └─▪ ./build.sh
 -- The C compiler identification is AppleClang 6.0.0.654
 -- The CXX compiler identification is AppleClang 6.0.0.654
 -- Check for working C compiler using: Ninja
 -- Check for working C compiler using: Ninja -- works
 -- Detecting C compiler ABI info
 -- Detecting C compiler ABI info - done
 -- Check for working CXX compiler using: Ninja
 -- Check for working CXX compiler using: Ninja -- works
 -- Detecting CXX compiler ABI info
 -- Detecting CXX compiler ABI info - done
 -- Build type: Release
 -- USING CXXFLAGS = ' -O3 -DNDEBUG'
 -- USING EXEFLAGS = '
 -Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
 '
 -- Targetting Ninja
 -- Using /usr/bin/c++ compiler.
 -- DARWIN_VERSION=14
 -- Mac Leopard detected
 -- Requested component: Core
 -- Requested component: MPFR
 -- Requested component: GMP
 -- Found Eigen3: /usr/local/include/eigen3 (found suitable version
 3.2.2, minimum required is 3.1.0)
 -- Configuring done
 -- Generating done
 -- Build files have been written to: /Users/adam/CDT-plusplus/build
 [10/13] Linking CXX executable cdt-docopt
 FAILED: :  /usr/bin/c++   -O3 -DNDEBUG -Wl,-search_paths_first
 -Wl,-headerpad_max_install_names
 -Wl,-dylib_file,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
 CMakeFiles/cdt-docopt.dir/src/cdt-docopt.cpp.o  -o cdt-docopt
 -L/Users/adam/gmock-1.7.0/lib/.libs
 -L/Users/adam/gmock-1.7.0/gtest/lib/.libs /usr/local/lib/libmpfr.dylib
 /usr/local/lib/libgmp.dylib /usr/local/lib/libCGAL_Core.dylib
 /usr/local/lib/libCGAL.dylib /usr/local/lib/libboost_thread-mt.dylib
 /usr/local/lib/libboost_system-mt.dylib /usr/local/lib/libCGAL_Core.dylib
 /usr/local/lib/libCGAL.dylib /usr/local/lib/libboost_thread-mt.dylib
 /usr/local/lib/libboost_system-mt.dylib
 -Wl,-rpath,/Users/adam/gmock-1.7.0/lib/.libs
 -Wl,-rpath,/Users/adam/gmock-1.7.0/gtest/lib/.libs  :
 Undefined symbols for architecture x86_64:
   docopt::docopt(std::__1::basic_stringchar,
 std::__1::char_traitschar, std::__1::allocatorchar  const,
 std::__1::vectorstd::__1::basic_stringchar, std::__1::char_traitschar,
 std::__1::allocatorchar ,
 std::__1::allocatorstd::__1::basic_stringchar,
 std::__1::char_traitschar, std::__1::allocatorcharconst, bool,
 std::__1::basic_stringchar, std::__1::char_traitschar,
 std::__1::allocatorchar  const, bool), referenced from:
   _main in cdt-docopt.cpp.o
   docopt::operator(std::__1::basic_ostreamchar,
 std::__1::char_traitschar , docopt::value const), referenced from:
   _main in cdt-docopt.cpp.o
 ld: symbol(s) not 

[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1082-g72edefc

2014-12-04 Thread Daniele E . Domenichelli
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  72edefcf8a04d5ee9404cccd33090dd0d2025005 (commit)
   via  0bdf24548b2059d9e11520f2de492b4847aefb8f (commit)
   via  0f381ad5218758aadf92bbd4e5d68347a06cc3ab (commit)
  from  b7f1ba1691b6b49947eaba55bf506ffc63eafa70 (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=72edefcf8a04d5ee9404cccd33090dd0d2025005
commit 72edefcf8a04d5ee9404cccd33090dd0d2025005
Merge: b7f1ba1 0bdf245
Author: Daniele E. Domenichelli daniele.domeniche...@gmail.com
AuthorDate: Thu Dec 4 05:28:53 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 05:28:53 2014 -0500

Merge topic 'ExternalProject_TEST_EXCLUDE_FROM_MAIN' into next

0bdf2454 ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option
0f381ad5 CMake Nightly Date Stamp


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0bdf24548b2059d9e11520f2de492b4847aefb8f
commit 0bdf24548b2059d9e11520f2de492b4847aefb8f
Author: Daniele E. Domenichelli daniele.domeniche...@iit.it
AuthorDate: Sun Nov 30 22:28:43 2014 +0100
Commit: Daniele E. Domenichelli daniele.domeniche...@iit.it
CommitDate: Thu Dec 4 11:27:19 2014 +0100

ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option

If this option is enabled, the test step is created with the
EXCLUDE_FROM_MAIN option, and if TEST_BEFORE_INSTALL is enabled, the
install step does not depend on the test step.

This means that the test step is never executed, unless the test target
is explicitly created by calling ExternalProject_Add_StepTarget, or by
passing it with the STEP_TARGETS option, or with the EP_STEP_TARGETS
directory property.

diff --git a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst 
b/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst
new file mode 100644
index 000..dfbf108
--- /dev/null
+++ b/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst
@@ -0,0 +1,6 @@
+ExternalProject_TEST_EXCLUDE_FROM_MAIN
+--
+
+* The :module:`ExternalProject` module :command:`ExternalProject_Add`
+  command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests
+  from the main build.
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index e5616b1..7e4cc37 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -149,6 +149,8 @@ Create custom targets to build projects in external trees
 Add test step executed before install step
   ``TEST_AFTER_INSTALL 1``
 Add test step executed after install step
+  ``TEST_EXCLUDE_FROM_MAIN 1``
+Main target does not depend on the test step
   ``TEST_COMMAND cmd...``
 Command to drive test
 
@@ -2193,12 +2195,13 @@ function(_ep_add_test_command name)
 
   get_property(before TARGET ${name} PROPERTY _EP_TEST_BEFORE_INSTALL)
   get_property(after TARGET ${name} PROPERTY _EP_TEST_AFTER_INSTALL)
+  get_property(exclude TARGET ${name} PROPERTY _EP_TEST_EXCLUDE_FROM_MAIN)
   get_property(cmd_set TARGET ${name} PROPERTY _EP_TEST_COMMAND SET)
 
   # Only actually add the test step if one of the test related properties is
   # explicitly set. (i.e. the test step is omitted unless requested...)
   #
-  if(cmd_set OR before OR after)
+  if(cmd_set OR before OR after OR exclude)
 if(cmd_set)
   get_property(cmd TARGET ${name} PROPERTY _EP_TEST_COMMAND)
 else()
@@ -2206,9 +2209,21 @@ function(_ep_add_test_command name)
 endif()
 
 if(before)
-  set(dep_args DEPENDEES build DEPENDERS install)
+  set(dependees_args DEPENDEES build)
 else()
-  set(dep_args DEPENDEES install)
+  set(dependees_args DEPENDEES install)
+endif()
+
+if(exclude)
+  set(dependers_args )
+  set(exclude_args EXCLUDE_FROM_MAIN 1)
+else()
+  if(before)
+set(dependers_args DEPENDERS install)
+  else()
+set(dependers_args )
+  endif()
+  set(exclude_args )
 endif()
 
 get_property(log TARGET ${name} PROPERTY _EP_LOG_TEST)
@@ -2221,7 +2236,9 @@ function(_ep_add_test_command name)
 ExternalProject_Add_Step(${name} test
   COMMAND ${cmd}
   WORKING_DIRECTORY ${binary_dir}
-  ${dep_args}
+  ${dependees_args}
+  ${dependers_args}
+  ${exclude_args}
   ${log}
   )
   endif()
diff --git a/Tests/ExternalProjectLocal/CMakeLists.txt 
b/Tests/ExternalProjectLocal/CMakeLists.txt
index cbbb555..a71c869 100644
--- a/Tests/ExternalProjectLocal/CMakeLists.txt
+++ b/Tests/ExternalProjectLocal/CMakeLists.txt
@@ -71,6 +71,31 @@ if(can_build_tutorial_step5)
 LOG_TEST 

[Cmake-commits] CMake branch, master, updated. v3.1.0-rc2-480-gba98442

2014-12-04 Thread Brad King
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  ba98442610024cf50cb407a5cc09f25096a7c79a (commit)
   via  352f246f3ebfd8daf5fda9bad2db01b56fa4bf4d (commit)
  from  0f381ad5218758aadf92bbd4e5d68347a06cc3ab (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=ba98442610024cf50cb407a5cc09f25096a7c79a
commit ba98442610024cf50cb407a5cc09f25096a7c79a
Merge: 0f381ad 352f246
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 09:10:05 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 09:10:05 2014 -0500

Merge topic 'vs-phone-store-deployment-location'

352f246f VS: Add source file property to specify Windows App deployment 
location


---

Summary of changes:
 Help/manual/cmake-properties.7.rst  |1 +
 Help/prop_sf/VS_DEPLOYMENT_LOCATION.rst |8 
 Help/release/3.1.0.rst  |4 
 Source/cmVisualStudio10TargetGenerator.cxx  |   15 +++
 Tests/VSWinStorePhone/CMakeLists.txt|7 ++-
 .../cmake/Package_vc11.store.appxmanifest.in|6 +++---
 .../cmake/Package_vc12.store.appxmanifest.in|8 
 .../cmake/Package_vc12.wp.appxmanifest.in   |8 
 8 files changed, 45 insertions(+), 12 deletions(-)
 create mode 100644 Help/prop_sf/VS_DEPLOYMENT_LOCATION.rst


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


[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1087-g5484291

2014-12-04 Thread Brad King
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  5484291dfcc5cc17c97881711d71b5f1cadfde6a (commit)
   via  44f9a69d3402c22526274d38837104b5cb9500c5 (commit)
   via  1c104c019a23392563befb3564dd5c679cc2c585 (commit)
  from  480349b681ef2154ea3e4784dbabd47149a7bf95 (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=5484291dfcc5cc17c97881711d71b5f1cadfde6a
commit 5484291dfcc5cc17c97881711d71b5f1cadfde6a
Merge: 480349b 44f9a69
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 09:11:48 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 09:11:48 2014 -0500

Merge branch 'master' into next


---

Summary of changes:


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


[Cmake-commits] CMake branch, release, updated. v3.1.0-rc2-78-g1c104c0

2014-12-04 Thread Brad King
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, release has been updated
   via  1c104c019a23392563befb3564dd5c679cc2c585 (commit)
   via  352f246f3ebfd8daf5fda9bad2db01b56fa4bf4d (commit)
  from  7c28e7c17205983ef16d72d4ad6f65649355e805 (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 -
---

Summary of changes:
 Help/manual/cmake-properties.7.rst  |1 +
 Help/prop_sf/VS_DEPLOYMENT_LOCATION.rst |8 
 Help/release/3.1.0.rst  |4 
 Source/cmVisualStudio10TargetGenerator.cxx  |   15 +++
 Tests/VSWinStorePhone/CMakeLists.txt|7 ++-
 .../cmake/Package_vc11.store.appxmanifest.in|6 +++---
 .../cmake/Package_vc12.store.appxmanifest.in|8 
 .../cmake/Package_vc12.wp.appxmanifest.in   |8 
 8 files changed, 45 insertions(+), 12 deletions(-)
 create mode 100644 Help/prop_sf/VS_DEPLOYMENT_LOCATION.rst


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


[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1089-g466abce

2014-12-04 Thread Brad King
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  466abce5f276f99678137ea06f6a59fdf26d563c (commit)
   via  607b39dc1192a9e0f7eae66f9979c399e5126337 (commit)
  from  5484291dfcc5cc17c97881711d71b5f1cadfde6a (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=466abce5f276f99678137ea06f6a59fdf26d563c
commit 466abce5f276f99678137ea06f6a59fdf26d563c
Merge: 5484291 607b39d
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:04:22 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 10:04:22 2014 -0500

Merge topic 'doc-mixed-case-commands' into next

607b39dc Utilities/Sphinx: Fix link targets for mixed-case command names


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=607b39dc1192a9e0f7eae66f9979c399e5126337
commit 607b39dc1192a9e0f7eae66f9979c399e5126337
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 09:59:43 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 10:03:26 2014 -0500

Utilities/Sphinx: Fix link targets for mixed-case command names

When a CMake domain 'command' object is defined by CMakeTransform or the
'cmake:command' directive, generate the link target with a lower-case
name even if the command name is not all lower-case.  This is needed to
make cross-references to the command definition work since the
'cmake:command' role is marked with the 'lowercase' property.

diff --git a/Utilities/Sphinx/cmake.py b/Utilities/Sphinx/cmake.py
index e20679a..5c0406d 100644
--- a/Utilities/Sphinx/cmake.py
+++ b/Utilities/Sphinx/cmake.py
@@ -201,7 +201,11 @@ class CMakeTransform(Transform):
 if make_index_entry:
 title = self.parse_title(env.docname)
 # Insert the object link target.
-targetid = '%s:%s' % (objtype, title)
+if objtype == 'command':
+targetname = title.lower()
+else:
+targetname = title
+targetid = '%s:%s' % (objtype, targetname)
 targetnode = nodes.target('', '', ids=[targetid])
 self.document.note_explicit_target(targetnode)
 self.document.insert(0, targetnode)
@@ -220,7 +224,11 @@ class CMakeObject(ObjectDescription):
 return sig
 
 def add_target_and_index(self, name, sig, signode):
-targetid = '%s:%s' % (self.objtype, name)
+if self.objtype == 'command':
+   targetname = name.lower()
+else:
+   targetname = name
+targetid = '%s:%s' % (self.objtype, targetname)
 if targetid not in self.state.document.ids:
 signode['names'].append(targetid)
 signode['ids'].append(targetid)

---

Summary of changes:
 Utilities/Sphinx/cmake.py |   12 ++--
 1 file changed, 10 insertions(+), 2 deletions(-)


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


[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1091-gd08809a

2014-12-04 Thread Brad King
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  d08809ae30abab134b1eb375124eb08f1c5b1bde (commit)
   via  bf94493bde831b47d9f6afed25d7a5b701607f23 (commit)
  from  466abce5f276f99678137ea06f6a59fdf26d563c (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=d08809ae30abab134b1eb375124eb08f1c5b1bde
commit d08809ae30abab134b1eb375124eb08f1c5b1bde
Merge: 466abce bf94493
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:14:58 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 10:14:58 2014 -0500

Merge topic 'ExternalProject_TEST_EXCLUDE_FROM_MAIN' into next

bf94493b Revert ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bf94493bde831b47d9f6afed25d7a5b701607f23
commit bf94493bde831b47d9f6afed25d7a5b701607f23
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:14:36 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 10:14:36 2014 -0500

Revert ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option

This reverts commit 0bdf24548b2059d9e11520f2de492b4847aefb8f.
It will be revised and restored.

diff --git a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst 
b/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst
deleted file mode 100644
index dfbf108..000
--- a/Help/release/dev/ExternalProject_TEST_EXCLUDE_FROM_MAIN.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-ExternalProject_TEST_EXCLUDE_FROM_MAIN
---
-
-* The :module:`ExternalProject` module :command:`ExternalProject_Add`
-  command learned a ``TEST_EXCLUDE_FROM_MAIN`` option to exclude tests
-  from the main build.
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index 7e4cc37..e5616b1 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -149,8 +149,6 @@ Create custom targets to build projects in external trees
 Add test step executed before install step
   ``TEST_AFTER_INSTALL 1``
 Add test step executed after install step
-  ``TEST_EXCLUDE_FROM_MAIN 1``
-Main target does not depend on the test step
   ``TEST_COMMAND cmd...``
 Command to drive test
 
@@ -2195,13 +2193,12 @@ function(_ep_add_test_command name)
 
   get_property(before TARGET ${name} PROPERTY _EP_TEST_BEFORE_INSTALL)
   get_property(after TARGET ${name} PROPERTY _EP_TEST_AFTER_INSTALL)
-  get_property(exclude TARGET ${name} PROPERTY _EP_TEST_EXCLUDE_FROM_MAIN)
   get_property(cmd_set TARGET ${name} PROPERTY _EP_TEST_COMMAND SET)
 
   # Only actually add the test step if one of the test related properties is
   # explicitly set. (i.e. the test step is omitted unless requested...)
   #
-  if(cmd_set OR before OR after OR exclude)
+  if(cmd_set OR before OR after)
 if(cmd_set)
   get_property(cmd TARGET ${name} PROPERTY _EP_TEST_COMMAND)
 else()
@@ -2209,21 +2206,9 @@ function(_ep_add_test_command name)
 endif()
 
 if(before)
-  set(dependees_args DEPENDEES build)
+  set(dep_args DEPENDEES build DEPENDERS install)
 else()
-  set(dependees_args DEPENDEES install)
-endif()
-
-if(exclude)
-  set(dependers_args )
-  set(exclude_args EXCLUDE_FROM_MAIN 1)
-else()
-  if(before)
-set(dependers_args DEPENDERS install)
-  else()
-set(dependers_args )
-  endif()
-  set(exclude_args )
+  set(dep_args DEPENDEES install)
 endif()
 
 get_property(log TARGET ${name} PROPERTY _EP_LOG_TEST)
@@ -2236,9 +2221,7 @@ function(_ep_add_test_command name)
 ExternalProject_Add_Step(${name} test
   COMMAND ${cmd}
   WORKING_DIRECTORY ${binary_dir}
-  ${dependees_args}
-  ${dependers_args}
-  ${exclude_args}
+  ${dep_args}
   ${log}
   )
   endif()
diff --git a/Tests/ExternalProjectLocal/CMakeLists.txt 
b/Tests/ExternalProjectLocal/CMakeLists.txt
index a71c869..cbbb555 100644
--- a/Tests/ExternalProjectLocal/CMakeLists.txt
+++ b/Tests/ExternalProjectLocal/CMakeLists.txt
@@ -71,31 +71,6 @@ if(can_build_tutorial_step5)
 LOG_TEST 1
   )
   set_property(TARGET ${proj} PROPERTY FOLDER Local)
-
-  set(proj TutorialStep5-Local-TestExcludeFromMainBefore)
-  ExternalProject_Add(${proj}
-URL ${CMAKE_CURRENT_SOURCE_DIR}/../Tutorial/Step5
-CMAKE_ARGS -G ${CMAKE_GENERATOR} SOURCE_DIR
-CMAKE_CACHE_DEFAULT_ARGS -DUSE_MYMATH:BOOL=OFF
-TEST_BEFORE_INSTALL 1
-TEST_EXCLUDE_FROM_MAIN 1
-STEP_TARGETS test
-LOG_TEST 1
-  )
-  set_property(TARGET ${proj} PROPERTY FOLDER Local)
-
-  set(proj 

[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1093-g2928ab1

2014-12-04 Thread Brad King
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  2928ab107e096ade189d410433311bab7298740b (commit)
   via  13fc2ed4c47962734ef0bf4bfb093ab52d20d8fa (commit)
  from  d08809ae30abab134b1eb375124eb08f1c5b1bde (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=2928ab107e096ade189d410433311bab7298740b
commit 2928ab107e096ade189d410433311bab7298740b
Merge: d08809a 13fc2ed
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:15:26 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 10:15:26 2014 -0500

Merge branch 'master' into next


---

Summary of changes:


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


[Cmake-commits] CMake branch, master, updated. v3.1.0-rc2-493-g470c549

2014-12-04 Thread Brad King
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  470c549c622d0be3ae63945e40a1cad85923 (commit)
   via  ff50046b78e23f8d8f23ea8b44dc1012edb0d792 (commit)
  from  c7bd2753932d1f2bec0b66c042b999a95d5bb713 (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=470c549c622d0be3ae63945e40a1cad85923
commit 470c549c622d0be3ae63945e40a1cad85923
Merge: c7bd275 ff50046
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:23:28 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 10:23:28 2014 -0500

Merge topic 'FindUnixCommands-use-FPHSA'

ff50046b FindUnixCommand: Use FPHSA to report status in standard way


---

Summary of changes:
 Modules/FindUnixCommands.cmake |   12 +---
 1 file changed, 9 insertions(+), 3 deletions(-)


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


[Cmake-commits] CMake branch, master, updated. v3.1.0-rc2-486-g09f797c

2014-12-04 Thread Brad King
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  09f797c19ccf8fb5e4241008e9845ba9ab7200bf (commit)
   via  955fbf29c748209c696a59effc39d19099e52095 (commit)
  from  13fc2ed4c47962734ef0bf4bfb093ab52d20d8fa (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=09f797c19ccf8fb5e4241008e9845ba9ab7200bf
commit 09f797c19ccf8fb5e4241008e9845ba9ab7200bf
Merge: 13fc2ed 955fbf2
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:23:21 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 10:23:21 2014 -0500

Merge topic 'vs-hlsl-typo'

955fbf29 VS: Fix typo in VS_SHADER_MODEL lookup comment


---

Summary of changes:
 Source/cmVisualStudio10TargetGenerator.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


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


[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1098-gd91dc12

2014-12-04 Thread Brad King
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  d91dc129c690510c32b10bbcb8efe17ebed72455 (commit)
   via  470c549c622d0be3ae63945e40a1cad85923 (commit)
   via  c7bd2753932d1f2bec0b66c042b999a95d5bb713 (commit)
   via  e4665171f45f6f06bb75f677a29d65015a4f5d0d (commit)
   via  09f797c19ccf8fb5e4241008e9845ba9ab7200bf (commit)
  from  2928ab107e096ade189d410433311bab7298740b (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=d91dc129c690510c32b10bbcb8efe17ebed72455
commit d91dc129c690510c32b10bbcb8efe17ebed72455
Merge: 2928ab1 470c549
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:23:34 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 10:23:34 2014 -0500

Merge branch 'master' into next


---

Summary of changes:


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


[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1100-g264d655

2014-12-04 Thread Brad King
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  264d65529e0487d0af19fad578a92a28d18e770b (commit)
   via  27141eede739fb4376a6fe2cec1b1171841bf7fb (commit)
  from  d91dc129c690510c32b10bbcb8efe17ebed72455 (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=264d65529e0487d0af19fad578a92a28d18e770b
commit 264d65529e0487d0af19fad578a92a28d18e770b
Merge: d91dc12 27141ee
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:51:54 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 10:51:54 2014 -0500

Merge topic 'xerces-rename' into next

27141eed Modules: Rename FindXerces to FindXercesC


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=27141eede739fb4376a6fe2cec1b1171841bf7fb
commit 27141eede739fb4376a6fe2cec1b1171841bf7fb
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 10:36:21 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 10:41:26 2014 -0500

Modules: Rename FindXerces to FindXercesC

The FindXerces module was added in commit v3.1.0-rc1~155^2 (FindXerces:
New module to find Apache Xerces-C++, 2014-08-17).  However, there are
two implementations of Xerces, one in C++:

  http://xerces.apache.org/xerces-c/

and one in Java:

  http://xerces.apache.org/xerces-j/

Rename FindXerces to FindXercesC to clarify that it is about the C++
implementation.

While at it, add the missing CMake 3.1 release note about this module.

Suggested-by: Erik Sjölund erik.sjol...@gmail.com

diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst
index f5a35b3..201c95f 100644
--- a/Help/manual/cmake-modules.7.rst
+++ b/Help/manual/cmake-modules.7.rst
@@ -208,7 +208,7 @@ All Modules
/module/FindWish
/module/FindwxWidgets
/module/FindwxWindows
-   /module/FindXerces
+   /module/FindXercesC
/module/FindX11
/module/FindXMLRPC
/module/FindZLIB
diff --git a/Help/module/FindXerces.rst b/Help/module/FindXerces.rst
deleted file mode 100644
index 166d8dd..000
--- a/Help/module/FindXerces.rst
+++ /dev/null
@@ -1 +0,0 @@
-.. cmake-module:: ../../Modules/FindXerces.cmake
diff --git a/Help/module/FindXercesC.rst b/Help/module/FindXercesC.rst
new file mode 100644
index 000..4818071
--- /dev/null
+++ b/Help/module/FindXercesC.rst
@@ -0,0 +1 @@
+.. cmake-module:: ../../Modules/FindXercesC.cmake
diff --git a/Help/release/3.1.0.rst b/Help/release/3.1.0.rst
index 65aae00..0cece37 100644
--- a/Help/release/3.1.0.rst
+++ b/Help/release/3.1.0.rst
@@ -238,6 +238,8 @@ Modules
 * The :module:`FindPkgConfig` module learned to use the ``PKG_CONFIG``
   environment variable value as the ``pkg-config`` executable, if set.
 
+* The :module:`FindXercesC` module was introduced.
+
 * The :module:`FindZLIB` module now provides imported targets.
 
 * The :module:`GenerateExportHeader` module ``generate_export_header``
diff --git a/Modules/FindXerces.cmake b/Modules/FindXercesC.cmake
similarity index 55%
rename from Modules/FindXerces.cmake
rename to Modules/FindXercesC.cmake
index 6c6007a..5a8ea9d 100644
--- a/Modules/FindXerces.cmake
+++ b/Modules/FindXercesC.cmake
@@ -1,21 +1,21 @@
 #.rst:
-# FindXerces
-# --
+# FindXercesC
+# ---
 #
 # Find the Apache Xerces-C++ validating XML parser headers and libraries.
 #
 # This module reports information about the Xerces installation in
 # several variables.  General variables::
 #
-#   Xerces_FOUND - true if the Xerces headers and libraries were found
-#   Xerces_VERSION - Xerces release version
-#   Xerces_INCLUDE_DIRS - the directory containing the Xerces headers
-#   Xerces_LIBRARIES - Xerces libraries to be linked
+#   XercesC_FOUND - true if the Xerces headers and libraries were found
+#   XercesC_VERSION - Xerces release version
+#   XercesC_INCLUDE_DIRS - the directory containing the Xerces headers
+#   XercesC_LIBRARIES - Xerces libraries to be linked
 #
 # The following cache variables may also be set::
 #
-#   Xerces_INCLUDE_DIR - the directory containing the Xerces headers
-#   Xerces_LIBRARY - the Xerces library
+#   XercesC_INCLUDE_DIR - the directory containing the Xerces headers
+#   XercesC_LIBRARY - the Xerces library
 
 # Written by Roger Leigh rle...@codelibre.net
 
@@ -32,54 +32,54 @@
 # (To distribute this file outside of CMake, substitute the full
 #  License text for the above reference.)
 
-function(_Xerces_GET_VERSION  version_hdr)
+function(_XercesC_GET_VERSION  version_hdr)
 file(STRINGS ${version_hdr} _contents REGEX ^[ \t]*#define 

[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1102-gcdcb218

2014-12-04 Thread Brad King
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  cdcb21844397efd56862fd4fad67f4b4d8045f6b (commit)
   via  f545eb0b0b00cb02f540636549f63189f43b4870 (commit)
  from  264d65529e0487d0af19fad578a92a28d18e770b (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=cdcb21844397efd56862fd4fad67f4b4d8045f6b
commit cdcb21844397efd56862fd4fad67f4b4d8045f6b
Merge: 264d655 f545eb0
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 15:41:33 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 15:41:33 2014 -0500

Merge topic 'vs-inherit-wd' into next

f545eb0b VS: Inherit target-level -wd flags in source files (#15284)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f545eb0b0b00cb02f540636549f63189f43b4870
commit f545eb0b0b00cb02f540636549f63189f43b4870
Author: Brad King brad.k...@kitware.com
AuthorDate: Thu Dec 4 15:32:32 2014 -0500
Commit: Brad King brad.k...@kitware.com
CommitDate: Thu Dec 4 15:40:04 2014 -0500

VS: Inherit target-level -wd flags in source files (#15284)

If a source file COMPILE_FLAGS option adds -wd, the .vcxproj file
will have a DisableSpecificWarnings setting for the source file.
Add to the setting a reference to %(DisableSpecificWarnings) to
inherit any such flags set for the whole target.

diff --git a/Source/cmVisualStudio10TargetGenerator.cxx 
b/Source/cmVisualStudio10TargetGenerator.cxx
index 68b6576..f903bdb 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1637,6 +1637,11 @@ bool 
cmVisualStudio10TargetGenerator::OutputSourceSpecificFlags(
 clOptions.AppendFlag(AdditionalIncludeDirectories,
  %(AdditionalIncludeDirectories));
 }
+  if(clOptions.HasFlag(DisableSpecificWarnings))
+{
+clOptions.AppendFlag(DisableSpecificWarnings,
+ %(DisableSpecificWarnings));
+}
   clOptions.AddDefines(configDefines.c_str());
   clOptions.SetConfiguration((*config).c_str());
   clOptions.OutputAdditionalOptions(*this-BuildFileStream,   , );

---

Summary of changes:
 Source/cmVisualStudio10TargetGenerator.cxx |5 +
 1 file changed, 5 insertions(+)


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


[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1109-gda1ba8e

2014-12-04 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  da1ba8eb418d6f08b2d21892ee83a82626da4663 (commit)
   via  e4d4289fad046ad1cab28f6abb144f609c112157 (commit)
   via  656167c3e0eb06ee69b2e6ffbba82bf0f385618e (commit)
   via  f0d0d761b2150e41397af8cfce2b846107cf8921 (commit)
   via  31452416ba1be692b55ed09f8cf39fa2914ad349 (commit)
   via  b96b025b2a337d7b09157f8b24cf9ca77a825863 (commit)
   via  169f116632321e99701986f48a19e836d2b9e710 (commit)
  from  cdcb21844397efd56862fd4fad67f4b4d8045f6b (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=da1ba8eb418d6f08b2d21892ee83a82626da4663
commit da1ba8eb418d6f08b2d21892ee83a82626da4663
Merge: cdcb218 e4d4289
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 17:58:14 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 17:58:14 2014 -0500

Merge topic 'Find-Modules-documentation' into next

e4d4289f Help: Document that IMPORTED targets in Find modules may be 
UNKNOWN.
656167c3 Help: Document IMPORTED_CONFIGURATIONS target property for Find 
modules.
f0d0d761 Help: Remove recommendation about checking minimum CMake version.
31452416 Help: Add useful links to IMPORTED targets and usage requirements.
b96b025b Help: Remove disadvantage creating IMPORTED targets in Find 
modules.
169f1166 Help: Link to cmake-packages(7) from the Module creation 
documentation.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e4d4289fad046ad1cab28f6abb144f609c112157
commit e4d4289fad046ad1cab28f6abb144f609c112157
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 23:56:52 2014 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Thu Dec 4 23:57:12 2014 +0100

Help: Document that IMPORTED targets in Find modules may be UNKNOWN.

diff --git a/Help/manual/cmake-developer.7.rst 
b/Help/manual/cmake-developer.7.rst
index 85a3c2d..8c61dfd 100644
--- a/Help/manual/cmake-developer.7.rst
+++ b/Help/manual/cmake-developer.7.rst
@@ -1052,6 +1052,11 @@ not any of its dependencies.  Instead, those 
dependencies should also be
 targets, and CMake should be told that they are dependencies of this target.
 CMake will then combine all the necessary information automatically.
 
+The type of the :prop_tgt:`IMPORTED` target created in the
+:command:`add_library` command can always be specified as ``UNKNOWN``
+type.  This simplifies the code in cases where static or shared variants may
+be found, and CMake will determine the type by inspecting the files.
+
 If the library is available with multiple configurations, the
 :prop_tgt:`IMPORTED_CONFIGURATIONS` target property should also be
 populated:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=656167c3e0eb06ee69b2e6ffbba82bf0f385618e
commit 656167c3e0eb06ee69b2e6ffbba82bf0f385618e
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 23:56:21 2014 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Thu Dec 4 23:56:40 2014 +0100

Help: Document IMPORTED_CONFIGURATIONS target property for Find modules.

diff --git a/Help/manual/cmake-developer.7.rst 
b/Help/manual/cmake-developer.7.rst
index 94fc019..85a3c2d 100644
--- a/Help/manual/cmake-developer.7.rst
+++ b/Help/manual/cmake-developer.7.rst
@@ -876,7 +876,10 @@ To prevent users being overwhelmed with settings to 
configure, try to
 keep as many options as possible out of the cache, leaving at least one
 option which can be used to disable use of the module, or locate a
 not-found library (e.g. ``Xxx_ROOT_DIR``).  For the same reason, mark
-most cache options as advanced.
+most cache options as advanced.  For packages which provide both debug
+and release binaries, it is common to create cache variables with a
+``_LIBRARY_CONFIG`` suffix, such as ``Foo_LIBRARY_RELEASE`` and
+``Foo_LIBRARY_DEBUG``.
 
 While these are the standard variable names, you should provide
 backwards compatibility for any old names that were actually in use.
@@ -1049,6 +1052,42 @@ not any of its dependencies.  Instead, those 
dependencies should also be
 targets, and CMake should be told that they are dependencies of this target.
 CMake will then combine all the necessary information automatically.
 
+If the library is available with multiple configurations, the
+:prop_tgt:`IMPORTED_CONFIGURATIONS` target property should also be
+populated:
+
+.. code-block:: cmake
+
+  if(Foo_FOUND)
+if (NOT TARGET Foo::Foo)
+  add_library(Foo::Foo UNKNOWN IMPORTED)
+endif()
+if (Foo_LIBRARY_RELEASE)
+  set_property(TARGET Foo::Foo APPEND PROPERTY
+

[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1114-g6fe2845

2014-12-04 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  6fe28452898c3fea0bf021cacfe0885686e517dd (commit)
   via  67cb50abd77dddc3cc74597efe38285f9bc9e4cf (commit)
   via  e18e21aeb52923d470680aa171f722b4d3b5d01d (commit)
  from  3bce2ae4240a701c7e05cd05514d0ae9443ce778 (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=6fe28452898c3fea0bf021cacfe0885686e517dd
commit 6fe28452898c3fea0bf021cacfe0885686e517dd
Merge: 3bce2ae 67cb50a
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 18:12:38 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 18:12:38 2014 -0500

Merge topic 'Find-Modules-documentation' into next

67cb50ab Help: Document that IMPORTED targets in Find modules may be 
UNKNOWN.
e18e21ae Help: Document IMPORTED_CONFIGURATIONS target property for Find 
modules.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=67cb50abd77dddc3cc74597efe38285f9bc9e4cf
commit 67cb50abd77dddc3cc74597efe38285f9bc9e4cf
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 23:56:52 2014 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Fri Dec 5 00:12:14 2014 +0100

Help: Document that IMPORTED targets in Find modules may be UNKNOWN.

diff --git a/Help/manual/cmake-developer.7.rst 
b/Help/manual/cmake-developer.7.rst
index 6f7bbdc..3b9b921 100644
--- a/Help/manual/cmake-developer.7.rst
+++ b/Help/manual/cmake-developer.7.rst
@@ -1052,6 +1052,11 @@ not any of its dependencies.  Instead, those 
dependencies should also be
 targets, and CMake should be told that they are dependencies of this target.
 CMake will then combine all the necessary information automatically.
 
+The type of the :prop_tgt:`IMPORTED` target created in the
+:command:`add_library` command can always be specified as ``UNKNOWN``
+type.  This simplifies the code in cases where static or shared variants may
+be found, and CMake will determine the type by inspecting the files.
+
 If the library is available with multiple configurations, the
 :prop_tgt:`IMPORTED_CONFIGURATIONS` target property should also be
 populated:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e18e21aeb52923d470680aa171f722b4d3b5d01d
commit e18e21aeb52923d470680aa171f722b4d3b5d01d
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 23:56:21 2014 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Fri Dec 5 00:12:14 2014 +0100

Help: Document IMPORTED_CONFIGURATIONS target property for Find modules.

diff --git a/Help/manual/cmake-developer.7.rst 
b/Help/manual/cmake-developer.7.rst
index 94fc019..6f7bbdc 100644
--- a/Help/manual/cmake-developer.7.rst
+++ b/Help/manual/cmake-developer.7.rst
@@ -876,7 +876,10 @@ To prevent users being overwhelmed with settings to 
configure, try to
 keep as many options as possible out of the cache, leaving at least one
 option which can be used to disable use of the module, or locate a
 not-found library (e.g. ``Xxx_ROOT_DIR``).  For the same reason, mark
-most cache options as advanced.
+most cache options as advanced.  For packages which provide both debug
+and release binaries, it is common to create cache variables with a
+``_LIBRARY_CONFIG`` suffix, such as ``Foo_LIBRARY_RELEASE`` and
+``Foo_LIBRARY_DEBUG``.
 
 While these are the standard variable names, you should provide
 backwards compatibility for any old names that were actually in use.
@@ -1049,6 +1052,42 @@ not any of its dependencies.  Instead, those 
dependencies should also be
 targets, and CMake should be told that they are dependencies of this target.
 CMake will then combine all the necessary information automatically.
 
+If the library is available with multiple configurations, the
+:prop_tgt:`IMPORTED_CONFIGURATIONS` target property should also be
+populated:
+
+.. code-block:: cmake
+
+  if(Foo_FOUND)
+if (NOT TARGET Foo::Foo)
+  add_library(Foo::Foo UNKNOWN IMPORTED)
+endif()
+if (Foo_LIBRARY_RELEASE)
+  set_property(TARGET Foo::Foo APPEND PROPERTY
+IMPORTED_CONFIGURATIONS RELEASE
+  )
+  set_target_properties(Foo::Foo PROPERTIES
+IMPORTED_LOCATION_RELEASE ${Foo_LIBRARY_RELEASE}
+  )
+endif()
+if (Foo_LIBRARY_DEBUG)
+  set_property(TARGET Foo::Foo APPEND PROPERTY
+IMPORTED_CONFIGURATIONS DEBUG
+  )
+  set_target_properties(Foo::Foo PROPERTIES
+IMPORTED_LOCATION_DEBUG ${Foo_LIBRARY_DEBUG}
+  )
+endif()
+set_target_properties(Foo::Foo PROPERTIES
+  INTERFACE_COMPILE_OPTIONS ${PC_Foo_CFLAGS_OTHER}
+  INTERFACE_INCLUDE_DIRECTORIES ${Foo_INCLUDE_DIR}
+

[Cmake-commits] CMake branch, next, updated. v3.1.0-rc2-1111-g3bce2ae

2014-12-04 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  3bce2ae4240a701c7e05cd05514d0ae9443ce778 (commit)
   via  4d674587b102aa008d08ae8575fb42d2963b9ddb (commit)
  from  da1ba8eb418d6f08b2d21892ee83a82626da4663 (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=3bce2ae4240a701c7e05cd05514d0ae9443ce778
commit 3bce2ae4240a701c7e05cd05514d0ae9443ce778
Merge: da1ba8e 4d67458
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Thu Dec 4 18:12:26 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Dec 4 18:12:26 2014 -0500

Merge topic 'Find-Modules-documentation' into next

4d674587 Fix LOCATIONS.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4d674587b102aa008d08ae8575fb42d2963b9ddb
commit 4d674587b102aa008d08ae8575fb42d2963b9ddb
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Fri Dec 5 00:11:53 2014 +0100
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Fri Dec 5 00:11:53 2014 +0100

Fix LOCATIONS.

diff --git a/Help/manual/cmake-developer.7.rst 
b/Help/manual/cmake-developer.7.rst
index 8c61dfd..3b9b921 100644
--- a/Help/manual/cmake-developer.7.rst
+++ b/Help/manual/cmake-developer.7.rst
@@ -1072,7 +1072,7 @@ populated:
 IMPORTED_CONFIGURATIONS RELEASE
   )
   set_target_properties(Foo::Foo PROPERTIES
-IMPORTED_LOCATION ${Foo_LIBRARY_RELEASE}
+IMPORTED_LOCATION_RELEASE ${Foo_LIBRARY_RELEASE}
   )
 endif()
 if (Foo_LIBRARY_DEBUG)
@@ -1080,7 +1080,7 @@ populated:
 IMPORTED_CONFIGURATIONS DEBUG
   )
   set_target_properties(Foo::Foo PROPERTIES
-IMPORTED_LOCATION ${Foo_LIBRARY_DEBUG}
+IMPORTED_LOCATION_DEBUG ${Foo_LIBRARY_DEBUG}
   )
 endif()
 set_target_properties(Foo::Foo PROPERTIES

---

Summary of changes:
 Help/manual/cmake-developer.7.rst |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


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


[Cmake-commits] CMake branch, master, updated. v3.1.0-rc2-494-gc90633d

2014-12-04 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  c90633df9eacb3063669ac0aad9506cea1885582 (commit)
  from  470c549c622d0be3ae63945e40a1cad85923 (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=c90633df9eacb3063669ac0aad9506cea1885582
commit c90633df9eacb3063669ac0aad9506cea1885582
Author: Kitware Robot kwro...@kitware.com
AuthorDate: Fri Dec 5 00:01:15 2014 -0500
Commit: Kitware Robot kwro...@kitware.com
CommitDate: Fri Dec 5 00:01:15 2014 -0500

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 70d92d2..3048b88 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
 # CMake version number components.
 set(CMake_VERSION_MAJOR 3)
 set(CMake_VERSION_MINOR 1)
-set(CMake_VERSION_PATCH 20141204)
+set(CMake_VERSION_PATCH 20141205)
 #set(CMake_VERSION_RC 1)

---

Summary of changes:
 Source/CMakeVersion.cmake |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


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