Skip to content
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

Precompiled stdlib #768

Merged
merged 28 commits into from
Aug 29, 2023
Merged

Precompiled stdlib #768

merged 28 commits into from
Aug 29, 2023

Conversation

vyzo
Copy link
Collaborator

@vyzo vyzo commented Aug 27, 2023

This is a monumental change in the compilation of static exes: the gerbil std is precompiled into libgerbil.a during the build, and static exec compilation is now super fast; what took a minute takes a second.

With this change, we can now (finally) make static compilation the default.

TBD:

  • add -full-program-optimization option in the front end/make
  • add -dynamic and dynamic-exe: for building dynamic executables
  • make static executable compilation the default
  • update documentation
  • add some compilation tests so that we can easily check that everything works as expected in OSes other than linux

@vyzo vyzo requested review from fare, ober and drewc August 27, 2023 17:37
vyzo added 14 commits August 27, 2023 20:51
- -static is now implied, unless you pass -dynamoc
- -dynamic builds dynamic executables
- -full-program-optimization enables the old style (slow) compilation
also adds dynamic-exe: and optimized-exe: to the zoo
tired of meaningless linker warnings...
static executables for the win!
@vyzo vyzo marked this pull request as ready for review August 28, 2023 08:21
@vyzo vyzo added this to the Gerbil18 milestone Aug 28, 2023
@vyzo vyzo merged commit 1fc86ae into master Aug 29, 2023
@vyzo vyzo deleted the precompiled-stdlib branch August 29, 2023 19:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants