[CMake] dpkg: filepath with > 100 characters do not get installed
Mathieu Malaterre
mathieu.malaterre at gmail.com
Thu Apr 17 06:38:56 EDT 2008
Hi there,
CMake CVS does not correctly produces debian package, when filenames
are longer than 100 chars (default tar implementation). To handle
longer filepath, there are two extensions: GNU and POSIX. By default
(except on cygwin), cmake will generate POSIX tarball:
Is there a way to tell cpack then generating the debian package to do
GNU tarball ? The only patch I have so far is pretty intrusive:
$ cvs di Source/CPack/cmCPackTGZGenerator.cxx
Index: Source/CPack/cmCPackTGZGenerator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CPack/cmCPackTGZGenerator.cxx,v
retrieving revision 1.19
diff -u -r1.19 cmCPackTGZGenerator.cxx
--- Source/CPack/cmCPackTGZGenerator.cxx 27 Sep 2007 18:44:10
-0000 1.19
+++ Source/CPack/cmCPackTGZGenerator.cxx 17 Apr 2008 10:34:36 -0000
@@ -234,9 +234,9 @@
{
options |= TAR_VERBOSE;
}
-#ifdef __CYGWIN__
+ // I need that for creating proper debian package on debian stable
+ // which is *still* using GNU tarball (not POSIX ones)...
options |= TAR_GNU;
-#endif
if (tar_open(&t, realName,
&gztype,
flags, 0644,
Technically -at least on my linux debian- tar will generate GNU
tarball by default, what *NIX system requires the POSIX ones ?
Thanks
--
Mathieu
Ref:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474092
More information about the CMake
mailing list