mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-26 12:00:48 -09:00
scancpan: fix detection of native module
When a module is native or depends of a native module, it must be
disabled for static builds via its Config.in
We detect native modules by looking at the filenames listed in the
MANIFEST. If there is a file which looks like it contains code that
much be compiled (e.g. .c, .h and so on...), then we exclude that
module (and its dependencies) from static builds.
That's what we tried to do so far, but failed when there was a
comment on the same line as the filename in the manifest, like so:
foo-bar.c # Bla bla bla
Fix that by detecting either endof-line (as currently done) or
end-of-string.
For an example of failed build of perl-html-parser, see
http://autobuild.buildroot.net/results/128/128671dfa23d843698a63220c2fac1f44e1d5845/
[Thomas: use better commit log proposed by Yann E. Morin.]
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
committed by
Thomas Petazzoni
parent
259fe50be7
commit
ceb1214632
@@ -534,7 +534,7 @@ sub is_xs {
|
||||
# This heuristic determines if a module is a native extension, by searching
|
||||
# some file extension types in the MANIFEST of the distribution.
|
||||
# It was inspired by http://deps.cpantesters.org/static/purity.html
|
||||
return $manifest =~ m/\.(swg|xs|c|h|i)\n/;
|
||||
return $manifest =~ m/\.(swg|xs|c|h|i)[\n\s]/;
|
||||
}
|
||||
|
||||
sub find_license_files {
|
||||
|
||||
Reference in New Issue
Block a user