Unbundling tinyxml2 from gromacs and using our own, which is newer, broke gromacs build. This patch fixes three issues: - cmake now errors out if using multiple target_link_libraries with mixed styles of signatures. - Error handling API changed, fix the testutils/refdata_xml.cpp code by using the new API: document.ErrorStr() & tinyxml2::XML_SUCCESS. Those fixes will be submitted for inclusion to upstream, but may not be suitable there as long as they still keep the old version bundled. First hunk has already been requested for merging. Third is in discussion. Second will only be sent if third is OK'ed. diff -ruN gromacs-2020.2/src/testutils/CMakeLists.txt gromacs-2020.2-fixed/src/testutils/CMakeLists.txt --- gromacs-2020.2/src/testutils/CMakeLists.txt 2020-04-30 18:33:44.000000000 +0200 +++ gromacs-2020.2-fixed/src/testutils/CMakeLists.txt 2020-05-01 22:52:16.356000000 +0200 @@ -73,7 +73,7 @@ if(HAVE_TINYXML2) include_directories(SYSTEM ${TinyXML2_INCLUDE_DIR}) - target_link_libraries(testutils ${TinyXML2_LIBRARIES}) + target_link_libraries(testutils PRIVATE ${TinyXML2_LIBRARIES}) else() include_directories(BEFORE SYSTEM "../external/tinyxml2") endif() diff -ruN gromacs-2020.2/src/testutils/refdata_xml.cpp gromacs-2020.2-fixed/src/testutils/refdata_xml.cpp --- gromacs-2020.2/src/testutils/refdata_xml.cpp 2020-04-30 18:33:44.000000000 +0200 +++ gromacs-2020.2-fixed/src/testutils/refdata_xml.cpp 2020-05-01 23:17:09.556000000 +0200 @@ -206,21 +206,12 @@ document.LoadFile(path.c_str()); if (document.Error()) { - const char* errorStr1 = document.GetErrorStr1(); - const char* errorStr2 = document.GetErrorStr2(); + const char* errorStr = document.ErrorStr(); std::string errorString("Error was "); - if (errorStr1) - { - errorString += errorStr1; - } - if (errorStr2) - { - errorString += errorStr2; - } - if (!errorStr1 && !errorStr2) - { + if (errorStr) + errorString += errorStr; + else errorString += "not specified."; - } GMX_THROW(TestException("Reference data not parsed successfully: " + path + "\n." + errorString + "\n")); } @@ -371,7 +362,7 @@ XMLElementPtr rootElement = createRootElement(&document); createChildElements(rootElement, rootEntry); - if (document.SaveFile(path.c_str()) != tinyxml2::XML_NO_ERROR) + if (document.SaveFile(path.c_str()) != tinyxml2::XML_SUCCESS) { GMX_THROW(TestException("Reference data saving failed in " + path)); } :00:24 +0300'>2023-10-15gnu: mesa: Fix cross-compiling....* gnu/packages/gl.scm (mesa)[native-inputs]: When cross-compiling add pkg-config-for-build, wayland, wayland-protocols. [arguments]: Adjust configure-flags to use cond to also match the architecture when cross-compiling. Add phase when cross-compilng to set the location of llvm-config. Efraim Flashner 2023-09-30gnu: libglvnd: Update to 1.7.0....* gnu/packages/gl.scm (libglvnd): Update to 1.7.0. Signed-off-by: Christopher Baines <mail@cbaines.net> Hilton Chain 2023-09-26gnu: glfw: Patch dlopen calls....* gnu/packages/gl.scm (glfw) [arguments]: Add #:modules and #:phases argument. [inputs]: New field. Maxim Cournoyer 2023-08-02gnu: mesa: Update skipped tests on powerpc-linux....* gnu/packages/gl.scm (mesa)[arguments]: When building for powerpc-linux adjust the 'disable-failing-test phase for changes in failed tests. Efraim Flashner 2023-07-29gnu: mesa: Update to 23.1.4....* gnu/packages/gl.scm (mesa): Update to 23.1.4. John Kehayias 2023-07-29gnu: mesa: Enable zstd compression for shader cache....* gnu/packages/gl.scm (mesa)[inputs]: Add zstd:lib. [arguments]: Add '-Dzstd=enabled' to configure-flags. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Sigve Sudland 2023-07-29gnu: mesa: Ungraft....* gnu/packages/gl.scm (mesa)[configure-flags]: Add intel_hasvk and swrast to vulkan-drivers. [replacement]: Remove. (mesa-vulkan-hasvk): Remove variable. John Kehayias 2023-07-29gnu: mesa: Fix VDPAU drivers path....The VDPAU_DRIVER_PATH environment variable must contain only one directory. * gnu/packages/gl.scm (mesa)[native-search-paths]: Fix specification for VDPAU_DRIVER_PATH. Signed-off-by: John Kehayias <john.kehayias@protonmail.com> Guillaume Le Vaillant 2023-07-16gnu: mesa: Fix Vulkan on older Intel GPUs....Mesa split the Vulkan intel driver into two: intel and intel_hasvk. Enables intel_hasvk so vulkan functions on older intel GPUs again, and swrast for lavapipe as a fallback. * gnu/packages/gl.scm (mesa-vulkan-hasvk): New variable. (mesa): Graft with mesa-vulkan-hasvk. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> Lilah Tascheter