Eigenstate: myrddin-dev mailing list

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Mbld: Open Questions.


On Sat, 13 Dec 2014 21:06:45 -0800
Ori Bernstein <ori@xxxxxxxxxxxxxx> wrote:

 
> Utility libraries.
> 
>     Right now, utility libraries aren't supported. I'd like to allow you
>     to create uninstalled libraries that binaries or other libraries can
>     depend on within a package. Any thoughts on how this should be
>     implemented?

Ok, so I've come up with a first, fragile, fucked up cut of this. You can
now declared dependencies on other libraries from binaries:

	bin foo = foo.myr lib bar;;
	lib bar = baz.myr;;

This is currently very half assed and hacky. For one, it only works with
libraries in the *SAME* directory as the source code. That means that,
for example:

	bin foo =
		foo.myr
		lib ../bar
	;;

will not work at the moment. This is something that I intend to fix in
the future.

Additionally, library dependencies are not yet transitive, and are ignored
on libraries. In other words:

	bin foo =
		foo.myr
		lib bar
	;;

	lib bar = ...
		lib baz
	;;

will fail with lib baz not being built before lib bar. But if you get lucky,
and the build order (through chance) ends up bulding lib baz first, you will
get a link error when linking foo, since it will not pick up lib baz.

Another thing I'll fix soon enough.

-- 
Ori Bernstein <ori@xxxxxxxxxxxxxx>

References:
Mbld: Open Questions.Ori Bernstein <ori@xxxxxxxxxxxxxx>