Update of /cvsroot/fink/dists/10.4/unstable/main/finkinfo/devel
In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv20390

Modified Files:
        cmake.info cmake.patch 
Log Message:
New upstream version 2.4.2. 
This version knows how to give versioned file names to dylibs (with the help
of some patches from current CMake CVS).
There is also a mechanism to define an install_name for dylibs, but I have not 
managed to make it work. In the vtk-py package, makefiles are patched by hand 
in order to get this right.
There is still no notion of compatibility version for dylibs.


Index: cmake.patch
===================================================================
RCS file: /cvsroot/fink/dists/10.4/unstable/main/finkinfo/devel/cmake.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- cmake.patch 24 Jan 2006 15:24:41 -0000      1.1
+++ cmake.patch 20 Jul 2006 16:52:38 -0000      1.2
@@ -25,16 +25,217 @@
 +    "${CMAKE_SHARED_MODULE_CREATE_C_FLAGS} -undefined dynamic_lookup 
-bind_at_load")
  ENDIF("${CMAKE_BACKWARDS_COMPATIBILITY}" MATCHES "^1\\.[0-6]$")
  
- SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
---- cmake-2.0.5/Source/cmDynamicLoader.h       2002-10-24 00:03:26.000000000 
+0200
-+++ cmake-2.0.5_corr/Source/cmDynamicLoader.h  2005-03-18 12:11:53.000000000 
+0100
-@@ -33,6 +33,9 @@
- #elif defined(_WIN32)
-   #include <windows.h>
-   typedef HMODULE cmLibHandle;
-+#elif defined(__APPLE__)
-+  #include <mach-o/dyld.h>
-+  typedef NSModule cmLibHandle;
- #else
-   typedef void* cmLibHandle;
- #endif
+ IF(NOT XCODE)
+
+Index: Source/cmTarget.cxx
+===================================================================
+RCS file: /cvsroot/CMake/CMake/Source/cmTarget.cxx,v
+retrieving revision 1.96.2.2
+retrieving revision 1.100
+diff -u -b -w -r1.96.2.2 -r1.100
+--- cmake-2.4.2/Source/cmTarget.cxx    14 May 2006 19:22:43 -0000      1.96.2.2
++++ cmake-2.4.2/Source/cmTarget.cxx    5 Jun 2006 17:45:43 -0000       1.100
+@@ -3,8 +3,8 @@
+   Program:   CMake - Cross-Platform Makefile Generator
+   Module:    $RCSfile$
+   Language:  C++
+-  Date:      $Date$
+-  Version:   $Revision$
++  Date:      $Date$
++  Version:   $Revision$
+ 
+   Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
+   See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+@@ -23,6 +23,11 @@
+ #include <set>
+ #include <queue>
+ #include <stdlib.h> // required for atof
++const char* cmTarget::TargetTypeNames[] = {
++  "EXECUTABLE", "STATIC_LIBRARY",
++  "SHARED_LIBRARY", "MODULE_LIBRARY", "UTILITY", "GLOBAL_TARGET",
++  "INSTALL_FILES", "INSTALL_PROGRAMS", "INSTALL_DIRECTORY"
++};
+ 
+ //----------------------------------------------------------------------------
+ cmTarget::cmTarget()
+@@ -1316,19 +1321,36 @@
+     soversion = version;
+     }
+ 
++  // Get the components of the library name.
++  std::string prefix;
++  std::string base;
++  std::string suffix;
++  this->GetFullNameInternal(type, config, false, prefix, base, suffix);
++
+   // The library name.
+-  name = this->GetFullNameInternal(type, config, false);
++  name = prefix+base+suffix;
+ 
+   // The library's soname.
++#if defined(__APPLE__)
++  soName = prefix+base;
++#else
+   soName = name;
++#endif
+   if(soversion)
+     {
+     soName += ".";
+     soName += soversion;
+     }
++#if defined(__APPLE__)
++  soName += suffix;
++#endif
+ 
+   // The library's real name on disk.
++#if defined(__APPLE__)
++  realName = prefix+base;
++#else
+   realName = name;
++#endif
+   if(version)
+     {
+     realName += ".";
+@@ -1339,6 +1361,9 @@
+     realName += ".";
+     realName += soversion;
+     }
++#if defined(__APPLE__)
++  realName += suffix;
++#endif
+ 
+   // The import library name.
+   if(type == cmTarget::SHARED_LIBRARY)
+Index: Source/cmTarget.h
+===================================================================
+RCS file: /cvsroot/CMake/CMake/Source/cmTarget.h,v
+retrieving revision 1.62.2.1
+retrieving revision 1.64
+diff -u -b -w -r1.62.2.1 -r1.64
+--- cmake-2.4.2/Source/cmTarget.h      14 May 2006 19:22:44 -0000      1.62.2.1
++++ cmake-2.4.2/Source/cmTarget.h      19 May 2006 17:02:12 -0000      1.64
+@@ -3,8 +3,8 @@
+   Program:   CMake - Cross-Platform Makefile Generator
+   Module:    $RCSfile$
+   Language:  C++
+-  Date:      $Date$
+-  Version:   $Revision$
++  Date:      $Date$
++  Version:   $Revision$
+ 
+   Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
+   See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+@@ -36,7 +36,7 @@
+   enum TargetType { EXECUTABLE, STATIC_LIBRARY,
+                     SHARED_LIBRARY, MODULE_LIBRARY, UTILITY, GLOBAL_TARGET,
+                     INSTALL_FILES, INSTALL_PROGRAMS, INSTALL_DIRECTORY};
+-
++  static const char* TargetTypeNames[];
+   enum CustomCommandType { PRE_BUILD, PRE_LINK, POST_BUILD };
+ 
+   /**
+Index: Source/cmFileCommand.cxx
+===================================================================
+RCS file: /cvsroot/CMake/CMake/Source/cmFileCommand.cxx,v
+retrieving revision 1.56.2.3
+retrieving revision 1.62
+diff -u -b -w -r1.56.2.3 -r1.62
+--- cmake-2.4.2/Source/cmFileCommand.cxx       11 May 2006 20:05:56 -0000      
1.56.2.3
++++ cmake-2.4.2/Source/cmFileCommand.cxx       27 Jun 2006 13:56:21 -0000      
1.62
+@@ -3,8 +3,8 @@
+   Program:   CMake - Cross-Platform Makefile Generator
+   Module:    $RCSfile$
+   Language:  C++
+-  Date:      $Date$
+-  Version:   $Revision$
++  Date:      $Date$
++  Version:   $Revision$
+ 
+   Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
+   See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+@@ -233,6 +233,11 @@
+         }
+       g.SetRelative(i->c_str());
+       ++i;
++      if(i == args.end())
++        {
++        this->SetError("GLOB requires a glob expression after the directory");
++        return false;
++        }
+       }
+     if ( !cmsys::SystemTools::FileIsFullPath(i->c_str()) )
+       {
+@@ -775,15 +780,10 @@
+           std::string libname = toFile;
+           std::string soname = toFile;
+           std::string soname_nopath = fromName;
+-          soname += ".";
+-          soname += lib_soversion;
+-          soname_nopath += ".";
+-          soname_nopath += lib_soversion;
+-
+-          fromName += ".";
+-          fromName += lib_version;
+-          toFile += ".";
+-          toFile += lib_version;
++          this->ComputeVersionedName(soname, lib_soversion);
++          this->ComputeVersionedName(soname_nopath, lib_soversion);
++          this->ComputeVersionedName(fromName, lib_version);
++          this->ComputeVersionedName(toFile, lib_version);
+ 
+           cmSystemTools::RemoveFile(soname.c_str());
+           cmSystemTools::RemoveFile(libname.c_str());
+@@ -946,6 +946,26 @@
+ }
+ 
+ //----------------------------------------------------------------------------
++void cmFileCommand::ComputeVersionedName(std::string& name,
++                                         const char* version)
++{
++#if defined(__APPLE__)
++  std::string ext;
++  kwsys_stl::string::size_type dot_pos = name.rfind(".");
++  if(dot_pos != name.npos)
++    {
++    ext = name.substr(dot_pos, name.npos);
++    name = name.substr(0, dot_pos);
++    }
++#endif
++  name += ".";
++  name += version;
++#if defined(__APPLE__)
++  name += ext;
++#endif
++}
++
++//----------------------------------------------------------------------------
+ bool cmFileCommand::HandleRelativePathCommand(
+   std::vector<std::string> const& args)
+ {
+Index: Source/cmFileCommand.h
+===================================================================
+RCS file: /cvsroot/CMake/CMake/Source/cmFileCommand.h,v
+retrieving revision 1.16.2.1
+retrieving revision 1.18
+diff -u -b -w -r1.16.2.1 -r1.18
+--- cmake-2.4.2/Source/cmFileCommand.h 11 May 2006 02:15:09 -0000      1.16.2.1
++++ cmake-2.4.2/Source/cmFileCommand.h 5 Jun 2006 17:45:43 -0000       1.18
+@@ -3,8 +3,8 @@
+   Program:   CMake - Cross-Platform Makefile Generator
+   Module:    $RCSfile$
+   Language:  C++
+-  Date:      $Date$
+-  Version:   $Revision$
++  Date:      $Date$
++  Version:   $Revision$
+ 
+   Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
+   See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+@@ -125,6 +125,7 @@
+   bool HandleRelativePathCommand(std::vector<std::string> const& args);
+   bool HandleCMakePathCommand(std::vector<std::string> const& args,
+                               bool nativePath);
++  void ComputeVersionedName(std::string& name, const char* version);
+ };
+ 
+ 

Index: cmake.info
===================================================================
RCS file: /cvsroot/fink/dists/10.4/unstable/main/finkinfo/devel/cmake.info,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- cmake.info  24 Jan 2006 15:24:41 -0000      1.1
+++ cmake.info  20 Jul 2006 16:52:38 -0000      1.2
@@ -1,16 +1,16 @@
 Package: cmake
-Version: 2.0.5
-Revision: 1003
-Source: http://www.cmake.org/files/v2.0/%n-%v.tar.gz
-Source-MD5: a73f328fea75af276e4c4cf8f08fecdc
+Version: 2.4.2
+Revision: 1002
+Source: http://www.cmake.org/files/v2.4/%n-%v.tar.gz
+Source-MD5: c774f932cbd0c77d3cd76f0f8f46e0d9
 License: BSD
 GCC: 4.0
 BuildDepends: libncurses5 (>= 5.4-20041023-1006)
 Depends: libncurses5-shlibs (>= 5.4-20041023-1006)
 Patch: %n.patch
 PatchScript: <<
- perl -pi -e 's,/usr/local,%p,g' Modules/*cmake
- perl -pi -e 's,\-lgcc,,' Modules/CMakeDefaultMakeRuleVariables.cmake
+# Virtualize explicit '/sw' in sources
+ perl -pi -e 's,/sw,%p,g' Modules/*cmake Modules/Platform/Darwin.cmake
 <<
 CompileScript: <<
 ./bootstrap --prefix=%p --docdir=/share/doc/%n --mandir=/share/man
@@ -36,7 +36,13 @@
  For the right linking of the GL and GLU libraries with Apple's X11,
  some of the FindOpenGL logic has to be disabled. Applications that use
  OpenGL with X11 need to declare the libraries. For an example, see the
- vtk-py23.info file. 
+ vtk-py.info file. 
+
+ The patch file contains some code from CMake CVS for getting the right
+ file names for dylibs.
+ The right install_name still has to be introduced by hand, 
+ the INSTALLNAME_DIR mechanism which is present in this version
+ or in current CVS does not work. 
 <<
 Maintainer: Martin Costabel <[EMAIL PROTECTED]>
 Homepage: http://www.cmake.org


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Fink-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fink-commits

Reply via email to