currently
working on HAL and HAL targets (ACPI, MP, UP and so on), I discovered a quite bad issue in
our build process.
Just look at the function HalInitSystem@8 (halinit.c), depending on the build target we
don't add the same code (look at CONFIG_SMP, which is only defined for HAL MP). But,
currently, as we are building using HAL library for reducing code redudancy, this
halinit.c file is only built ONCE. So, build targets aren't taken into account (MP,
ACPI).
Does ACPI have a compile time macro, like CONFIG_ACPI?
Yes.
So, two
choices, or we break that model, and forget about lib, and just keep base .rbuild
(hal.rbuild, halacpi.rbuild, and so forth) with all files defined in those.
That
would increase build time.
Well, HAL isn't that big. It would more certainly
break maintainability.
Or with find
something smarter better such as rebuilding the lib with the new flags for each build?
That kindof defeats the purpose of the libs, doesn't it?
Most probably,
yes. But, one thing is sure, having an absolute generic lib sounds impossible.
For the rest, I had an other idea, to complete the changes you talked about: getting the
HAL entry point out of the libs.
Regards,
P. Schweitzer