[CMake] Visual Studio, Solutions and dependant projects
Hi, I want to reanimate discussions about (Visual Studio) support for the following sourcecode layout: Toplevel | -CMakeLists.txt (sets all common stuff) -apps -CMakeLists.txt (adds only the different apps with add_subdirectory(...)) | - App1 - CMakeLists.txt (project(app1), add_executable(app1 ...), target_link_libraries(app1lib1) | - App2 - CMakeLists.txt (project(app2), add_executable(app2 ...), target_link_libraries(app1lib1 lib2) | -libs -CMakeLists.txt (adds only the different libs with add_subdirectory(...)) | - lib1 - CMakeLists.txt (project(lib1), ...) | - lib2 - CMakeLists.txt I think the behaviour with Visual-Studio and Makefiles differs for those projects. If I cd into $(BUILDDIR)/apps/app1, and do make, the libraries (lib1 in this case) is build before the app. In Visual Studio, that lib isn't build, and its .vcproj file isn't included in the solution for app1. I know it is possible to open the toplevel solution and then everything is build fine, but for a project tree where there are many targets the toplevel solution becomes easily cluttered and it would be nicer to directly use the solution from the target one wants to build (e.g. app1). There were already several discussions about this topic on this list (http://tinyurl.com/2s3e69 , http://tinyurl.com/3c29em) and there is a bugreport with an attached patch from Manuel Klimek (http://preview.tinyurl.com/3bg4za). But actually I could not read the opinion from CMake-developers about this issue. Will the patch be included? Are there problems one should now? Thanks in advance, Stephan ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] CPack
Hello List, I want to use the CPACK generator, but the tutorial http://www.cmake.org/Wiki/CMake:Packaging_With_CPack is not quite good. Perhaps somebody knows a better site. When I run make with make package, then I get following error: CPack Error: Cannot find a sutable ZIP program <- an I is missing in suitable ;) CPack Error: Cannot initialize the generator In my cmake file, I use following commands: IF(WIN32) SET(CPACK_GENERATOR ZIP) SET(CPACK_SOURCE_GENERATOR ZIP) ELSE(WIN32) SET(CPACK_GENERATOR TGZ) SET(CPACK_SOURCE_GENERATOR TGZ) ENDIF(WIN32) INCLUDE(CPack) But on the other side I do have 7zip installed. 7zip is working because I unpack some files during my build process. So does the current release 2.4.7 support 7zip? If not so then you should add this info to http://www.cmake.org/Wiki/CMake:CPackPackageGenerators. Thanks for your help. Greetings Alexander Please note: This e-mail may contain confidential information intended solely for the addressee. If you have received this e-mail in error, please do not disclose it to anyone, notify the sender promptly, and delete the message from your system. Thank you. ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CPack
2007/9/17, [EMAIL PROTECTED] <[EMAIL PROTECTED]>: > Hello List, > > I want to use the CPACK generator, but the tutorial > http://www.cmake.org/Wiki/CMake:Packaging_With_CPack is not quite good. > Perhaps somebody knows a better site. > > When I run make with make package, then I get following error: > CPack Error: Cannot find a sutable ZIP program <- an I is missing in suitable > ;) > CPack Error: Cannot initialize the generator > > In my cmake file, I use following commands: > IF(WIN32) > SET(CPACK_GENERATOR ZIP) > SET(CPACK_SOURCE_GENERATOR ZIP) > ELSE(WIN32) > SET(CPACK_GENERATOR TGZ) > SET(CPACK_SOURCE_GENERATOR TGZ) > ENDIF(WIN32) > INCLUDE(CPack) > > But on the other side I do have 7zip installed. 7zip is working because I > unpack some files during my build process. > So does the current release 2.4.7 support 7zip? I think this is a know (already reported) bug which has been fixed in the CVS version of CMake: see http://public.kitware.com/pipermail/cmake/2007-June/014735.html However, I did not find a corresponding bug entry in the tracker. > If not so then you should add this info to > http://www.cmake.org/Wiki/CMake:CPackPackageGenerators. This is a Wiki so you may (after checking like you did) modifiy the page yourself. Since you are on windows you may want to try a nightly build of CMake CVS version: http://www.cmake.org/files/vCVS/ It should properly handle 7zip (I think I already used it). (However THIS IS NOT a CMake VERSION just a development snapshot). -- Erk ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CPack
2007/9/17, [EMAIL PROTECTED] <[EMAIL PROTECTED]>: > Hi Eric, > > Thanks for your reply. > > > Since you are on windows you may want to try a nightly build > > of CMake CVS version: > > > > http://www.cmake.org/files/vCVS/ > > > > It should properly handle 7zip (I think I already used it). > > (However THIS IS NOT a CMake VERSION just a development snapshot). > > So this is planed to be in the next released version of Cmake? I cannot answer this. I am a simple CMake "watcher/contributor" CMake maintainer may answer to this question. PS: don't forget to CC the list. -- Erk ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CPack
Zitat von [EMAIL PROTECTED]: I want to use the CPACK generator, but the tutorial http://www.cmake.org/Wiki/CMake:Packaging_With_CPack is not quite good. Perhaps somebody knows a better site. When I run make with make package, then I get following error: CPack Error: Cannot find a sutable ZIP program <- an I is missing in suitable ;) CPack Error: Cannot initialize the generator CMake-2.4.7 wants either WinZip or Info-Zip[1]. Since the latter is free, I use that. You get some command line programs that CMake uses just fine :) HS [1]: ftp://ftp.info-zip.org/pub/infozip/WIN32/zip232xn.zip ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
RE: [CMake] CPack
Hendrik Sattler <> wrote: > Zitat von [EMAIL PROTECTED]: >> I want to use the CPACK generator, but the tutorial >> http://www.cmake.org/Wiki/CMake:Packaging_With_CPack is not quite >> good. Perhaps somebody knows a better site. >> >> When I run make with make package, then I get following error: >> CPack Error: Cannot find a sutable ZIP program <- an I is missing in >> suitable ;) CPack Error: Cannot initialize the generator > > CMake-2.4.7 wants either WinZip or Info-Zip[1]. Since the latter is > free, I use that. What is not immediately obvious is that 2.4.7 *requires* zip.exe to reside in c:/cygwin/bin. (Bad luck if you do not have a C: drive). -Torsten This e-mail and any files sent with it contain information that may be privileged or confidential and is the property of the GateHouse Group. This information is intended solely for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use the message or any part thereof. If you have received this e-mail in error, please notify the sender immediately, and delete all copies of this message. In accordance with GateHouse Security Policy, e-mails sent or received may be monitored. ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CPack
On Monday 17 September 2007 09:04, Eric Noulard wrote: > 2007/9/17, [EMAIL PROTECTED] <[EMAIL PROTECTED]>: > > Hi Eric, > > > > Thanks for your reply. > > > > > Since you are on windows you may want to try a nightly build > > > of CMake CVS version: > > > > > > http://www.cmake.org/files/vCVS/ > > > > > > It should properly handle 7zip (I think I already used it). > > > (However THIS IS NOT a CMake VERSION just a development snapshot). > > > > So this is planed to be in the next released version of Cmake? Basically everything which is now in cmake cvs will be in cmake 2.6.0, including all the cpack enhancements. Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Re: -G KDevelop3 and Fortran
On Sunday 02 September 2007 09:03, Alin M Elena wrote: > Hi Alex and Andreas, > > Thank you for you help. I have checked the cvs version. > It seems to work. I tested on a hello project and on a more complex one. > > There are few things that I have observed > > 1. this looks strange to me > > > > > > 2. ??? Do the two points above give you any problems in kdevelop or are they just "looking strange" if you inspect the project file directly ? > 3. It is necessary to call the project Fortran77? Can you call it just > Fortran? I took this from a kdevelop-generated project, I guess it must be called this way. Andreas ? > 4. *.o,*.lo,CVS,*~,cmake* Can you add svn? Isn't this ".svn", which means it should already be hidden ? > 5. to the fortran list of extension .fpp, .FOR, .FTN, .FPP, .ftn should > be added The extensions used in the project file are the extensions listed in Modules/CMakeFortranCompiler.cmake.in. I guess cmake doesn't handle fortran files with the listed extensions. These are also generic fortran source file extensions or are they something special ? > 6. I would not worry to much about ftnchek (the project seems to be > slightly out of date 2004 last version). Today fortran compilers provide > you a way to tell about programming warning. Ok. Bye Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] FLTK_WRAP_UI CMake problem
On Wednesday 12 September 2007 10:35, Romain Garrigues wrote: > Hello all ! > > I have an unexpected problem with CMake (v 2.4.2) command "FLTK_WRAP_UI". > In fact, when I configure CMake for my project, i have this message : Does it also happen with CMake 2.4.7 ? You should use at least 2.4.3, 2.4.2 was a beta version and I think it had some problems. Bye Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CMake and RPM documentation update
On Friday 07 September 2007 05:31, Eric Noulard wrote: > Hi all, > > I've just updated documentation regarding CMake > and forthcoming CPack RPM generator. Thanks :-) If you find the time you could also add which command line tools it requires, which variables are required to be set and which RPM specific variables it supports. > There is still work to be done but the generator > is functional for binary RPM. > > http://www.cmake.org/Wiki/CMake:CPackPackageGenerators#RPM_.28Unix_Only.29 > > I have added some explanation on the differences > between UseRPMTools and CPack RPM generator > > http://www.cmake.org/Wiki/CMakeUserUseRPMTools#CPack_Built-in_RPM_support_d >esign_issues > > It deserve a feature request. > I'll post one soon. > I did want to put the information there for public access since > until now it was only provided as private e-mail. > > I lack time to go on this for the moment so I would > rather put it public if anyone is wanting to go on before I found more > time. Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
RE: [CMake] CPack
> > What is not immediately obvious is that 2.4.7 *requires* zip.exe to > reside in c:/cygwin/bin. > > (Bad luck if you do not have a C: drive). > > -Torsten Ooh I don't like that, is it planend to change in near future versions? I always try to leave the C: for Microsoft stuff to reside without interference from things like Cygwin , it seems best that way. So on virtually any Windows machine I've been using, the cygwin is on either D: or F: What about using the info-zip native WIN32 binaries? Do they need to be in that location to be found by the utility? ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] cmake 2.5 with windows mobile
Hi Artur, On Saturday 01 September 2007 06:16, Artur Wisz wrote: > Alexander Neundorf wrote: > > Why is this failing ? > > It only tries to build an executable, it doesn't run it. > > > > Is the compiler called cl.exe or clarm.exe ? > > > > You need to setup a "toolchain file" as described here: > > http://www.cmake.org/Wiki/CMake_Cross_Compiling > > > > It should contain > > SET(CMAKE_SYSTEM_NAME Windows) > > SET(CMAKE_C_COMPILER ...) > > SET(CMAKE_CXX_COMPILER ...) > > > > This should be enough to get you over the first steps so a hello world > > can be built. > > > > Windows-cl.cmake assumes that cl is the native compiler and so can be > > only x86 32bit or x86 64bit. > > Either this file has to be modified or a new platform "WindowsMobile" is > > required. Is Windows Mobile a slimmed down version of XP or is it based > > on Win CE ? > > > > Bye > > Alex > > The compiler is cl.exe, so the same name as the native compiler. > Windows Mobile is a new version of the Windows CE. WindowsMobile would > be a good name for the target platform. If it's a version of Win CE I'd suggest "WinCE" as name for the platform, so we don't end up with too many different platforms. > This is the content of the CMakeError.log: > > "C:\Programme\CMake\share\cmake-2.5\Modules\CMakeCCompilerId.c" failed with > the following output: 2 > Microsoft (R) C/C++ Optimizing Compiler Version 14.00.50725 for ARM > Copyright (C) Microsoft Corporation. All rights reserved. > > CMakeCCompilerId.c > Microsoft (R) Incremental Linker Version 8.00.50727.42 > Copyright (C) Microsoft Corporation. All rights reserved. > > /out:CMakeCCompilerId.exe > CMakeCCompilerId.obj > LINK : fatal error LNK1104: cannot open file 'OLDNAMES.lib' > > When doing > set LINK=/NODEFAULTLIB:oldnames.lib /subsystem:windowsce,5.01 /DLL > before running cmake, at least the custom platform file is scanned, but > only when I run it under plain console (no vcvarsall.bat). I think there Why doesn't it work with vcvarsall.bat ? > should be a way to avoid setting LINK. > So far my batch file looks like this: > > set PATH=C:\Programme\Microsoft Visual Studio 8\VC\ce\bin\x86_arm\;%PATH% > set PATH=C:\Programme\Microsoft Visual Studio 8\Common7\IDE;%PATH% > set INCLUDE=C:\Programme\Windows CE Tools\wce500\Windows Mobile 5.0 > Pocket PC SDK\Include\Armv4i;C:\Programme\Microsoft Visual Studio > 8\VC\ce\atlmfc\include;C:\Programme\Microsoft Visual Studio 8\VC\ce\include > set LIB=C:\Programme\Microsoft Visual Studio > 8\VC\ce\lib\armv4i;C:\Programme\Windows CE Tools\wce500\Windows Mobile > 5.0 Pocket PC SDK\Lib\ARMV4I > set LINK=/NODEFAULTLIB:oldnames.lib /subsystem:windowsce,5.01 /DLL > /NOLOGO coredll.lib corelibc.lib > > mkdir build-arm-wince-nmake > cd build-arm-wince-nmake > mkdir Debug > cd Debug > > cmake -DCMAKE_MODULE_PATH=%CD%\..\..\..\config\cmake > -DCMAKE_TOOLCHAIN_FILE=%CD%\..\..\..\config\cmake\toolchain-visual-wince.cm >ake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=%CD%\..\..\..\arm-wince > -DTARGET_PLATFORM=arm-wince -G "NMake Makefiles" ..\.. With -D you are setting cmake variables, so they should have cmake-style paths, i.e. using forward slashes. This should fix your problem below. What do you use TARGET_PLATFORM for ? > The toolchain file: > > MESSAGE(STATUS "Took toolchain-visual") > SET(CMAKE_SYSTEM_NAME WindowsMobile) > # which C and C++ compiler to use > SET(CMAKE_C_COMPILER "/Programme/Microsoft Visual Studio > 8/VC/ce/bin/x86_arm/cl.exe") > SET(CMAKE_CXX_COMPILER "/Programme/Microsoft Visual Studio > 8/VC/ce/bin/x86_arm/cl.exe") > # here is the target environment located > SET(CMAKE_FIND_ROOT_PATH "/Programme/Microsoft Visual Studio 8/VC/ce") You should use the full path including the drive letter, i.e. c:/Programme/. > # adjust the default behaviour of the FIND_XXX() commands: > # search headers and libraries in the target environment, search > # programs in the host environment > set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) > set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) > set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) > > ... and the platform file WindowsMobile.cmake located in config\Platform > is at the end of the mail. I have removed some checks there, and am not > sure if all is ok there. I suggest you remove everything except the stuff you need right now. This will make it easier to understand and debug. > Now cmake fails after scanning the WindowsMobile.cmake with a message > which is not telling me much: > > -- Check for working C compiler: /Programme/Microsoft Visual Studio > 8/VC/ce/bin/x86_arm/cl.exe > CMake Error: Invalid escape sequence \w > Syntax error in cmake code at > C:/work/sw-repo/trunk/osal/build-arm-wince-nmake/Debug/CMakeFiles/CMakeTmp/ >CMakeLists.txt:1: syntax error, unexpected cal_ERROR, expecting $end (4), > when parsing string > "C:\work\sw-repo\trunk\osal\build-arm-wince-nmake\Debug\..\..\..\config\cma >ke" CMake Error: Internal CMake error, TryCompile configure of cmake failed > > etc. > Any ideas
Re: [CMake] Visual Studio reload projects
On Tuesday 04 September 2007 12:19, Bill Hoffman wrote: > Jesper Eskilson wrote: > >> I, too, use Emacs. However, do not be oblivious to the fact that an > >> nmake build can take around five times longer than an IDE build. > > > > Performance is one reason, yes -- especially in these multicore times; > > nmake cannot handle parallell builds -- but the most (or only) > > compelling reason to use Visual Studio as opposed to Emacs + command > > line builds is that the Visual Studio debugger is superior to all other > > debuggers available on Windows. > > I use gmake with the "Unix Makefile" generator and cl as the compiler. > gmake does have parallel builds. > I use the patched cygwin gmake from here: > > http://*www.cmake.org/files/cygwin/make.exe The make included here should also work (doesn't need cygwin): http://unxutils.sourceforge.net/ Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Cmake inline macro?
> > Does Cmake have a macro that tests how a compiler > > defines inline, such as autoconf's AC_C_INLINE? I couldn't find one, so I ported AC_C_INLINE to CMake. Since there's no equivalent of autoheader to make the config.h.in, I just used ADD_DEFINITIONS. Should these sort of tests be collected somewhere? Thanks Jack. Just tested it out, and it seems to work well. The cmake wiki seems a good place to put this. I took the liberty of adding it there. Hopefully it can be included in cmake proper some day. http://www.cmake.org/Wiki/CMake_User_Contributed_Macros Greg -- Gregory C. Sharp Dept. of Radiation Oncology Massachusetts General Hospital [EMAIL PROTECTED] / 617-724-3866 http://gray.mgh.harvard.edu The information transmitted in this electronic communication is intended only for the person or entity to whom it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you received this information in error, please contact the Compliance HelpLine at 800-856-1983 and properly dispose of this information. ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CPack
On Monday 17 September 2007 09:46, Atwood, Robert C wrote: > > What is not immediately obvious is that 2.4.7 *requires* zip.exe to > > reside in c:/cygwin/bin. > > > > (Bad luck if you do not have a C: drive). > > > > -Torsten > > Ooh I don't like that, is it planend to change in near future versions? > I always try to leave the C: for Microsoft stuff to reside without > interference from things like Cygwin , it seems best that way. So on > virtually any Windows machine I've been using, the cygwin is on either > D: or F: I think it also checks the path. This has been made more flexible in cmake cvs. > What about using the info-zip native WIN32 binaries? Do they need to be > in that location to be found by the utility? No, it should work via PATH. Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
RE: [CMake] Creating a static lib from other static libs, HOW?
Could you post the link to the faq? I don't see which question covers the topic. Juan -Original Message- From: [EMAIL PROTECTED] on behalf of Brandon Van Every Sent: Mon 9/17/2007 1:10 AM To: cmake@cmake.org Subject: Re: [CMake] Creating a static lib from other static libs, HOW? On 9/16/07, Juan Sanchez <[EMAIL PROTECTED]> wrote: > Hello, > > The ar command can be used to extract the .o files from a .a file. > Extracting them all into the same directory, perhaps you can use some > file globbing to find all the objects and add them to another archive. Yeah but that's the ar command, which is specific to Unixy systems. Doesn't help a cross-platform build solution that includes MSVC. I just got done telling all you guys how to reuse objects in a platform independent manner. And it's in the FAQ now for handy reference. Cheers, Brandon Van Every ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] OS X build directory
I'm trying to keep my make files and project files orginized in their own folders. Source Dir -- | | - VC2005 | - XCode | - UnixMake etc. This works fine for win32 as I can choose the Build directory in the CMake GUI i.e "C:\Project\VC2005" However, I have tried to do this for OS X and have been unsuccessful. I've tried things like SET (CMAKE_FILES_DIRECTORY "/XCode") and SET (CMAKE_CURRENT_BINARY_DIR "/XCode") sorry for the newbie question. But how would one include something like this into their script? i.e. ... if(xcode){ //make folder for xcode and put all cmake and project files there } if(VC2005){ //make folder for VC2005 and put all cmake and project files there } Thanks in advance :) _ More photos; more messages; more whatever. Windows Live Hotmail - NOW with 5GB storage. http://imagine-windowslive.com/hotmail/?locale=en-us&ocid=TXT_TAGHM_migration_HM_mini_5G_0907 ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] Creating a static lib from other static libs, HOW?
On 9/17/07, Sanchez, Juan <[EMAIL PROTECTED]> wrote: > > > > Could you post the link to the faq? I don't see which question covers the > topic. http://www.cmake.org/Wiki/CMake_FAQ#Does_that_mean_I_have_to_build_all_my_library_objects_twice.2C_once_for_shared_and_once_for_static.3F.21__I_don.27t_like_that.21 Cheers, Brandon Van Every ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] OS X build directory
The easiest way is to create the folder BEFORE cmake is run. I do the same thing on OS X for gcc and intel compilers. mkdir intel; cd intel; ccmake ../ mdkir gcc; cd gcc; ccmake ../ Unless Cmake takes as an argument the build directory to use? Don't know the answer to that one. -- Mike Jackson Senior Research Engineer Innovative Management & Technology Services On Sep 17, 2007, at 11:24 AM, Paul Dean wrote: I'm trying to keep my make files and project files orginized in their own folders. Source Dir -- | | - VC2005 | - XCode | - UnixMake etc. This works fine for win32 as I can choose the Build directory in the CMake GUI i.e "C:\Project\VC2005" However, I have tried to do this for OS X and have been unsuccessful. I've tried things like SET (CMAKE_FILES_DIRECTORY "/XCode") and SET (CMAKE_CURRENT_BINARY_DIR "/XCode") sorry for the newbie question. But how would one include something like this into their script? i.e. ... if(xcode){ //make folder for xcode and put all cmake and project files there } if(VC2005){ //make folder for VC2005 and put all cmake and project files there } Thanks in advance :) _ More photos; more messages; more whatever. Windows Live Hotmail - NOW with 5GB storage. http://imagine-windowslive.com/hotmail/? locale=en-us&ocid=TXT_TAGHM_migration_HM_mini_5G_0907 ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] execute_process command problem
I have some problem executing the execute_process command of cmake on fedora 6 and 7 whereas the same command works fine in FreeBSD 6.2. The command that i have is as follows EXECUTE_PROCESS( COMMAND cd $ENV{PP_ROOTDIR}/src COMMAND make clean RESULT_VARIABLE ret_var) IF(NOT "${ret_var}" STREQUAL 0) MESSAGE(FATAL_ERROR "Unable to execute make clean command on the source dir. Error -> ${ret_var}") ENDIF(NOT "${ret_var}" STREQUAL 0) The error that is generated is as follows "Unable to execute make clean command on the source dir. Error -> No such file or directory." I have tried this over and over but this command never works on Fedora. Thanks in advance. Waiting for your reply. Regards, Ajay Divekar ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] OS X build directory
On Monday 17 September 2007 11:48, Mike Jackson wrote: > The easiest way is to create the folder BEFORE cmake is run. I do the > same thing on OS X for gcc and intel compilers. > > mkdir intel; cd intel; ccmake ../ > mdkir gcc; cd gcc; ccmake ../ Yes. > Unless Cmake takes as an argument the build directory to use? Don't > know the answer to that one. No, it uses the current directory as build directory. Alex ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] OS X build directory
So, this cannot be done within CMakeLists.txt for OS X? It must be done like mike says or with a script? _ Get a FREE small business Web site and more from Microsoft® Office Live! http://clk.atdmt.com/MRT/go/aub0930003811mrt/direct/01/ ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] U
Ajay Divekar wrote: What that does is it outputs make clean command's output on standard output. On the other hand if I cd and then execute make clean command then it does not output anything to the standard output. OUTPUT_QUIET and ERROR_QUIET should help with that issue. Please read the documentation here: http://www.cmake.org/HTML/Documentation.html -Bill ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] OS X build directory
Paul Dean wrote: So, this cannot be done within CMakeLists.txt for OS X? It must be done like mike says or with a script? Yes, you can not force a directory from the CMakeLists.txt file, a user of cmake expects to be able to pick the output directory. -Bill ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] execute_process command problem
What that does is it outputs make clean command's output on standard output. On the other hand if I cd and then execute make clean command then it does not output anything to the standard output. Regards, Ajay Divekar On 9/17/07, Bill Hoffman <[EMAIL PROTECTED]> wrote: > Ajay Divekar wrote: > > I have some problem executing the execute_process command of cmake on > > fedora 6 and 7 whereas the same command works fine in FreeBSD 6.2. > > > > The command that i have is as follows > > > > EXECUTE_PROCESS( COMMAND cd $ENV{PP_ROOTDIR}/src > > COMMAND make clean RESULT_VARIABLE ret_var) > > > > IF(NOT "${ret_var}" STREQUAL 0) > > MESSAGE(FATAL_ERROR "Unable to execute make clean command on the > > source dir. Error -> ${ret_var}") > > ENDIF(NOT "${ret_var}" STREQUAL 0) > > > > The error that is generated is as follows > > > > "Unable to execute make clean command on the source dir. Error -> No > > such file or directory." > > > > I have tried this over and over but this command never works on Fedora. > > > What about: > execute_process(WORKING_DIRECTORY $ENV{PP_ROOTDIR}/src >COMMAND make clean RESULT_VARIABLE ret_var) > > -Bill > > ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] execute_process command problem
Ajay Divekar wrote: I have some problem executing the execute_process command of cmake on fedora 6 and 7 whereas the same command works fine in FreeBSD 6.2. The command that i have is as follows EXECUTE_PROCESS( COMMAND cd $ENV{PP_ROOTDIR}/src COMMAND make clean RESULT_VARIABLE ret_var) IF(NOT "${ret_var}" STREQUAL 0) MESSAGE(FATAL_ERROR "Unable to execute make clean command on the source dir. Error -> ${ret_var}") ENDIF(NOT "${ret_var}" STREQUAL 0) The error that is generated is as follows "Unable to execute make clean command on the source dir. Error -> No such file or directory." I have tried this over and over but this command never works on Fedora. What about: execute_process(WORKING_DIRECTORY $ENV{PP_ROOTDIR}/src COMMAND make clean RESULT_VARIABLE ret_var) -Bill ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] CMAKE_CFG_INTDIR expands to "$"(OutDir)
I'm experiencing trouble getting cmake to copy DLL files to my executable output path in visual studio after the target is built. It seems that the CMAKE_CFG_INTDIR variable is being expanded to: "$"(OutDir) This causes the .dll files to be copied to the filename '$(OutDir)', not into the 'Debug' or 'Release' sub-directory as I would expect. Here is the relevant cmake code: IF(WIN32) FILE(GLOB QT_DLLS "${QT_LIBRARY_DIR}/../bin/*.dll") GET_FILENAME_COMPONENT(PTHREAD_LIBRARY_DIR "${PTHREAD_LIBRARY}" PATH) FILE(GLOB PTHREAD_DLLS "${PTHREAD_LIBRARY_DIR}/*.dll") SET(DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}) FOREACH(DLL_FILENAME ${QT_DLLS} ${PTHREAD_DLLS}) ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${DLL_FILENAME} ${DESTINATION} VERBATIM) MESSAGE(COPY ${DLL_FILENAME} ${DESTINATION}) ENDFOREACH(DLL_FILENAME) ENDIF(WIN32) And here are a few lines from my VC++ buildlog.htm: "C:\Program Files (x86)\CMake 2.4\bin\cmake.exe" -E copy C:/Qt/4.3.1/lib/../bin/QtXml4.dll C:/bin/viewer/"$"(OutDir) "C:\Program Files (x86)\CMake 2.4\bin\cmake.exe" -E copy C:/Qt/4.3.1/lib/../bin/QtXmld4.dll C:/bin/viewer/"$"(OutDir) For some reason either cmake is quoting the $ in the expansion of the ${CMAKE_CFG_INTDIR} variable. Does anyone know a fix for this? -McKay D Don't let your dream ride pass you by. Make it a reality with Yahoo! Autos. http://autos.yahoo.com/index.html ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] execute_process command problem
Add an output_variable to the list of arguments of execute_process if you do not want the output of make clean to be send to stdout: execute_process(WORKING_DIRECTORY $ENV{PP_ROOTDIR}/src COMMAND make clean RESULT_VARIABLE ret_var OUTPUT_VARIABLE output_var) Greetings, Wim On 9/17/07, Ajay Divekar <[EMAIL PROTECTED]> wrote: > What that does is it outputs make clean command's output on standard > output. On the other hand if I cd and then execute make clean command > then it does not output anything to the standard output. > > Regards, > > Ajay Divekar > > On 9/17/07, Bill Hoffman <[EMAIL PROTECTED]> wrote: > > Ajay Divekar wrote: > > > I have some problem executing the execute_process command of cmake on > > > fedora 6 and 7 whereas the same command works fine in FreeBSD 6.2. > > > > > > The command that i have is as follows > > > > > > EXECUTE_PROCESS( COMMAND cd $ENV{PP_ROOTDIR}/src > > > COMMAND make clean RESULT_VARIABLE ret_var) > > > > > > IF(NOT "${ret_var}" STREQUAL 0) > > > MESSAGE(FATAL_ERROR "Unable to execute make clean command on the > > > source dir. Error -> ${ret_var}") > > > ENDIF(NOT "${ret_var}" STREQUAL 0) > > > > > > The error that is generated is as follows > > > > > > "Unable to execute make clean command on the source dir. Error -> No > > > such file or directory." > > > > > > I have tried this over and over but this command never works on Fedora. > > > > > What about: > > execute_process(WORKING_DIRECTORY $ENV{PP_ROOTDIR}/src > >COMMAND make clean RESULT_VARIABLE ret_var) > > > > -Bill > > > > > ___ > CMake mailing list > CMake@cmake.org > http://www.cmake.org/mailman/listinfo/cmake > -- Avoid hangovers - stay drunk! ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] copying the contents of a directory with cpack
Hi, I have a custom target that creates doxygen documentation from my C header files. I'd like, as part of my cpack configuration in my main CMakeLists.txt, to copy the directory containing the doxygen output into the .tar.gz package. What is the simplest way to do this? thanks! niall ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
[CMake] CMake Error: Unable to find executable for TRY _RUN
Hello everyone, I have been using CMake (2.4 Patch 6) on my system (Windows XP SP2, Visual Studio 8) for some time with no problem. Recently I have started to get an error when attempting to run CMAKE for the first time on a project. For example, I download the example code http://www.cmake.org/HTML/cmakeExample.tar.gz and ran CMake on the extracted directory to perform an out of source build. When "Check size of void*" is shown in the status area, the following error pops up: CMake Error: Unable to find executable for TRY_RUN: tried "C:/tmp/examplebin/CMakeFiles/CMakeTmp/cmTryCompileExec.exe" and "C:/tmp/examplebin/CMakeFiles/CMakeTmp/Debug/cmTryCompileExec.exe" and "C:/tmp/examplebin/CMakeFiles/CMakeTmp/Development/cmTryCompileExec.exe". CMake then proceeds and in the case of this example I can successfully build and run the project, however more complicated examples that require this information (i.e. VTK, ITK) can not be built. As I said, this is a new error as I have built VTK and ITK on this machine before without any problem. I do not believe I have changed any settings, and have attempted to install CMake again and try it, but same problem. I am attaching the CMakeOut log file. Any help or insights would be appreciated, Thank you. This e-mail may contain confidential and/or privileged information for the sole use of the intended recipient. Any review or distribution by anyone other than the person for whom it was originally intended is strictly prohibited. If you have received this e-mail in error, please contact the sender and delete all copies. Opinions, conclusions or other information contained in this e-mail may not be that of the organization. CMakeOutput.log Description: Binary data ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CMAKE_CFG_INTDIR expands to "$"(OutDir)
Am Montag 17 September 2007 schrieb McKay Davis: > I'm experiencing trouble getting cmake to copy DLL files to my executable > output path in visual studio after the target is built. Â > > It seems that the CMAKE_CFG_INTDIR variable is being expanded to: > "$"(OutDir) > > This causes the .dll files to be copied to the filename '$(OutDir)', not > into the 'Debug' or 'Release' sub-directory as I would expect. How about setting LIBRARY_OUTPUT_PATH instead? HS ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CMAKE_CFG_INTDIR expands to "$"(OutDir)
I think setting LIBRARY_OUTPUT_PATH instead only works on the libraries you build. I also need to copy configuration files etc. so ... how about something like this: (Note the the explicit specification of "Debug and release in the WIN32 section.) #-- Start of code -- IF ( WIN32 ) # Only needed for windows. # Note: We need to copy the dlls to two places in the build tree, namely # ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR} IF(NOT STATIC_BUILD) # Find the dlls we need. FIND_FILE(LIBPQ_DLL libpq.dll PATHS ${POSTGRESQL_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_FILE(LIBPQD_DLL libpqd.dll PATHS ${POSTGRESQL_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_FILE(LIBPQXX_DLL libpqxx.dll PATHS ${LIBPQXX_LIBRARY_DIRS} NO_DEFAULT_PATH ) FIND_FILE(LIBPQXXD_DLL libpqxxD.dll PATHS ${LIBPQXX_LIBRARY_DIRS} NO_DEFAULT_PATH ) SET ( ESSENTIAL_FILES ${ESSENTIAL_FILES} ${LIBPQ_DLL} ${LIBPQXX_DLL} ) SET ( ESSENTIAL_FILES_DEBUG ${ESSENTIAL_FILES_DEBUG} ${LIBPQD_DLL} ${LIBPQXXD_DLL} ) ENDIF(NOT STATIC_BUILD) # Copy these files to the build tree. # We cannot determine whether Release or Debug is being used. ADD_CUSTOM_TARGET(CopyDllCfg ALL echo "Copying dlls and essential files ...") FOREACH(file ${ESSENTIAL_FILES_DEBUG}) GET_FILENAME_COMPONENT(fn ${file} NAME) SET(tgt ${EXECUTABLE_OUTPUT_PATH}/Debug/${fn}) SET(src ${file}) ADD_CUSTOM_COMMAND( TARGET CopyDllCfg COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${src} ${tgt} COMMENT "source copy dlls and essential files" ) ENDFOREACH(file) FOREACH(file ${ESSENTIAL_FILES}) GET_FILENAME_COMPONENT(fn ${file} NAME) SET(tgt ${EXECUTABLE_OUTPUT_PATH}/Release/${fn}) SET(src ${file}) ADD_CUSTOM_COMMAND( TARGET CopyDllCfg COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${src} ${tgt} COMMENT "source copy dlls and essential files" ) ENDFOREACH(file) ELSE ( WIN32 ) # Copy these files to the build tree. ADD_CUSTOM_TARGET(CopyCfg ALL echo "Copying dlls and essential files ...") FOREACH(file ${ESSENTIAL_FILES}) GET_FILENAME_COMPONENT(fn ${file} NAME) SET(tgt ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/${fn}) SET(src ${file}) ADD_CUSTOM_COMMAND( TARGET CopyCfg COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${src} ${tgt} COMMENT "source copy essential files" ) ENDFOREACH(file) ENDIF ( WIN32 ) #-- End of code --- Regards Andrew On 9/18/07, McKay Davis <[EMAIL PROTECTED]> wrote: > > I'm experiencing trouble getting cmake to copy DLL files to my executable > output path in visual studio after the target is built. > > It seems that the CMAKE_CFG_INTDIR variable is being expanded to: > "$"(OutDir) > > This causes the .dll files to be copied to the filename '$(OutDir)', not > into > the 'Debug' or 'Release' sub-directory as I would expect. > > Here is the relevant cmake code: > > IF(WIN32) > FILE(GLOB QT_DLLS "${QT_LIBRARY_DIR}/../bin/*.dll") > > GET_FILENAME_COMPONENT(PTHREAD_LIBRARY_DIR "${PTHREAD_LIBRARY}" PATH) > FILE(GLOB PTHREAD_DLLS "${PTHREAD_LIBRARY_DIR}/*.dll") > > SET(DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}) > > FOREACH(DLL_FILENAME ${QT_DLLS} ${PTHREAD_DLLS}) >ADD_CUSTOM_COMMAND( > TARGET ${PROJECT_NAME} > POST_BUILD > COMMAND ${CMAKE_COMMAND} -E copy > ${DLL_FILENAME} ${DESTINATION} > VERBATIM) > MESSAGE(COPY ${DLL_FILENAME} ${DESTINATION}) > ENDFOREACH(DLL_FILENAME) > ENDIF(WIN32) > > > And here are a few lines from my VC++ buildlog.htm: > > "C:\Program Files (x86)\CMake 2.4\bin\cmake.exe" -E copy > C:/Qt/4.3.1/lib/../bin/QtXml4.dll C:/bin/viewer/"$"(OutDir) > > "C:\Program Files (x86)\CMake 2.4\bin\cmake.exe" -E copy > C:/Qt/4.3.1/lib/../bin/QtXmld4.dll C:/bin/viewer/"$"(OutDir) > > > For some reason either cmake is quoting the $ in the expansion of the > ${CMAKE_CFG_INTDIR} variable. Does anyone know a fix for this? > > -McKay D > > > > > > > > Don't let your dream ride pass you by. Make it a reality with Yahoo! > Autos. > http://autos.yahoo.com/index.html > > > > ___ > CMake mailing list > CMake@cmake.org > http://www.cmake.org/mailman/listinfo/cmake > -- ___ Andrew J. P. Maclean Centre for Autonomous Systems The Rose Street Building J04 The University of Sydney 2006 NSW AUSTRALIA Ph: +61 2 9351 3283 Fax: +61 2 9351 7474 URL: http://www.acfr.usyd.edu.au/ ___ ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] copying the contents of a directory with cpack
Niall Dalton wrote: Hi, I have a custom target that creates doxygen documentation from my C header files. I'd like, as part of my cpack configuration in my main CMakeLists.txt, to copy the directory containing the doxygen output into the .tar.gz package. What is the simplest way to do this? Basically, cpack just uses whatever make install does. So, you would need to use the install commands in cmake. Once those are working cpack should work. -Bill ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] CMAKE_CFG_INTDIR expands to "$"(OutDir)
McKay Davis wrote: I'm experiencing trouble getting cmake to copy DLL files to my executable output path in visual studio after the target is built. It seems that the CMAKE_CFG_INTDIR variable is being expanded to: "$"(OutDir) This causes the .dll files to be copied to the filename '$(OutDir)', not into the 'Debug' or 'Release' sub-directory as I would expect. Here is the relevant cmake code: IF(WIN32) FILE(GLOB QT_DLLS "${QT_LIBRARY_DIR}/../bin/*.dll") GET_FILENAME_COMPONENT(PTHREAD_LIBRARY_DIR "${PTHREAD_LIBRARY}" PATH) FILE(GLOB PTHREAD_DLLS "${PTHREAD_LIBRARY_DIR}/*.dll") SET(DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}) FOREACH(DLL_FILENAME ${QT_DLLS} ${PTHREAD_DLLS}) ADD_CUSTOM_COMMAND( TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${DLL_FILENAME} ${DESTINATION} VERBATIM) MESSAGE(COPY ${DLL_FILENAME} ${DESTINATION}) ENDFOREACH(DLL_FILENAME) ENDIF(WIN32) And here are a few lines from my VC++ buildlog.htm: "C:\Program Files (x86)\CMake 2.4\bin\cmake.exe" -E copy C:/Qt/4.3.1/lib/../bin/QtXml4.dll C:/bin/viewer/"$"(OutDir) "C:\Program Files (x86)\CMake 2.4\bin\cmake.exe" -E copy C:/Qt/4.3.1/lib/../bin/QtXmld4.dll C:/bin/viewer/"$"(OutDir) For some reason either cmake is quoting the $ in the expansion of the ${CMAKE_CFG_INTDIR} variable. Does anyone know a fix for this? Did you try it without the VERBATIM specified? -Bill ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake
Re: [CMake] copying the contents of a directory with cpack
On 2007-09-17 20:31-0400 Bill Hoffman wrote: Niall Dalton wrote: Hi, I have a custom target that creates doxygen documentation from my C header files. I'd like, as part of my cpack configuration in my main CMakeLists.txt, to copy the directory containing the doxygen output into the .tar.gz package. What is the simplest way to do this? Basically, cpack just uses whatever make install does. So, you would need to use the install commands in cmake. Once those are working cpack should work. That advice is correct for generating binary distributions with "make package", but in case you wanted to include the doxygen output in a source distribution with the "make package_source" command, then all you have to do is make your build tree a subdirectory of your source tree or copy the doxygen output from the build tree to the source tree. By default, "make package_source" packages everything in the source tree, and you use a regex expression variable called CPACK_SOURCE_IGNORE_FILES to ignore anything you do not want. To see how to set this up, have a look at the top-level CMakeLists.txt file of CMake itself. To those in charge of the Wiki: I am all for terse but useful documentation, but somebody has removed so much information from http://www.cmake.org/Wiki/CMake:Packaging_With_CPack that it is almost meaningless now. Please revert it back to the previous version which at least supplies quite a bit of information about CPack. We also need some real documentation when you run "cpack --help-full". The problem with that command (at least for 2.4.7) is it gives you mostly just a template placeholder for documentation. Instead, you need some real documentation there of all the variables you can set from CMake when you INCLUDE the CPack Module, and at least a mention of the make targets (package and package_source) that are generated and the rules for including material in binary distributions and source distributions. Alan __ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __ Linux-powered Science __ ___ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake