Skip to content

[ftgl] Download instead of bundle and bump from 2.1.2 to 2.4, and use CMake target#21898

Open
ferdymercury wants to merge 11 commits intoroot-project:masterfrom
ferdymercury:bftgl
Open

[ftgl] Download instead of bundle and bump from 2.1.2 to 2.4, and use CMake target#21898
ferdymercury wants to merge 11 commits intoroot-project:masterfrom
ferdymercury:bftgl

Conversation

@ferdymercury
Copy link
Copy Markdown
Collaborator

No description provided.

@ferdymercury ferdymercury changed the title [ftgl] Download instead of bundle and bump to 2.4, and use CMake target [ftgl] Download instead of bundle and bump from 2.1.2 to 2.4, and use CMake target Apr 12, 2026
@ferdymercury ferdymercury force-pushed the bftgl branch 3 times, most recently from 04392d9 to 20d44ae Compare April 12, 2026 19:57
@ferdymercury ferdymercury force-pushed the bftgl branch 4 times, most recently from eb09a22 to 5c9b702 Compare April 12, 2026 22:53
@ferdymercury ferdymercury added the skip code analysis Skip the code analysis CI steps for this PR, including verifying clang-formatting and running Ruff. label Apr 12, 2026
@ferdymercury ferdymercury marked this pull request as ready for review April 12, 2026 23:24
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 13, 2026

Test Results

    22 files      22 suites   3d 7h 43m 29s ⏱️
 3 850 tests  3 845 ✅ 0 💤 5 ❌
76 043 runs  76 031 ✅ 6 💤 6 ❌

For more details on these failures, see this check.

Results for commit c45daa2.

♻️ This comment has been updated with latest results.

Comment thread builtins/ftgl/CMakeLists.txt Outdated
Comment thread builtins/ftgl/0002-fix-type-error.patch Outdated
Comment thread builtins/ftgl/0002-fix-type-error.patch
@ferdymercury ferdymercury requested a review from silverweed April 13, 2026 10:38
Comment thread builtins/ftgl/CMakeLists.txt Outdated
Comment thread builtins/ftgl/CMakeLists.txt Outdated
Comment thread builtins/ftgl/CMakeLists.txt
Comment thread graf2d/asimage/CMakeLists.txt
Comment thread builtins/freetype/CMakeLists.txt Outdated
@ferdymercury ferdymercury force-pushed the bftgl branch 2 times, most recently from 8c0dafd to a430560 Compare April 16, 2026 13:09
@ferdymercury ferdymercury requested review from hageboeck and linev April 17, 2026 09:57
@dpiparo dpiparo added this to the 6.42.00 milestone Apr 21, 2026
@dpiparo
Copy link
Copy Markdown
Member

dpiparo commented Apr 21, 2026

Thanks for this work. Since this week we are branching v6-40-00-patches, I propose to merge it immediately after on the main branch, so to have it in November for 6.42.00.

@dpiparo
Copy link
Copy Markdown
Member

dpiparo commented Apr 26, 2026

It seems the failure on macbeta is unrelated

@dpiparo
Copy link
Copy Markdown
Member

dpiparo commented Apr 28, 2026

Maybe before merging, to avoid increasing confusion, this item should be addressed: #22076

@dpiparo
Copy link
Copy Markdown
Member

dpiparo commented Apr 28, 2026

@linev what do you think?

@linev
Copy link
Copy Markdown
Member

linev commented Apr 28, 2026

@dpiparo

My debugging shows that external libftgl crashes with symbols.ttf font.
This font used to display greek letters.
I need that somebody else confirms my observation. Just run:

[root] gStyle->SetCanvasPreferGL(true);
[root] .x $ROOTSYS/tutorials/visualisation/graphics/latex.C

At my current knowledge - it is not good idea to use external libftgl by default

@dpiparo
Copy link
Copy Markdown
Member

dpiparo commented Apr 28, 2026

on macos26, ftgl installed with brew, version 2.1.3, I get with the example above:

root [0] gStyle->SetCanvasPreferGL(true);
root [1] .x $ROOTSYS/tutorials/visualisation/graphics/latex.C
Assertion failed: (fSelectedDrawable > fPimpl->GetRootWindowID() && "ClearWindow, fSelectedDrawable is invalid"), function ClearWindow, file TGCocoa.mm, line 772.

@linev
Copy link
Copy Markdown
Member

linev commented Apr 28, 2026

But on mac we are using our own ftgl.

You see failure from basic TVirtualX interface - it complains some invalid id when closing window.
Most probably it unrelated to ftgl.
I will check later where it comes from.

On Mac I see problems with rendering TLatex in GL mode.
I hope my recent changes will fix them.

… CMake target

[ftgl] try to fix win32 find-package error

[ftgl] patch to fix win32 compilation error

[ftgl] fix win32 static flag

Attempt to fix

     Creating library C:/ROOT-CI/build/lib/libRGL.lib and object C:/ROOT-CI/build/lib/libRGL.exp
TGLFontManager.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall FTFont::BBox(char const *,float &,float &,float &,float &,float &,float &)" (__imp_?BBox@FTFont@@QAEXPBDAAM11111@Z) referenced in function "private: void __thiscall TGLFont::RenderHelper<char>(char const *,double,double,double,double)const " (??$RenderHelper@D@TGLFont@@ABEXPBDNNNN@Z) [C:\ROOT-CI\build\graf3d\gl\RGL.vcxproj]
TGLText.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall FTFont::BBox(char const *,float &,float &,float &,float &,float &,float &)" (__imp_?BBox@FTFont@@QAEXPBDAAM11111@Z) [C:\ROOT-CI\build\graf3d\gl\RGL.vcxproj]
TGLFontManager.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall FTFont::BBox(wchar_t const *,float &,float &,float &,float &,float &,float &)" (__imp_?BBox@FTFont@@QAEXPB_WAAM11111@Z) referenced in function "private: void __thiscall TGLFont::RenderHelper<wchar_t>(wchar_t const *,double,double,double,double)const " (??$RenderHelper@_W@TGLFont@@ABEXPB_WNNNN@Z) [C:\ROOT-CI\build\graf3d\gl\RGL.vcxproj]
C:\ROOT-CI\build\bin\libRGL.dll : fatal error LNK1120: 2 unresolved externals [C:\ROOT-CI\build\graf3d\gl\RGL.vcxproj]

because FLAG not propagated, they only use local add_definitions (CMake 2.8) rather than target-based

[gl] encapsulate dependency behind CMake target

[cmake] make git command compatible with some local settings
@bellenot
Copy link
Copy Markdown
Member

Since there are some patches, maybe the same recipe than the one in commit bfe9a83 should be applied?

@ferdymercury ferdymercury added the clean build Ask CI to do non-incremental build on PR label Apr 29, 2026
@ferdymercury
Copy link
Copy Markdown
Collaborator Author

Since there are some patches, maybe the same recipe than the one in commit bfe9a83 should be applied?

Good point, added in last couple of commits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clean build Ask CI to do non-incremental build on PR pr:squash on merge skip code analysis Skip the code analysis CI steps for this PR, including verifying clang-formatting and running Ruff.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants