ci: declare all oakengine handle types opaque for Qt metatypes; defer gtest discovery on Windows

- Linux GCC rejects QMetaType instantiation over incomplete types
  (static_assert(sizeof(T))); Q_DECLARE_OPAQUE_POINTER every opaque
  OakEngine* handle in the public headers so QList<OakEngineTask*> etc
  compile
- Windows: gtest discovery ran the fresh exe before the DLLs were next
  to it; use DISCOVERY_MODE PRE_TEST on WIN32 and copy the DLLs for
  ctest time
This commit is contained in:
2026-08-02 17:44:51 +08:00
parent d57c812fa6
commit 824e352da1
16 changed files with 46 additions and 8 deletions
+3
View File
@@ -2087,6 +2087,9 @@ oakengine_node_get_video_frame_cache(const OakEngineNode *self);
Q_DECLARE_OPAQUE_POINTER(OakEngineNode *)
Q_DECLARE_OPAQUE_POINTER(OakEngineKeyframe *)
Q_DECLARE_OPAQUE_POINTER(OakEngineNodeDragger *)
Q_DECLARE_OPAQUE_POINTER(OakEngineFrameCache *)
Q_DECLARE_OPAQUE_POINTER(OakEngineThumbnailCache *)
Q_DECLARE_OPAQUE_POINTER(OakEngineWaveformCache *)
#endif
#endif /* OAKENGINE_NODE_H */