1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

science/py-hoomd-blue: Fix build with LLVM 19

Approved by:	portmgr (blanket)
MFH:		2024Q4
This commit is contained in:
Jason E. Hale 2024-11-03 12:39:32 -05:00
parent 70227638fd
commit 681ab3448b
3 changed files with 48 additions and 2 deletions

View File

@ -12,8 +12,6 @@ WWW= https://glotzerlab.engin.umich.edu/hoomd-blue/ \
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN_FreeBSD_15= compilation fails with clang-19, see https://github.com/glotzerlab/hoomd-blue/issues/1924
BUILD_DEPENDS= pybind11>0:devel/pybind11
USES= cmake:testing compiler:c++17-lang eigen:3 localbase:ldflags python shebangfix # see https://github.com/glotzerlab/hoomd-blue/issues/1204

View File

@ -0,0 +1,18 @@
Fix build with LLVM 19
/wrkdirs/usr/ports/science/py-hoomd-blue/work/hoomd-blue-4.9.0/hoomd/GPUFlags.h:160:27:
error: reference to non-static member function must be called
160 | this->resetFlags(from.readFlags);
| ~~~~~^~~~~~~~~
--- hoomd/GPUFlags.h.orig 2024-10-31 16:09:15 UTC
+++ hoomd/GPUFlags.h
@@ -157,7 +157,7 @@ GPUFlags<T>::GPUFlags(const GPUFlags& from)
memclear();
// copy over the data to the new GPUFlags
- this->resetFlags(from.readFlags);
+ this->resetFlags(from.readFlags());
}
template<class T> GPUFlags<T>& GPUFlags<T>::operator=(const GPUFlags& rhs)

View File

@ -0,0 +1,30 @@
Fix build with LLVM 19
/wrkdirs/usr/ports/science/py-hoomd-blue/work/hoomd-blue-4.9.0/hoomd/extern/nano-signal-slot/nano_signal_slot.hpp:46:45:
error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
46 | Observer::insert(Delegate::template bind (instance), this);
| ^
/wrkdirs/usr/ports/science/py-hoomd-blue/work/hoomd-blue-4.9.0/hoomd/extern/nano-signal-slot/nano_signal_slot.hpp:87:45:
error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
87 | Observer::remove(Delegate::template bind (instance), this);
--- hoomd/extern/nano-signal-slot/nano_signal_slot.hpp.orig 2016-07-13 20:06:52 UTC
+++ hoomd/extern/nano-signal-slot/nano_signal_slot.hpp
@@ -43,7 +43,7 @@ class Signal<RT(Args...)> : private Observer
template <typename L>
void connect(L* instance)
{
- Observer::insert(Delegate::template bind (instance), this);
+ Observer::insert(Delegate::bind (instance), this);
}
template <typename L>
void connect(L& instance)
@@ -84,7 +84,7 @@ class Signal<RT(Args...)> : private Observer
template <typename L>
void disconnect(L* instance)
{
- Observer::remove(Delegate::template bind (instance), this);
+ Observer::remove(Delegate::bind (instance), this);
}
template <typename L>
void disconnect(L& instance)