This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: compile sub-directory
- From: Bart Veer <bartv at ecoscentric dot com>
- To: jay dot foster at systech dot com
- Cc: ecos-discuss at ecos dot sourceware dot org
- Date: Thu, 19 Feb 2004 20:50:25 +0000 (GMT)
- Subject: Re: [ECOS] compile sub-directory
- References: <80B97DE95AEED311BA580050047FE98494F92B@mail.systech.com>
>>>>> "Jay" == Jay Foster <jay.foster@systech.com> writes:
Jay> When I add a compile statement to a package component like:
Jay> compile myfile
Jay> my code builds correctly. The source file is located in my
Jay> source_dir/<PKG>/current/src directory and the object file is
Jay> placed in my build_dir/<PKG>/current/src directory.
Jay> If I instead add a subdirectory to my file, like:
Jay> compile mydir/myfile
Jay> things go wrong. Everything works right, except the object
Jay> build directory (build_dir/<PKG>/current/src/mydir) doesn't
Jay> get created, so the compile fails. If I manually create this
Jay> directory, it all compiles fine.
Jay> Looking for other examples of this subdirectory usage, I
Jay> noticed the ethernet package
Jay> (io/eth/current/cdl/eth_drivers.cdl) does this same thing,
Jay> but it's subdirectories (one of net, lwip, stand_alone) do
Jay> get created in the build directory. How/where does this
Jay> happen? Does the CDL 'make' command suppress this activity in
Jay> anyway?
Currently the subdirectory should get created as a side effect of the
first file to get compiled. See the pattern rules in
packages/pkgconf/rules.mak for the exact details.
If you have a "make" property with priority < than 100 (the
priority assigned to compile properties) than it is possible the
subdirectory won't yet exist at the time the custom build step gets
run. Instead the custom build step can create the subdirectory itself.
Bart
--
Bart Veer eCos Configuration Architect
http://www.ecoscentric.com/ The eCos and RedBoot experts
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss