diff --git a/configure b/configure index f98e1059..a35b988c 100755 --- a/configure +++ b/configure @@ -657,6 +657,8 @@ GAMSOSI_CFLAGS_NOPC GAMSOSI_LFLAGS_NOPC GAMS_PATH gamspath +OPTWRITER_FALSE +OPTWRITER_TRUE GAMSLIBCFLAGS COIN_HAS_GUROBI_FALSE COIN_HAS_GUROBI_TRUE @@ -921,6 +923,7 @@ with_xpress_cflags with_gurobi with_gurobi_lflags with_gurobi_cflags +enable_optwriter with_gams ' ac_precious_vars='build_alias @@ -1579,6 +1582,8 @@ Optional Features: --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) + --disable-optwriter disable build of options specification writer (needs + C99 and C++11) Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -21196,6 +21201,22 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu +# Check whether --enable-optwriter was given. +if test "${enable_optwriter+set}" = set; then : + enableval=$enable_optwriter; optwriter="$enableval" +else + optwriter=yes +fi + + if test "$optwriter" = yes; then + OPTWRITER_TRUE= + OPTWRITER_FALSE='#' +else + OPTWRITER_TRUE='#' + OPTWRITER_FALSE= +fi + + ############### # GAMS system # ############### @@ -21869,6 +21890,10 @@ if test -z "${COIN_HAS_GUROBI_TRUE}" && test -z "${COIN_HAS_GUROBI_FALSE}"; then as_fn_error $? "conditional \"COIN_HAS_GUROBI\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${OPTWRITER_TRUE}" && test -z "${OPTWRITER_FALSE}"; then + as_fn_error $? "conditional \"OPTWRITER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 diff --git a/configure.ac b/configure.ac index 129b27de..b62c340f 100644 --- a/configure.ac +++ b/configure.ac @@ -8,8 +8,6 @@ # Names and other basic things # ############################################################################# -AC_PREREQ(2.59) - AC_INIT([GAMSlinks],[master],[https://github.com/coin-or/GAMSlinks]) AC_COPYRIGHT([Copyright (C) 2006-2011 GAMS Development and others @@ -109,6 +107,12 @@ AC_CHECK_LIB(dl,[dlopen],[ AC_LANG_POP(C) +AC_ARG_ENABLE(optwriter, + AC_HELP_STRING([--disable-optwriter],[disable build of options specification writer (needs C99 and C++11)]), + [optwriter="$enableval"], + [optwriter=yes]) +AM_CONDITIONAL(OPTWRITER,[test "$optwriter" = yes]) + ############### # GAMS system # ############### diff --git a/src/bonmin/Makefile.am b/src/bonmin/Makefile.am index 51eaf402..89ecb008 100644 --- a/src/bonmin/Makefile.am +++ b/src/bonmin/Makefile.am @@ -26,10 +26,12 @@ libGamsBonmin_la_LIBADD = $(GAMSBONMIN_LFLAGS) CLEANFILES = include ../utils/Makefile_gamsapi.inc +if OPTWRITER noinst_PROGRAMS = optbonmin optbonmin_SOURCES = optbonmin.cpp ../utils/GamsOptionsSpecWriter.cpp optbonmin_LDADD = libGamsBonmin.la CLEANFILES += optbonmin.gms optbonmin.txt optbonmin_t.md +endif install-exec-local : install-libLTLIBRARIES $(top_srcdir)/gamsinst.py "@GAMS_PATH@" libGamsBonmin.la MYBONMIN bon "MIQCP MINLP" 0 diff --git a/src/bonmin/Makefile.in b/src/bonmin/Makefile.in index 8fd3fe77..e0e6dcfb 100644 --- a/src/bonmin/Makefile.in +++ b/src/bonmin/Makefile.in @@ -95,7 +95,8 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -noinst_PROGRAMS = optbonmin$(EXEEXT) +@OPTWRITER_TRUE@noinst_PROGRAMS = optbonmin$(EXEEXT) +@OPTWRITER_TRUE@am__append_1 = optbonmin.gms optbonmin.txt optbonmin_t.md subdir = src/bonmin ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -149,10 +150,10 @@ AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -am_optbonmin_OBJECTS = optbonmin.$(OBJEXT) \ - ../utils/GamsOptionsSpecWriter.$(OBJEXT) +@OPTWRITER_TRUE@am_optbonmin_OBJECTS = optbonmin.$(OBJEXT) \ +@OPTWRITER_TRUE@ ../utils/GamsOptionsSpecWriter.$(OBJEXT) optbonmin_OBJECTS = $(am_optbonmin_OBJECTS) -optbonmin_DEPENDENCIES = libGamsBonmin.la +@OPTWRITER_TRUE@optbonmin_DEPENDENCIES = libGamsBonmin.la AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -424,9 +425,9 @@ libGamsBonmin_la_SOURCES = GamsBonmin.cpp GamsMINLP.cpp \ libGamsBonmin_la_LIBADD = $(GAMSBONMIN_LFLAGS) CLEANFILES = ../utils/optcc.c ../utils/gmomcc.c ../utils/gevmcc.c \ ../utils/gclgms.c ../utils/gdxcc.c ../utils/palmcc.c \ - optbonmin.gms optbonmin.txt optbonmin_t.md -optbonmin_SOURCES = optbonmin.cpp ../utils/GamsOptionsSpecWriter.cpp -optbonmin_LDADD = libGamsBonmin.la + $(am__append_1) +@OPTWRITER_TRUE@optbonmin_SOURCES = optbonmin.cpp ../utils/GamsOptionsSpecWriter.cpp +@OPTWRITER_TRUE@optbonmin_LDADD = libGamsBonmin.la all: all-am .SUFFIXES: diff --git a/src/cbc/Makefile.am b/src/cbc/Makefile.am index 6d3b517d..94de14c3 100644 --- a/src/cbc/Makefile.am +++ b/src/cbc/Makefile.am @@ -23,10 +23,12 @@ libGamsCbc_la_LIBADD = $(GAMSCBC_LFLAGS) CLEANFILES = include ../utils/Makefile_gamsapi.inc +if OPTWRITER noinst_PROGRAMS = optcbc optcbc_SOURCES = optcbc.cpp ../utils/GamsOptionsSpecWriter.cpp optcbc_LDADD = libGamsCbc.la CLEANFILES += optcbc.txt optcbc.gms +endif install-exec-local : install-libLTLIBRARIES $(top_srcdir)/gamsinst.py "@GAMS_PATH@" libGamsCbc.la MYCBC cbc "LP MIP RMIP" 5 @srcdir@/optmycbc.def diff --git a/src/cbc/Makefile.in b/src/cbc/Makefile.in index bee5ac6e..91ed10b7 100644 --- a/src/cbc/Makefile.in +++ b/src/cbc/Makefile.in @@ -95,7 +95,8 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -noinst_PROGRAMS = optcbc$(EXEEXT) +@OPTWRITER_TRUE@noinst_PROGRAMS = optcbc$(EXEEXT) +@OPTWRITER_TRUE@am__append_1 = optcbc.txt optcbc.gms subdir = src/cbc ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -148,10 +149,10 @@ AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -am_optcbc_OBJECTS = optcbc.$(OBJEXT) \ - ../utils/GamsOptionsSpecWriter.$(OBJEXT) +@OPTWRITER_TRUE@am_optcbc_OBJECTS = optcbc.$(OBJEXT) \ +@OPTWRITER_TRUE@ ../utils/GamsOptionsSpecWriter.$(OBJEXT) optcbc_OBJECTS = $(am_optcbc_OBJECTS) -optcbc_DEPENDENCIES = libGamsCbc.la +@OPTWRITER_TRUE@optcbc_DEPENDENCIES = libGamsCbc.la AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -421,9 +422,9 @@ libGamsCbc_la_SOURCES = GamsCbc.cpp \ libGamsCbc_la_LIBADD = $(GAMSCBC_LFLAGS) CLEANFILES = ../utils/optcc.c ../utils/gmomcc.c ../utils/gevmcc.c \ ../utils/gclgms.c ../utils/gdxcc.c ../utils/palmcc.c \ - optcbc.txt optcbc.gms -optcbc_SOURCES = optcbc.cpp ../utils/GamsOptionsSpecWriter.cpp -optcbc_LDADD = libGamsCbc.la + $(am__append_1) +@OPTWRITER_TRUE@optcbc_SOURCES = optcbc.cpp ../utils/GamsOptionsSpecWriter.cpp +@OPTWRITER_TRUE@optcbc_LDADD = libGamsCbc.la all: all-am .SUFFIXES: diff --git a/src/couenne/Makefile.am b/src/couenne/Makefile.am index 968d833a..105321fc 100644 --- a/src/couenne/Makefile.am +++ b/src/couenne/Makefile.am @@ -28,10 +28,12 @@ libGamsCouenne_la_LIBADD = $(GAMSCOUENNE_LFLAGS) CLEANFILES = include ../utils/Makefile_gamsapi.inc +if OPTWRITER noinst_PROGRAMS = optcouenne optcouenne_SOURCES = optcouenne.cpp ../utils/GamsOptionsSpecWriter.cpp optcouenne_LDADD = libGamsCouenne.la CLEANFILES += optcouenne.gms optcouenne.txt +endif install-exec-local : install-libLTLIBRARIES $(top_srcdir)/gamsinst.py "@GAMS_PATH@" libGamsCouenne.la MYCOUENNE cou "QCP RMIQCP NLP DNLP RMINLP CNS MIQCP MINLP" 0 diff --git a/src/couenne/Makefile.in b/src/couenne/Makefile.in index 491e56ff..488f68fd 100644 --- a/src/couenne/Makefile.in +++ b/src/couenne/Makefile.in @@ -95,7 +95,8 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -noinst_PROGRAMS = optcouenne$(EXEEXT) +@OPTWRITER_TRUE@noinst_PROGRAMS = optcouenne$(EXEEXT) +@OPTWRITER_TRUE@am__append_1 = optcouenne.gms optcouenne.txt subdir = src/couenne ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -149,10 +150,10 @@ AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -am_optcouenne_OBJECTS = optcouenne.$(OBJEXT) \ - ../utils/GamsOptionsSpecWriter.$(OBJEXT) +@OPTWRITER_TRUE@am_optcouenne_OBJECTS = optcouenne.$(OBJEXT) \ +@OPTWRITER_TRUE@ ../utils/GamsOptionsSpecWriter.$(OBJEXT) optcouenne_OBJECTS = $(am_optcouenne_OBJECTS) -optcouenne_DEPENDENCIES = libGamsCouenne.la +@OPTWRITER_TRUE@optcouenne_DEPENDENCIES = libGamsCouenne.la AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -427,9 +428,9 @@ libGamsCouenne_la_SOURCES = GamsCouenne.cpp \ libGamsCouenne_la_LIBADD = $(GAMSCOUENNE_LFLAGS) CLEANFILES = ../utils/optcc.c ../utils/gmomcc.c ../utils/gevmcc.c \ ../utils/gclgms.c ../utils/gdxcc.c ../utils/palmcc.c \ - optcouenne.gms optcouenne.txt -optcouenne_SOURCES = optcouenne.cpp ../utils/GamsOptionsSpecWriter.cpp -optcouenne_LDADD = libGamsCouenne.la + $(am__append_1) +@OPTWRITER_TRUE@optcouenne_SOURCES = optcouenne.cpp ../utils/GamsOptionsSpecWriter.cpp +@OPTWRITER_TRUE@optcouenne_LDADD = libGamsCouenne.la all: all-am .SUFFIXES: diff --git a/src/ipopt/Makefile.am b/src/ipopt/Makefile.am index 9917ddb5..2a55769c 100644 --- a/src/ipopt/Makefile.am +++ b/src/ipopt/Makefile.am @@ -21,10 +21,12 @@ libGamsIpopt_la_LIBADD = $(GAMSIPOPT_LFLAGS) CLEANFILES = include ../utils/Makefile_gamsapi.inc +if OPTWRITER noinst_PROGRAMS = optipopt optipopt_SOURCES = optipopt.cpp ../utils/GamsOptionsSpecWriter.cpp optipopt_LDADD = libGamsIpopt.la CLEANFILES += optipopt.gms optipopt.txt +endif install-exec-local : install-libLTLIBRARIES $(top_srcdir)/gamsinst.py "@GAMS_PATH@" libGamsIpopt.la MYIPOPT ipo "LP RMIP NLP DNLP RMINLP CNS QCP RMIQCP" 0 diff --git a/src/ipopt/Makefile.in b/src/ipopt/Makefile.in index da84578f..82ef8046 100644 --- a/src/ipopt/Makefile.in +++ b/src/ipopt/Makefile.in @@ -95,7 +95,8 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -noinst_PROGRAMS = optipopt$(EXEEXT) +@OPTWRITER_TRUE@noinst_PROGRAMS = optipopt$(EXEEXT) +@OPTWRITER_TRUE@am__append_1 = optipopt.gms optipopt.txt subdir = src/ipopt ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -147,10 +148,10 @@ AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -am_optipopt_OBJECTS = optipopt.$(OBJEXT) \ - ../utils/GamsOptionsSpecWriter.$(OBJEXT) +@OPTWRITER_TRUE@am_optipopt_OBJECTS = optipopt.$(OBJEXT) \ +@OPTWRITER_TRUE@ ../utils/GamsOptionsSpecWriter.$(OBJEXT) optipopt_OBJECTS = $(am_optipopt_OBJECTS) -optipopt_DEPENDENCIES = libGamsIpopt.la +@OPTWRITER_TRUE@optipopt_DEPENDENCIES = libGamsIpopt.la AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -415,9 +416,9 @@ libGamsIpopt_la_SOURCES = GamsIpopt.cpp GamsNLP.cpp GamsJournal.cpp \ libGamsIpopt_la_LIBADD = $(GAMSIPOPT_LFLAGS) CLEANFILES = ../utils/optcc.c ../utils/gmomcc.c ../utils/gevmcc.c \ ../utils/gclgms.c ../utils/gdxcc.c ../utils/palmcc.c \ - optipopt.gms optipopt.txt -optipopt_SOURCES = optipopt.cpp ../utils/GamsOptionsSpecWriter.cpp -optipopt_LDADD = libGamsIpopt.la + $(am__append_1) +@OPTWRITER_TRUE@optipopt_SOURCES = optipopt.cpp ../utils/GamsOptionsSpecWriter.cpp +@OPTWRITER_TRUE@optipopt_LDADD = libGamsIpopt.la all: all-am .SUFFIXES: diff --git a/src/scip/Makefile.am b/src/scip/Makefile.am index 06426434..d2fd22aa 100644 --- a/src/scip/Makefile.am +++ b/src/scip/Makefile.am @@ -21,10 +21,12 @@ libGamsScip_la_LIBADD = $(GAMSSCIP_LFLAGS) CLEANFILES = include ../utils/Makefile_gamsapi.inc +if OPTWRITER noinst_PROGRAMS = optscip optscip_SOURCES = optscip.cpp ../utils/GamsOptionsSpecWriter.cpp optscip_LDADD = libGamsScip.la CLEANFILES += optscip.gms branchrules.md conflicthdlrs.md conshdlrs.md disps.md heurs.md nodesels.md presols.md props.md sepas.md +endif install-exec-local : install-libLTLIBRARIES $(top_srcdir)/gamsinst.py "@GAMS_PATH@" libGamsScip.la MYSCIP scp "MIP QCP RMIQCP NLP DNLP RMINLP CNS MIQCP MINLP" 5 diff --git a/src/scip/Makefile.in b/src/scip/Makefile.in index fd3726e2..70783506 100644 --- a/src/scip/Makefile.in +++ b/src/scip/Makefile.in @@ -95,7 +95,8 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -noinst_PROGRAMS = optscip$(EXEEXT) +@OPTWRITER_TRUE@noinst_PROGRAMS = optscip$(EXEEXT) +@OPTWRITER_TRUE@am__append_1 = optscip.gms branchrules.md conflicthdlrs.md conshdlrs.md disps.md heurs.md nodesels.md presols.md props.md sepas.md subdir = src/scip ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -149,10 +150,10 @@ AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -am_optscip_OBJECTS = optscip.$(OBJEXT) \ - ../utils/GamsOptionsSpecWriter.$(OBJEXT) +@OPTWRITER_TRUE@am_optscip_OBJECTS = optscip.$(OBJEXT) \ +@OPTWRITER_TRUE@ ../utils/GamsOptionsSpecWriter.$(OBJEXT) optscip_OBJECTS = $(am_optscip_OBJECTS) -optscip_DEPENDENCIES = libGamsScip.la +@OPTWRITER_TRUE@optscip_DEPENDENCIES = libGamsScip.la AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -420,10 +421,9 @@ libGamsScip_la_SOURCES = GamsScip.cpp reader_gmo.c event_solvetrace.c \ libGamsScip_la_LIBADD = $(GAMSSCIP_LFLAGS) CLEANFILES = ../utils/optcc.c ../utils/gmomcc.c ../utils/gevmcc.c \ ../utils/gclgms.c ../utils/gdxcc.c ../utils/palmcc.c \ - optscip.gms branchrules.md conflicthdlrs.md conshdlrs.md \ - disps.md heurs.md nodesels.md presols.md props.md sepas.md -optscip_SOURCES = optscip.cpp ../utils/GamsOptionsSpecWriter.cpp -optscip_LDADD = libGamsScip.la + $(am__append_1) +@OPTWRITER_TRUE@optscip_SOURCES = optscip.cpp ../utils/GamsOptionsSpecWriter.cpp +@OPTWRITER_TRUE@optscip_LDADD = libGamsScip.la all: all-am .SUFFIXES: diff --git a/src/soplex/Makefile.am b/src/soplex/Makefile.am index ad7f7e37..9296def4 100644 --- a/src/soplex/Makefile.am +++ b/src/soplex/Makefile.am @@ -21,10 +21,12 @@ libGamsSoplex_la_LIBADD = $(GAMSSOPLEX_LFLAGS) CLEANFILES = include ../utils/Makefile_gamsapi.inc +if OPTWRITER noinst_PROGRAMS = optsoplex optsoplex_SOURCES = optsoplex.cpp ../utils/GamsOptionsSpecWriter.cpp optsoplex_LDADD = $(GAMSSOPLEX_LFLAGS) CLEANFILES += optsoplex.gms +endif install-exec-local : install-libLTLIBRARIES $(top_srcdir)/gamsinst.py "@GAMS_PATH@" libGamsSoplex.la MYSOPLEX osp "LP RMIP" 5 diff --git a/src/soplex/Makefile.in b/src/soplex/Makefile.in index 28699bd2..c4086155 100644 --- a/src/soplex/Makefile.in +++ b/src/soplex/Makefile.in @@ -95,7 +95,8 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -noinst_PROGRAMS = optsoplex$(EXEEXT) +@OPTWRITER_TRUE@noinst_PROGRAMS = optsoplex$(EXEEXT) +@OPTWRITER_TRUE@am__append_1 = optsoplex.gms subdir = src/soplex ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -146,10 +147,10 @@ AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -am_optsoplex_OBJECTS = optsoplex.$(OBJEXT) \ - ../utils/GamsOptionsSpecWriter.$(OBJEXT) +@OPTWRITER_TRUE@am_optsoplex_OBJECTS = optsoplex.$(OBJEXT) \ +@OPTWRITER_TRUE@ ../utils/GamsOptionsSpecWriter.$(OBJEXT) optsoplex_OBJECTS = $(am_optsoplex_OBJECTS) -optsoplex_DEPENDENCIES = $(am__DEPENDENCIES_1) +@OPTWRITER_TRUE@optsoplex_DEPENDENCIES = $(am__DEPENDENCIES_1) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -413,9 +414,9 @@ libGamsSoplex_la_SOURCES = GamsSoPlex.cpp \ libGamsSoplex_la_LIBADD = $(GAMSSOPLEX_LFLAGS) CLEANFILES = ../utils/optcc.c ../utils/gmomcc.c ../utils/gevmcc.c \ ../utils/gclgms.c ../utils/gdxcc.c ../utils/palmcc.c \ - optsoplex.gms -optsoplex_SOURCES = optsoplex.cpp ../utils/GamsOptionsSpecWriter.cpp -optsoplex_LDADD = $(GAMSSOPLEX_LFLAGS) + $(am__append_1) +@OPTWRITER_TRUE@optsoplex_SOURCES = optsoplex.cpp ../utils/GamsOptionsSpecWriter.cpp +@OPTWRITER_TRUE@optsoplex_LDADD = $(GAMSSOPLEX_LFLAGS) all: all-am .SUFFIXES: