[MacPorts] #25614: cmake should use MacPorts' openssl
#25614: cmake should use MacPorts' openssl ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- The patch for #25475 changed CMake to use the system's openssl library. The port should instead use the MacPorts openssl library as depends_lib dependency. -- Ticket URL: <http://trac.macports.org/ticket/25614> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- Changes (by css@…): * status: new => assigned -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- Comment(by css@…): Adding `configure.env CMAKE_INSTALL_PREFIX=${prefix}` seems to pick up the correct OpenSSL library. Performing a full build to verify. {{{ -- Found OpenSSL: /opt/local/lib/libssl.dylib;/opt/local/lib/libcrypto.dylib }}} -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- Comment(by css@…): Looks like that fixes openssl, but not ncurses: {{{ otool -L work/destroot/opt/local/bin/ccmake work/destroot/opt/local/bin/ccmake: /opt/local/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libidn.11.dylib (compatibility version 18.0.0, current version 18.2.0) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.29.0) /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.0) }}} -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- Comment(by css@…): I applied the openssl fix in r69717. Fixing the ncurses link might require the use of an init file to the CMake build process, as I need to specify several variables to point toward the ${prefix}. * create a cmake init file * copy the init file into worksrcpath * reinplace the prefix path * configure cmake using the init file -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- Comment(by css@…): CMake has some trickery when both libcurses and libncurses are present. I have to make its bootstrap ignore the presence of the MacOS X libcurses library and properly force it to use MacPorts' libncurses. -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses ------------------------------+--------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: cmake ------------------------------+--------------------------------------------- Comment(by css@…): About the best I can do that works is to manually modify the `CMakeCache.txt` after configuration. I can make this a platform variant since I don't know how other systems might handle curses, although I think those are discouraged now. I'll check upstream if there's a way to make the bootstrap properly ignore the system curses and use our ncurses. -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: fixed | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Changes (by css@…): * status: assigned => closed * resolution: => fixed Comment: Fixed in r70407, although for now it's within the scope of a platform variant. -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Changes (by gnwiii@…): * status: closed => reopened * resolution: fixed => Comment: On Leopard, port upgrade cmake failed: CMake has bootstrapped. Now run gmake. DEBUG: Executing proc-post-org.macports.configure-configure-0 DEBUG: couldn't read file "/opt/local/var/macports/build/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_devel_cmake/work/cmake-2.8.2/CMakeCache.txt": no such file or directory while executing "exec /usr/bin/sed s|/usr/lib/libcurses|/opt/local/lib/libncurses|g < /opt/local/var/macports/build/_opt_local_var_macports_sources_svn.macports.org_tr..." ("eval" body line 1) invoked from within "eval exec $cmdline" Error: reinplace: couldn't read file "/opt/local/var/macports/build/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_devel_cmake/work/cmake-2.8.2/CMakeCache.txt": no such file or directory Error: Target org.macports.configure returned: reinplace sed(1) failed DEBUG: Backtrace: reinplace sed(1) failed while executing "$post $targetname" I have: $ grep universal /opt/local/etc/macports/macports.conf # Options for Universal Binaries (+universal variant) universal_archs x86_64 i386 "port -d install cmake -universal" does work -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Comment(by css@…): Replying to [comment:9 gnwiii@…]:
On Leopard, port upgrade cmake failed:
Error: reinplace: couldn't read file "/opt/local/var/macports/build/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_devel_cmake/work/cmake-2.8.2/CMakeCache.txt": no such file or directory
I didn't take universal into account, as I only build for my architecture. I think I have a patch that should fix it, would you mind giving it a try? -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Comment(by domiman@…): I'll try to give that a try the next few days... -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Comment(by nicos_pavlov@…): I tested the patch for universal build, and it worked for me (universal building in my case i386 and x86_64). I had some problems however some problems with the lines {{{ reinplace "s|/usr/lib/libcurses|${prefix}/lib/libncurses|g" \ ${dir}/CMakeCache.txt }}} of the patch, apparently due to too much spaces. I had to modify it to {{{ reinplace "s|/usr/lib/libcurses|${prefix}/lib/libncurses|g" ${dir}/CMakeCache.txt }}} for the patch to work. -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:13> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Changes (by ryandesign@…): * cc: ryandesign@… (added) Comment: Replying to [comment:10 css@…]:
I have a patch that should fix it, would you mind giving it a try? Thanks, the patch works great as written; you should commit it.
-- Ticket URL: <http://trac.macports.org/ticket/25614#comment:14> MacPorts <http://www.macports.org/> Ports system for Mac OS
#25614: cmake should use MacPorts' openssl and ncurses -------------------------------+-------------------------------------------- Reporter: css@… | Owner: css@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Resolution: fixed | Keywords: Port: cmake | -------------------------------+-------------------------------------------- Changes (by css@…): * status: reopened => closed * resolution: => fixed Comment: Committed to r70553! Thanks for confirming the fix! -- Ticket URL: <http://trac.macports.org/ticket/25614#comment:16> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts