Build system, generate_all.py doesn't work when building out-of-sourcedir

Hi all,

I allways build in a subdir of the sourcedir.
svn checkout
cd trunk
./bootstrap
mkdir build
cd build
…/configure
make

Usually this works well, but I found out that this doesn’t work if you
change something in the generate*.py scripts.

/gnuradio-core/src/lib/filter/generate_all.py

Is the script run by the makefile in build/gnuradio-core/src/lib/filter
to generate build/gnuradio-core/src/lib/filter/makefile.gen (amongst
other things)
But the makefile.gen which is included is in
gnuradio-core/src/lib/filter (note this is in the sourcedir, not the
builddir)

So the old makefile.gen is included.

I am not an automake wizard but I wondered if this is solvable.

The only workaround I have is.
first configure and build in the sourcedir. Do a make distclean and then
configure and build in the builddir.

cd trunk
./configure
make
make clean
make distclean
cd build (this is my builddir)
…/configure
make

Here follows a snippet from gnuradio-core/src/lib/filter/Makefile.am
where some of this magic happens.

include $(srcdir)/Makefile.gen

include Makefile.gen

$(GENERATED_H) $(GENERATED_I) $(GENERATED_CC): $(CODE_GENERATOR)
PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir)
$(PYTHON) $(srcdir)/generate_all.py

BUILT_SOURCES = $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC)

Greetings,
Martin

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs