~sircmpwn/hare#517: 
driver: add hare.ini support

Status
REPORTED
Submitter
~sircmpwn
Assigned to
No-one
Submitted
3 years ago
Updated
1 year, 5 months ago
Labels
driver priority

~ecs 1 year, 8 months ago

i think we should decrease the scope of this to just adding -l flags to the linker. have the build driver pick up libs[+tags].txt, a newline-delimited list of libraries to passed to the linker with -l. modules that require libc would add a static abort in -libc.ha, and local .os are picked up as inputs in module3

~sircmpwn 1 year, 7 months ago

I think it's nice to have a few more things, namely automating codegen or building mixed-source modules with languages other than Hare and assembly, so that most software can be built simply with 'hare build'. Not entirely opposed to making the user lean on make a bit, though.

~sircmpwn 1 year, 7 months ago

Also, using an ini file rather than something simple like libs.txt would be good to make sure we have room for future expansion. Also interested in using hare.ini to reconsider the inclusion/exclusion approach away from magic file names with +tags.

~sircmpwn 1 year, 7 months ago

Oh, and one more note: the exact -l flags are platform-specific, and vary between Linux distros.

~smlavine 1 year, 5 months ago

Is it planned to be a requirement for modules to have a hare.ini file present? I like the current simplicity of implicit modules from directory structure.

illiliti 1 year, 5 months ago ยท edit

I would like to avoid hare.ini too

~ecs 1 year, 5 months ago

mandatory hare.ini is definitely on the table, it would improve a significant number of things. however, i also like the current simplicity quite a bit, so we'll weigh those two against each other once we're closer to doing this

~sircmpwn 1 year, 5 months ago

I think a good proposal from an earlier discussion is that we only have to use hare.ini to disambiguate certain situations, such as a module which has submodules but itself has no Hare sources. If a directory has Hare sources in it we can infer that it's a module; if not but it should still be a module then hare.ini comes in.

~smlavine 1 year, 5 months ago

I agree with this.

Register here or Log in to comment, or comment via email.