Re: [CMake] New version of "Mastering CMake"

2009-12-01 Thread Romain CHANU
Hi Steve,

Please check out this link: http://www.kitware.com/products/books.html

The new version is planned for Early 2010. I have also contacted the sales
for pre-order information but so far, I got no reply :-\

Cheers,

Romain Chanu

2009/12/2 Steven Wilson 

> I read in a past post that Kitware (or the authors) has another edition
> planned for the book "Mastering CMake."   I plan to recommend this text to
> people in my company for learning CMake, but I wanted to know how soon to
> expect the new edition in order to best advise people on which edition to
> purchase.   Is there a timetable for releasing the new edition?   If so,
> will you share when we can expect it?
>
> 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://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

[CMake] [PATCH] Fixed some typos

2009-12-01 Thread Richard Hartmann
Hi all,

please see the attached patch. I did _not_ fix typos in changelogs. If
you guys think that is a worthwhile thing to do look for

  explicitely
  seperate
  superceded


Thanks,
Richard
? typos.diff
Index: Modules/CPackRPM.cmake
===
RCS file: /cvsroot/CMake/CMake/Modules/CPackRPM.cmake,v
retrieving revision 1.21
diff -u -r1.21 CPackRPM.cmake
--- Modules/CPackRPM.cmake	28 Nov 2009 14:57:59 -	1.21
+++ Modules/CPackRPM.cmake	2 Dec 2009 01:00:27 -
@@ -252,7 +252,7 @@
 
 # CPACK_RPM_PACKAGE_DESCRIPTION
 # The variable content may be either
-#   - explicitely given by tthe user or
+#   - explicitly given by tthe user or
 #   - filled with the content of CPACK_PACKAGE_DESCRIPTION_FILE
 # if it is defined
 #   - set to a default value
Index: Source/cmCTest.cxx
===
RCS file: /cvsroot/CMake/CMake/Source/cmCTest.cxx,v
retrieving revision 1.380
diff -u -r1.380 cmCTest.cxx
--- Source/cmCTest.cxx	30 Nov 2009 21:08:11 -	1.380
+++ Source/cmCTest.cxx	2 Dec 2009 01:00:32 -
@@ -1941,7 +1941,7 @@
   i++;
   std::string targ = args[i];
   // AddTestsForDashboard parses the dashborad type and converts it
-  // into the seperate stages
+  // into the separate stages
   if (!this->AddTestsForDashboardType(targ))
 {
 performSomeTest = false;
Index: Source/cmIncludeDirectoryCommand.cxx
===
RCS file: /cvsroot/CMake/CMake/Source/cmIncludeDirectoryCommand.cxx,v
retrieving revision 1.32
diff -u -r1.32 cmIncludeDirectoryCommand.cxx
--- Source/cmIncludeDirectoryCommand.cxx	28 Sep 2009 15:42:45 -	1.32
+++ Source/cmIncludeDirectoryCommand.cxx	2 Dec 2009 01:00:33 -
@@ -63,7 +63,7 @@
 // "   /foo/bar
 ///boo/hoo /dingle/berry "
 //
-// ideally that should be three seperate arguments but when sucking the
+// ideally that should be three separate arguments but when sucking the
 // output from a program and passing it into a command the cleanup doesn't
 // always happen
 //
Index: Source/cmInstallFilesCommand.h
===
RCS file: /cvsroot/CMake/CMake/Source/cmInstallFilesCommand.h,v
retrieving revision 1.25
diff -u -r1.25 cmInstallFilesCommand.h
--- Source/cmInstallFilesCommand.h	28 Sep 2009 15:42:46 -	1.25
+++ Source/cmInstallFilesCommand.h	2 Dec 2009 01:00:33 -
@@ -66,7 +66,7 @@
   virtual const char* GetFullDocumentation()
 {
 return
-  "This command has been superceded by the install command.  It "
+  "This command has been superseded by the install command.  It "
   "is provided for compatibility with older CMake code.  "
   "The FILES form is directly replaced by the FILES form of the "
   "install command.  The regexp form can be expressed "
Index: Source/cmInstallProgramsCommand.h
===
RCS file: /cvsroot/CMake/CMake/Source/cmInstallProgramsCommand.h,v
retrieving revision 1.22
diff -u -r1.22 cmInstallProgramsCommand.h
--- Source/cmInstallProgramsCommand.h	28 Sep 2009 15:42:46 -	1.22
+++ Source/cmInstallProgramsCommand.h	2 Dec 2009 01:00:33 -
@@ -67,7 +67,7 @@
   virtual const char* GetFullDocumentation()
 {
 return
-  "This command has been superceded by the install command.  It "
+  "This command has been superseded by the install command.  It "
   "is provided for compatibility with older CMake code.  "
   "The FILES form is directly replaced by the PROGRAMS form of the "
   "INSTALL command.  The regexp form can be expressed more clearly "
Index: Source/cmInstallTargetsCommand.h
===
RCS file: /cvsroot/CMake/CMake/Source/cmInstallTargetsCommand.h,v
retrieving revision 1.17
diff -u -r1.17 cmInstallTargetsCommand.h
--- Source/cmInstallTargetsCommand.h	28 Sep 2009 15:42:47 -	1.17
+++ Source/cmInstallTargetsCommand.h	2 Dec 2009 01:00:33 -
@@ -58,7 +58,7 @@
   virtual const char* GetFullDocumentation()
 {
 return
-  "This command has been superceded by the install command.  It "
+  "This command has been superseded by the install command.  It "
   "is provided for compatibility with older CMake code.\n"
   "  install_targets( [RUNTIME_DIRECTORY dir] target target)\n"
   "Create rules to install the listed targets into the given directory.  "
Index: Source/cmLocalGenerator.cxx
===
RCS file: /cvsroot/CMake/CMake/Source/cmLocalGenerator.cxx,v
retrieving revision 1.322
diff -u -r1.322 cmLocalGenerator.cxx
--- Source/cmLocalGenerator.cxx	30 Nov 2009 16:16:24 -	1.322
+++ Source/cmLocalGenerator.cxx	2 Dec 2009 01:00:38 -
@@ -3034,7 +3034,7 @@
   if(define.find_first_of("#") != define.npos)
 {
 cmOStringStream e;
-

Re: [CMake] Removing default COMPILE_FLAGS

2009-12-01 Thread Daniel Nelson
> > I believe CMAKE_CXX_FLAGS is consulted each time an add_library() or
> > add_executable() call is processed. So you should be able to remove the
> > flag, add the singleton library/executable, and put the flag back.
> > 
> > tyler
> 
> This is the first thing I tried, however it doesn't seem to work.  
> I seems they are written to the flags.make files at the end, 
> with whatever the final value of CMAKE_CXX_FLAGS is.
> --
> Daniel  

Actually, I think it uses whatever the final value of CMAKE_CXX_FLAGS is within
the CMakeLists.txt file.  Since I was setting the variable back to its original
value in the same file with the target, the change was being undone, even
though I was setting it back after adding the target.  If I just leave the
value changed and let the normal scoping rules undo the change, it works
perfectly.

Now that I think about it, this seems like the same way that
include_directories() works.
--
Daniel

___
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] Removing default COMPILE_FLAGS

2009-12-01 Thread Daniel Nelson
> I believe CMAKE_CXX_FLAGS is consulted each time an add_library() or
> add_executable() call is processed. So you should be able to remove the
> flag, add the singleton library/executable, and put the flag back.
> 
> tyler

This is the first thing I tried, however it doesn't seem to work.  
I seems they are written to the flags.make files at the end, 
with whatever the final value of CMAKE_CXX_FLAGS is.
--
Daniel  





___
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] Removing default COMPILE_FLAGS

2009-12-01 Thread Tyler Roscoe
On Tue, Dec 01, 2009 at 10:10:05PM +, Daniel Nelson wrote:
> flag.  Is it possible to remove a flag from the default CMAKE_CXX_FLAGS 
> variable
> only for this target?  Or do I have to remove the flag from the default flags

I believe CMAKE_CXX_FLAGS is consulted each time an add_library() or
add_executable() call is processed. So you should be able to remove the
flag, add the singleton library/executable, and put the flag back.

tyler
___
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] parallel builds (ctest_build() ) for dashboards ?

2009-12-01 Thread Sean McBride
On 12/1/09 12:30 PM, Bill Hoffman said:

>> Is that better/worse/equivalent to David's suggestion of:
>> 
>> set(CTEST_BUILD_FLAGS -j4)  ?
>> 
>
>Worse most likely. :)
>
>Both should work.

Thanks.  If our dashboards are all red tomorrow, you'll know why. :)

-- 

Sean McBride, B. Eng s...@rogue-research.com
Rogue Researchwww.rogue-research.com 
Mac Software Developer  Montréal, Québec, Canada


___
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] Removing default COMPILE_FLAGS

2009-12-01 Thread Daniel Nelson
I am building a project that has a single managed c++ target, and I need to
remove a compile flag for only this one target, since it conflicts with the -clr
flag.  Is it possible to remove a flag from the default CMAKE_CXX_FLAGS variable
only for this target?  Or do I have to remove the flag from the default flags
and add it in for every target except this one?

___
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] Intel Compiler with OSX 10.6

2009-12-01 Thread Michael Jackson
I think I wrote part of that file. Didn't realize I was putting any OS  
X 10.4 specific items in there. Any ways, I don't have access to ICC  
anymore so you will probably have to experiment with some settings and  
then update the darwin-icc.cmake files. Sorry I can not be of any more  
help.


_
Mike Jackson  mike.jack...@bluequartz.net
BlueQuartz Softwarewww.bluequartz.net
Principal Software Engineer  Dayton, Ohio

On Dec 1, 2009, at 3:46 PM, Bradley Lowekamp wrote:


Hello,

It appear the following file is out of date:

CMake/Modules/Platform/Darwin-icc.cmake


I have just starting using the Intel Compiler on my apple. It appear  
that this file is very 10.4 specific, in that it does not set a lot  
of variable unless we are running 10.4. Specifically I noticed that  
I am not getting any optimization or debug compiler flags.


I built a quick experimental build, which makes me think that things  
are functioning:


http://www.cdash.org/CDash/buildSummary.php?buildid=483919

I am not familiar with these platform configuration files, nor the  
details of the differences of OS X compilers as I have always just  
let cmake handle it :)

Any help would be appreciated.

Brad


Bradley Lowekamp
Lockheed Martin Contractor for
Office of High Performance Computing and Communications
National Library of Medicine
blowek...@mail.nih.gov

___
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] cmake 2.8.0, FindGTK2 on mac

2009-12-01 Thread Aleksander Demko
That doesn't seem to help. But yeah, it seems the find_path returns
the extra gtk... if I message() the contents of GTK2_GTK_INCLUDE_DIR I
get /Library/Frameworks/Gtk.framework/Headers/gtk

While gtkversion's full name is
/Library/Frameworks/Gtk.framework/Headers/gtk/gtkversion.h

Maybe some kind of if(APPLE) then apple "../" to alot of these paths
are in order. I'm not sure what approach to take that would require
the least amount of hacking.

I think find_path is probably trying to be compatible with the mac
style of framework installs, which may put a part of the include
(gtk/) as part of the base framework name (Gtk.framework). This is a
pure guess though, but man gcc under the -F switch has some info on
this.

On Tue, Dec 1, 2009 at 2:19 PM, Philip Lowman  wrote:
> Hi, I wrote FindGTK2.
>
> You might try removing the "gtk/" from line 350?  Line 345 where the include
> path is searched for may also need to be modified...
>
> I don't have a MAC so if anyone has any better ideas, help would be
> appreciated.
>
> On Dec 1, 2009 1:27 PM, "Aleksander Demko"  wrote:
>
> I can't seem to get FindGTK2 working under a Mac. I've installed the
> latest shipping library for mac from gtk.org, and even with a
> CMakeLists.txt file that has nothing but "FIND_PACKAGE(GTK2)", I get
> the following errors:
>
>
> CMake Error at /Applications/CMake
> 2.8-0.app/Contents/share/cmake-2.8/Modules/FindGTK2.cmake:93 (file):
>  file Internal CMake error when trying to open file:
>  /Library/Frameworks/Gtk.framework/Headers/gtk/gtk/gtkversion.h for reading.
> Call Stack (most recent call first):
>  /Applications/CMake
> 2.8-0.app/Contents/share/cmake-2.8/Modules/FindGTK2.cmake:467
> (_GTK2_GET_VERSION)
>  CMakeLists.txt:2 (FIND_PACKAGE)
>
>
> -- Some or all of the gtk libraries were not found.  (missing:
> GTK2_GTK_LIBRARY GTK2_GLIB_LIBRARY GTK2_GDK_LIBRARY)
>
> There seems to be one extra gtk/ in the above path. I'm new to mac
> development, but it seems there are some interesting path
> manipulations that are done when searching for header files in
> framework directories. I'm just not sure how to go about fixing this.
>
> Any ideas would be super.
>
> Thanks!
> ___
> 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

[CMake] Intel Compiler with OSX 10.6

2009-12-01 Thread Bradley Lowekamp
Hello,

It appear the following file is out of date:

CMake/Modules/Platform/Darwin-icc.cmake


I have just starting using the Intel Compiler on my apple. It appear that this 
file is very 10.4 specific, in that it does not set a lot of variable unless we 
are running 10.4. Specifically I noticed that I am not getting any optimization 
or debug compiler flags.

I built a quick experimental build, which makes me think that things are 
functioning:

http://www.cdash.org/CDash/buildSummary.php?buildid=483919

I am not familiar with these platform configuration files, nor the details of 
the differences of OS X compilers as I have always just let cmake handle it :)
Any help would be appreciated.

Brad


Bradley Lowekamp  
Lockheed Martin Contractor for
Office of High Performance Computing and Communications
National Library of Medicine 
blowek...@mail.nih.gov

___
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 2.8.0, FindGTK2 on mac

2009-12-01 Thread Philip Lowman
Hi, I wrote FindGTK2.

You might try removing the "gtk/" from line 350?  Line 345 where the include
path is searched for may also need to be modified...

I don't have a MAC so if anyone has any better ideas, help would be
appreciated.

On Dec 1, 2009 1:27 PM, "Aleksander Demko"  wrote:

I can't seem to get FindGTK2 working under a Mac. I've installed the
latest shipping library for mac from gtk.org, and even with a
CMakeLists.txt file that has nothing but "FIND_PACKAGE(GTK2)", I get
the following errors:


CMake Error at /Applications/CMake
2.8-0.app/Contents/share/cmake-2.8/Modules/FindGTK2.cmake:93 (file):
 file Internal CMake error when trying to open file:
 /Library/Frameworks/Gtk.framework/Headers/gtk/gtk/gtkversion.h for reading.
Call Stack (most recent call first):
 /Applications/CMake
2.8-0.app/Contents/share/cmake-2.8/Modules/FindGTK2.cmake:467
(_GTK2_GET_VERSION)
 CMakeLists.txt:2 (FIND_PACKAGE)


-- Some or all of the gtk libraries were not found.  (missing:
GTK2_GTK_LIBRARY GTK2_GLIB_LIBRARY GTK2_GDK_LIBRARY)

There seems to be one extra gtk/ in the above path. I'm new to mac
development, but it seems there are some interesting path
manipulations that are done when searching for header files in
framework directories. I'm just not sure how to go about fixing this.

Any ideas would be super.

Thanks!
___
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] pgf90 error

2009-12-01 Thread Brad King
Brad King wrote:
> John Vines (CISD/CIV) wrote:
>>   pgf90-Error-Unknown switch: -rdynamic
> 
> Due to some historic cruft this compiler is not supported on Linux right now.
> In "Modules/Platform/Linux.cmake" comment out the line
> 
>   SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "-rdynamic")
> 
> This is on our TODO list for 2.8.x but we didn't want to mess with the
> widely used Linux.cmake platform file just before the 2.8.0 release.

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

-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] cmake 2.8.0, FindGTK2 on mac

2009-12-01 Thread Aleksander Demko
I can't seem to get FindGTK2 working under a Mac. I've installed the
latest shipping library for mac from gtk.org, and even with a
CMakeLists.txt file that has nothing but "FIND_PACKAGE(GTK2)", I get
the following errors:


CMake Error at /Applications/CMake
2.8-0.app/Contents/share/cmake-2.8/Modules/FindGTK2.cmake:93 (file):
  file Internal CMake error when trying to open file:
  /Library/Frameworks/Gtk.framework/Headers/gtk/gtk/gtkversion.h for reading.
Call Stack (most recent call first):
  /Applications/CMake
2.8-0.app/Contents/share/cmake-2.8/Modules/FindGTK2.cmake:467
(_GTK2_GET_VERSION)
  CMakeLists.txt:2 (FIND_PACKAGE)


-- Some or all of the gtk libraries were not found.  (missing:
GTK2_GTK_LIBRARY GTK2_GLIB_LIBRARY GTK2_GDK_LIBRARY)

There seems to be one extra gtk/ in the above path. I'm new to mac
development, but it seems there are some interesting path
manipulations that are done when searching for header files in
framework directories. I'm just not sure how to go about fixing this.

Any ideas would be super.

Thanks!
___
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] parallel builds (ctest_build() ) for dashboards ?

2009-12-01 Thread Bill Hoffman

Sean McBride wrote:

On 11/30/09 3:52 PM, Bill Hoffman said:


David Cole wrote:

In the script, prior to the ctest_build call, do:
set(CTEST_BUILD_FLAGS -j4)

(only works with make that supports -j, obviously...)


We often do this in our scripts:

set(CTEST_BUILD_COMMAND "make -j4 -i")
MAKECOMMAND:STRING=/usr/bin/make -i -j4


Is that better/worse/equivalent to David's suggestion of:

set(CTEST_BUILD_FLAGS -j4)  ?



Worse most likely. :)

Both should work.

-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


[CMake] New version of "Mastering CMake"

2009-12-01 Thread Steven Wilson
I read in a past post that Kitware (or the authors) has another edition
planned for the book "Mastering CMake."   I plan to recommend this text to
people in my company for learning CMake, but I wanted to know how soon to
expect the new edition in order to best advise people on which edition to
purchase.   Is there a timetable for releasing the new edition?   If so,
will you share when we can expect it?

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

Re: [CMake] non-set-able variables

2009-12-01 Thread Voisard, Shane S CIV NSWCDD, K54
I did not thoroughly test the CMAKE_CONFIGURATION_TYPES problem that I 
previously reported. I must have confused this problem with a similar problem 
that I encountered when I tried (and failed) to set CMAKE_BINARY_DIR when 
running the command-line cmake.
 
I re-tested this problem and found that cmake is functioning properly.  Thank 
you for your suggestions.
 
Shane
___
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] Is there a way to omit relative path from the name of the comilation output file ()?

2009-12-01 Thread Alexander Tarnopolsky
Such a long path imposes several constrains/inconveniences:

1) It limits number of objects that could be passed to link command to
~1300 (which is OK with us for now).

2) It substantially increases the size and readability of the build log
files. (hence makes it difficult to debug build problems)

3) We use build procedures that glob for object files (for example in
order to clean orphan objects that are no longer listed in
CMakeLists.txt). We'll have to use more complex logic in those
procedures.

Kind Regards,
Alex Tarnopolsky

-Original Message-
From: Michael Wild [mailto:them...@gmail.com] 
Sent: Monday, November 30, 2009 10:50 PM
To: Alexander Tarnopolsky
Cc: CMake List
Subject: Re: [CMake] Is there a way to omit relative path from the name
of the comilation output file ()?

Is it only the messages printed to the screen that you're concerned  
with?

Michael


On 30. Nov, 2009, at 18:39 , Alexander Tarnopolsky wrote:

> Thanks for prompt response!
>
> The real reason for inclusion of those "external" sources is the  
> size of
> our projects.
>
> We have read-only "shared/public" workarea were all the sources  
> reside.
> The developer checks-out only the files that should be modified during
> his current task (his source files are complemented with "public"  
> files
> during the build).
>
> We try to avoid copying/duplication of a large number of files to
> developer's workarea (which takes time/bandwidth, requires frequent
> updates and raises chances for inconsistency).
>
> With the same rational we'd like to avoid copying of sources to
> ${CMAKE_BINARY_DIR}.
>
> Kind Regards,
> Alex Tarnopolsky
>
>
> -Original Message-
> From: Michael Wild [mailto:them...@gmail.com]
> Sent: Monday, November 30, 2009 6:47 PM
> To: Alexander Tarnopolsky
> Cc: CMake List
> Subject: Re: [CMake] Is there a way to omit relative path from the  
> name
> of the comilation output file ()?
>
> Apart from me not liking this setup (those external sources should
> probably be a separate project and be compiled as a library which then
> is imported) you could use
> CONFIGURE_FILE(/long/path/to/file ${CMAKE_BINARY_DIR}/file COPYONLY)
> and then pass ${CMAKE_BINARY_DIR}/file to the add_executable/
> add_library calls. You could also wrap the latter commands in custom
> macros/functions to scan a list of source files for out-of-source
> sources and the automatically copy them to the build tree.
>
> Michael
>
> On 30. Nov, 2009, at 16:53 , Alexander Tarnopolsky wrote:
>
>> Dear CMake users list,
>>
>> In our build system we have to compile source files that reside out  
>> of
>> source/build tree. In some cases there are several hundreds of such
>> "external" sources in a project.
>>
>> Consider simplified CMakeLists.txt:
>> ===
>> Project (system)
>>
>> set(SOURCES
>> /users/gdadmin/PG41/project/src/library/system/AttachDebugger.cc
>> /users/gdadmin/PG41/project/src/library/system/CPUInfo.cc
>> DSOInfo.cc
>> DSOManip.cc
>> HelpControl.cc
>> LocateExe.cc
>> MksTemp.cc
>> PathManip.cc
>> PluginLoader.cc
>> ProcessAffinity.cc
>> RTTI.cc
>> Setenv.cc
>> ShellUtils.cc
>> Sleep.cc
>> SysTime.cc
>> TraceStack.cc
>> UserInfo.cc
>> VTControl.cc
>> Asm/CPUID_c.cc
>> )
>>
>> add_library (system SHARED ${SOURCES})
>> ===
>>
>> The compilation of the first source produces the following output
>> file:
>> "CMakeFiles/system.dir/users/gdadmin/PG41/project/src/library/system/
>> Att
>> achDebugger.cc.o"
>>
>> Imagine a link command where several hundreds of object files are
>> listed
>> with this relative path...
>>
>> Thus we are looking for a way to shorten the path. Ideally - we'd  
>> like
>> to generate compiled objects under the same flat-directory
>> regardless of
>> the source file location.
>>
>> I understand that ""CMakeFiles/system.dir" part of the relative path
>> to
>> object files cannot be changed - I hope we can handle this.
>>
>> But is there a way to change
>> "/users/gdadmin/PG41/project/src/library/system" part?
>>
>> I experimented with CMAKE_CXX_COMPILE_OBJECT rule-variable and tried
>> to
>> replace the  with something else, but apparently the
>> rule-command is invoked always when  file is missing,  
>> probably
>> the dependency between  and  drives the rule-command.
>>
>> Of course there is a possibility to compile objects by a custom
>> command
>> and to manage object's dependencies by a script etc.. However we  
>> don't
>> like to give up on cmake built-in rules for compilation and  
>> dependency
>> tracking.
>>
>> Thanks in advance for your help,
>> Kind Regards,
>> Alex Tarnopolsky
>>
>

> ---
>> This e-mail, including any attached files, may contain confidential
>> and privileged information for the sole use of the intended
>> recipient. Any review, use, distribution, or disclosure by others is
>> strictly prohibited. If