nlopt.f: nlopt.h
rm -f $@
- (i=0; egrep 'NLOPT_[LG][DN]' $(srcdir)/nlopt.h | tr -d ' =0,' | while read n; do echo " integer $$n"; echo " parameter ($$n=$$i)"; i=`expr $$i + 1`; done; tail -n +`grep -n enum $(srcdir)/nlopt.h |cut -d: -f1 |tail -n 1` $(srcdir)/nlopt.h | grep NLOPT | egrep -v 'EXTERN|DEPRECATED|MINF_MAX' | cut -d, -f1 | tr -d ' ' | perl -pe 's/([A-Za-z0-9_]+)=([-+0-9]+)/ integer \1\n parameter (\1=\2)/') > $@
+ (i=0; egrep 'NLOPT_[LG][DN]|NLOPT_AUGLAG' $(srcdir)/nlopt.h | tr -d ' =0,' | while read n; do echo " integer $$n"; echo " parameter ($$n=$$i)"; i=`expr $$i + 1`; done; tail -n +`grep -n enum $(srcdir)/nlopt.h |cut -d: -f1 |tail -n 1` $(srcdir)/nlopt.h | grep NLOPT | egrep -v 'EXTERN|DEPRECATED|MINF_MAX' | cut -d, -f1 | tr -d ' ' | perl -pe 's/([A-Za-z0-9_]+)=([-+0-9]+)/ integer \1\n parameter (\1=\2)/') > $@
nlopt.hpp: nlopt.h nlopt-in.hpp
rm -f $@
- (n=`grep -n GEN_ENUMS_HERE nlopt-in.hpp | cut -d: -f1`; head -n $$n $(srcdir)/nlopt-in.hpp; echo " enum algorithm {"; egrep 'NLOPT_[LG][DN]|NLOPT_NUM_ALGORITHMS' $(srcdir)/nlopt.h | sed 's/NLOPT_//g'; echo " };"; echo " enum result {"; egrep 'NLOPT_[A-Z_]* =' $(srcdir)/nlopt.h | egrep -v 'NLOPT_[LG][DN]' | sed 's/NLOPT_//g'; echo " };"; tail -n +$$n $(srcdir)/nlopt-in.hpp) > $@
+ (n=`grep -n GEN_ENUMS_HERE nlopt-in.hpp | cut -d: -f1`; head -n $$n $(srcdir)/nlopt-in.hpp; echo " enum algorithm {"; egrep 'NLOPT_[LG][DN]|NLOPT_AUGLAG|NLOPT_NUM_ALGORITHMS' $(srcdir)/nlopt.h | sed 's/NLOPT_//g'; echo " };"; echo " enum result {"; egrep 'NLOPT_[A-Z_]* =' $(srcdir)/nlopt.h | egrep -v 'NLOPT_[LG][DN]' | sed 's/NLOPT_//g'; echo " };"; tail -n +$$n $(srcdir)/nlopt-in.hpp) > $@
endif
AM_CPPFLAGS = -I$(top_srcdir)/api -I$(top_srcdir)/util
-MFILES = NLOPT_GN_DIRECT.m NLOPT_GN_DIRECT_L.m NLOPT_GN_DIRECT_L_RAND.m NLOPT_GN_DIRECT_NOSCAL.m NLOPT_GN_DIRECT_L_NOSCAL.m NLOPT_GN_DIRECT_L_RAND_NOSCAL.m NLOPT_GN_ORIG_DIRECT.m NLOPT_GN_ORIG_DIRECT_L.m NLOPT_GD_STOGO.m NLOPT_GD_STOGO_RAND.m NLOPT_LD_LBFGS_NOCEDAL.m NLOPT_LD_LBFGS.m NLOPT_LN_PRAXIS.m NLOPT_LD_VAR1.m NLOPT_LD_VAR2.m NLOPT_LD_TNEWTON.m NLOPT_LD_TNEWTON_RESTART.m NLOPT_LD_TNEWTON_PRECOND.m NLOPT_LD_TNEWTON_PRECOND_RESTART.m NLOPT_GN_CRS2_LM.m NLOPT_GN_MLSL.m NLOPT_GD_MLSL.m NLOPT_GN_MLSL_LDS.m NLOPT_GD_MLSL_LDS.m NLOPT_LD_MMA.m NLOPT_LN_COBYLA.m NLOPT_LN_NEWUOA.m NLOPT_LN_NEWUOA_BOUND.m NLOPT_LN_NELDERMEAD.m NLOPT_LN_SBPLX.m NLOPT_LN_AUGLAG.m NLOPT_LD_AUGLAG.m NLOPT_LN_AUGLAG_EQ.m NLOPT_LD_AUGLAG_EQ.m NLOPT_LN_BOBYQA.m NLOPT_GN_ISRES.m
+MFILES = NLOPT_AUGLAG_EQ.m NLOPT_AUGLAG.m NLOPT_GD_MLSL_LDS.m NLOPT_GD_MLSL.m NLOPT_GD_STOGO.m NLOPT_GD_STOGO_RAND.m NLOPT_GN_CRS2_LM.m NLOPT_GN_DIRECT_L.m NLOPT_GN_DIRECT_L_NOSCAL.m NLOPT_GN_DIRECT_L_RAND.m NLOPT_GN_DIRECT_L_RAND_NOSCAL.m NLOPT_GN_DIRECT.m NLOPT_GN_DIRECT_NOSCAL.m NLOPT_GN_ISRES.m NLOPT_GN_MLSL_LDS.m NLOPT_GN_MLSL.m NLOPT_GN_ORIG_DIRECT_L.m NLOPT_GN_ORIG_DIRECT.m NLOPT_LD_AUGLAG_EQ.m NLOPT_LD_AUGLAG.m NLOPT_LD_LBFGS.m NLOPT_LD_LBFGS_NOCEDAL.m NLOPT_LD_MMA.m NLOPT_LD_TNEWTON.m NLOPT_LD_TNEWTON_PRECOND.m NLOPT_LD_TNEWTON_PRECOND_RESTART.m NLOPT_LD_TNEWTON_RESTART.m NLOPT_LD_VAR1.m NLOPT_LD_VAR2.m NLOPT_LN_AUGLAG_EQ.m NLOPT_LN_AUGLAG.m NLOPT_LN_BOBYQA.m NLOPT_LN_COBYLA.m NLOPT_LN_NELDERMEAD.m NLOPT_LN_NEWUOA_BOUND.m NLOPT_LN_NEWUOA.m NLOPT_LN_PRAXIS.m NLOPT_LN_SBPLX.m
#######################################################################
# dummy C program to fool automake into making sure that CPPFLAGS etc.
--- /dev/null
+% NLOPT_AUGLAG: Augmented Lagrangian method (needs sub-algorithm)
+%
+% See nlopt_minimize for more information.
+function val = NLOPT_AUGLAG
+ val = 30;
--- /dev/null
+% NLOPT_AUGLAG_EQ: Augmented Lagrangian method for equality constraints (needs sub-algorithm)
+%
+% See nlopt_minimize for more information.
+function val = NLOPT_AUGLAG_EQ
+ val = 31;
%
% See nlopt_minimize for more information.
function val = NLOPT_GN_ISRES
- val = 35;
+ val = 37;
%
% See nlopt_minimize for more information.
function val = NLOPT_LD_AUGLAG
- val = 31;
+ val = 33;
%
% See nlopt_minimize for more information.
function val = NLOPT_LD_AUGLAG_EQ
- val = 33;
+ val = 35;
%
% See nlopt_minimize for more information.
function val = NLOPT_LN_AUGLAG
- val = 30;
+ val = 32;
%
% See nlopt_minimize for more information.
function val = NLOPT_LN_AUGLAG_EQ
- val = 32;
+ val = 34;
%
% See nlopt_minimize for more information.
function val = NLOPT_LN_BOBYQA
- val = 34;
+ val = 36;
#!/bin/sh
-names=`egrep NLOPT_[LG][ND] ../api/nlopt.h |sed 's/ //g' |tr = , |cut -d, -f1`
+names=`egrep 'NLOPT_[LG][ND]|NLOPT_AUGLAG' ../api/nlopt.h |sed 's/ //g' |tr = , |cut -d, -f1`
i=0
-gcc -I.. -E ../api/nlopt.c | perl -pe 's/^ *\n//' > foo.c
+gcc -I../util -I.. -E ../api/general.c | perl -pe 's/^ *\n//' > foo.c
desc_start=`grep -n nlopt_algorithm_names foo.c |cut -d: -f1 |head -1`
for n in $names; do
swig -I$(top_builddir)/api -outdir $(builddir) -c++ -python -o $@ nlopt.i
nlopt-enum-renames.i: $(top_srcdir)/api/nlopt.h
- (echo "// AUTOMATICALLY GENERATED -- DO NOT EDIT"; egrep 'NLOPT_[LG][DN]|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]' | sed 's/NLOPT_//g' |tr -d ' ' |cut -d'=' -f1 | while read name; do echo "%rename(NLOPT_$$name) nlopt::$$name;"; done) > $@
+ (echo "// AUTOMATICALLY GENERATED -- DO NOT EDIT"; egrep 'NLOPT_[LG][DN]|NLOPT_AUGLAG|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' | sed 's/NLOPT_//g' |tr -d ' ' |cut -d'=' -f1 | while read name; do echo "%rename(NLOPT_$$name) nlopt::$$name;"; done) > $@
endif