[cmake-developers] [CMake 0012538]: Missing newline in log entry

2011-10-25 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
http://public.kitware.com/Bug/view.php?id=12538 
== 
Reported By:Bernhard Walle
Assigned To:
== 
Project:CMake
Issue ID:   12538
Category:   CMake
Reproducibility:always
Severity:   text
Priority:   normal
Status: new
== 
Date Submitted: 2011-10-25 05:17 EDT
Last Modified:  2011-10-25 05:17 EDT
== 
Summary:Missing newline in log entry
Description: 
See the attached patch.

Steps to Reproduce: 
Run ctest -VV.
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2011-10-25 05:17 Bernhard Walle New Issue
2011-10-25 05:17 Bernhard Walle File Added:
0001-Source-cmCTest.cxx-Add-missing-newline.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] Merging cmake-link-interface-libraries into master?

2011-10-25 Thread Stephen Kelly
Brad King wrote:

 On 10/19/2011 11:14 AM, Stephen Kelly wrote:
 On 10/19/2011 6:04 AM, Stephen Kelly wrote:
 I saw that the weekly merge of branches into master happened yesterday,
 but the cmake-link-interface-libraries branch didn't make the cut.
 [snip]
 Not a major rush anyway. I'm still trying to get used to the cmake
 development and release model.
 
 The work on the target_link_libraries test is much more comprehensive than
 just this one CMAKE_LINK_INTERFACE_LIBRARIES feature, and as you
 discovered
 much harder to complete.  I published two branches here:
 
https://github.com/bradking/CMake/branches
 
 The cmake-link-interface-libraries branch is a rewritten version of your
 branch that takes just the part for the new feature.  The second
 test-target_link_libraries branch is a rewritten version of the rest
 of your branch that adds the test, and is based on the first branch.  The
 end of the second branch has an identical Git tree object as the current
 stage/cmake-link-interface-libraries branch (at d951f012).
 
 I'd like to replace your branch on the stage with these two so we can
 merge the feature and leave the comprehensive test as a work in progress
 for now.  Is that okay with you?
 

Yes, that's ok with me. I guess I can continue to create separate branches 
for tests and features in the future too. 

I've just merged the target-link-libraries-interfaces branch into next, so I 
can maybe add tests for that feature whenever the test-target_link_libraries 
is more ready.

What work needs to be done for test-target_link_libraries to leave the wip 
state?

What does CMake think  about rebasing? I much prefer to squash a branch like 
test-target_link_libraries into fewer commits so that eg adding newlines and 
changing tests to examine dashboard changes are not separate commits. I 
don't think those commits add value, but only noise.

Can I squash them in the stage clone if you push those branches there? Do I 
have karma to push -f to stage?

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] Merging cmake-link-interface-libraries into master?

2011-10-25 Thread Brad King
On 10/25/2011 06:09 AM, Stephen Kelly wrote:
 I've just merged the target-link-libraries-interfaces branch into next, so I 
 can maybe add tests for that feature whenever the test-target_link_libraries 
 is more ready.

Sounds good.

 What work needs to be done for test-target_link_libraries to leave the wip 
 state?

I need more time to look through the test to see how it works and determine
whether it exposes any problems that can be fixed.

 What does CMake think  about rebasing? I much prefer to squash a branch like 
 test-target_link_libraries into fewer commits so that eg adding newlines and 
 changing tests to examine dashboard changes are not separate commits. I 
 don't think those commits add value, but only noise.

I agree.  We have no problem with rewriting topics that have not yet been
merged to master.  If you rewrite a topic such that the net change is the
same as what is already in next then it should merge cleanly.  We have a
process during our merge meeting to identify pieces of next's history that
have been rewritten and exclude them from consideration for master.

 Can I squash them in the stage clone if you push those branches there?

Yes.  I just overwrote cmake-link-interface-libraries on the stage with the
rewritten version that has just the feature.  Then I added the new topic
test-target_link_libraries and merged it to next.  The net result in 'next'
is unchanged but the history is separated between the topics.  Feel free
to rewrite test-target_link_libraries.

We will probably merge the new cmake-link-interface-libraries to master
later today (since the net change for the feature has already been sitting
in next for a while).

 Do I have karma to push -f to stage?

Yes, but use with care.  You can easily erase someone else's topic.
Also don't forget that the tip of the topic must be identical after
rewriting in order to merge cleanly to next with the old version.

-Brad
--

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] Bug fix requests for the *next* release of CMake...

2011-10-25 Thread Thomas Sondergaard

On 2011-10-21 20:20, David Cole wrote:

As an esteemed colleague has pointed out, those with reporter level
account in Mantis may not edit bugs other than their own directly.
So. if you are in that boat, but would like to vote for a bug fix
to be considered for 2.8.7, please reply to this thread, and just list
the bug number, or a URL linking to its bug tracker page.

I will follow the replies to this thread and add those bugs to the
roadmap as they roll in.


The VS2010 bug!

http://public.kitware.com/Bug/view.php?id=11258

Thomas

--

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] Merging cmake-link-interface-libraries into master?

2011-10-25 Thread Stephen Kelly
Brad King wrote:
 
 What does CMake think  about rebasing? I much prefer to squash a branch
 like test-target_link_libraries into fewer commits so that eg adding
 newlines and changing tests to examine dashboard changes are not separate
 commits. I don't think those commits add value, but only noise.
 
 I agree.  We have no problem with rewriting topics that have not yet been
 merged to master.  If you rewrite a topic such that the net change is the
 same as what is already in next then it should merge cleanly.  We have a
 process during our merge meeting to identify pieces of next's history that
 have been rewritten and exclude them from consideration for master.

Cool, I've rebased and force pushed the branch now.

 Do I have karma to push -f to stage?
 
 Yes, but use with care.  You can easily erase someone else's topic.
 Also don't forget that the tip of the topic must be identical after
 rewriting in order to merge cleanly to next with the old version.

I accidentally'd this a little bit. 

My rewrite had some extra cleanups that were not already on the branch, so 
after I push -f'd, I couldn't merge it to next again.

I just put the extra cleanups in another branch, merged that to next, and 
then was able to merge my cleaned up branch. So the net result currently 
should be a working clean branch.

I think I read somewhere that next gets re-branched from master 
periodically. How often does that happen?

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] Merging cmake-link-interface-libraries into master?

2011-10-25 Thread Alexander Neundorf
On Tuesday 25 October 2011, Stephen Kelly wrote:
...
 I think I read somewhere that next gets re-branched from master
 periodically. How often does that happen?

Usually every Tuesday.

Alex
--

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] install targets

2011-10-25 Thread Matt Fair
I have split my code up into two dirs, source and tests.  The
CMakeLists.txt in the source dir does a SUBDIRS to
${PROJECT_SOURCE_DIR}/../tests to get tests.

In each CMakeLists file right after I have defined the target via
ADD_LIBRARY or ADD_EXECUTABLE and set TARGET_LINK_LIBRARIES I have
done the following:

binaries
INSTALL(TARGETS myBinary RUNTIME DESTINATION bin)

libs
INSTALL(TARGETS myLib ARCHIVE DESTINATION lib)

shared libs
INSTALL(TARGETS mySharedLib LIBRARY DESTINATION lib)

The problem is that all INSTALL targets that I have specified under
the tests dir are not installed.  Am I doing something wrong?  The
problem seems to be with my SUBDIRS and INSTALL.  How can I fix this?

Thanks,
Matt
--

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


[CMake] Possible to modify COMPILE_FLAGS?

2011-10-25 Thread Campbell Barton
The problem I'm trying to solve is to have -Werror for the whole
project except a few files which include system headers that give
warnings we can't workaround (even with -isystem).

So I'm trying to get cmake to replace some flags for a specific file,
and I ran into the problem that the variable appears not to be set.

get_source_file_property(MYVAR intern/BME_Customdata.c COMPILE_FLAGS)
... modify the MYVAR
... set the flags back

But the variable isnt set, Im sure the source file is valid because I
printed it from the list passed to the target, and I tried this before
and after defining the source file in the target:
message(FATAL_ERROR Check: ${MYVAR})
Check: NOTFOUND


I'm guessing the COMPILE_FLAGS property can be set which overrides the
default flags but is there a good way to manipulate the existing
flags?

-- 
- Campbell
--

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


Re: [CMake] RC compiler on Linux - new problem

2011-10-25 Thread pellegrini

Hi Michael,

I tried to adapt the files you gave me to my project. It almost works. 
As a reminder, there were a CMakeLists.txt with an overloaded 
add_executable function that created a sym_link for the rc files and a 
shell  file (rc.sh) used to suit the rc compiler call to my needs.


I found one problem that I still not have solved. The shell script is 
declared under the following command:


set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE bash rc.sh 
CMAKE_RC_COMPILER SOURCE OBJECT)


However, this command makes that even my f90 files uses the rc compiler 
which obvioulsy makes my build crash. I tried to use something like 
set_property(SOURCE myrcfile.rc PROPERTY RULE_LAUNCH_COMPILE ... in 
order to apply the patch only when a rc file is under process but 
unfortunately this property is not a valid source properties.


Would you see any way to circumvent that problem ?

thanks

Eric

pellegrini a écrit :

thanks a lot Michael.

Finally, this was not such a trivial problem but I should find my way 
with the examples you gave me.


Eric

Michael Hertling a écrit :

On 10/21/2011 06:49 PM, pellegrini wrote:
 

Hi all,

after digging and googling some hours I did a first step in the 
right direction.


I had to add the command:

enable_language(rc)
set(cmake_rc_compiler_arg1 -cif8)

The resource compiler I (must) use is the one provided by 
winteracter Fortran library.


This led me to a serie of problems related to the use of this compiler:
- it does not accept any output flag so that the output resource 
object is always created in-source in the rc file directory.

- on Linux, it produces a .o object file instead of a .res file

Looking at the CMakeRCInformation.cmake I see that by construction 
CMake will use the following compile command:

CMAKE_RC_COMPILER FLAGS DEFINES /foOBJECT SOURCE
with a resource object file with a .res extension.



You might rewrite this rule variable, e.g. in order to drop
/foOBJECT, but this wouldn't resolve your issues, AFAICS.

 
On a Linux machine, this produces a wrong build command line with 
the path for the output object file being /foCMakeFiles/ This 
problem was raised sometime ago in the mantis bug tracker but 
unfortunatley the patch proposed apply for mingw using windres but 
not for Linux.


Is there a fix for this ?

If no, is there a way to inform the linker that:
- my resource object file is located in-source



You might create symlinks to the resource files - or copy them - so
that the winteracter RC generates its output files within the build
tree; note that the source tree may be read-only. This could even be
done on the fly with an adapted version of ADD_EXECUTABLE/LIBRARY().

 

- the extension is not .res but .o



You might use a RULE_LAUNCH_COMPILE property in conjunction with a
shell script which recognizes RC command lines, moves the .o to a
.res in the correct directory and drops the undesired /fo switch.

The attached CMakeLists.txt and rc.sh files outline these approaches;
check them out with meaningful ${CMAKE_SOURCE_DIR}/{abs,srcdir}.rc
and ${CMAKE_BINARY_DIR}/bindir.rc. However, they are untested as I
currently haven't any RC at hand; moreover, they're restricted to
Makefiles and won't work on Windows.

Regards,

Michael

 

pellegrini a écrit :
   

Hi all,

I use CMake 2.8.5 on Linux and Windows machine to build a Fortran 
project.


On Windows, no problem, the build and the resulting GUI are OK. On 
Linux, the build seems to
be OK but the resulting GUI gives an empty screen. Discussing with 
Michael a few days ago made
me think that it could be related to the use of an inappropriated 
motif library.


However, looking in more details I see with a make VERBOSE=1 that 
my rc file is not built
(I do not see the line Building RC object ...). even if it is 
declared as one of my sources files.


Is there some extra commands to specify to make cmake recognize and 
compile a rc file ?


thanks

Eric
  
 



--

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






--
Eric Pellegrini
Calcul Scientifique
Institut Laue-Langevin
Grenoble, France

--

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


Re: [CMake] Possible to modify COMPILE_FLAGS?

2011-10-25 Thread Michael Wild
On 10/25/2011 09:51 AM, Campbell Barton wrote:
 The problem I'm trying to solve is to have -Werror for the whole
 project except a few files which include system headers that give
 warnings we can't workaround (even with -isystem).
 
 So I'm trying to get cmake to replace some flags for a specific file,
 and I ran into the problem that the variable appears not to be set.
 
 get_source_file_property(MYVAR intern/BME_Customdata.c COMPILE_FLAGS)
 ... modify the MYVAR
 ... set the flags back
 
 But the variable isnt set, Im sure the source file is valid because I
 printed it from the list passed to the target, and I tried this before
 and after defining the source file in the target:
 message(FATAL_ERROR Check: ${MYVAR})
 Check: NOTFOUND
 
 
 I'm guessing the COMPILE_FLAGS property can be set which overrides the
 default flags but is there a good way to manipulate the existing
 flags?
 

Problem is, that the COMPILE_FLAGS property only *appends* to the
default compile flags. You'll have to remove -Werror from
CMAKE_LANG_FLAGS[_CONFIG] variables and set it instead on all the
files you want it to be set for.

Michael
--

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


Re: [CMake] install targets

2011-10-25 Thread Matt Fair
Ok, sorry for the duplication, it was also discussed in:
http://www.cmake.org/pipermail/cmake/2011-March/043467.html

I changed everything from SUBDIRS to add_subdirectory and it worked.
For my tests dir, I specified a second build dir, and everything then
installed from those dirs.

Matt

On Tue, Oct 25, 2011 at 12:56 AM, Matt Fair matt.f...@gmail.com wrote:
 I have split my code up into two dirs, source and tests.  The
 CMakeLists.txt in the source dir does a SUBDIRS to
 ${PROJECT_SOURCE_DIR}/../tests to get tests.

 In each CMakeLists file right after I have defined the target via
 ADD_LIBRARY or ADD_EXECUTABLE and set TARGET_LINK_LIBRARIES I have
 done the following:

 binaries
 INSTALL(TARGETS myBinary RUNTIME DESTINATION bin)

 libs
 INSTALL(TARGETS myLib ARCHIVE DESTINATION lib)

 shared libs
 INSTALL(TARGETS mySharedLib LIBRARY DESTINATION lib)

 The problem is that all INSTALL targets that I have specified under
 the tests dir are not installed.  Am I doing something wrong?  The
 problem seems to be with my SUBDIRS and INSTALL.  How can I fix this?

 Thanks,
 Matt

--

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


Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Eric Noulard
2011/10/25 Phil Smith p...@voltage.com:
 Ah, ok. With 2.8.1:

 C:/Program Files/Regina/regina.exe cc.rex dcc.exe   CMakeCCompilerId.c

 With 2.8.6:
 C:/Program Files/Regina/regina.exe cc.rex;dcc.exe   CMakeCCompilerId.c

 Note the semicolon; where'd it come from?

This is clearly a change of behavior but from my point of view it is a change
of unsupported and/or unexpected behaviour.

  It's not in the toolchain file:
 
 # This is a CMake Toolchain file, required for cross-compiling using
 # the Dignus cross-compilers on Windows, compiling for z/OS.

 # Tell CMAKE the target system name
 SET(CMAKE_SYSTEM_NAME IBM_ZOS)

 # Specify the cross-compilers
 SET(CMAKE_C_COMPILER   regina.exe cc.rex dcc.exe)
 SET(CMAKE_CXX_COMPILER regina.exe cc.rex dcxx.exe)

I think CMAKE_[C|CXX]_COMPILER vars are supposed to contain

 SET(CMAKE_C_CREATE_STATIC_LIBRARY DAR -rv TARGET OBJECTS)

 SET(CMAKE_CXX_LINK_EXECUTABLE plink.exe 
 \-S$ENV{DIGNUS_PROGRAM}/objs_norent/M\ OBJECTS -o TARGET)
 SET(CMAKE_C_LINK_EXECUTABLE   plink.exe 
 \-S$ENV{DIGNUS_PROGRAM}/objs_norent/M\ OBJECTS -o TARGET)
 

 BTW, Regina is a Rexx processor -- it's running a script called cc.rex. If I 
 invoke it directly:

 C:\SVN\Dignusc:\Program Files\Regina\regina.exe  cc.rex;dcc.exe   
 CMakeCCompilerId.c
 Error 3 running cc.rex;dcc.exe: Failure during initialization
 Error 3.1: Failure during initialization: Program was not found

 ...which is what I'd expect. But the semicolon is still the problem here...

 -Original Message-
 From: cmake-boun...@cmake.org [mailto:cmake-boun...@cmake.org] On Behalf Of 
 Bill Hoffman
 Sent: Monday, October 24, 2011 6:08 PM
 To: cmake@cmake.org
 Subject: Re: [CMake] CMake still broken post-2.8.1

 On 10/24/2011 5:42 PM, Phil Smith wrote:
 Attached. ZTOOL is a wrapper for CMake, because we're cross-compiling
 with a two-stage compiler and have various other requirements.

 We do a bunch of CMAKE -E commands before the cmake
 -DCMAKE_TOOLCHAIN_FILE:string=%~dp0\zosport.cmake -GUnix Makefiles .\


 So, right at the end it is doing this:


  )
 C:/Program Files (x86)/CMake
 2.8/share/cmake-2.8/Modules/CMakeDetermineCompilerId.cmake(95):
 IF(COMMAND EXECUTE_PROCESS )
 C:/Program Files (x86)/CMake
 2.8/share/cmake-2.8/Modules/CMakeDetermineCompilerId.cmake(96):
 EXECUTE_PROCESS(COMMAND ${CMAKE_${lang}_COMPILER} ${CMAKE_${lang}_
 COMPILER_ID_ARG1} ${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST} ${testflags}
 ${src} WORKING_DIRECTORY ${CMAKE_${lang}_COMPILER_ID_DIR}
 OUTPUT_VARIABLE CMAKE_${lang}_C
 OMPILER_ID_OUTPUT ERROR_VARIABLE CMAKE_${lang}_COMPILER_ID_OUTPUT
 RESULT_VARIABLE CMAKE_${lang}_COMPILER_ID_RESULT )
 ^CTerminate batch job (Y/N)?
 ^C*** 'CMake' phase ended at Mon 10/24/2011 17:38:47.64 with errorlevel
 -1073741510 **


 Cmake is running the compiler you gave it.  Looks like:
 regina.exe.


 SET(CMAKE_C_COMPILER regina.exe cc.rex dcc.exe )
 c:/SVN/Dignus/zosport.cmake(9):  SET(CMAKE_CXX_COMPILER regina.exe
 cc.rex dcxx.exe )

 So, regina.exe is hanging forever.

 To debug more, you could print out the exact command line CMake is
 trying to run.  Edit C:/Program Files (x86)/CMake
 2.8/share/cmake-2.8/Modules/CMakeDetermineCompilerId.cmake on line 96,
 and add a new line that does this:

 message(${CMAKE_${lang}_COMPILER} ${CMAKE_${lang}_
 COMPILER_ID_ARG1} ${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST} ${testflags}
 ${src}


 Hope this makes some sense...

 It does  Add the above print, and try again.  Also, maybe run the
 command that CMake is running by hand and see if it hangs.  Since this
 is a toolchain file, you should be able to short circut the test
 altogether and set the information CMake is trying to figure out.


 -Bill
 --

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

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




-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
--

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


Re: [CMake] install targets

2011-10-25 Thread Rolf Eike Beer
 I have split my code up into two dirs, source and tests.  The
 CMakeLists.txt in the source dir does a SUBDIRS to
 ${PROJECT_SOURCE_DIR}/../tests to get tests.

Reading the documentation may help:

subdirs
 Deprecated. Use the add_subdirectory() command instead.

HTH,

Eike
--

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


Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Eric Noulard
Sorry for previous unfinished e-mail.

2011/10/25 Phil Smith p...@voltage.com:
 Ah, ok. With 2.8.1:

 C:/Program Files/Regina/regina.exe cc.rex dcc.exe   CMakeCCompilerId.c

 With 2.8.6:
 C:/Program Files/Regina/regina.exe cc.rex;dcc.exe   CMakeCCompilerId.c

 Note the semicolon; where'd it come from?

This is clearly a change of behavior but from my point of view it is a change
of unsupported and/or unexpected behaviour.


 It's not in the toolchain file:
 
 # This is a CMake Toolchain file, required for cross-compiling using
 # the Dignus cross-compilers on Windows, compiling for z/OS.

 # Tell CMAKE the target system name
 SET(CMAKE_SYSTEM_NAME IBM_ZOS)

 # Specify the cross-compilers
 SET(CMAKE_C_COMPILER   regina.exe cc.rex dcc.exe)
 SET(CMAKE_CXX_COMPILER regina.exe cc.rex dcxx.exe)

I think CMAKE_[C|CXX]_COMPILER vars are supposed to contain
a command not command + list of args.
If I'm wrong please someone (Alex, Bill,...) just tell me.

Doesn't
SET(CMAKE_C_COMPILER   regina.exe cc.rex dcc.exe)
SET(CMAKE_CXX_COMPILER regina.exe cc.rex dcxx.exe)
works for you?

If not I would say that you may either create a wrapper script which
make the triplet
a single command or may be you should:
SET(CMAKE_C_COMPILER   regina.exe)
SET(CMAKE_C_FLAGS cc.rex dcc.exe

 SET(CMAKE_C_CREATE_STATIC_LIBRARY DAR -rv TARGET OBJECTS)

 SET(CMAKE_CXX_LINK_EXECUTABLE plink.exe 
 \-S$ENV{DIGNUS_PROGRAM}/objs_norent/M\ OBJECTS -o TARGET)
 SET(CMAKE_C_LINK_EXECUTABLE   plink.exe 
 \-S$ENV{DIGNUS_PROGRAM}/objs_norent/M\ OBJECTS -o TARGET)
 

 BTW, Regina is a Rexx processor -- it's running a script called cc.rex. If I 
 invoke it directly:

 C:\SVN\Dignusc:\Program Files\Regina\regina.exe  cc.rex;dcc.exe   
 CMakeCCompilerId.c
 Error 3 running cc.rex;dcc.exe: Failure during initialization
 Error 3.1: Failure during initialization: Program was not found

 ...which is what I'd expect. But the semicolon is still the problem here...


-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
--

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


[CMake] Checking for empty string

2011-10-25 Thread Daniel Dekkers
hi there,

how do I test if a string is empty () or not ?
IF( ${test} STREQUAL  )
gives the wrong number of arguments if ${test} is 

thanks,

J 
--

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


Re: [CMake] Checking for empty string

2011-10-25 Thread Eric Noulard
2011/10/25 Daniel Dekkers d.dekk...@cthrough.nl:
 hi there,

 how do I test if a string is empty () or not ?
 IF( ${test} STREQUAL  )
 gives the wrong number of arguments if ${test} is 

Did you try

IF( ${test} STREQUAL  ) ?


-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
--

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


Re: [CMake] Checking for empty string

2011-10-25 Thread Rolf Eike Beer
 hi there,

 how do I test if a string is empty () or not ?
 IF( ${test} STREQUAL  )
 gives the wrong number of arguments if ${test} is 

if (${test} STREQUAL )
if (NOT test)

What does not work (in 2.8.5) but should work according to the documentation:

if (test STREQUAL )

Eike
--

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


Re: [CMake] Checking for empty string

2011-10-25 Thread Daniel Dekkers
Great, thanks.

On Oct 25, 2011, at 11:17 AM, Eric Noulard wrote:

 2011/10/25 Daniel Dekkers d.dekk...@cthrough.nl:
 hi there,
 
 how do I test if a string is empty () or not ?
 IF( ${test} STREQUAL  )
 gives the wrong number of arguments if ${test} is 
 
 Did you try
 
 IF( ${test} STREQUAL  ) ?
 
 
 -- 
 Erk
 Membre de l'April - « promouvoir et défendre le logiciel libre » -
 http://www.april.org

--

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


[CMake] Changes between v2.8.5 and v2.8.6?

2011-10-25 Thread Markus Rathgeb
Hello!

I am using the linux distribution gentoo.
After I tried to reinstall my qtcreator package and recreate my Qt
project by qtcreator I run in an empty project tree.
To make it more understandable:
I removed all qtcreator related files and load the CMakeLists.txt file
with qtcreator.
qtcreator is using cmake as backend.

But something seem to be changed.
It works with cmake-2.8.5-r2 (the -r2 means distribution specific stuff)
It works not with cmake-2.8.6-r1 (same here for -r1)

Who can I help you with further informations?
Have I to create a dummy project with some files and log cmake traces?
Or post a tar-ball of the source directory and the created build directory?

Or is the problem already known?

Thank you in advice,
Markus
--

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


Re: [CMake] Checking for empty string

2011-10-25 Thread David Cole
On Tue, Oct 25, 2011 at 6:31 AM, Rolf Eike Beer e...@sf-mail.de wrote:

  hi there,
 
  how do I test if a string is empty () or not ?
  IF( ${test} STREQUAL  )
  gives the wrong number of arguments if ${test} is 

 if (${test} STREQUAL )
 if (NOT test)

 What does not work (in 2.8.5) but should work according to the
 documentation:

 if (test STREQUAL )


Ah, but this does work, and it works precisely according to the
documentation. Unfortunately, it is complicated, and confusing to human
beings, though...

The construct:

  if (test STREQUAL )

is evaluated differently according to context. The context is whether or not
there is a variable defined that is named test.

If there is a variable named test, then we do variable-value comparison:
  if (test STREQUAL )
is equivalent to:
  if (${test} STREQUAL )
(It is this way for backwards compatibility with IF commands that were
written before we even had ${test} variable expansion in the CMake language.
Years ago at this point...)

If there is no variable named test, then we do string literal comparison:
  if (test STREQUAL )
is equivalent to:
  if (test STREQUAL )

If you are intending string value comparison with variables, I always
recommend always using double quotes and always using the form:
  if (${test} STREQUAL )

because it is unambiguous, and the meaning is clearer from reading it.


This is all illustrated by the following script:
(run with cmake -P to see the output does NOT go to the FATAL_ERROR
segments.)

# test is not a defined variable at this point, so the following test is a
# simple string compare between the left and right arguments, which are
# test and 
#
if (test STREQUAL )
  message(FATAL_ERROR unexpected: the string literal 'test' is the empty
string)
else()
  message(the string 'test' is not the empty string)
endif()


set(test test contents)

# test is defined as a variable at this point, so the following test is a
# comparison of the string value of the variable test with the string
literal
# , the empty string
#
if (test STREQUAL )
  message(FATAL_ERROR unexpected: the variable test is the empty string)
else()
  message(the variable test's value is NOT the empty string)
endif()


# Same variable-based if command now, but the value *is* now the empty
string:
#
set(test )

if (test STREQUAL )
  message(the variable test's value is the empty string)
else()
  message(FATAL_ERROR unexpected: the variable test is NOT the empty
string)
endif()


HTH,
David



 Eike
 --

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

--

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

Re: [CMake] Checking for empty string

2011-10-25 Thread Rolf Eike Beer
 On Tue, Oct 25, 2011 at 6:31 AM, Rolf Eike Beer e...@sf-mail.de wrote:

  hi there,
 
  how do I test if a string is empty () or not ?
  IF( ${test} STREQUAL  )
  gives the wrong number of arguments if ${test} is 

 if (${test} STREQUAL )
 if (NOT test)

 What does not work (in 2.8.5) but should work according to the
 documentation:

 if (test STREQUAL )

 Ah, but this does work, and it works precisely according to the
 documentation. Unfortunately, it is complicated, and confusing to human
 beings, though...

 The construct:

   if (test STREQUAL )

 is evaluated differently according to context. The context is whether or
 not
 there is a variable defined that is named test.

 If there is a variable named test, then we do variable-value comparison:
   if (test STREQUAL )
 is equivalent to:
   if (${test} STREQUAL )
 (It is this way for backwards compatibility with IF commands that were
 written before we even had ${test} variable expansion in the CMake
 language.
 Years ago at this point...)

 If there is no variable named test, then we do string literal comparison:
   if (test STREQUAL )
 is equivalent to:
   if (test STREQUAL )

 If you are intending string value comparison with variables, I always
 recommend always using double quotes and always using the form:
   if (${test} STREQUAL )

 because it is unambiguous, and the meaning is clearer from reading it.


 This is all illustrated by the following script:
 (run with cmake -P to see the output does NOT go to the FATAL_ERROR
 segments.)

That's close to what I did in testing. But only close, I began with:

set(test)

 # test is not a defined variable at this point, so the following test is a
 # simple string compare between the left and right arguments, which are
 # test and 
 #
 if (test STREQUAL )
   message(FATAL_ERROR unexpected: the string literal 'test' is the empty
 string)
 else()
   message(the string 'test' is not the empty string)
 endif()

And then this still tells me test is not the empty string. Which can be
considered expected behaviour if an empty variable is not the empty
string, but both are NOT test. Something like QString::null() vs.
QString::empty(). You just have to know about it's suptle differences.

Eike
--

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


Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Brad King

On 10/25/2011 5:00 AM, Eric Noulard wrote:

2011/10/25 Phil Smithp...@voltage.com:

# Specify the cross-compilers
SET(CMAKE_C_COMPILER   regina.exe cc.rex dcc.exe)
SET(CMAKE_CXX_COMPILER regina.exe cc.rex dcxx.exe)


I think CMAKE_[C|CXX]_COMPILER vars are supposed to contain
a command not command + list of args.
If I'm wrong please someone (Alex, Bill,...) just tell me.


Correct.  Those variables always hold only the compiler name.
When they are built from environment variables like CC and CXX
we split the arguments out into a separate variable.  I think
the change in behavior came from this thread's change:

 http://thread.gmane.org/gmane.comp.programming.tools.cmake.user/27857
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fd38eda9

Read my first message in that thread for an explanation.

-Brad
--

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


[CMake] How to make a shared library to use relative paths to the executable

2011-10-25 Thread Renato Utsch
Hello!

I am learning to use CMake and I found it very easy to use, very and very
good. But I don't understand why it uses full paths instead of relative
paths when linking shared/dynamic libraries. I am currently making a program
that is only compiled to a folder, but not installed to the system (on
linux), much like a folder containing all the software in windows. It has
the following structure (when compiled):

 program -- Main folder of the project
 bin -- Executable and shared libraries of the executable
 data -- Stores data files and information for runtime
 plugins -- Stores shared libraries which (I want) can be added or
removed after the compilation process which adds custom behaviour to the
program.

The real problem is: I can't link these shared libraries from the folder
/program/plugins to the application at the /program/bin folder. I want this
to be organized. How can I link by that?

Other problem: the compilation has a lot of dependencies (qt, compiled boost
libraries, opengl, between others), and this makes the compilation a bit
difficult on Windows. So, I wanted to be able to zip the compiled folder
(with all the needed libraries) and distribute the folder for the users. But
when I move the program from one directory to another, it stops working. Is
there any way, even hacky, to make CMake to use relative paths? Because all
IDE's, other makes, allow doing this, so why CMake obligates us to use full
paths? It would be so perfect by that...

There is any way or I will have to use a non-portable way of compiling?


Thanks for the help!

Renato
--

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

Re: [CMake] Precompiled header support in Visual Studio?

2011-10-25 Thread Robert Dailey
Bumping this in hopes for some help!

-
Robert Dailey


On Fri, Oct 21, 2011 at 3:11 PM, Robert Dailey rcdai...@gmail.com wrote:

 I did some searching and on stackoverflow I found a post that had code in
 it to provide precompiled header support:

 http://stackoverflow.com/questions/148570/using-pre-compiled-headers-with-cmake

 Below is the relevant macro I am using from that post. Unfortunately this
 does not seem to work when generating for VS2008 or VS 2003. For some reason
 the CPP files other than the precompiled source itself do not have the
 Using precompiled headers option set on them when I view that file's
 properties.

 What improvements could be made to this macro? I'm not familiar at all with
 the command line parameters so I'm hoping someone can help me out.

 macro( set_precompiled_header pch_header pch_source source )
   IF(MSVC)
 GET_FILENAME_COMPONENT(PrecompiledBasename ${PrecompiledHeader}
 NAME_WE)
 SET(PrecompiledBinary
 ${CMAKE_CURRENT_BINARY_DIR}/${PrecompiledBasename}.pch)
 SET(Sources ${${SourcesVar}})

 SET_SOURCE_FILES_PROPERTIES(${PrecompiledSource}
 PROPERTIES COMPILE_FLAGS
 /Yc\${PrecompiledHeader}\ /Fp\${PrecompiledBinary}\
OBJECT_OUTPUTS
 ${PrecompiledBinary})
 SET_SOURCE_FILES_PROPERTIES(${Sources}
 PROPERTIES COMPILE_FLAGS
 /Yu\${PrecompiledBinary}\ /FI\${PrecompiledBinary}\
 /Fp\${PrecompiledBinary}\
OBJECT_DEPENDS
 ${PrecompiledBinary})
   ENDIF(MSVC)
 endmacro()

 -
 Robert Dailey

--

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

Re: [CMake] Custom target with just cmake files in it

2011-10-25 Thread Robert Dailey
Bumping this too since I'd like an answer! :P

-
Robert Dailey


On Fri, Oct 21, 2011 at 3:08 PM, Robert Dailey rcdai...@gmail.com wrote:

 I have a folder with a bunch of cmake modules in it that contain my custom
 CMake code used across all projects.

 I only generate for visual studio, so I was thinking it would be useful to
 have a dummy project in my solution named _cmake that contains nothing but
 my *.cmake files in it.

 How would I create such a project? It needs to show up in ANY solution
 opened that is generated at any level via call to project().

 -
 Robert Dailey

--

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

Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Phil Smith
OK, but it should then reject the extra parameters, since it used to work.

In any case, I've changed the toolchain file:

# This is a CMake Toolchain file, required for cross-compiling using
# the Dignus cross-compilers on Windows, compiling for z/OS.

# Tell CMAKE the target system name
SET(CMAKE_SYSTEM_NAME IBM_ZOS)

# Specify the cross-compilers
SET(CMAKE_C_COMPILER   regina)
SET(CMAKE_C_FLAGS cc.rex dcc.exe)

SET(CMAKE_CXX_COMPILER regina)
SET(CMAKE_CXX_FLAGS cc.rex dcc.exe)

SET(CMAKE_C_CREATE_STATIC_LIBRARY DAR -rv TARGET OBJECTS)

SET(CMAKE_CXX_LINK_EXECUTABLE plink.exe 
\-S$ENV{DIGNUS_PROGRAM}/objs_norent/M\ OBJECTS -o TARGET)
SET(CMAKE_C_LINK_EXECUTABLE   plink.exe 
\-S$ENV{DIGNUS_PROGRAM}/objs_norent/M\ OBJECTS -o TARGET)

...and the behavior persists:
C:/Program Files/Regina/regina.exe  cc.rex;dcc.exe  CMakeCCompilerId.c

So it's not clear that that's a solution. I can't wrap the regina call because 
what will I wrap it in? BAT is criminally busted -- it eats equals signs. So 
later calls with -fwhatever=value will be broken.

If I comment out line 29 in CMakeDetermineCompilerId.cmake, it works with my 
old toolchain file, but fails later with the new one, because it appears to 
call the compiler without the flags, and regina with no arguments produces 
Help and exits.

Why are the semicolons being inserted? If I wanted semicolons between the 
parameters, why wouldn't I just specify them?

Brad, your comment in the thread says:
Teach compiler identification to support values such as
  export CC='gcc -g -O2'
by separating the arguments on spaces.

Not sure what on spaces means, but again, it seems wrong to me that anything 
is messing with my option format.

...phsiii
-Original Message-
From: Brad King [mailto:brad.k...@kitware.com] 
Sent: Tuesday, October 25, 2011 9:14 AM
To: Phil Smith
Cc: Eric Noulard; cmake@cmake.org; Bill Hoffman; David Cole
Subject: Re: [CMake] CMake still broken post-2.8.1

On 10/25/2011 5:00 AM, Eric Noulard wrote:
 2011/10/25 Phil Smithp...@voltage.com:
 # Specify the cross-compilers
 SET(CMAKE_C_COMPILER   regina.exe cc.rex dcc.exe)
 SET(CMAKE_CXX_COMPILER regina.exe cc.rex dcxx.exe)

 I think CMAKE_[C|CXX]_COMPILER vars are supposed to contain
 a command not command + list of args.
 If I'm wrong please someone (Alex, Bill,...) just tell me.

Correct.  Those variables always hold only the compiler name.
When they are built from environment variables like CC and CXX
we split the arguments out into a separate variable.  I think
the change in behavior came from this thread's change:

  http://thread.gmane.org/gmane.comp.programming.tools.cmake.user/27857
  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fd38eda9

Read my first message in that thread for an explanation.

-Brad
--

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


Re: [CMake] Custom target with just cmake files in it

2011-10-25 Thread David Cole
On Fri, Oct 21, 2011 at 4:08 PM, Robert Dailey rcdai...@gmail.com wrote:

 I have a folder with a bunch of cmake modules in it that contain my custom
 CMake code used across all projects.

 I only generate for visual studio, so I was thinking it would be useful to
 have a dummy project in my solution named _cmake that contains nothing but
 my *.cmake files in it.

 How would I create such a project? It needs to show up in ANY solution
 opened that is generated at any level via call to project().


If you want it to show up in any sln file generated by any call to the
project command, then you're going to need to modify CMake source code to
get that to happen.

Another alternative would be to add a custom target, and specify all your
cmake files as SOURCES to the add_custom_target call. But that will only
show up in solution files that include the custom target.


HTH,
David


-
 Robert Dailey

 --

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

--

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

Re: [CMake] Precompiled header support in Visual Studio?

2011-10-25 Thread John Drescher
On Tue, Oct 25, 2011 at 11:43 AM, Robert Dailey rcdai...@gmail.com wrote:
 Bumping this in hopes for some help!


Your version is different than the stackoverflow example


Line
SET(Sources ${${SourcesVar}})

should be

SET(Sources ${${source}})

since you renamed the SourcesVar parameter.

John
--

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


Re: [CMake] Precompiled header support in Visual Studio?

2011-10-25 Thread John Drescher
On Tue, Oct 25, 2011 at 12:01 PM, John Drescher dresche...@gmail.com wrote:
 On Tue, Oct 25, 2011 at 11:43 AM, Robert Dailey rcdai...@gmail.com wrote:
 Bumping this in hopes for some help!


 Your version is different than the stackoverflow example


 Line
 SET(Sources ${${SourcesVar}})

 should be

 SET(Sources ${${source}})

 since you renamed the SourcesVar parameter.


Also it looks the other parameters are renamed and need to be fixed.

John M. Drescher
--

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


Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread David Boesner
Hi,

I want to link a .so file with a executable.
how do I do that?

Regards

David
--

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

Re: [CMake] Changes between v2.8.5 and v2.8.6?

2011-10-25 Thread Alexander Neundorf
On Tuesday 25 October 2011, Markus Rathgeb wrote:
 Hello!
 
 I am using the linux distribution gentoo.
 After I tried to reinstall my qtcreator package and recreate my Qt
 project by qtcreator I run in an empty project tree.
 To make it more understandable:
 I removed all qtcreator related files and load the CMakeLists.txt file
 with qtcreator.
 qtcreator is using cmake as backend.
 
 But something seem to be changed.
 It works with cmake-2.8.5-r2 (the -r2 means distribution specific stuff)
 It works not with cmake-2.8.6-r1 (same here for -r1)
 
 Who can I help you with further informations?
 Have I to create a dummy project with some files and log cmake traces?
 Or post a tar-ball of the source directory and the created build directory?
 
 Or is the problem already known?

Yes, one day after 2.8.6 final was released, and it is already fixed in cmake 
git master.

Please give it a try, it should work again.

Alex
--

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


Re: [CMake] How to make a shared library to use relative paths to the executable

2011-10-25 Thread Alexander Neundorf
On Tuesday 25 October 2011, Renato Utsch wrote:
 Hello!
 
 I am learning to use CMake and I found it very easy to use, very and very
 good. But I don't understand why it uses full paths instead of relative
 paths when linking shared/dynamic libraries. I am currently making a
 program that is only compiled to a folder, but not installed to the system
 (on linux), much like a folder containing all the software in windows. It
 has the following structure (when compiled):
 
  program -- Main folder of the project
  bin -- Executable and shared libraries of the executable
  data -- Stores data files and information for runtime
  plugins -- Stores shared libraries which (I want) can be added or
 removed after the compilation process which adds custom behaviour to the
 program.

As long as you don't make install, they will all find each other, since by 
default cmake puts full RPATH into the ELF files.

 The real problem is: I can't link these shared libraries from the folder
 /program/plugins to the application at the /program/bin folder. I want this
 to be organized. How can I link by that?

Sorry, I don't understand what you mean.
 
 Other problem: the compilation has a lot of dependencies (qt, compiled
 boost libraries, opengl, between others), and this makes the compilation a
 bit difficult on Windows. So, I wanted to be able to zip the compiled
 folder (with all the needed libraries) and distribute the folder for the
 users. But when I move the program from one directory to another, it stops
 working. Is there any way, even hacky, to make CMake to use relative
 paths? Because all IDE's, other makes, allow doing this, so why CMake
 obligates us to use full paths? It would be so perfect by that...

If you want to create a zip file, you should use make package to do that.
During that step also make install will be executed.
In that step the install RPATH will be patched into the ELF files.
By default this will be empty (so the libs won't be found).
But you can set it explicitely using target properties.
If you want relative RPATH, you can use @ORIGIN for ELF files, e.g. for 
executables in bin you can set @ORIGIN/../lib/  (or just @ORIGIN as in your 
setup).

Alex
--

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


Re: [CMake] How to make a shared library to use relative paths to the executable

2011-10-25 Thread Alexander Neundorf
On Tuesday 25 October 2011, Alexander Neundorf wrote:
...
 If you want to create a zip file, you should use make package to do that.
 During that step also make install will be executed.
 In that step the install RPATH will be patched into the ELF files.
 By default this will be empty (so the libs won't be found).
 But you can set it explicitely using target properties.
 If you want relative RPATH, you can use @ORIGIN for ELF files, e.g. for
 executables in bin you can set @ORIGIN/../lib/  (or just @ORIGIN as in your
 setup).

I think it's $ORIGIN, not @ORIGIN.

Alex
--

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


Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Alexander Neundorf
On Tuesday 25 October 2011, David Boesner wrote:
 Hi,
 
 I want to link a .so file with a executable.
 how do I do that?

Use target_link_libraries().
And maybe find_library() before, depending on where that library comes from.

Giving some more information and also using a suitable subject would make 
helping easier.

Alex
--

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


Re: [CMake] Custom target with just cmake files in it

2011-10-25 Thread Robert Dailey
On Tue, Oct 25, 2011 at 10:50 AM, David Cole david.c...@kitware.com wrote:

 On Fri, Oct 21, 2011 at 4:08 PM, Robert Dailey rcdai...@gmail.com wrote:

 I have a folder with a bunch of cmake modules in it that contain my custom
 CMake code used across all projects.

 I only generate for visual studio, so I was thinking it would be useful to
 have a dummy project in my solution named _cmake that contains nothing but
 my *.cmake files in it.

 How would I create such a project? It needs to show up in ANY solution
 opened that is generated at any level via call to project().


 If you want it to show up in any sln file generated by any call to the
 project command, then you're going to need to modify CMake source code to
 get that to happen.

 Another alternative would be to add a custom target, and specify all your
 cmake files as SOURCES to the add_custom_target call. But that will only
 show up in solution files that include the custom target.


How exactly would I make the solution files include the custom target? The
only way I can think of would be to make every single one of my targets have
a dependency on the custom target with my cmake files in it. I could
automate that in my define_project() function that all my targets use, but
that seems more like a hack

What would you suggest?
--

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

Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Eric Noulard
2011/10/25 Phil Smith p...@voltage.com:
 OK, but it should then reject the extra parameters, since it used to work.

Difficult to warn about a usage you did not even dream of ?
Now that we know I agree there should be a warning
(if not a clean failure with explanation).


 In any case, I've changed the toolchain file:
 
 # This is a CMake Toolchain file, required for cross-compiling using
 # the Dignus cross-compilers on Windows, compiling for z/OS.

 # Tell CMAKE the target system name
 SET(CMAKE_SYSTEM_NAME IBM_ZOS)

Do you have a platform file for IBM_ZOS as well?

if not
what is the compiler ID found?
The C compiler identification is WhatsInHere

may be you could try for force compiler:
see
http://www.cmake.org/Wiki/CMake_Cross_Compiling#The_toolchain_file
and
cmake --help-module CMakeForceCompiler

[...]

 
 ...and the behavior persists:
 C:/Program Files/Regina/regina.exe  cc.rex;dcc.exe  CMakeCCompilerId.c

You did this in a clean build tree, right?


 So it's not clear that that's a solution. I can't wrap the regina call 
 because what will I wrap it in? BAT is criminally busted -- it eats equals 
 signs. So later calls with -fwhatever=value will be broken.

May be with a REXX script ?
Just a wild guess because I did only write 2 lines of REXX in my life
so I may be wrong about the REXX capability.

 If I comment out line 29 in CMakeDetermineCompilerId.cmake, it works with my 
 old toolchain file, but fails later with the new one, because it appears to 
 call the compiler without the flags, and regina with no arguments 
 produces Help and exits.

Line 29 for which CMake version?
Do you mean this line:
STRING(REGEX REPLACE  + ; CMAKE_${lang}_COMPILER_ID_ARG1
${CMAKE_${lang}_COMPILER_ID_ARG1})



 Why are the semicolons being inserted? If I wanted semicolons between the 
 parameters, why wouldn't I just specify them?

 Brad, your comment in the thread says:
Teach compiler identification to support values such as
  export CC='gcc -g -O2'
by separating the arguments on spaces.

 Not sure what on spaces means, but again, it seems wrong to me that 
 anything is messing with my option format.

I think it means replace spaces with ; in order to get a proper list.

May be the compiler args handling is broken in the cross-compiling case?
Such kind of setup?

-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
--

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


Re: [CMake] Precompiled header support in Visual Studio?

2011-10-25 Thread Robert Dailey
I apologize, the code I had pasted was completely broken. I had meant to fix
a couple of those issues before I posted it since I made my own
customizations to it. While my real copy had the variables renamed correctly
in all places, I made a stupid mistake and included the StdAfx.cpp file in
my list of sources, which set /Yu on it, overwriting the /Yc that was placed
on it.

Thanks for the helpful reminders!

-
Robert Dailey


On Tue, Oct 25, 2011 at 11:03 AM, John Drescher dresche...@gmail.comwrote:

 On Tue, Oct 25, 2011 at 12:01 PM, John Drescher dresche...@gmail.com
 wrote:
  On Tue, Oct 25, 2011 at 11:43 AM, Robert Dailey rcdai...@gmail.com
 wrote:
  Bumping this in hopes for some help!
 
 
  Your version is different than the stackoverflow example
 
 
  Line
  SET(Sources ${${SourcesVar}})
 
  should be
 
  SET(Sources ${${source}})
 
  since you renamed the SourcesVar parameter.
 

 Also it looks the other parameters are renamed and need to be fixed.

 John M. Drescher

--

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

[CMake] Trouble with EXTERNALPROJECT_ADD, configure, and CFLAGS

2011-10-25 Thread Dan Kegel
I did

include(ExternalProject)
ExternalProject_Add(
CeltTarget
SOURCE_DIR ${CMAKE_SOURCE_DIR}/celt
INSTALL_DIR ${CMAKE_BINARY_DIR}/prefix
CONFIGURE_COMMAND ${CMAKE_SOURCE_DIR}/celt/configure -C
--prefix=${CMAKE_BINARY_DIR}/prefix --disable-shared --with-pic
CFLAGS=-g -O2 -fPIC
)

but configure failed when I typed 'make', saying

configure: error: in
`/home/dank/foo/build/CeltTarget-prefix/src/CeltTarget-build':
configure: error: C compiler cannot create executables
See `config.log' for more details.

config.log said

configure:3552: checking whether the C compiler works
configure:3574: gcc -g -O2 -fPIC   conftest.c  5
gcc: error: -g: No such file or directory

So, it seems to be a quoting problem.
(Removing the quotes doesn't work, of course, since then configure
complains that there's no such option -O2.)
Has anyone else run into this?
What's the right way to pass in cflags to the configure script in
ExternalProject_Add?

http://www.mail-archive.com/cmake@cmake.org/msg26433.html looks related.

$ cmake --version
cmake version 2.8.5
--

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


Re: [CMake] Trouble with EXTERNALPROJECT_ADD, configure, and CFLAGS

2011-10-25 Thread Dan Kegel
On Tue, Oct 25, 2011 at 10:05 AM, Dan Kegel d...@kegel.com wrote:
    CONFIGURE_COMMAND ${CMAKE_SOURCE_DIR}/celt/configure -C 
 --prefix=${CMAKE_BINARY_DIR}/prefix --disable-shared --with-pic  CFLAGS=-g 
 -O2 -fPIC

Turns out the workaround is

CONFIGURE_COMMAND ${CMAKE_SOURCE_DIR}/celt/configure -C
--prefix=${CMAKE_BINARY_DIR}/prefix --disable-shared --with-pic
CFLAGS=-g\ -O2\ -fPIC

That's just freaky.  I've never seen backslashes and double-quotes
behave differently like that.  I guess quotes are stickier in cmake
than in shell.
- Dan
--

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


[CMake] Weird linking error while cross compiling

2011-10-25 Thread Jose
Hi all,

I'm cross compiling an app under Fedora.  I get this linking errors while
building with cmake :

/usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
cannot find -lxerces-c
/usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
cannot find -lportablexdr
/usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
cannot find -lz
/usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
cannot find -lsqlite3


The thing is that the libraries have been found,included and linked with
target_link_libraries. I'm adding all the necessary flags to link statically
and the libraries are the ones included in the mingw package. It shoud work
because a different part of the application that uses almost the same
libraries is cross compiling perfectly. The cmake files are actually pretty
much the same so I don't really know what I'm doing wrong. Cmake might be
missing the libraries or the path of the libraries

Have you guys come across something like this before??

Best Regards

Jose
--

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

Re: [CMake] Trouble with EXTERNALPROJECT_ADD, configure, and CFLAGS

2011-10-25 Thread David Cole
On Tue, Oct 25, 2011 at 1:09 PM, Dan Kegel d...@kegel.com wrote:

 On Tue, Oct 25, 2011 at 10:05 AM, Dan Kegel d...@kegel.com wrote:
 CONFIGURE_COMMAND ${CMAKE_SOURCE_DIR}/celt/configure -C
 --prefix=${CMAKE_BINARY_DIR}/prefix --disable-shared --with-pic  CFLAGS=-g
 -O2 -fPIC

 Turns out the workaround is

CONFIGURE_COMMAND ${CMAKE_SOURCE_DIR}/celt/configure -C
 --prefix=${CMAKE_BINARY_DIR}/prefix --disable-shared --with-pic
 CFLAGS=-g\ -O2\ -fPIC

 That's just freaky.  I've never seen backslashes and double-quotes
 behave differently like that.  I guess quotes are stickier in cmake
 than in shell.
 - Dan
 --

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


If that works, then I'm pretty sure you could also do:

CFLAGS=-g -O2 -fPIC

The call to cmake's ExternalProject_Add function is the thing that parses at
the space separation boundary. Having double quotes around the whole thing
that's supposed to be one arg to configure should work.
--

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

Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Phil Smith
Replying inline is getting unwieldy, so I've excerpted what I'm replying to 
here.

 Do you have a platform file for IBM_ZOS as well?
Yes, there's a platform file, IBM_ZOS.cmake:

INCLUDE(Platform/UnixPaths)

(exciting, huh?)

 what is the compiler ID found?
-- The C compiler identification is unknown

 may be you could try for force compiler:
I don't understand what that means. Well, maybe I partly do: it means skipping 
the compile-a-tiny-program. Since I don't understand why I care about that, I 
don't understand the rest. I inherited our use of CMake, hacked it into working 
three+ years ago, so maybe

You did this in a clean build tree, right?
Well, I whacked the CMakeCache.txt and the CMakeFiles directory.

 May be with a REXX script ?
I don't think I can wrap it in a Rexx script -- that's how we got here, eh? I 
did try this:

SET(CMAKE_C_COMPILER   cc.rex)
SET(CMAKE_C_FLAGS dcc.exe)

...since .rex is associated with Regina anyway. That got further, but it got to:
Check for working C compiler: C:/SVN/Dignus/cc.rex
...and that hung. It never called cc.rex in that case (I suspect this is why I 
was explicitly prefacing it with regina.exe -- it was a long time ago that I 
set this up!).

 Line 29 for which CMake version?
 Do you mean this line:
Yes, that's the line I meant.

 I think it means replace spaces with ; in order to get a proper list.
OK, but why are arguments to the compiler supposed to be separated with 
semicolons? That doesn't seem right. Is something later supposed to undo this?

-Original Message-
From: Eric Noulard [mailto:eric.noul...@gmail.com] 
Sent: Tuesday, October 25, 2011 12:40 PM
To: Phil Smith
Cc: Brad King; cmake@cmake.org; Bill Hoffman; David Cole; Janet Graff
Subject: Re: [CMake] CMake still broken post-2.8.1

2011/10/25 Phil Smith p...@voltage.com:
 OK, but it should then reject the extra parameters, since it used to work.

Difficult to warn about a usage you did not even dream of ?
Now that we know I agree there should be a warning
(if not a clean failure with explanation).


 In any case, I've changed the toolchain file:
 
 # This is a CMake Toolchain file, required for cross-compiling using
 # the Dignus cross-compilers on Windows, compiling for z/OS.

 # Tell CMAKE the target system name
 SET(CMAKE_SYSTEM_NAME IBM_ZOS)

Do you have a platform file for IBM_ZOS as well?

if not
what is the compiler ID found?
The C compiler identification is WhatsInHere

may be you could try for force compiler:
see
http://www.cmake.org/Wiki/CMake_Cross_Compiling#The_toolchain_file
and
cmake --help-module CMakeForceCompiler

[...]

 
 ...and the behavior persists:
 C:/Program Files/Regina/regina.exe  cc.rex;dcc.exe  CMakeCCompilerId.c

You did this in a clean build tree, right?


 So it's not clear that that's a solution. I can't wrap the regina call 
 because what will I wrap it in? BAT is criminally busted -- it eats equals 
 signs. So later calls with -fwhatever=value will be broken.

May be with a REXX script ?
Just a wild guess because I did only write 2 lines of REXX in my life
so I may be wrong about the REXX capability.

 If I comment out line 29 in CMakeDetermineCompilerId.cmake, it works with my 
 old toolchain file, but fails later with the new one, because it appears to 
 call the compiler without the flags, and regina with no arguments 
 produces Help and exits.

Line 29 for which CMake version?
Do you mean this line:
STRING(REGEX REPLACE  + ; CMAKE_${lang}_COMPILER_ID_ARG1
${CMAKE_${lang}_COMPILER_ID_ARG1})



 Why are the semicolons being inserted? If I wanted semicolons between the 
 parameters, why wouldn't I just specify them?

 Brad, your comment in the thread says:
Teach compiler identification to support values such as
  export CC='gcc -g -O2'
by separating the arguments on spaces.

 Not sure what on spaces means, but again, it seems wrong to me that 
 anything is messing with my option format.

I think it means replace spaces with ; in order to get a proper list.

May be the compiler args handling is broken in the cross-compiling case?
Such kind of setup?

-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
--

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


Re: [CMake] Weird linking error while cross compiling

2011-10-25 Thread Dan Kegel
On Tue, Oct 25, 2011 at 10:15 AM, Jose jc.fernandez.nava...@gmail.com wrote:
 /usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
 cannot find -lsqlite3

The way I usually track down things like this is to find the broken commandline
(e.g. make VERBOSE=1), put it in a shell script with any needed cd,
and verify that it reproduces the problem.
You can then do things like add options to gcc to get it to
show what it's doing, or use strace -f -o slog on the script
to see where it's looking for the library in question.
--

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


Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread David Cole
Is your project's source publicly available? And are these compilers freely
available, too?

It may be easier for us to help with a more complete picture of what's going
on...


On Tue, Oct 25, 2011 at 1:32 PM, Phil Smith p...@voltage.com wrote:

 Replying inline is getting unwieldy, so I've excerpted what I'm replying to
 here.

  Do you have a platform file for IBM_ZOS as well?
 Yes, there's a platform file, IBM_ZOS.cmake:

 INCLUDE(Platform/UnixPaths)

 (exciting, huh?)

  what is the compiler ID found?
 -- The C compiler identification is unknown

  may be you could try for force compiler:
 I don't understand what that means. Well, maybe I partly do: it means
 skipping the compile-a-tiny-program. Since I don't understand why I care
 about that, I don't understand the rest. I inherited our use of CMake,
 hacked it into working three+ years ago, so maybe

 You did this in a clean build tree, right?
 Well, I whacked the CMakeCache.txt and the CMakeFiles directory.

  May be with a REXX script ?
 I don't think I can wrap it in a Rexx script -- that's how we got here, eh?
 I did try this:

 SET(CMAKE_C_COMPILER   cc.rex)
 SET(CMAKE_C_FLAGS dcc.exe)

 ...since .rex is associated with Regina anyway. That got further, but it
 got to:
 Check for working C compiler: C:/SVN/Dignus/cc.rex
 ...and that hung. It never called cc.rex in that case (I suspect this is
 why I was explicitly prefacing it with regina.exe -- it was a long time ago
 that I set this up!).

  Line 29 for which CMake version?
  Do you mean this line:
 Yes, that's the line I meant.

  I think it means replace spaces with ; in order to get a proper list.
 OK, but why are arguments to the compiler supposed to be separated with
 semicolons? That doesn't seem right. Is something later supposed to undo
 this?

 -Original Message-
 From: Eric Noulard [mailto:eric.noul...@gmail.com]
 Sent: Tuesday, October 25, 2011 12:40 PM
 To: Phil Smith
 Cc: Brad King; cmake@cmake.org; Bill Hoffman; David Cole; Janet Graff
 Subject: Re: [CMake] CMake still broken post-2.8.1

 2011/10/25 Phil Smith p...@voltage.com:
  OK, but it should then reject the extra parameters, since it used to
 work.

 Difficult to warn about a usage you did not even dream of ?
 Now that we know I agree there should be a warning
 (if not a clean failure with explanation).

 
  In any case, I've changed the toolchain file:
  
  # This is a CMake Toolchain file, required for cross-compiling using
  # the Dignus cross-compilers on Windows, compiling for z/OS.
 
  # Tell CMAKE the target system name
  SET(CMAKE_SYSTEM_NAME IBM_ZOS)

 Do you have a platform file for IBM_ZOS as well?

 if not
 what is the compiler ID found?
 The C compiler identification is WhatsInHere

 may be you could try for force compiler:
 see
 http://www.cmake.org/Wiki/CMake_Cross_Compiling#The_toolchain_file
 and
 cmake --help-module CMakeForceCompiler

 [...]

  
  ...and the behavior persists:
  C:/Program Files/Regina/regina.exe  cc.rex;dcc.exe  CMakeCCompilerId.c

 You did this in a clean build tree, right?


  So it's not clear that that's a solution. I can't wrap the regina call
 because what will I wrap it in? BAT is criminally busted -- it eats equals
 signs. So later calls with -fwhatever=value will be broken.

 May be with a REXX script ?
 Just a wild guess because I did only write 2 lines of REXX in my life
 so I may be wrong about the REXX capability.

  If I comment out line 29 in CMakeDetermineCompilerId.cmake, it works with
 my old toolchain file, but fails later with the new one, because it appears
 to call the compiler without the flags, and regina with no arguments
 produces Help and exits.

 Line 29 for which CMake version?
 Do you mean this line:
 STRING(REGEX REPLACE  + ; CMAKE_${lang}_COMPILER_ID_ARG1
 ${CMAKE_${lang}_COMPILER_ID_ARG1})


 
  Why are the semicolons being inserted? If I wanted semicolons between the
 parameters, why wouldn't I just specify them?
 
  Brad, your comment in the thread says:
 Teach compiler identification to support values such as
   export CC='gcc -g -O2'
 by separating the arguments on spaces.
 
  Not sure what on spaces means, but again, it seems wrong to me that
 anything is messing with my option format.

 I think it means replace spaces with ; in order to get a proper list.

 May be the compiler args handling is broken in the cross-compiling case?
 Such kind of setup?

 --
 Erk
 Membre de l'April - « promouvoir et défendre le logiciel libre » -
 http://www.april.org

--

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

Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Phil Smith
No, alas. Code is proprietary and the compiler is licensed too.

From: David Cole [mailto:david.c...@kitware.com]
Sent: Tuesday, October 25, 2011 1:41 PM
To: Phil Smith
Cc: Eric Noulard; Brad King; cmake@cmake.org; Bill Hoffman; Janet Graff
Subject: Re: [CMake] CMake still broken post-2.8.1

Is your project's source publicly available? And are these compilers freely 
available, too?

It may be easier for us to help with a more complete picture of what's going 
on...

On Tue, Oct 25, 2011 at 1:32 PM, Phil Smith 
p...@voltage.commailto:p...@voltage.com wrote:
Replying inline is getting unwieldy, so I've excerpted what I'm replying to 
here.

 Do you have a platform file for IBM_ZOS as well?
Yes, there's a platform file, IBM_ZOS.cmake:

INCLUDE(Platform/UnixPaths)

(exciting, huh?)

 what is the compiler ID found?
-- The C compiler identification is unknown

 may be you could try for force compiler:
I don't understand what that means. Well, maybe I partly do: it means skipping 
the compile-a-tiny-program. Since I don't understand why I care about that, I 
don't understand the rest. I inherited our use of CMake, hacked it into working 
three+ years ago, so maybe

You did this in a clean build tree, right?
Well, I whacked the CMakeCache.txt and the CMakeFiles directory.

 May be with a REXX script ?
I don't think I can wrap it in a Rexx script -- that's how we got here, eh? I 
did try this:

SET(CMAKE_C_COMPILER   cc.rex)
SET(CMAKE_C_FLAGS dcc.exe)

...since .rex is associated with Regina anyway. That got further, but it got to:
Check for working C compiler: C:/SVN/Dignus/cc.rex
...and that hung. It never called cc.rex in that case (I suspect this is why I 
was explicitly prefacing it with regina.exe -- it was a long time ago that I 
set this up!).

 Line 29 for which CMake version?
 Do you mean this line:
Yes, that's the line I meant.

 I think it means replace spaces with ; in order to get a proper list.
OK, but why are arguments to the compiler supposed to be separated with 
semicolons? That doesn't seem right. Is something later supposed to undo this?

-Original Message-
From: Eric Noulard 
[mailto:eric.noul...@gmail.commailto:eric.noul...@gmail.com]
Sent: Tuesday, October 25, 2011 12:40 PM
To: Phil Smith
Cc: Brad King; cmake@cmake.orgmailto:cmake@cmake.org; Bill Hoffman; David 
Cole; Janet Graff
Subject: Re: [CMake] CMake still broken post-2.8.1
2011/10/25 Phil Smith p...@voltage.commailto:p...@voltage.com:
 OK, but it should then reject the extra parameters, since it used to work.

Difficult to warn about a usage you did not even dream of ?
Now that we know I agree there should be a warning
(if not a clean failure with explanation).


 In any case, I've changed the toolchain file:
 
 # This is a CMake Toolchain file, required for cross-compiling using
 # the Dignus cross-compilers on Windows, compiling for z/OS.

 # Tell CMAKE the target system name
 SET(CMAKE_SYSTEM_NAME IBM_ZOS)

Do you have a platform file for IBM_ZOS as well?

if not
what is the compiler ID found?
The C compiler identification is WhatsInHere

may be you could try for force compiler:
see
http://www.cmake.org/Wiki/CMake_Cross_Compiling#The_toolchain_file
and
cmake --help-module CMakeForceCompiler

[...]

 
 ...and the behavior persists:
 C:/Program Files/Regina/regina.exe  cc.rex;dcc.exe  CMakeCCompilerId.c

You did this in a clean build tree, right?


 So it's not clear that that's a solution. I can't wrap the regina call 
 because what will I wrap it in? BAT is criminally busted -- it eats equals 
 signs. So later calls with -fwhatever=value will be broken.

May be with a REXX script ?
Just a wild guess because I did only write 2 lines of REXX in my life
so I may be wrong about the REXX capability.

 If I comment out line 29 in CMakeDetermineCompilerId.cmake, it works with my 
 old toolchain file, but fails later with the new one, because it appears to 
 call the compiler without the flags, and regina with no arguments 
 produces Help and exits.

Line 29 for which CMake version?
Do you mean this line:
STRING(REGEX REPLACE  + ; CMAKE_${lang}_COMPILER_ID_ARG1
${CMAKE_${lang}_COMPILER_ID_ARG1})



 Why are the semicolons being inserted? If I wanted semicolons between the 
 parameters, why wouldn't I just specify them?

 Brad, your comment in the thread says:
Teach compiler identification to support values such as
  export CC='gcc -g -O2'
by separating the arguments on spaces.

 Not sure what on spaces means, but again, it seems wrong to me that 
 anything is messing with my option format.

I think it means replace spaces with ; in order to get a proper list.

May be the compiler args handling is broken in the cross-compiling case?
Such kind of setup?

--
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org

--

Powered by www.kitware.com

Visit other Kitware open-source projects at 

Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Alexander Neundorf
On Tuesday 25 October 2011, Phil Smith wrote:
 No, alas. Code is proprietary and the compiler is licensed too.

I think Phil asked here on the list like one year ago or so.
So, there are some things to be found in the archive.
Was this EBDIC stuff ?

Alex
--

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


Re: [CMake] Weird linking error while cross compiling

2011-10-25 Thread Andreas Pakulat
On 25.10.11 13:15:37, Jose wrote:
 Hi all,
 
 I'm cross compiling an app under Fedora.  I get this linking errors while
 building with cmake :
 
 /usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
 cannot find -lxerces-c
 /usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
 cannot find -lportablexdr
 /usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
 cannot find -lz
 /usr/lib/gcc/i686-pc-mingw32/4.5.3/../../../../i686-pc-mingw32/bin/ld:
 cannot find -lsqlite3
 
 
 The thing is that the libraries have been found,included and linked with
 target_link_libraries. I'm adding all the necessary flags to link statically
 and the libraries are the ones included in the mingw package. It shoud work
 because a different part of the application that uses almost the same
 libraries is cross compiling perfectly. The cmake files are actually pretty
 much the same so I don't really know what I'm doing wrong. Cmake might be
 missing the libraries or the path of the libraries

Hmm, -lfoo means the linker will search for a shared library. Linking
static libraries is done by specifying the absolute path to the library
file. How exactly are you calling target_link_libraries and assuming
that you're passing above libraries via cmake-variables whats the
content of those variables?

Andreas

--

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


[CMake] Windows installer creating duplicate entries in Add/Remove Programs

2011-10-25 Thread Robert Dailey
I noticed that when I install CMake 2.8 updates, I get duplicate entries in
Programs and Features in windows 7 (the Add/Remove programs area).

This seems like a bug. I searched the bug database but didn't find anything
on this.

Can anyone confirm?

-
Robert Dailey
--

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

Re: [CMake] CMake still broken post-2.8.1

2011-10-25 Thread Phil Smith
Yes, it's partly EBCDIC, but I don't think that's actually an issue here. The 
compiler allows compiling both in ASCII (so constants are ASCII) and native 
(EBCDIC); we do some of both.

Good memory, btw!
-Original Message-
From: Alexander Neundorf [mailto:a.neundorf-w...@gmx.net] 
Sent: Tuesday, October 25, 2011 2:03 PM
To: cmake@cmake.org
Cc: Phil Smith; David Cole; Janet Graff; Brad King; Bill Hoffman
Subject: Re: [CMake] CMake still broken post-2.8.1

On Tuesday 25 October 2011, Phil Smith wrote:
 No, alas. Code is proprietary and the compiler is licensed too.

I think Phil asked here on the list like one year ago or so.
So, there are some things to be found in the archive.
Was this EBDIC stuff ?

Alex
--

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


[CMake] Boost external project doesn't build with VS2010 generator

2011-10-25 Thread Ben Medina
Hello all,

I'm trying to build Boost as an external project, but it won't build
if I use the VS2010 generator. I've whittled the code down to the
following CMakeLists.txt:

cmake_minimum_required(VERSION 2.8)
project (boost-external)

set (Boost_Source E:/boost_1_47_0)

include(ExternalProject)
ExternalProject_Add(
Boost
SOURCE_DIR ${Boost_Source}
UPDATE_COMMAND 
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND bootstrap.bat
BUILD_COMMAND b2 install
INSTALL_COMMAND 
)

When I build the project, the configure step happens, but the build
step is skipped:

Microsoft (R) Visual Studio Version 10.0.40219.1.
Copyright (C) Microsoft Corp. All rights reserved.
2-- Build started: Project: Boost, Configuration: Debug x64 --
2  Performing configure step for 'Boost'
2  Building Boost.Build engine
2
2  Bootstrapping is done. To build, run:
2
2  .\b2
2
2  To adjust configuration, edit 'project-config.jam'.
2  Further information:
2
2  - Command line help:
2  .\b2 --help
2
2  - Getting started guide:
2  http://boost.org/more/getting_started/windows.html
2
2  - Boost.Build documentation:
2  http://www.boost.org/boost-build2/doc/html/index.html
3-- Build started: Project: ALL_BUILD, Configuration: Debug x64 --
3  Build all projects
== Build: 3 succeeded, 0 failed, 0 up-to-date, 0 skipped ==

When I use the VS2008 generator, the project builds as expected:

Microsoft (R) Visual Studio Version 9.0.30729.1.
Copyright (C) Microsoft Corp. All rights reserved.
1-- Build started: Project: Boost, Configuration: Debug x64 --
1Creating directories for 'Boost'
1No download step for 'Boost'
1No patch step for 'Boost'
1No update step for 'Boost'
1Performing configure step for 'Boost'
1Building Boost.Build engine
...
1Generating Code...
1Bootstrapping is done. To build, run:
1.\b2
1
1To adjust configuration, edit 'project-config.jam'.
1Further information:
1- Command line help:
1.\b2 --help
1
1- Getting started guide:
1http://boost.org/more/getting_started/windows.html
1
1- Boost.Build documentation:
1http://www.boost.org/boost-build2/doc/html/index.html
1Performing build step for 'Boost'
1has_icu_test.cpp
1Performing configuration checks
...

And it goes on to build from there.


I'm using CMake 2.8.6. Is there some way I can work around this, or
should I file a bug?

Thanks,
Ben
--

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


Re: [CMake] Possible to modify COMPILE_FLAGS?

2011-10-25 Thread Campbell Barton
Thanks for that, from reading the docs now this is more clear but for
some reason I had the impression the flags on a file could be
manipulated.

# ---
# Heres the macro I came up with to disable certain warnings for a
given set of files...

macro(remove_strict_flags_file
filenames)

foreach(_SOURCE ${ARGV})

if(CMAKE_COMPILER_IS_GNUCC)
set_source_files_properties(${_SOURCE}
PROPERTIES
COMPILE_FLAGS 
-Wno-deprecated-declarations
)
endif()

if(MSVC)
# TODO
endif()

endforeach()

unset(_SOURCE)

endmacro()

# ---
# Example use

remove_strict_flags_file(
intern/indexer.c
intern/util.c
intern/anim_movie.c
)



On Tue, Oct 25, 2011 at 7:16 PM, Michael Wild them...@gmail.com wrote:
 On 10/25/2011 09:51 AM, Campbell Barton wrote:
 The problem I'm trying to solve is to have -Werror for the whole
 project except a few files which include system headers that give
 warnings we can't workaround (even with -isystem).

 So I'm trying to get cmake to replace some flags for a specific file,
 and I ran into the problem that the variable appears not to be set.

 get_source_file_property(MYVAR intern/BME_Customdata.c COMPILE_FLAGS)
 ... modify the MYVAR
 ... set the flags back

 But the variable isnt set, Im sure the source file is valid because I
 printed it from the list passed to the target, and I tried this before
 and after defining the source file in the target:
 message(FATAL_ERROR Check: ${MYVAR})
 Check: NOTFOUND


 I'm guessing the COMPILE_FLAGS property can be set which overrides the
 default flags but is there a good way to manipulate the existing
 flags?


 Problem is, that the COMPILE_FLAGS property only *appends* to the
 default compile flags. You'll have to remove -Werror from
 CMAKE_LANG_FLAGS[_CONFIG] variables and set it instead on all the
 files you want it to be set for.

 Michael
 --

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




-- 
- Campbell
--

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


Re: [CMake] Bug fix requests for the *next* release of CMake...

2011-10-25 Thread Bill Hoffman

On 10/25/2011 2:46 PM, Thomas Sondergaard wrote:



The VS2010 bug!

http://public.kitware.com/Bug/view.php?id=11258


Would love to fix that if we knew how :(


-Bill

--

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


Re: [CMake] Bug fix requests for the *next* release of CMake...

2011-10-25 Thread Bill Hoffman

On 10/25/2011 2:46 PM, Thomas Sondergaard wrote:

On 2011-10-21 20:20, David Cole wrote:

As an esteemed colleague has pointed out, those with reporter level
account in Mantis may not edit bugs other than their own directly.
So. if you are in that boat, but would like to vote for a bug fix
to be considered for 2.8.7, please reply to this thread, and just list
the bug number, or a URL linking to its bug tracker page.

I will follow the replies to this thread and add those bugs to the
roadmap as they roll in.


The VS2010 bug!

http://public.kitware.com/Bug/view.php?id=11258



There is an out of cmake solution for this.

http://vscommands.com/

If you install the VSCommands plugin free version, it will fix the 
reload dialog to only ask once.


-Bill

--

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


Re: [CMake] Boost external project doesn't build with VS2010 generator

2011-10-25 Thread David Cole
Try changing the configure command to call bootstrap.bat instead.

I suspect this is related to the symptoms reported in these bugs:

  http://public.kitware.com/Bug/view.php?id=12445
  http://public.kitware.com/Bug/view.php?id=12461

Related to using bat or cmd files as custom commands. We need to get
those fixed for 2.8.7 in the VS 2010 generator.

Let me know if adding call  to the front of the command works in this
case.


Thanks,
David


On Tue, Oct 25, 2011 at 5:30 PM, Ben Medina ben.med...@gmail.com wrote:

 Hello all,

 I'm trying to build Boost as an external project, but it won't build
 if I use the VS2010 generator. I've whittled the code down to the
 following CMakeLists.txt:

 cmake_minimum_required(VERSION 2.8)
 project (boost-external)

 set (Boost_Source E:/boost_1_47_0)

 include(ExternalProject)
 ExternalProject_Add(
Boost
SOURCE_DIR ${Boost_Source}
UPDATE_COMMAND 
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND bootstrap.bat
BUILD_COMMAND b2 install
INSTALL_COMMAND 
)

 When I build the project, the configure step happens, but the build
 step is skipped:

 Microsoft (R) Visual Studio Version 10.0.40219.1.
 Copyright (C) Microsoft Corp. All rights reserved.
 2-- Build started: Project: Boost, Configuration: Debug x64 --
 2  Performing configure step for 'Boost'
 2  Building Boost.Build engine
 2
 2  Bootstrapping is done. To build, run:
 2
 2  .\b2
 2
 2  To adjust configuration, edit 'project-config.jam'.
 2  Further information:
 2
 2  - Command line help:
 2  .\b2 --help
 2
 2  - Getting started guide:
 2  http://boost.org/more/getting_started/windows.html
 2
 2  - Boost.Build documentation:
 2  http://www.boost.org/boost-build2/doc/html/index.html
 3-- Build started: Project: ALL_BUILD, Configuration: Debug x64 --
 3  Build all projects
 == Build: 3 succeeded, 0 failed, 0 up-to-date, 0 skipped ==

 When I use the VS2008 generator, the project builds as expected:

 Microsoft (R) Visual Studio Version 9.0.30729.1.
 Copyright (C) Microsoft Corp. All rights reserved.
 1-- Build started: Project: Boost, Configuration: Debug x64 --
 1Creating directories for 'Boost'
 1No download step for 'Boost'
 1No patch step for 'Boost'
 1No update step for 'Boost'
 1Performing configure step for 'Boost'
 1Building Boost.Build engine
 ...
 1Generating Code...
 1Bootstrapping is done. To build, run:
 1.\b2
 1
 1To adjust configuration, edit 'project-config.jam'.
 1Further information:
 1- Command line help:
 1.\b2 --help
 1
 1- Getting started guide:
 1http://boost.org/more/getting_started/windows.html
 1
 1- Boost.Build documentation:
 1http://www.boost.org/boost-build2/doc/html/index.html
 1Performing build step for 'Boost'
 1has_icu_test.cpp
 1Performing configuration checks
 ...

 And it goes on to build from there.


 I'm using CMake 2.8.6. Is there some way I can work around this, or
 should I file a bug?

 Thanks,
 Ben
 --

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

--

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

Re: [CMake] Possible to modify COMPILE_FLAGS?

2011-10-25 Thread David Cole
On Tue, Oct 25, 2011 at 8:58 PM, Campbell Barton ideasma...@gmail.comwrote:

 Thanks for that, from reading the docs now this is more clear but for
 some reason I had the impression the flags on a file could be
 manipulated.

 # ---
 # Heres the macro I came up with to disable certain warnings for a
 given set of files...

 macro(remove_strict_flags_file
filenames)

foreach(_SOURCE ${ARGV})

if(CMAKE_COMPILER_IS_GNUCC)
set_source_files_properties(${_SOURCE}
PROPERTIES
COMPILE_FLAGS
 -Wno-deprecated-declarations
)
endif()

if(MSVC)
# TODO
endif()

endforeach()

unset(_SOURCE)

 endmacro()

 # ---
 # Example use

 remove_strict_flags_file(
intern/indexer.c
intern/util.c
intern/anim_movie.c
 )



 On Tue, Oct 25, 2011 at 7:16 PM, Michael Wild them...@gmail.com wrote:
  On 10/25/2011 09:51 AM, Campbell Barton wrote:
  The problem I'm trying to solve is to have -Werror for the whole
  project except a few files which include system headers that give
  warnings we can't workaround (even with -isystem).
 
  So I'm trying to get cmake to replace some flags for a specific file,
  and I ran into the problem that the variable appears not to be set.
 
  get_source_file_property(MYVAR intern/BME_Customdata.c COMPILE_FLAGS)
  ... modify the MYVAR
  ... set the flags back
 
  But the variable isnt set, Im sure the source file is valid because I
  printed it from the list passed to the target, and I tried this before
  and after defining the source file in the target:
  message(FATAL_ERROR Check: ${MYVAR})
  Check: NOTFOUND
 
 
  I'm guessing the COMPILE_FLAGS property can be set which overrides the
  default flags but is there a good way to manipulate the existing
  flags?
 
 
  Problem is, that the COMPILE_FLAGS property only *appends* to the
  default compile flags. You'll have to remove -Werror from
  CMAKE_LANG_FLAGS[_CONFIG] variables and set it instead on all the
  files you want it to be set for.
 
  Michael
  --
 
  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://www.cmake.org/mailman/listinfo/cmake
 



 --
 - Campbell
 --

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


The flags on a file CAN be manipulated, but Michael's point was that the
flags on a  file are ADDED to the global flags and the flags on its
containing target...

So there's no reliable way to set file flags that will remove flags that
were already added by the global or target level flags.


HTH,
David
--

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

[CMake] Help for exporting target information from install tree

2011-10-25 Thread He Yuqi
Hello,

I am encountering specific problems and hope someone can help me.

I'm working on a patch to export target information from install tree for
OCE https://github.com/tpaviot/oce project. The OCE project use CMake to
manage the build process. For some reasons, OCE project install targets into
*bin* directory in *Release* configuration and *bind* directory in
*Debug*configuration. But there's something wrong when exporting
target
information.

My first solution is:

INSTALL(TARGETS ${TOOLKIT}
 *EXPORT ${PROJECT_NAME}-libraries*
 RUNTIME DESTINATION ${TOOLKIT_INSTALL_BIN_DIR} CONFIGURATIONS
 Release RelWithDebInfo MinSizeRel COMPONENT RuntimeLibraries
 LIBRARY DESTINATION ${TOOLKIT_INSTALL_LIB_DIR} CONFIGURATIONS
 Release RelWithDebInfo MinSizeRel COMPONENT RuntimeLibraries
 ARCHIVE DESTINATION ${TOOLKIT_INSTALL_LIB_DIR} CONFIGURATIONS
 Release RelWithDebInfo MinSizeRel COMPONENT Development
 )
 INSTALL(TARGETS ${TOOLKIT}
 *EXPORT ${PROJECT_NAME}-libraries*
 RUNTIME DESTINATION ${TOOLKIT_INSTALL_BIN_DEBUG_DIR} CONFIGURATIONS
 Debug COMPONENT RuntimeLibraries
 LIBRARY DESTINATION ${TOOLKIT_INSTALL_LIB_DEBUG_DIR} CONFIGURATIONS
 Debug COMPONENT RuntimeLibraries
 ARCHIVE DESTINATION ${TOOLKIT_INSTALL_LIB_DEBUG_DIR} CONFIGURATIONS
 Debug COMPONENT Development
 )


But CMake report the ${TOOLKIT} target had export more than once and stop
the generation.

Than I remove the export line in *Debug* configuration. Everything is well,
but the import information do not export into OCE-libraries-debug.cmake
file.

Any suggestion?

He Yuqi
--

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

Re: [CMake] Possible to modify COMPILE_FLAGS?

2011-10-25 Thread Michael Wild
On 10/26/2011 03:56 AM, David Cole wrote:
 On Tue, Oct 25, 2011 at 8:58 PM, Campbell Barton ideasma...@gmail.com
 mailto:ideasma...@gmail.com wrote:
 
 Thanks for that, from reading the docs now this is more clear but for
 some reason I had the impression the flags on a file could be
 manipulated.
 
 # ---
 # Heres the macro I came up with to disable certain warnings for a
 given set of files...
 
 macro(remove_strict_flags_file
filenames)
 
foreach(_SOURCE ${ARGV})
 
if(CMAKE_COMPILER_IS_GNUCC)
set_source_files_properties(${_SOURCE}
PROPERTIES
COMPILE_FLAGS
 -Wno-deprecated-declarations
)
endif()
 
if(MSVC)
# TODO
endif()
 
endforeach()
 
unset(_SOURCE)
 
 endmacro()
 
 # ---
 # Example use
 
 remove_strict_flags_file(
intern/indexer.c
intern/util.c
intern/anim_movie.c
 )
 
 
 
 On Tue, Oct 25, 2011 at 7:16 PM, Michael Wild them...@gmail.com
 mailto:them...@gmail.com wrote:
  On 10/25/2011 09:51 AM, Campbell Barton wrote:
  The problem I'm trying to solve is to have -Werror for the whole
  project except a few files which include system headers that give
  warnings we can't workaround (even with -isystem).
 
  So I'm trying to get cmake to replace some flags for a specific file,
  and I ran into the problem that the variable appears not to be set.
 
  get_source_file_property(MYVAR intern/BME_Customdata.c COMPILE_FLAGS)
  ... modify the MYVAR
  ... set the flags back
 
  But the variable isnt set, Im sure the source file is valid because I
  printed it from the list passed to the target, and I tried this
 before
  and after defining the source file in the target:
  message(FATAL_ERROR Check: ${MYVAR})
  Check: NOTFOUND
 
 
  I'm guessing the COMPILE_FLAGS property can be set which
 overrides the
  default flags but is there a good way to manipulate the existing
  flags?
 
 
  Problem is, that the COMPILE_FLAGS property only *appends* to the
  default compile flags. You'll have to remove -Werror from
  CMAKE_LANG_FLAGS[_CONFIG] variables and set it instead on all the
  files you want it to be set for.
 
  Michael
  --
 
  Powered by www.kitware.com http://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://www.cmake.org/mailman/listinfo/cmake
 
 
 
 
 --
 - Campbell
 --
 
 Powered by www.kitware.com http://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://www.cmake.org/mailman/listinfo/cmake
 
 
 The flags on a file CAN be manipulated, but Michael's point was that the
 flags on a  file are ADDED to the global flags and the flags on its
 containing target...
 
 So there's no reliable way to set file flags that will remove flags that
 were already added by the global or target level flags.
 
 
 HTH,
 David
 

Actually, I just found out, that in the special case of
CMAKE_COMPILER_IS_GNUCC{,XX} and the -WXXX settings, you actually can
effectively remove them for individual files, targets or directories by
setting the COMPILE_FLAGS property to -Wno-XXX. In above case, -Werror
will still be passed on the command line, but it will be overridden by
-Wno-error that comes later on.

HTH

Michael

--

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


[Cmake-commits] CMake branch, master, updated. v2.8.6-68-g039d1b1

2011-10-25 Thread David Cole
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  039d1b1fd9edad20f139aad8df7ebe0f612ef65f (commit)
   via  d9cbba7c2cd364a19b42cd856f5d048deb92b415 (commit)
  from  676fb3b2acea40f5eae7d4badc9dbea2366ce2da (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=039d1b1fd9edad20f139aad8df7ebe0f612ef65f
commit 039d1b1fd9edad20f139aad8df7ebe0f612ef65f
Merge: 676fb3b d9cbba7
Author: David Cole david.c...@kitware.com
AuthorDate: Tue Oct 25 15:33:48 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 15:33:48 2011 -0400

Merge topic 'cmake-link-interface-libraries'

d9cbba7 Initialize LINK_INTERFACE_LIBRARIES target property with a variable


---

Summary of changes:
 Source/cmDocumentVariables.cxx |9 -
 Source/cmTarget.cxx|4 
 2 files changed, 12 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


[Cmake-commits] CMake branch, master, updated. v2.8.6-81-g61b4940

2011-10-25 Thread David Cole
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  61b49402d789f5465a7cdc08e708d4448f3496c3 (commit)
   via  5e8e9ad68ca9e617ef5442236247a49e3b246a5d (commit)
   via  ea8ac9f5dc2eab7b263a18eee5db75aedd31e26a (commit)
   via  56aa6ffae75dd2567d2041147774bb1a9a3a1bdf (commit)
  from  5576655f369cf910a3edf25a3e1b9150926ebe43 (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=61b49402d789f5465a7cdc08e708d4448f3496c3
commit 61b49402d789f5465a7cdc08e708d4448f3496c3
Merge: 5576655 5e8e9ad
Author: David Cole david.c...@kitware.com
AuthorDate: Tue Oct 25 15:34:19 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 15:34:19 2011 -0400

Merge topic 'AutomocFindQ_OBJECTAlwaysInHeader'

5e8e9ad automoc: always run moc on the cpp file if there is a foo.moc 
included
ea8ac9f Add copyright notices
56aa6ff automoc:run moc on the header if the source file contains include 
foo.moc


---

Summary of changes:
 Source/cmQtAutomoc.cxx |  178 ++--
 Source/cmQtAutomoc.h   |   16 ++
 Tests/QtAutomoc/CMakeLists.txt |2 +-
 .../QtAutomoc/foo.cpp  |   29 +++-
 .../cmDocumentVariables.h = Tests/QtAutomoc/foo.h |   21 ++-
 Tests/QtAutomoc/main.cpp   |4 +
 6 files changed, 149 insertions(+), 101 deletions(-)
 copy Source/CursesDialog/cmCursesDummyWidget.cxx = Tests/QtAutomoc/foo.cpp 
(56%)
 copy Source/cmDocumentVariables.h = Tests/QtAutomoc/foo.h (69%)


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, master, updated. v2.8.6-88-g4701843

2011-10-25 Thread David Cole
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  4701843974ef7404212f9a057cba4961076b07c8 (commit)
   via  66bd543b9b0b09d38697f2c321dda7e4aeb6916d (commit)
   via  70de8bd5ae95936b8187e1af707e2d0111c74329 (commit)
   via  117f2b8257d92328b32cb90ced3d85d88815130b (commit)
   via  c3f30bdd63682b4ba7166e23b3b3dc38548aab07 (commit)
   via  cef6bd94d76a24c5948fea0224a78217f34c0b23 (commit)
   via  b6d4de7911c5d54c087d5616660ee7e4050da834 (commit)
  from  61b49402d789f5465a7cdc08e708d4448f3496c3 (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=4701843974ef7404212f9a057cba4961076b07c8
commit 4701843974ef7404212f9a057cba4961076b07c8
Merge: 61b4940 66bd543
Author: David Cole david.c...@kitware.com
AuthorDate: Tue Oct 25 15:34:23 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 15:34:23 2011 -0400

Merge topic 'SourceGroupsForEclipse'

66bd543 Eclipse: fix #12417, don't create wrong src pathentries
70de8bd Eclipse: detect number of CPUs, set CMAKE_ECLIPSE_MAKE_ARGUMENTS 
accordigly
117f2b8 Eclipse: add Build and Clean targets to targets
c3f30bd Eclipse: move code for generating links to targets into separate 
function
cef6bd9 Eclipse: move code for generating links to projects into separate 
function
b6d4de7 Eclipse: add virtual folder for each target


---

Summary of changes:
 Modules/CMakeFindEclipseCDT4.cmake |   14 ++-
 Source/cmExtraEclipseCDT4Generator.cxx |  208 +++-
 Source/cmExtraEclipseCDT4Generator.h   |   10 ++-
 3 files changed, 197 insertions(+), 35 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, master, updated. v2.8.6-106-g7b555c0

2011-10-25 Thread David Cole
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  7b555c0295222be2cd70dd60b5c1b52a890f668c (commit)
   via  b2d6adf1266554de222fd438e9501c1eb67b429a (commit)
   via  3d5869ca3c065c872d6365164b301d2f8d7e2b64 (commit)
  from  bd216ef63a57ed7cc868885f8796e3eab9355a8d (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=7b555c0295222be2cd70dd60b5c1b52a890f668c
commit 7b555c0295222be2cd70dd60b5c1b52a890f668c
Merge: bd216ef b2d6adf
Author: David Cole david.c...@kitware.com
AuthorDate: Tue Oct 25 15:34:30 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 15:34:30 2011 -0400

Merge topic 'local-hooks'

b2d6adf pre-commit: Reject changes to KWSys through Git
3d5869c Add pre-commit|commit-msg|prepare-commit-msg hook placeholders


---

Summary of changes:
 .gitattributes |1 +
 DartConfig.cmake = .hooks-config.bash |   14 +++---
 DartConfig.cmake = Utilities/Git/commit-msg   |   19 +---
 Utilities/Git/pre-commit   |   47 
 .../Git/prepare-commit-msg |   10 ++--
 5 files changed, 72 insertions(+), 19 deletions(-)
 copy DartConfig.cmake = .hooks-config.bash (58%)
 copy DartConfig.cmake = Utilities/Git/commit-msg (63%)
 mode change 100644 = 100755
 create mode 100755 Utilities/Git/pre-commit
 copy Modules/FLTKCompatibility.cmake = Utilities/Git/prepare-commit-msg (70%)
 mode change 100644 = 100755


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, master, updated. v2.8.6-109-ga177099

2011-10-25 Thread David Cole
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  a17709974f371b43d7102f005d8243166060e356 (commit)
   via  6d79b50518d82a9bb116e527935d12498549fce9 (commit)
   via  74eb86c4a33140f71d9d248bb26ba0ff92fa0989 (commit)
  from  7b555c0295222be2cd70dd60b5c1b52a890f668c (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=a17709974f371b43d7102f005d8243166060e356
commit a17709974f371b43d7102f005d8243166060e356
Merge: 7b555c0 6d79b50
Author: David Cole david.c...@kitware.com
AuthorDate: Tue Oct 25 15:34:37 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 15:34:37 2011 -0400

Merge topic 'test-update-svn-1.7-issue-12535'

6d79b50 Teach CTest.UpdateSVN to detect svn add --depth before using it
74eb86c Fix CTest.UpdateSVN with Subversion 1.7 (#12535)


---

Summary of changes:
 Tests/CTestUpdateSVN.cmake.in |   12 +++-
 1 files changed, 11 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


[Cmake-commits] CMake branch, next, updated. v2.8.6-1699-g3ad0dff

2011-10-25 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  3ad0dfff40aefe84216190fefb66d9e7b0374343 (commit)
   via  ab2161aa0a0f79cee7a10abbe2b57cf28e9165d8 (commit)
  from  5370ef2e63ae5af94ca7727d3a597f23f579c928 (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=3ad0dfff40aefe84216190fefb66d9e7b0374343
commit 3ad0dfff40aefe84216190fefb66d9e7b0374343
Merge: 5370ef2 ab2161a
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Oct 25 16:42:19 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 16:42:19 2011 -0400

Merge topic 'revert-target_link_libraries' into next

ab2161a Normalize next with the new test-target_link_libraries branch.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ab2161aa0a0f79cee7a10abbe2b57cf28e9165d8
commit ab2161aa0a0f79cee7a10abbe2b57cf28e9165d8
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Oct 25 22:39:15 2011 +0200
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Tue Oct 25 22:39:15 2011 +0200

Normalize next with the new test-target_link_libraries branch.

This should allow merging the new version of the branch into next.

Do not merge this branch into master.

diff --git a/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt 
b/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt
index 3f61ebc..fdd53eb 100644
--- a/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt
@@ -184,7 +184,7 @@ endmacro()
 macro(EXPECT_FAIL)
   _do_build(${ARGN})
   if (${Result})
-message(SEND_ERROR Failed! \n\n${Out} -- ${COUNT})
+message(SEND_ERROR Failed! \n\n${Out})
   endif()
 endmacro()
 
diff --git a/Tests/CMakeCommands/target_link_libraries/libs/CMakeLists.txt 
b/Tests/CMakeCommands/target_link_libraries/libs/CMakeLists.txt
index e32d2cb..8bac943 100644
--- a/Tests/CMakeCommands/target_link_libraries/libs/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_link_libraries/libs/CMakeLists.txt
@@ -5,13 +5,6 @@ project(libs)
 include(CheckCXXCompilerFlag)
 include(GenerateExportHeader)
 
-check_cxx_compiler_flag(-Wl,--no-undefined HAS_NO_UNDEFINED)
-
-if (HAS_NO_UNDEFINED AND NOT APPLE)
-  # Disabled while figuring out why the check above gives a false positive.
-#   set(CMAKE_SHARED_LINKER_FLAGS -Wl,--no-undefined)
-endif()
-
 set(CMAKE_INCLUDE_CURRENT_DIR ON)
 set(CMAKE_VERBOSE_MAKEFILE ON)
 
diff --git a/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt 
b/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt
index 7b56727..77f5006 100644
--- a/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt
+++ b/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt
@@ -57,32 +57,6 @@ else()
   message(Unhandled Platform)
 endif()
 
-
-check_cxx_compiler_flag(-Wl,--no-undefined HAS_NO_UNDEFINED)
-
-message(HAS_NO_UNDEFINED: ${HAS_NO_UNDEFINED}\n\nCOMPILE OUTPUT:\n${OUTPUT})
-
-try_compile(HAS_NO_UNDEFINED_SHARED_LIB
-  ${CMAKE_CURRENT_BINARY_DIR}/shared_lib_build
-  ${CMAKE_CURRENT_SOURCE_DIR}/shared_lib
-  shared_lib
-  OUTPUT_VARIABLE Out
-)
-message(HAS_NO_UNDEFINED_SHARED_LIB: ${HAS_NO_UNDEFINED_SHARED_LIB}\n
-  \nCOMPILE OUTPUT:\n${Out}
-)
-
-try_compile(HAS_NO_UNDEFINED_STATIC_LIB
-  ${CMAKE_CURRENT_BINARY_DIR}/static_lib_build
-  ${CMAKE_CURRENT_SOURCE_DIR}/static_lib
-  static_lib
-  OUTPUT_VARIABLE Out
-)
-message(HAS_NO_UNDEFINED_STATIC_LIB: ${HAS_NO_UNDEFINED_STATIC_LIB}\n
-  \nCOMPILE OUTPUT:\n${Out}
-)
-
-
 #
 # This is a no-op executable... If this test is going to fail, it fails during
 # the configure step while cmake is configuring this CMakeLists.txt file...
diff --git a/Tests/Module/CheckCXXCompilerFlag/shared_lib/CMakeLists.txt 
b/Tests/Module/CheckCXXCompilerFlag/shared_lib/CMakeLists.txt
deleted file mode 100644
index 8c7190a..000
--- a/Tests/Module/CheckCXXCompilerFlag/shared_lib/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-cmake_minimum_required(VERSION 2.8)
-
-project(shared_lib)
-
-set(CMAKE_VERBOSE_MAKEFILE ON)
-
-file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/input.cpp
-  int doNothing() { return 0; }\n
-)
-
-set(CMAKE_SHARED_LINKER_FLAGS -Wl,--no-undefined)
-add_library(lib SHARED ${CMAKE_CURRENT_BINARY_DIR}/input.cpp)
diff --git a/Tests/Module/CheckCXXCompilerFlag/static_lib/CMakeLists.txt 
b/Tests/Module/CheckCXXCompilerFlag/static_lib/CMakeLists.txt
deleted file mode 100644
index 36c208d..000
--- a/Tests/Module/CheckCXXCompilerFlag/static_lib/CMakeLists.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-cmake_minimum_required(VERSION 2.8)
-
-project(static_lib)
-
-set(CMAKE_VERBOSE_MAKEFILE ON)
-
-file(WRITE 

[Cmake-commits] CMake branch, next, updated. v2.8.6-1702-gfdd49da

2011-10-25 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  fdd49dad034e99e44a3bd3ab35aa714704af27ff (commit)
   via  1e55661e64562fa95e02933294f954434ed6463a (commit)
   via  ef6c2add38cf1b26a259bfa955a607bfe98612c8 (commit)
  from  3ad0dfff40aefe84216190fefb66d9e7b0374343 (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=fdd49dad034e99e44a3bd3ab35aa714704af27ff
commit fdd49dad034e99e44a3bd3ab35aa714704af27ff
Merge: 3ad0dff 1e55661
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Oct 25 16:42:53 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 16:42:53 2011 -0400

Merge topic 'test-target_link_libraries' into next

1e55661 Fail softly instead of fatally.
ef6c2ad Add some unit tests for the target_link_libraries command


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1e55661e64562fa95e02933294f954434ed6463a
commit 1e55661e64562fa95e02933294f954434ed6463a
Author: Stephen Kelly steve...@gmail.com
AuthorDate: Tue Oct 25 22:17:33 2011 +0200
Commit: Stephen Kelly steve...@gmail.com
CommitDate: Tue Oct 25 22:21:13 2011 +0200

Fail softly instead of fatally.

On some platforms LINK_INTERFACE_LIBRARIES does not work.
Don't run the unit tests if so.

diff --git a/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt 
b/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt
index a6cf552..fdd53eb 100644
--- a/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_link_libraries/CMakeLists.txt
@@ -13,6 +13,17 @@ add_executable(
   ${CMAKE_CURRENT_BINARY_DIR}/main.cxx
 )
 
+try_compile(LINK_INTERFACE_LIBRARIES_FAILS
+  ${CMAKE_CURRENT_BINARY_DIR}/control_point
+  ${CMAKE_CURRENT_SOURCE_DIR}/control_point
+  control_point
+)
+
+if (LINK_INTERFACE_LIBRARIES_FAILS)
+  message(\n\n###\nTHIS PLATFORM DOES NOT SUPPORT 
LINK_INTERFACE_LIBRARIES\n\n)
+  return()
+endif()
+
 set(Bools True False)
 
 foreach(B1 ${Bools})
@@ -67,9 +78,10 @@ foreach(B1 ${Bools})
   OUTPUT_VARIABLE Out
 )
 if (NOT Result)
-  message(SEND_ERROR Could not build shared library
-  Libs CLEAR_LINK_INTERFACE_LIBRARIES: ${B1}
-  Libs SPECIFY_LINK_INTERFACE_LIBRARIES: ${B2}\n\n\n${Out})
+  message(Libs CLEAR_LINK_INTERFACE_LIBRARIES: ${B1}\n
+  Libs SPECIFY_LINK_INTERFACE_LIBRARIES: ${B2}\n\n\n${Out})
+  message(\n\n###\nTHIS PLATFORM DOES NOT SUPPORT 
LINK_INTERFACE_LIBRARIES\n\n)
+  return()
 endif()
   endforeach()
 endforeach()
diff --git 
a/Tests/CMakeCommands/target_link_libraries/control_point/CMakeLists.txt 
b/Tests/CMakeCommands/target_link_libraries/control_point/CMakeLists.txt
new file mode 100644
index 000..e41c3f1
--- /dev/null
+++ b/Tests/CMakeCommands/target_link_libraries/control_point/CMakeLists.txt
@@ -0,0 +1,24 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(src)
+
+include(CheckCXXCompilerFlag)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+set(CMAKE_VERBOSE_MAKEFILE ON)
+
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
+
+add_subdirectory(lib)
+
+include_directories(
+  ${CMAKE_CURRENT_SOURCE_DIR}/lib
+  ${CMAKE_CURRENT_BINARY_DIR}/lib
+)
+
+
+add_executable(exec
+  main.cpp
+)
+
+target_link_libraries(exec libB )
diff --git 
a/Tests/CMakeCommands/target_link_libraries/control_point/lib/CMakeLists.txt 
b/Tests/CMakeCommands/target_link_libraries/control_point/lib/CMakeLists.txt
new file mode 100644
index 000..c0d1353
--- /dev/null
+++ b/Tests/CMakeCommands/target_link_libraries/control_point/lib/CMakeLists.txt
@@ -0,0 +1,22 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(libs)
+
+include(CheckCXXCompilerFlag)
+include(GenerateExportHeader)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+set(CMAKE_VERBOSE_MAKEFILE ON)
+
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
+
+add_library(libA SHARED classA.cpp)
+add_library(libB SHARED classB.cpp)
+
+generate_export_header(libA)
+generate_export_header(libB)
+
+target_link_libraries(libB libA)
+
+target_link_libraries(libA LINK_INTERFACE_LIBRARIES )
+target_link_libraries(libB LINK_INTERFACE_LIBRARIES )
diff --git 
a/Tests/CMakeCommands/target_link_libraries/control_point/lib/classA.cpp 
b/Tests/CMakeCommands/target_link_libraries/control_point/lib/classA.cpp
new file mode 100644
index 000..f5e7106
--- /dev/null
+++ b/Tests/CMakeCommands/target_link_libraries/control_point/lib/classA.cpp
@@ -0,0 +1,7 @@
+
+#include classA.h
+
+classA::classA()
+{
+
+}
diff --git 

[Cmake-commits] CMake branch, next, updated. v2.8.6-1704-gf63f71c

2011-10-25 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  f63f71ca82216825eeea9127e683f5e211a93b18 (commit)
   via  fe6d9c1a448c511559967a6f8467c84d75d89e64 (commit)
  from  fdd49dad034e99e44a3bd3ab35aa714704af27ff (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=f63f71ca82216825eeea9127e683f5e211a93b18
commit f63f71ca82216825eeea9127e683f5e211a93b18
Merge: fdd49da fe6d9c1
Author: Alexander Neundorf neund...@kde.org
AuthorDate: Tue Oct 25 17:06:33 2011 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Oct 25 17:06:33 2011 -0400

Merge topic 'FindLibXsltImprovements' into next

fe6d9c1 FindLibXslt: also search libexslt and xsltproc


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fe6d9c1a448c511559967a6f8467c84d75d89e64
commit fe6d9c1a448c511559967a6f8467c84d75d89e64
Author: Alex Neundorf neund...@kde.org
AuthorDate: Tue Oct 25 23:03:17 2011 +0200
Commit: Alex Neundorf neund...@kde.org
CommitDate: Tue Oct 25 23:03:17 2011 +0200

FindLibXslt: also search libexslt and xsltproc

merging some changes FindLibXslt.cmake from KDE

Alex

diff --git a/Modules/FindLibXslt.cmake b/Modules/FindLibXslt.cmake
index 462835a..1f49c3b 100644
--- a/Modules/FindLibXslt.cmake
+++ b/Modules/FindLibXslt.cmake
@@ -5,6 +5,9 @@
 #  LIBXSLT_INCLUDE_DIR - the LibXslt include directory
 #  LIBXSLT_LIBRARIES - Link these to LibXslt
 #  LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt
+# Additionally, the following two variables are set (but not required for 
using xslt):
+#  LIBXSLT_EXSLT_LIBRARIES - Link to these if you need to link against the 
exslt library
+#  LIBXSLT_XSLTPROC_EXECUTABLE - Contains the full path to the xsltproc 
executable if found
 
 #=
 # Copyright 2006-2009 Kitware, Inc.
@@ -23,7 +26,7 @@
 # use pkg-config to get the directories and then use these values
 # in the FIND_PATH() and FIND_LIBRARY() calls
 FIND_PACKAGE(PkgConfig)
-PKG_CHECK_MODULES(PC_LIBXSLT libxslt)
+PKG_CHECK_MODULES(PC_LIBXSLT QUIET libxslt)
 SET(LIBXSLT_DEFINITIONS ${PC_LIBXSLT_CFLAGS_OTHER})
 
 FIND_PATH(LIBXSLT_INCLUDE_DIR NAMES libxslt/xslt.h
@@ -38,10 +41,22 @@ FIND_LIBRARY(LIBXSLT_LIBRARIES NAMES xslt libxslt
${PC_LIBXSLT_LIBRARY_DIRS}
   )
 
-# handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if 
+FIND_LIBRARY(LIBXSLT_EXSLT_LIBRARY NAMES exslt libexslt
+HINTS
+${PC_LIBXSLT_LIBDIR}
+${PC_LIBXSLT_LIBRARY_DIRS}
+  )
+
+SET(LIBXSLT_EXSLT_LIBRARIES ${LIBXSLT_EXSLT_LIBRARY} )
+
+FIND_PROGRAM(LIBXSLT_XSLTPROC_EXECUTABLE xsltproc)
+
+# handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE if
 # all listed variables are TRUE
 INCLUDE(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
 FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXslt DEFAULT_MSG LIBXSLT_LIBRARIES 
LIBXSLT_INCLUDE_DIR)
 
-MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES)
-
+MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR
+ LIBXSLT_LIBRARIES
+ LIBXSLT_EXSLT_LIBRARY
+ LIBXSLT_XSLTPROC_EXECUTABLE)

---

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


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