make it possible to do 'make -C sw/' even with builddir!=srcdir
The change in partial_build.mk assumes all the Makefile's using it are in builddir/<module>/ or builddir/external/<module> , these are differentiated by checking for ../External_module.mk . Change-Id: Iddc8fa2ec0842f181780f7491cf5a2244efd014a
This commit is contained in:
parent
129f9c4c39
commit
2bf2bc2c7f
2 changed files with 20 additions and 1 deletions
16
autogen.sh
16
autogen.sh
|
@ -135,6 +135,22 @@ if ($src_path ne $build_path)
|
|||
{
|
||||
system ("ln -sf $src_path/configure.ac configure.ac");
|
||||
system ("ln -sf $src_path/g g");
|
||||
my @modules = <$src_path/*/Makefile>;
|
||||
foreach my $module (@modules)
|
||||
{
|
||||
my $dir = basename (dirname ($module));
|
||||
mkdir ($dir);
|
||||
system ("ln -sf $src_path/$dir/Makefile $dir/Makefile");
|
||||
}
|
||||
my @external_modules = <$src_path/external/*/Makefile>;
|
||||
mkdir ("external");
|
||||
system ("ln -sf $src_path/external/Module_external.mk external/");
|
||||
foreach my $module (@external_modules)
|
||||
{
|
||||
my $dir = basename (dirname ($module));
|
||||
mkdir ("external/$dir");
|
||||
system ("ln -sf $src_path/external/$dir/Makefile external/$dir/Makefile");
|
||||
}
|
||||
}
|
||||
system ("$aclocal $aclocal_flags") && die "Failed to run aclocal";
|
||||
unlink ("configure");
|
||||
|
|
|
@ -22,7 +22,10 @@ gb_Side:=host
|
|||
endif
|
||||
|
||||
ifeq (,$(BUILDDIR))
|
||||
BUILDDIR := $(dir $(realpath $(lastword $(MAKEFILE_LIST))))../..
|
||||
gb_partial_build__makefile_dir=$(dir $(abspath $(firstword $(MAKEFILE_LIST))))
|
||||
BUILDDIR := $(if $(wildcard $(gb_partial_build__makefile_dir)../Module_external.mk), \
|
||||
$(gb_partial_build__makefile_dir)../.., \
|
||||
$(gb_partial_build__makefile_dir)..)
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_TYPE),)
|
||||
|
|
Loading…
Reference in a new issue