The imgui 1.92.9b ini writer omits 'Column N' lines for columns without
saved data (e.g. the unsized, unsorted 'Zone' column of the child zones
table, which only persists the default Time sort). On restore, the
missing entry keeps Index == -1, the sequential fallback in
TableLoadSettingsForColumns() assigns it to the remaining column, and
TableFixDisplayOrder() sorts DisplayOrder -1 to the end - flipping the
column order (Time | Zone in the zone info child list) for the session.
Guard the non-reorderable load path against phantom entries.
Upstream: https://github.com/ocornut/imgui/issues/9519
ImGui OpenGL loader uses dlopen / dlsym / dlclose to load the OpenGL
implementation.
Linking with libdl is not needed with glibc >= 2.34 (released in 2021):
NEWS for version 2.34
=====================
Major new features:
* In order to support smoother in-place-upgrades and to simplify
the implementation of the runtime all functionality formerly
implemented in the libraries libpthread, libdl, libutil, libanl has
been integrated into libc. New applications do not need to link with
-lpthread, -ldl, -lutil, -lanl anymore.
(...)
Older glibc versions and also possibly other libc implementations still
need the libdl link.
Currently, the profiler will build against the git NFD, but link it as a
shared library. Since libnfd is not installed when building Tracy as a
distro package, it will end up actually depending on and running against
an older distro-provided NFD, hitting an unresolved function error due
to the newly added NFD function in git.
Other deps fetched with CPM are linked statically, avoiding this
problem.
Tracy requires some textures to have repeat wrapping mode set. The ImGui
implementation of samplers doesn't make it easy to achieve. Disalbe use
of samplers and rely on texture flags, as done originally.
Imgui-docking >=v1.92.3 GLFW back-end requires linking against x11 libraries. This solves link failures when building tracy with the LEGACY option turned on.