-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[rootx] Turn root
executable into symbolic link to root.exe
#20006
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
If the `root` executable was in the path and could be started, the `root.exe` is in the path to because they are in the same directory. Therefore it's not necessary to start `root.exe` with the full path.
There is no need for that, because the `root.exe` application also has a way to figure out `ROOTSYS` from the executable path if it's not set.
There is no need to two separate executables anymore, but for backwards compatibility we keep `root.exe` and then `root` is a symbolic link to it.
Test Results 22 files 22 suites 3d 18h 51m 24s ⏱️ For more details on these failures, see this check. Results for commit f5af848. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot!
Does this close https://its.cern.ch/jira/browse/ROOT-10697 ?
Please also fix these messages:
core/base/src/TApplication.cxx: fprintf(stderr, "ROOT splash screen is not visible with root.exe, use root instead.\n");
roofit/histfactory/config/prepareHistFactory:# we will switch here to use root.exe as it is done for the whole ROOT.
And the lost usage-help part.
Potentially add this change to the release-notes 6.38
if (std::getenv("ROOTIGNOREPREFIX")) { | ||
#endif | ||
// Try to set ROOTSYS depending on pathname of the executable | ||
SetRootSys(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are still a few places in the code that looks up ROOTSYS
(and thus could potentially lead to a difference in behavior between root
and root.exe
). Some (eg the one in TUnixSystem.cxx
) have additional search to find the 'right' value when not set) but (seemingly) not all.
As part of this PR, we need to review those later ones and either remove if the result is not used or annotated them as needed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Absolutely. I should mark this PR as draft to make clear that more work is needed.
There is no need to two separate executables anymore, but for backwards compatibility we keep
root.exe
and thenroot
is a symbolic link to it.