Hi!

I can confirm that this resolves my problem. Thanks again for a quick cure and 
for the tip! Could it be that this solves also issues 7000 & 7410? They seem to 
have the same problem with temporary directory creation.

Br,
Petri

--- On Wed, 10/15/08, David Cole <[EMAIL PROTECTED]> wrote:
From: David Cole <[EMAIL PROTECTED]>
Subject: Re: [CMake] CPack 2.6.2: can't create temporary directory
To: [EMAIL PROTECTED]
Cc: cmake@cmake.org
Date: Wednesday, October 15, 2008, 6:46 AM

This is fixed now in CVS HEAD:    
/cvsroot/CMake/CMake/Source/CPack/cmCPackGenerator.cxx,v  <--  
Source/CPack/cmCPackGenerator.cxx    new revision: 1.16; previous revision: 1.15

It will also be merged over to the CMake-2-6 branch and appear in CMake 2.6.3 
when that is released...

Thanks for the report, Petri.
One recommendation for you: if you are doing packaging this way via a custom 
target, use "${CMAKE_CPACK_COMMAND}" instead of cpack as the command you 
execute. This will guarantee using the cpack associated with the cmake used to 
configure regardless of PATH or any other environment issues. (That way, when I 
do a "make pack" on your project, I get the correct cpack being used rather 
than whichever one is available in my environment...)

Sorry for the hassle,David Cole

On Wed, Oct 15, 2008 at 12:46 AM, Petri Hodju <[EMAIL PROTECTED]> wrote:

Great news!


I started to browse through the source code myself but figured out that as I 
don't have full understanding of the big picture, I won't get it right without 
breaking something else somewhere... So, I'm happy to wait for your solution : 
) Meanwhile I get along with 2.6.0


Thanks David!

Br,
Petri

--- On Tue, 10/14/08, David Cole <[EMAIL PROTECTED]> wrote:

From: David Cole <[EMAIL PROTECTED]>
Subject: Re: [CMake] CPack 2.6.2: can't create temporary directory
To: "Petri Hodju" <[EMAIL PROTECTED]>

Cc: cmake@cmake.org
Date: Tuesday, October 14, 2008, 1:44 PM

Scratch my last reply somewhat.....

Your
 CMakeLists file runs "cpack" as the custom command, which was picking up cpack 
2.6.2 from my PATH rather than using the same cpack that goes with the cmake 
2.6.0 which I was using by fullpath to configure the project.


So. It does work with CPack 2.6.0 and I will work on the fix....
:-)
Sorry for the pilot error,David



On Tue, Oct 14, 2008 at 4:24 PM, David Cole <[EMAIL PROTECTED]> wrote:


OK.... so when I reproduce this issue, I see that I do not have directory 
creation permissions in "/opt" on my Linux machine. So... the error message is 
not really surprising to me. Plus, I get the same error with CMake 2.6.0 and 
CMake 2.6.2.



Maybe you lost permissions to your "/opt" directory at the same time that you 
upgraded to CMake 2.6.2.....??

Let me know if you still think this is a CMake issue after you verify that you 
really have different behavior between 2.6.0 and 2.6.2 on the same machine.



Thanks,David ColeKitware, Inc.

On Mon, Oct 13, 2008 at 6:05 AM, Petri Hodju <[EMAIL PROTECTED]> wrote:





Hi!

I have put together a custom way of building packages inspired by Stuart 
Herring posted here earlier:


Fri Apr 4 20:39:04 EDT 2008
[CMake] CPack: Building Multiple Packages

Everything is working fine with version 2.6.0 but things break up with 2.6.2. 
The

error I get is like:



CPack Error: Problem creating temporary directory: /opt/test

So, I'm not sure if there is a bug in 2.6.2 or has something changed between 
2.6.0 and 2.6.2 which I don't take into account. 

I have attached to this mail a tar package containing full example of the 
problem.




For those who can't bother with the tar file here is written out the 
CMakeLists.txt & CPackConfig.in files, which make it all happen:

CMakeLists.txt:

#===============================================================================



# Top level
 project makefile
#===============================================================================

CMAKE_MINIMUM_REQUIRED(VERSION 2.6)

PROJECT(test)

SET(VERSION_MAJOR 0)
SET(VERSION_MINOR 1)



SET(VERSION_PATCH 2)
SET(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")

#-------------------------------------------------------------------------------
# macro for creating packages.



#-------------------------------------------------------------------------------

ADD_CUSTOM_TARGET(pack)

MACRO(ADD_PACKAGE COMPONENT)
  SET(TARGET pack-${COMPONENT})
  SET(CONFIG "CPackConfig-${COMPONENT}.cmake")



  SET(PACKAGE ${COMPONENT})
  CONFIGURE_FILE("CPackConfig.in" "${CONFIG}" @ONLY)
  ADD_CUSTOM_TARGET(${TARGET} COMMAND cpack --config "${CONFIG}")
  ADD_DEPENDENCIES(pack
 ${TARGET})
ENDMACRO(ADD_PACKAGE)

#-------------------------------------------------------------------------------
# installation path settings
#-------------------------------------------------------------------------------




SET(CMAKE_SET_DESTDIR "ON")
SET(CMAKE_INSTALL_PREFIX "/opt/test")
SET(CPACK_GENERATOR "DEB" "RPM")

#-------------------------------------------------------------------------------



# create test binary
#-------------------------------------------------------------------------------

ADD_EXECUTABLE(bin1 "bin1.cc")
INSTALL(TARGETS bin1 DESTINATION "bin" COMPONENT "binaries")



ADD_PACKAGE(binaries)

CPackConfig.in:

#===============================================================================
# template for package generation
#===============================================================================




SET(CMAKE_SET_DESTDIR
 "@CMAKE_SET_DESTDIR@")
SET(CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@")
SET(CPACK_SET_DESTDIR "@CMAKE_SET_DESTDIR@")
SET(CPACK_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@")




SET(CPACK_PACKAGE_VERSION_MAJOR @VERSION_MAJOR@)
SET(CPACK_PACKAGE_VERSION_MINOR @VERSION_MINOR@)
SET(CPACK_PACKAGE_VERSION_PATCH @VERSION_PATCH@)

SET(CPACK_CMAKE_GENERATOR "@CMAKE_GENERATOR@")



SET(CPACK_GENERATOR "@CPACK_GENERATOR@")

SET(CPACK_INSTALL_CMAKE_PROJECTS 
"@PROJECT_BINARY_DIR@;@PROJECT_NAME@;@PACKAGE@;/")
SET(CPACK_PACKAGE_FILE_NAME "@[EMAIL PROTECTED]@[EMAIL PROTECTED]@[EMAIL 
PROTECTED]@CMAKE_SYSTEM_NAME@")



SET(CPACK_PACKAGE_NAME "@PROJECT_NAME@")
SET(CPACK_PACKAGE_VENDOR "Test Vendor")
SET(CPACK_PACKAGE_CONTACT "[EMAIL PROTECTED]")

SET(CPACK_PACKAGE_DESCRIPTION_FILE "@PROJECT_BINARY_DIR@/Description.txt")


SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Test @PACKAGE@ Package")
SET(CPACK_SYSTEM_NAME "@CMAKE_SYSTEM_NAME@")

and finally
 here is the output I get with cmake 2.6.0 and 2.6.2

Best regards,
Petri Hodju

--------------------------- with cmake 2.6.0 ---------------------------------

[EMAIL PROTECTED]:~/misc/code/cpack$ cmake --version



cmake version 2.6-patch 0

[EMAIL PROTECTED]:~/misc/code/cpack$ cpack --version
cpack version 2.6-patch 0

[EMAIL PROTECTED]:~/misc/code/cpack$ cmake .
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU



-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++



-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to:
 /home/pho/misc/code/cpack

[EMAIL PROTECTED]:~/misc/code/cpack$ make
Scanning dependencies of target bin1
[100%] Building CXX object CMakeFiles/bin1.dir/bin1.cc.o
Linking CXX executable bin1
[100%] Built target bin1




[EMAIL PROTECTED]:~/misc/code/cpack$ make pack
Scanning dependencies of target pack-binaries
CPack: Create package using DEB
CPack: Install projects
CPack: - Run preinstall target for: test
CPack: - Install project: test



CPack: Compress package
CPack: Finalize package
CPack: Package /home/pho/misc/code/cpack/test-binaries-0.1.2-Linux.deb 
generated.
CPack: Create package using RPM
CPack: Install projects
CPack: - Run preinstall target for: test



CPack: - Install project: test
CPack: Compress package
CPack: Finalize package
CPack: Package /home/pho/misc/code/cpack/test-binaries-0.1.2-Linux.rpm 
generated.
Built target pack-binaries
Scanning dependencies of target pack



Built target
 pack

--------------------------- with cmake 2.6.2 ---------------------------------

[EMAIL PROTECTED]:~/misc/code/cpack$ cmake --version
cmake version 2.6-patch 2

[EMAIL PROTECTED]:~/misc/code/cpack$ cpack --version



cpack version 2.6-patch 2

[EMAIL PROTECTED]:~/misc/code/cpack$ cmake .
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works



-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info



-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pho/misc/code/cpack

[EMAIL PROTECTED]:~/misc/code/cpack$ make
Scanning dependencies of target bin1



[100%]
 Building CXX object CMakeFiles/bin1.dir/bin1.cc.o
Linking CXX executable bin1
[100%] Built target bin1

[EMAIL PROTECTED]:~/misc/code/cpack$ make pack
Scanning dependencies of target pack-binaries
CPack: Create package using DEB



CPack: Install projects
CPack: - Run preinstall target for: test
CPack: - Install project: test
CPack Error: Problem creating temporary directory: /opt/test
CPack Error: Error when generating package: test



make[3]: *** [CMakeFiles/pack-binaries] Error 1
make[2]: *** [CMakeFiles/pack-binaries.dir/all] Error 2
make[1]: *** [CMakeFiles/pack.dir/rule] Error 2
make: *** [pack] Error 2





      
_______________________________________________

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

Reply via email to