[coyotos-dev] Build tree changes
Jonathan S. Shapiro
shap at eros-os.com
Thu Feb 21 15:50:33 EST 2008
I have just made some fairly significant changes to the build process
and the configure script:
1. Within the tree, output now goes into the BUILD/$(COYOTOS_TARGET)
directory rather than the BUILD/ directory. This permits object
files for multiple architectures to co-exist in the tree
peacefully.
While I was at it, I fixed some dependencies so that parallel make
should now work.
2. COYOTOS_SRC is no longer required to be a subdirectory of
COYOTOS_ROOT. If you run the configure script, it will
assume by default that COYOTOS_ROOT should be "the directory
..../coyotos, such that ..../coyotos/src is the directory
containing the configure script"
However, if you give configure the --prefix option, you can
override this choice and place COYOTOS_ROOT at any directory
you like.
If COYOTOS_SRC is not contained within COYOTOS_ROOT, the result
of "make targdir-clean" will be to whack the COYOTOS_ROOT directory
tree completely. If COYOTOS_SRC *is* inside COYOTOS_ROOT, the
generated directories will be deleted, but COYOTOS_ROOT itself
will not be molested.
3. configure remembers configurations for multiple targets. Unless you
specify otherwise, running "make" will build the most recent target
that you have configured. Switching back to a previously configured
target will recover any settings that you had previously set unless
you override them.
Alternatively, if you specify "make TARGET=i386-unknown-coyotos",
the build system will build that target using the last available
configuration if one exists.
Unless you want a totally scrambled tree, it is your responsibility
to either
a) set distinct prefixes for each build, or
b) use make distclean to ensure that the prefix, if shared,
is clobbered before building the next architecture, or
c) override COYOTOS_ROOT for each build to ensure that builds
for different target configurations will install to different
output trees.
shap
More information about the coyotos-dev
mailing list