ValveSoftware / halflife

Half-Life 1 engine based games
Other
3.74k stars 629 forks source link

Linux: leave the default symbol visibility to improve modding with tools #3852

Open SmileyAG opened 1 month ago

SmileyAG commented 1 month ago

Closes #3562

At first I thought it might be because of the lack of -Wl,--export-dynamic and -fPIC as linker flags, although adding them had no effect. Then I started to lower the optimization levels, suspecting that this was due to the highest optimization level - that's not the issue either. Flags for debug information in the form -gdwarf-2 -g2 were also enabled.

Until I noticed -fvisibility=hidden and then it became clear to me why most of the function symbols in the .dynsym section were missing. Yeah....

@shawns-valve - these changes should also be applied to the engine as well, not just to game libraries!