From 945becf166139b6619f6993fd75c271095e1801a Mon Sep 17 00:00:00 2001 From: Sam Creasey Date: Tue, 12 Apr 2016 14:37:30 -0400 Subject: [PATCH] Chain build rules for guile and python bindings to avoid race conditions in parallel builds. --- swig/Makefile.am | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/swig/Makefile.am b/swig/Makefile.am index 5ccbfe1..0800b7b 100644 --- a/swig/Makefile.am +++ b/swig/Makefile.am @@ -1,4 +1,4 @@ -SWIG_SRC = nlopt.i nlopt-exceptions.i nlopt-enum-renames.i +SWIG_SRC = nlopt.i nlopt-exceptions.i nlopt-enum-renames.i EXTRA_DIST = $(SWIG_SRC) nlopt-guile.i nlopt-python.i nlopt.scm.in nlopt.py numpy.i BUILT_SOURCES = nlopt-guile.cpp nlopt-python.cpp nlopt-enum-renames.i nlopt.scm.in @@ -42,14 +42,18 @@ lib_LTLIBRARIES = $(guilelib) if MAINTAINER_MODE -nlopt-guile.cpp nlopt.scm.in: $(SWIG_SRC) nlopt-guile.i $(HDR) +nlopt-guile.cpp: $(SWIG_SRC) nlopt-guile.i $(HDR) swig -I$(top_srcdir)/api -outdir $(builddir) -c++ -guile -scmstub -o $@ $(srcdir)/nlopt.i rm -f nlopt.scm.in mv nlopt.scm nlopt.scm.in -nlopt-python.cpp nlopt.py: $(SWIG_SRC) nlopt-python.i numpy.i $(HDR) +nlopt.scm.in: nlopt-guile.cpp + +nlopt-python.cpp: $(SWIG_SRC) nlopt-python.i numpy.i $(HDR) swig -I$(top_srcdir)/api -outdir $(builddir) -c++ -python -o $@ $(srcdir)/nlopt.i +nlopt.py: nlopt-python.cpp + nlopt-enum-renames.i: $(top_srcdir)/api/nlopt.h (echo "// AUTOMATICALLY GENERATED -- DO NOT EDIT"; egrep 'NLOPT_[LG][DN]|NLOPT_AUGLAG|NLOPT_G_MLSL|NLOPT_NUM_ALGORITHMS' $(top_srcdir)/api/nlopt.h | sed 's/NLOPT_//g' |tr -d ' ' |tr '/' ',' |tr '=' ',' |cut -d, -f1 |while read name; do echo "%rename(NLOPT_$$name) nlopt::$$name;"; done; egrep 'NLOPT_[A-Z_]* =' $(top_srcdir)/api/nlopt.h | egrep -v 'NLOPT_[LG][DN]|NLOPT_AUGLAG|NLOPT_G_MLSL' | sed 's/NLOPT_//g' |tr -d ' ' |cut -d'=' -f1 | while read name; do echo "%rename(NLOPT_$$name) nlopt::$$name;"; done) > $@ -- 2.30.2