2014-01-01 15:11:48

by Shea Levy

[permalink] [raw]
Subject: Build and Source Tree Requirements for Out-of-tree Modules

Hi all,

I am a package maintainer for the kernel for the NixOS distribution. We
support users building out-of-tree modules and other packages that might
depend on the kernel source or build trees, but make modules_install
copies the entire source and build trees (we build with $(O) set) to
$(INSTALL_PATH), and those are some big paths to keep around. Is there
any documentation on which of those files should actually be needed by
any out-of-tree tools? For example I'm guessing the intermediate object
files in the build tree or the .c files in the source tree are not
necessary, but it would be nice if there were a definitive list of what
could be removed to save space.

Regards,
Shea Levy

P.S. I am not subscribed to the list, please CC me in responses.


2014-01-01 20:04:31

by Austin S Hemmelgarn

[permalink] [raw]
Subject: Re: Build and Source Tree Requirements for Out-of-tree Modules

On 01/01/2014 10:11 AM, Shea Levy wrote:
> Hi all,
>
> I am a package maintainer for the kernel for the NixOS
> distribution. We support users building out-of-tree modules and
> other packages that might depend on the kernel source or build
> trees, but make modules_install copies the entire source and build
> trees (we build with $(O) set) to $(INSTALL_PATH), and those are
> some big paths to keep around. Is there any documentation on which
> of those files should actually be needed by any out-of-tree tools?
> For example I'm guessing the intermediate object files in the build
> tree or the .c files in the source tree are not necessary, but it
> would be nice if there were a definitive list of what could be
> removed to save space.
Running 'make modules_prepare' in a clean source tree should set up
the sources with everything needed for out of tree modules, it largely
amounts to the .config file, a few scripts, and a couple of specific
other files.

2014-01-02 02:24:59

by Shea Levy

[permalink] [raw]
Subject: Re: Build and Source Tree Requirements for Out-of-tree Modules

Hi,

On 01/01/2014 03:04 PM, Austin S Hemmelgarn wrote:
> On 01/01/2014 10:11 AM, Shea Levy wrote:
>> Hi all,
>>
>> I am a package maintainer for the kernel for the NixOS
>> distribution. We support users building out-of-tree modules and
>> other packages that might depend on the kernel source or build
>> trees, but make modules_install copies the entire source and build
>> trees (we build with $(O) set) to $(INSTALL_PATH), and those are
>> some big paths to keep around. Is there any documentation on which
>> of those files should actually be needed by any out-of-tree tools?
>> For example I'm guessing the intermediate object files in the build
>> tree or the .c files in the source tree are not necessary, but it
>> would be nice if there were a definitive list of what could be
>> removed to save space.
> Running 'make modules_prepare' in a clean source tree should set up
> the sources with everything needed for out of tree modules, it largely
> amounts to the .config file, a few scripts, and a couple of specific
> other files.
>
Thanks so much! It looks like this can replace the build tree, so now
all I need to figure out is how much of the source tree I can get rid
of. The Makefile in the modules_prepare directory just basically
re-calls make with -C /path/to/source/tree, so I need at least the
Makefile...

~Shea Levy