mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-20 00:21:35 +00:00
Add patch to fix the build on FreeBSD 10.1.
LyX 2.2.0 had some code changes and is using std::bind() when C++11 support is available. The libc++ version on 10.0 and 10.1 does not work as expected, so force boost::bind() on those systems to avoid the following error: frontends/qt4/liblyxqt4.a(GuiWorkArea.o): In function `_ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE': GuiWorkArea.cpp:(.text._ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE[_ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE]+0xa): undefined reference to `_ZNSt3__18__invokeIRMN3lyx8frontend11GuiWorkAreaEFvvERPS3_JEvEEDTcldsdeclsr3std3__1E7forwardIT0_Efp0_Efp_spclsr3std3__1E7forwardIT1_Efp1_EEEOT_OS9_DpOSA_' /usr/bin/ld: lyx: hidden symbol `_ZNSt3__18__invokeIRMN3lyx8frontend11GuiWorkAreaEFvvERPS3_JEvEEDTcldsdeclsr3std3__1E7forwardIT0_Efp0_Efp_spclsr3std3__1E7forwardIT1_Efp1_EEEOT_OS9_DpOSA_' isn't defined /usr/bin/ld: final link failed: Nonrepresentable section on output
This commit is contained in:
parent
6a78028efc
commit
26dd086b80
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=418407
@ -48,4 +48,10 @@ HUNSPELL_LIB_DEPENDS= libhunspell-1.3.so:textproc/hunspell
|
||||
NLS_CONFIGURE_OFF= --disable-nls
|
||||
NLS_USES= gettext
|
||||
|
||||
.include <bsd.port.mk>
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${OPSYS} == FreeBSD && (${OSVERSION} >= 1000000 && ${OSVERSION} < 1002000)
|
||||
EXTRA_PATCHES= ${FILESDIR}/extrapatch-src_frontends_qt4_GuiWorkArea.cpp
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
28
print/lyx/files/extrapatch-src_frontends_qt4_GuiWorkArea.cpp
Normal file
28
print/lyx/files/extrapatch-src_frontends_qt4_GuiWorkArea.cpp
Normal file
@ -0,0 +1,28 @@
|
||||
This patch is necessary for FreeBSD 10.0 and 10.1, whose libc++ does not work
|
||||
with boost and std::bind() and leads to the following failure:
|
||||
|
||||
frontends/qt4/liblyxqt4.a(GuiWorkArea.o): In function `_ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE':
|
||||
GuiWorkArea.cpp:(.text._ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE[_ZN5boost6detail8function26void_function_obj_invoker0INSt3__16__bindIMN3lyx8frontend11GuiWorkAreaEFvvEJPS7_EEEvE6invokeERNS1_15function_bufferE]+0xa): undefined reference to `_ZNSt3__18__invokeIRMN3lyx8frontend11GuiWorkAreaEFvvERPS3_JEvEEDTcldsdeclsr3std3__1E7forwardIT0_Efp0_Efp_spclsr3std3__1E7forwardIT1_Efp1_EEEOT_OS9_DpOSA_'
|
||||
/usr/bin/ld: lyx: hidden symbol `_ZNSt3__18__invokeIRMN3lyx8frontend11GuiWorkAreaEFvvERPS3_JEvEEDTcldsdeclsr3std3__1E7forwardIT0_Efp0_Efp_spclsr3std3__1E7forwardIT1_Efp1_EEEOT_OS9_DpOSA_' isn't defined
|
||||
/usr/bin/ld: final link failed: Nonrepresentable section on output
|
||||
|
||||
--- src/frontends/qt4/GuiWorkArea.cpp.orig 2016-05-23 23:47:31 UTC
|
||||
+++ src/frontends/qt4/GuiWorkArea.cpp
|
||||
@@ -55,6 +55,8 @@
|
||||
#include "frontends/FontMetrics.h"
|
||||
#include "frontends/WorkAreaManager.h"
|
||||
|
||||
+#include <boost/bind.hpp>
|
||||
+
|
||||
#include <QContextMenuEvent>
|
||||
#if (QT_VERSION < 0x050000)
|
||||
#include <QInputContext>
|
||||
@@ -320,7 +322,7 @@ void GuiWorkArea::init()
|
||||
d->setCursorShape(Qt::IBeamCursor);
|
||||
|
||||
d->synthetic_mouse_event_.timeout.timeout.connect(
|
||||
- bind(&GuiWorkArea::generateSyntheticMouseEvent,
|
||||
+ boost::bind(&GuiWorkArea::generateSyntheticMouseEvent,
|
||||
this));
|
||||
|
||||
// Initialize the vertical Scroll Bar
|
Loading…
Reference in New Issue
Block a user