> From: Christian Weisgerber <[email protected]>
> Date: Sun, Nov 2, 2014 at 2:45 PM
> Subject: Build error: net/weechat
> To: [email protected]
>
>
> net/weechat didn't build in the latest amd64 bulk build. Specifically,
> it failed during packaging:
>
> Error: /usr/obj/weechat-1.0.1/fake-amd64/usr/local/bin/weechat-curses
> does not exist
>
> I'm attaching the full log. Due to the cmake-ninja random build
> order, it isn't diffable against that of previous, successful builds.
The diff below should fix the issue:
Index: patches/patch-src_gui_curses_CMakeLists_txt
===================================================================
RCS file: patches/patch-src_gui_curses_CMakeLists_txt
diff -N patches/patch-src_gui_curses_CMakeLists_txt
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_gui_curses_CMakeLists_txt 3 Nov 2014 11:05:38 -0000
@@ -0,0 +1,25 @@
+$OpenBSD$
+--- src/gui/curses/CMakeLists.txt.orig Sun Sep 28 08:59:19 2014
++++ src/gui/curses/CMakeLists.txt Mon Nov 3 11:52:33 2014
+@@ -84,15 +84,12 @@ add_dependencies(${EXECUTABLE} weechat_gui_curses)
+ # Because of a linker bug, we have to link 2 times with libweechat_core.a
+ target_link_libraries(${EXECUTABLE} ${STATIC_LIBS} weechat_gui_curses
${EXTRA_LIBS} ${STATIC_LIBS})
+
+-install(TARGETS ${EXECUTABLE} RUNTIME DESTINATION bin)
+-
+ # Create a symbolic link weechat-curses -> weechat
+ # This link is created for compatibility with old versions on /upgrade.
+ # It may be removed in future.
+-install(CODE "
+- EXECUTE_PROCESS(
+- COMMAND ${CMAKE_COMMAND} -E remove -f
\"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/weechat-curses${CMAKE_EXECUTABLE_SUFFIX}\"
+- COMMAND ${CMAKE_COMMAND} -E create_symlink
weechat${CMAKE_EXECUTABLE_SUFFIX}
\"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/weechat-curses${CMAKE_EXECUTABLE_SUFFIX}\"
+- )
+- LIST(APPEND CMAKE_INSTALL_MANIFEST_FILES
\"${CMAKE_INSTALL_PREFIX}/bin/weechat-curses${CMAKE_EXECUTABLE_SUFFIX}\")
+-")
++add_custom_command(TARGET ${EXECUTABLE} POST_BUILD
++ COMMAND ${CMAKE_COMMAND} -E create_symlink
$<TARGET_FILE_NAME:${EXECUTABLE}>
${CMAKE_CURRENT_BINARY_DIR}/$<TARGET_FILE_NAME:${EXECUTABLE}>-curses
++)
++
++install(TARGETS ${EXECUTABLE} RUNTIME DESTINATION bin)
++install(FILES
${CMAKE_CURRENT_BINARY_DIR}/$<TARGET_FILE_NAME:${EXECUTABLE}>-curses
DESTINATION bin)