Rework the build system for static exes #652

Closed
opened 2022-01-08 09:54:23 +00:00 by vyzo · 1 comment
vyzo commented 2022-01-08 09:54:23 +00:00 (Migrated from github.com)

We currently have a flat static directory and mangle module names to mimick the hierarchy.
This creates problems with user includes with ffi as these names cannot be mangled and may conflict/overwrite each other.

The static cache should follow the package hierarchy to avoid these issues.
The main problem is the inclusion of gerbil low level macros in gx-gambc# and linkage of the gx-gambc runtime.
We can avoid this issue by using absolute paths for them, which makes sense now that we have configure/install and friends.

We may also consider building in tmp dir in the gerbil user path, but this may be unnecessary.
We can simply create the static exe stub in place and use absolute path linkage for includes.

cc @drewc @fare

We currently have a flat static directory and mangle module names to mimick the hierarchy. This creates problems with user includes with ffi as these names cannot be mangled and may conflict/overwrite each other. The static cache should follow the package hierarchy to avoid these issues. The main problem is the inclusion of gerbil low level macros in `gx-gambc#` and linkage of the `gx-gambc` runtime. We can avoid this issue by using absolute paths for them, which makes sense now that we have configure/install and friends. We may also consider building in tmp dir in the gerbil user path, but this may be unnecessary. We can simply create the static exe stub in place and use absolute path linkage for includes. cc @drewc @fare
vyzo commented 2023-09-04 08:31:48 +00:00 (Migrated from github.com)

Done! Welcome to the Future.

Done! Welcome to the Future.
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
mighty-gerbils/gerbil#652
No description provided.