diff --git a/DESCRIPTION b/DESCRIPTION index 4e942f99599bae63b48ae6cf2a1f1a2d0fac41c4..43a05296d40483d374ef47139b77c2913f388177 100755 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,8 +1,8 @@ Package: clpAPI Type: Package -Title: R Interface to C API of COIN-OR Clp -Version: 1.2.10 -Date: 2019-05-23 +Title: R Interface to C API of COIN-or Clp +Version: 1.2.11 +Date: 2019-06-14 Authors@R: c(person("Mayo", "Roettger", role = "cre", email = "mayo.roettger@hhu.de"), person("Gabriel", "Gelius-Dietrich", role = c("aut"), email = "geliudie@uni-duesseldorf.de"), person(c("C.", "Jonathan"), "Fritzemeier", role = "ctb", email = "clausjonathan.fritzemeier@uni-duesseldorf.de")) @@ -13,9 +13,9 @@ SystemRequirements: COIN-OR Clp (>= 1.12.0) License: GPL-3 | file LICENSE LazyLoad: yes Collate: generics.R clp_ptrClass.R clp.R clpAPI.R zzz.R -Packaged: 2019-05-23 11:07:00 UTC; mayo +Packaged: 2019-06-14 14:00:00 UTC; mayo Author: Mayo Roettger [cre], Gabriel Gelius-Dietrich [aut], C. Jonathan Fritzemeier [ctb] Maintainer: Mayo Roettger <mayo.roettger@hhu.de> NeedsCompilation: yes Repository: CRAN -Date/Publication: 2019-05-23 11:07:00 +Date/Publication: 2019-06-14 14:00:00 diff --git a/NAMESPACE b/NAMESPACE index c46671dd65ac33b548add7c25be87ab019acbf8a..c66a323abae477eb37056335068f872669690ce5 100755 --- a/NAMESPACE +++ b/NAMESPACE @@ -76,6 +76,10 @@ solveInitialCLP, solveInitialDualCLP, solveInitialPrimalCLP, status_codeCLP, -versionCLP +versionCLP, +setRowNameCLP, +setColNameCLP, +writeMPSCLP, +modifyCoefficientCLP ) diff --git a/R/clpAPI.R b/R/clpAPI.R index ce15e74923d4b2024f2656f994035e06e9b9f098..bbd4b1bfc8ba007074b5c2682e63d96d9a9ffc88 100755 --- a/R/clpAPI.R +++ b/R/clpAPI.R @@ -891,3 +891,72 @@ probNameCLP <- function(lp, pname) { ) } + + +# New in Clp-1.17.2 # +#------------------------------------------------------------------------------# + +setRowNameCLP <- function(lp, i, rname) { + + invisible( + .Call("setRowName", PACKAGE = "clpAPI", + clpPointer(lp), + as.integer(i), + as.character(rname) + ) + ) + +} + + +# NEW in Clp-1.17.2 # +#------------------------------------------------------------------------------# + +setColNameCLP <- function(lp, j, cname) { + + invisible( + .Call("setColName", PACKAGE = "clpAPI", + clpPointer(lp), + as.integer(j), + as.character(cname) + ) + ) + +} + + +# NEW in Clp-1.17.2 # +#------------------------------------------------------------------------------# + +writeMPSCLP <- function(lp, fname, formatType = 0, numberAcross = 1, objSense = 1) { + + check <- .Call("writeMps", PACKAGE = "clpAPI", + clpPointer(lp), + as.character(fname), + as.integer(formatType), + as.integer(numberAcross), + as.numeric(objSense) + ) + + return(check) + +} + + +# NEW in Clp-1.17.2 # +#------------------------------------------------------------------------------# + +modifyCoefficientCLP <- function(lp, i, j, el, keepZero = TRUE) { + + invisible( + .Call("modifyCoefficient", PACKAGE = "clpAPI", + clpPointer(lp), + as.integer(i), + as.integer(j), + as.numeric(el), + as.logical(keepZero) + ) + ) + +} + diff --git a/cleanup b/cleanup index 52624c3c2c7d1adacdba327eecc78ad127f8ddb6..122fdb0a4af74a98219cf161d3b4c6bca31a3527 100755 --- a/cleanup +++ b/cleanup @@ -1,5 +1,6 @@ #! /bin/sh -rm -rf autom4te.cache src/Makevars src/*.o +rm -rf autom4te.cache src/Makevars src/*.o src/*.so rm -rf .DS_Store +rm -rf src/.DS_Store exit 0 diff --git a/config.log b/config.log new file mode 100755 index 0000000000000000000000000000000000000000..b807fa0001f9f26f7edd22832a6d96f90c1f3331 --- /dev/null +++ b/config.log @@ -0,0 +1,344 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by clpAPI configure 1.2.10, which was +generated by GNU Autoconf 2.69. Invocation command line was + + $ ./configure + +## --------- ## +## Platform. ## +## --------- ## + +hostname = debian +uname -m = x86_64 +uname -r = 4.9.0-9-amd64 +uname -s = Linux +uname -v = #1 SMP Debian 4.9.168-1+deb9u2 (2019-05-13) + +/usr/bin/uname -p = unknown +/bin/uname -X = unknown + +/bin/arch = unknown +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +/usr/bin/hostinfo = unknown +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /usr/local/bin +PATH: /usr/bin +PATH: /bin +PATH: /usr/local/games +PATH: /usr/games +PATH: /opt/gurobi801/linux64/bin + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:2113: checking for gcc +configure:2140: result: gcc -std=gnu99 +configure:2369: checking for C compiler version +configure:2378: gcc -std=gnu99 --version >&5 +gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516 +Copyright (C) 2016 Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +configure:2389: $? = 0 +configure:2378: gcc -std=gnu99 -v >&5 +Using built-in specs. +COLLECT_GCC=gcc +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Debian 6.3.0-18+deb9u1' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) +configure:2389: $? = 0 +configure:2378: gcc -std=gnu99 -V >&5 +gcc: error: unrecognized command line option '-V' +gcc: fatal error: no input files +compilation terminated. +configure:2389: $? = 1 +configure:2378: gcc -std=gnu99 -qversion >&5 +gcc: error: unrecognized command line option '-qversion'; did you mean '--version'? +gcc: fatal error: no input files +compilation terminated. +configure:2389: $? = 1 +configure:2409: checking whether the C compiler works +configure:2431: gcc -std=gnu99 -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g conftest.c >&5 +configure:2435: $? = 0 +configure:2483: result: yes +configure:2486: checking for C compiler default output file name +configure:2488: result: a.out +configure:2494: checking for suffix of executables +configure:2501: gcc -std=gnu99 -o conftest -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g conftest.c >&5 +configure:2505: $? = 0 +configure:2527: result: +configure:2549: checking whether we are cross compiling +configure:2557: gcc -std=gnu99 -o conftest -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g conftest.c >&5 +configure:2561: $? = 0 +configure:2568: ./conftest +configure:2572: $? = 0 +configure:2587: result: no +configure:2592: checking for suffix of object files +configure:2614: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g conftest.c >&5 +configure:2618: $? = 0 +configure:2639: result: o +configure:2643: checking whether we are using the GNU C compiler +configure:2662: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g conftest.c >&5 +configure:2662: $? = 0 +configure:2671: result: yes +configure:2680: checking whether gcc -std=gnu99 accepts -g +configure:2700: gcc -std=gnu99 -c -g conftest.c >&5 +configure:2700: $? = 0 +configure:2741: result: yes +configure:2758: checking for gcc -std=gnu99 option to accept ISO C89 +configure:2821: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g conftest.c >&5 +configure:2821: $? = 0 +configure:2834: result: none needed +configure:2859: checking how to run the C preprocessor +configure:2929: result: gcc -std=gnu99 -E +configure:2949: gcc -std=gnu99 -E conftest.c +configure:2949: $? = 0 +configure:2963: gcc -std=gnu99 -E conftest.c +conftest.c:9:28: fatal error: ac_nonexistent.h: No such file or directory + #include <ac_nonexistent.h> + ^ +compilation terminated. +configure:2963: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "clpAPI" +| #define PACKAGE_TARNAME "clpapi" +| #define PACKAGE_VERSION "1.2.10" +| #define PACKAGE_STRING "clpAPI 1.2.10" +| #define PACKAGE_BUGREPORT "mayo.roettger@hhu.de" +| #define PACKAGE_URL "" +| /* end confdefs.h. */ +| #include <ac_nonexistent.h> +configure:3323: checking for grep that handles long lines and -e +configure:3381: result: /bin/grep +configure:3386: checking for egrep +configure:3448: result: /bin/grep -E +configure:3453: checking for ANSI C header files +configure:3473: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3473: $? = 0 +configure:3546: gcc -std=gnu99 -o conftest -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c -L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm >&5 +configure:3546: $? = 0 +configure:3546: ./conftest +configure:3546: $? = 0 +configure:3557: result: yes +configure:3570: checking for sys/types.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for sys/stat.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for stdlib.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for string.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for memory.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for strings.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for inttypes.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for stdint.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3570: checking for unistd.h +configure:3570: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3570: $? = 0 +configure:3570: result: yes +configure:3584: checking stdbool.h usability +configure:3584: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3584: $? = 0 +configure:3584: result: yes +configure:3584: checking stdbool.h presence +configure:3584: gcc -std=gnu99 -E -I/home/mayo/Clp-1.17.2/include/coin conftest.c +configure:3584: $? = 0 +configure:3584: result: yes +configure:3584: checking for stdbool.h +configure:3584: result: yes +configure:3597: checking for Clp_C_Interface.h +configure:3597: gcc -std=gnu99 -c -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c >&5 +configure:3597: $? = 0 +configure:3597: result: yes +configure:3612: checking for library containing Clp_newModel +configure:3643: gcc -std=gnu99 -o conftest -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c -L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm >&5 +configure:3643: $? = 0 +configure:3660: result: none required +configure:3675: checking for library containing Clp_setRowName +configure:3706: gcc -std=gnu99 -o conftest -g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -I/home/mayo/Clp-1.17.2/include/coin conftest.c -L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm >&5 +configure:3706: $? = 0 +configure:3723: result: none required +configure:3863: creating ./config.status + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by clpAPI config.status 1.2.10, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on debian + +config.status:805: creating src/Makevars +config.status:805: creating src/config.h +config.status:975: src/config.h is unchanged + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_c_compiler_gnu=yes +ac_cv_env_CC_set= +ac_cv_env_CC_value= +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_LIBS_set= +ac_cv_env_LIBS_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_header_Clp_C_Interface_h=yes +ac_cv_header_inttypes_h=yes +ac_cv_header_memory_h=yes +ac_cv_header_stdbool_h=yes +ac_cv_header_stdc=yes +ac_cv_header_stdint_h=yes +ac_cv_header_stdlib_h=yes +ac_cv_header_string_h=yes +ac_cv_header_strings_h=yes +ac_cv_header_sys_stat_h=yes +ac_cv_header_sys_types_h=yes +ac_cv_header_unistd_h=yes +ac_cv_objext=o +ac_cv_path_EGREP='/bin/grep -E' +ac_cv_path_GREP=/bin/grep +ac_cv_prog_CPP='gcc -std=gnu99 -E' +ac_cv_prog_ac_ct_CC='gcc -std=gnu99' +ac_cv_prog_cc_c89= +ac_cv_prog_cc_g=yes +ac_cv_search_Clp_newModel='none required' +ac_cv_search_Clp_setRowName='none required' + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +CC='gcc -std=gnu99' +CFLAGS='-g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g ' +CPP='gcc -std=gnu99 -E' +CPPFLAGS=' -I/home/mayo/Clp-1.17.2/include/coin' +DEFS='-DHAVE_CONFIG_H' +ECHO_C='' +ECHO_N='-n' +ECHO_T='' +EGREP='/bin/grep -E' +EXEEXT='' +GREP='/bin/grep' +LDFLAGS='' +LIBOBJS='' +LIBS='-L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm' +LTLIBOBJS='' +OBJEXT='o' +PACKAGE_BUGREPORT='mayo.roettger@hhu.de' +PACKAGE_NAME='clpAPI' +PACKAGE_STRING='clpAPI 1.2.10' +PACKAGE_TARNAME='clpapi' +PACKAGE_URL='' +PACKAGE_VERSION='1.2.10' +PATH_SEPARATOR=':' +PKG_CFLAGS='' +PKG_CONFIG='' +PKG_CPPFLAGS='-DHAVE_CONFIG_H -I/home/mayo/Clp-1.17.2/include/coin' +PKG_LIBS='-L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm' +SHELL='/bin/bash' +ac_ct_CC='gcc -std=gnu99' +ac_prefix_program='' +bindir='${exec_prefix}/bin' +build_alias='' +datadir='${datarootdir}' +datarootdir='${prefix}/share' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +dvidir='${docdir}' +exec_prefix='${prefix}' +host_alias='' +htmldir='${docdir}' +includedir='${prefix}/include' +infodir='${datarootdir}/info' +libdir='${exec_prefix}/lib' +libexecdir='${exec_prefix}/libexec' +localedir='${datarootdir}/locale' +localstatedir='${prefix}/var' +mandir='${datarootdir}/man' +oldincludedir='/usr/include' +pdfdir='${docdir}' +prefix='/usr/local' +program_transform_name='s,x,x,' +psdir='${docdir}' +runstatedir='${localstatedir}/run' +sbindir='${exec_prefix}/sbin' +sharedstatedir='${prefix}/com' +sysconfdir='${prefix}/etc' +target_alias='' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +/* confdefs.h */ +#define PACKAGE_NAME "clpAPI" +#define PACKAGE_TARNAME "clpapi" +#define PACKAGE_VERSION "1.2.10" +#define PACKAGE_STRING "clpAPI 1.2.10" +#define PACKAGE_BUGREPORT "mayo.roettger@hhu.de" +#define PACKAGE_URL "" +#define STDC_HEADERS 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRING_H 1 +#define HAVE_MEMORY_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_STDBOOL_H 1 +#define HAVE_CLP_EXT1_17_2 1 + +configure: exit 0 diff --git a/config.status b/config.status new file mode 100755 index 0000000000000000000000000000000000000000..33a7702988da3448639342341f3557aa6ba69e7d --- /dev/null +++ b/config.status @@ -0,0 +1,995 @@ +#! /bin/bash +# Generated by configure. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=${CONFIG_SHELL-/bin/bash} +export SHELL +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by clpAPI $as_me 1.2.10, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +# Files that config.status was made for. +config_files=" src/Makevars" +config_headers=" src/config.h" + +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Report bugs to <mayo.roettger@hhu.de>." + +ac_cs_config="" +ac_cs_version="\ +clpAPI config.status 1.2.10 +configured by ./configure, generated by GNU Autoconf 2.69, + with options \"$ac_cs_config\" + +Copyright (C) 2012 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='/media/sf_VMShare/git_repositories/clpAPI' +srcdir='.' +test -n "$AWK" || AWK=awk +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +if $ac_cs_recheck; then + set X /bin/bash './configure' $ac_configure_extra_args --no-create --no-recursion + shift + $as_echo "running CONFIG_SHELL=/bin/bash $*" >&6 + CONFIG_SHELL='/bin/bash' + export CONFIG_SHELL + exec "$@" +fi + +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 + + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "src/config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/config.h" ;; + "src/Makevars") CONFIG_FILES="$CONFIG_FILES src/Makevars" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && +S["LTLIBOBJS"]="" +S["LIBOBJS"]="" +S["PKG_CPPFLAGS"]="-DHAVE_CONFIG_H -I/home/mayo/Clp-1.17.2/include/coin" +S["PKG_LIBS"]="-L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm" +S["PKG_CFLAGS"]="" +S["EGREP"]="/bin/grep -E" +S["GREP"]="/bin/grep" +S["ac_prefix_program"]="" +S["PKG_CONFIG"]="" +S["CPP"]="gcc -std=gnu99 -E" +S["OBJEXT"]="o" +S["EXEEXT"]="" +S["ac_ct_CC"]="gcc -std=gnu99" +S["CPPFLAGS"]=" -I/home/mayo/Clp-1.17.2/include/coin" +S["LDFLAGS"]="" +S["CFLAGS"]="-g -O2 -fdebug-prefix-map=/build/r-base-3.3.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g " +S["CC"]="gcc -std=gnu99" +S["target_alias"]="" +S["host_alias"]="" +S["build_alias"]="" +S["LIBS"]="-L/home/mayo/Clp-1.17.2/lib -lClp -lCoinUtils -lm" +S["ECHO_T"]="" +S["ECHO_N"]="-n" +S["ECHO_C"]="" +S["DEFS"]="-DHAVE_CONFIG_H" +S["mandir"]="${datarootdir}/man" +S["localedir"]="${datarootdir}/locale" +S["libdir"]="${exec_prefix}/lib" +S["psdir"]="${docdir}" +S["pdfdir"]="${docdir}" +S["dvidir"]="${docdir}" +S["htmldir"]="${docdir}" +S["infodir"]="${datarootdir}/info" +S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" +S["oldincludedir"]="/usr/include" +S["includedir"]="${prefix}/include" +S["runstatedir"]="${localstatedir}/run" +S["localstatedir"]="${prefix}/var" +S["sharedstatedir"]="${prefix}/com" +S["sysconfdir"]="${prefix}/etc" +S["datadir"]="${datarootdir}" +S["datarootdir"]="${prefix}/share" +S["libexecdir"]="${exec_prefix}/libexec" +S["sbindir"]="${exec_prefix}/sbin" +S["bindir"]="${exec_prefix}/bin" +S["program_transform_name"]="s,x,x," +S["prefix"]="/usr/local" +S["exec_prefix"]="${prefix}" +S["PACKAGE_URL"]="" +S["PACKAGE_BUGREPORT"]="mayo.roettger@hhu.de" +S["PACKAGE_STRING"]="clpAPI 1.2.10" +S["PACKAGE_VERSION"]="1.2.10" +S["PACKAGE_TARNAME"]="clpapi" +S["PACKAGE_NAME"]="clpAPI" +S["PATH_SEPARATOR"]=":" +S["SHELL"]="/bin/bash" +_ACAWK +cat >>"$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +D["PACKAGE_NAME"]=" \"clpAPI\"" +D["PACKAGE_TARNAME"]=" \"clpapi\"" +D["PACKAGE_VERSION"]=" \"1.2.10\"" +D["PACKAGE_STRING"]=" \"clpAPI 1.2.10\"" +D["PACKAGE_BUGREPORT"]=" \"mayo.roettger@hhu.de\"" +D["PACKAGE_URL"]=" \"\"" +D["STDC_HEADERS"]=" 1" +D["HAVE_SYS_TYPES_H"]=" 1" +D["HAVE_SYS_STAT_H"]=" 1" +D["HAVE_STDLIB_H"]=" 1" +D["HAVE_STRING_H"]=" 1" +D["HAVE_MEMORY_H"]=" 1" +D["HAVE_STRINGS_H"]=" 1" +D["HAVE_INTTYPES_H"]=" 1" +D["HAVE_STDINT_H"]=" 1" +D["HAVE_UNISTD_H"]=" 1" +D["HAVE_STDBOOL_H"]=" 1" +D["HAVE_CLP_EXT1_17_2"]=" 1" + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { + line = $ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + ac_datarootdir_hack=' + s&@datadir@&${datarootdir}&g + s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g + s&@infodir@&${datarootdir}/info&g + s&@localedir@&${datarootdir}/locale&g + s&@mandir@&${datarootdir}/man&g + s&\${datarootdir}&${prefix}/share&g' ;; +esac +ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +} + +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi + ;; + + + esac + +done # for ac_tag + + +as_fn_exit 0 diff --git a/configure b/configure index e809700b471c9bca5772727174fd819681a25736..2feec862314bd3daf5fd6ffcd16eaebb40b65a3e 100755 --- a/configure +++ b/configure @@ -2044,6 +2044,12 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu +ac_config_headers="$ac_config_headers src/config.h" + + + + + : ${R_HOME=`R RHOME`} @@ -2985,6 +2991,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + ARGS_OK="FALSE" if test -n "$PKG_CPPFLAGS" -a -n "$PKG_LIBS" ; then @@ -3665,6 +3672,76 @@ fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing Clp_setRowName" >&5 +$as_echo_n "checking for library containing Clp_setRowName... " >&6; } +if ${ac_cv_search_Clp_setRowName+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char Clp_setRowName (); +int +main () +{ +return Clp_setRowName (); + ; + return 0; +} +_ACEOF +for ac_lib in '' Clp; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_Clp_setRowName=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_Clp_setRowName+:} false; then : + break +fi +done +if ${ac_cv_search_Clp_setRowName+:} false; then : + +else + ac_cv_search_Clp_setRowName=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_Clp_setRowName" >&5 +$as_echo "$ac_cv_search_Clp_setRowName" >&6; } +ac_res=$ac_cv_search_Clp_setRowName +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +$as_echo "#define HAVE_CLP_EXT1_17_2 1" >>confdefs.h + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: Clp extensions 1.17.2 not available" >&5 +$as_echo "$as_me: Clp extensions 1.17.2 not available" >&6;} +fi + + + + +PKG_CPPFLAGS="-DHAVE_CONFIG_H ${PKG_CPPFLAGS}" + + + + + ac_config_files="$ac_config_files src/Makevars" @@ -3759,43 +3836,7 @@ test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -# -# If the first sed substitution is executed (which looks for macros that -# take arguments), then branch to the quote section. Otherwise, -# look for a macro that doesn't take arguments. -ac_script=' -:mline -/\\$/{ - N - s,\\\n,, - b mline -} -t clear -:clear -s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g -t quote -s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g -t quote -b any -:quote -s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g -s/\[/\\&/g -s/\]/\\&/g -s/\$/$$/g -H -:any -${ - g - s/^\n// - s/\n/ /g - p -} -' -DEFS=`sed -n "$ac_script" confdefs.h` - +DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= @@ -4229,11 +4270,15 @@ case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" +config_headers="$ac_config_headers" _ACEOF @@ -4254,10 +4299,15 @@ Usage: $0 [OPTION]... [TAG]... --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE Configuration files: $config_files +Configuration headers: +$config_headers + Report bugs to <mayo.roettger@hhu.de>." _ACEOF @@ -4318,7 +4368,18 @@ do esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; - --he | --h | --help | --hel | -h ) + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) @@ -4374,6 +4435,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 for ac_config_target in $ac_config_targets do case $ac_config_target in + "src/config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/config.h" ;; "src/Makevars") CONFIG_FILES="$CONFIG_FILES src/Makevars" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; @@ -4387,6 +4449,7 @@ done # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers fi # Have a temporary directory for convenience. Make it in the build tree @@ -4574,8 +4637,116 @@ fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' <confdefs.h | sed ' +s/'"$ac_delim"'/"\\\ +"/g' >>$CONFIG_STATUS || ac_write_fail=1 -eval set X " :F $CONFIG_FILES " +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " shift for ac_tag do @@ -4783,7 +4954,30 @@ which seems to be undefined. Please make sure it is defined" >&2;} esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi + ;; esac diff --git a/configure.ac b/configure.ac index be2d9f1aced717d5c190fac31c1854bbfe7b5a2a..2299b1d7159ae856694a12fd06b1b405eb22b8e8 100755 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,13 @@ AC_INIT([clpAPI], [1.2.10], [mayo.roettger@hhu.de]) +dnl # -------------------------------------------------------------------- +dnl # template config.h.in +dnl # -------------------------------------------------------------------- + +AC_CONFIG_HEADERS([src/config.h]) + + + dnl # -------------------------------------------------------------------- dnl # global (environment) variables dnl # -------------------------------------------------------------------- @@ -28,6 +36,7 @@ AC_PROG_CC AC_PROG_CPP + dnl # -------------------------------------------------------------------- dnl # test for global variables dnl # -------------------------------------------------------------------- @@ -253,6 +262,22 @@ AC_SEARCH_LIBS([Clp_newModel], [Clp], , use --with-clp-lib or CLP_LIB to specify the lib path.])) + +dnl # -------------------------------------------------------------------- +dnl # check for new functions in Clp-1.17.2 +dnl # -------------------------------------------------------------------- + +AC_SEARCH_LIBS([Clp_setRowName], [Clp], AC_DEFINE([HAVE_CLP_EXT1_17_2], [1], [defined, if extended functions are available]), AC_MSG_NOTICE([Clp extensions 1.17.2 not available]), ) + + + +dnl # -------------------------------------------------------------------- +dnl # We have a config.h +dnl # -------------------------------------------------------------------- +PKG_CPPFLAGS="-DHAVE_CONFIG_H ${PKG_CPPFLAGS}" + + + dnl # -------------------------------------------------------------------- dnl # substitute src/Makevars dnl # -------------------------------------------------------------------- diff --git a/inst/NEWS.Rd b/inst/NEWS.Rd index c92a5846e1f9a74428f4c5a8007e2548f7ffba87..d0e4466bd4e4a4d4f8f1697d8d283095ff4c46dd 100755 --- a/inst/NEWS.Rd +++ b/inst/NEWS.Rd @@ -3,6 +3,16 @@ \name{NEWS} \title{clpAPI News} \encoding{UTF-8} +% ---------------------------------------------------------------------------- % +\section{Changes in version 1.2.11 2019-06-14}{ + \itemize{ + \item Added functions \code{setRowNameCLP}, \code{setColNameCLP}, + \code{writeMPSCLP} and \code{modifyCoefficientCLP} and + corresponding .Rd files. These functions are only available + with COIN-OR Clp version >= 1.17.2. + } +} + % ---------------------------------------------------------------------------- % \section{Changes in version 1.2.10 2019-05-23}{ \itemize{ diff --git a/inst/c2r.map b/inst/c2r.map index 86f0e3f2c0dad7393efab38c87f90c47eda7dcc3..0ab2eba6f87e7c5c6029162d0599c9f70d1c5892 100755 --- a/inst/c2r.map +++ b/inst/c2r.map @@ -59,3 +59,9 @@ Clp_initialBarrierNoCrossSolve <- clpAPI::solveInitialBarrierNoCrossCLP Clp_initialSolve <- clpAPI::solveInitialCLP Clp_initialDualSolve <- clpAPI::solveInitialDualCLP Clp_initialPrimalSolve <- clpAPI::solveInitialPrimalCLP + +Clp_setRowName <- clpAPI::setRowNameCLP +Clp_setColName <- clpAPI::setColNameCLP +Clp_writeMps <- clpAPI::writeMPSCLP +Clp_modifyCoefficient <- clpAPI::modifyCoefficientCLP + diff --git a/man/modifyCoefficientCLP.Rd b/man/modifyCoefficientCLP.Rd new file mode 100755 index 0000000000000000000000000000000000000000..6000036b63204db9ea0f38b158c988af86a708c1 --- /dev/null +++ b/man/modifyCoefficientCLP.Rd @@ -0,0 +1,61 @@ +\name{modifyCoefficientCLP} +\alias{modifyCoefficientCLP} +\alias{Clp_modifyCoefficient} + +\title{ + Change matrix coefficients +} + +\description{ + Low level interface function to the COIN-OR Clp function + \code{Clp_modifyCoefficient}. Consult the COIN-OR Clp + documentation for more detailed information. +} + +\usage{ + modifyCoefficientCLP(lp, i, j, el, keepZero = TRUE) +} + +\arguments{ + \item{lp}{ + An object of class \code{"\linkS4class{clpPtr}"} as returned by + \code{\link{initProbCLP}}. This is basically a pointer to a COIN-OR Clp + problem object. + } + \item{i}{ + Row index. + } + \item{j}{ + Column index. + } + \item{el}{ + Coefficient to set. + } + \item{keepZero}{ + If set to \code{TRUE}, keep zeroes. + } +} + +\details{ + Interface to the C function \code{modifyCoefficient} which calls + the COIN-OR Clp function \code{Clp_modifyCoefficient}. +} + +\value{ + NULL +} + +\references{ + The COIN-OR Clp home page at + \url{https://projects.coin-or.org/Clp} +} + +\author{ + Gabriel Gelius-Dietrich <geliudie@uni-duesseldorf.de> + + Maintainer: Mayo Roettger <mayo.roettger@hhu.de> +} + + +\keyword{ optimize } + diff --git a/man/setColNameCLP.Rd b/man/setColNameCLP.Rd new file mode 100755 index 0000000000000000000000000000000000000000..7c7d8a25f805c1b20cd9d2bdd0673827e4e805d1 --- /dev/null +++ b/man/setColNameCLP.Rd @@ -0,0 +1,58 @@ +\name{setColNameCLP} +\alias{setColNameCLP} +\alias{Clp_setColumnName} + +\title{ + Set column name +} + +\description{ + Low level interface function to the COIN-OR Clp function + \code{Clp_setColumnName}. Consult the COIN-OR Clp documentation + for more detailed information. This function is only available, + if you are using COIN-OR Clp version >= 1.17.2. +} + +\usage{ + setColNameCLP(lp, j, cname) +} + +\arguments{ + \item{lp}{ + An object of class \code{"\linkS4class{clpPtr}"} as returned by + \code{\link{initProbCLP}}. This is basically a pointer to a COIN-OR Clp + problem object. + } + + \item{j}{ + Column index. + } + + \item{cname}{ + A single character string containing the column name. + } +} + +\details{ + Interface to the C function \code{setColName} which calls + the COIN-OR Clp function \code{Clp_setColumnName}. +} + +\value{ + NULL +} + +\references{ + The COIN-OR Clp home page at + \url{https://projects.coin-or.org/Clp} +} + +\author{ + Gabriel Gelius-Dietrich <geliudie@uni-duesseldorf.de> + + Maintainer: Mayo Roettger <mayo.roettger@hhu.de> +} + + +\keyword{ optimize } + diff --git a/man/setRowNameCLP.Rd b/man/setRowNameCLP.Rd new file mode 100755 index 0000000000000000000000000000000000000000..6b0f1ad48a129acf9659fda41ee69a67952642c9 --- /dev/null +++ b/man/setRowNameCLP.Rd @@ -0,0 +1,58 @@ +\name{setRowNameCLP} +\alias{setRowNameCLP} +\alias{Clp_setRowName} + +\title{ + Set row name +} + +\description{ + Low level interface function to the COIN-OR Clp function + \code{Clp_setRowName}. Consult the COIN-OR Clp documentation + for more detailed information. This function is only available, + if you are using COIN-OR Clp version >= 1.17.2. +} + +\usage{ + setRowNameCLP(lp, i, rname) +} + +\arguments{ + \item{lp}{ + An object of class \code{"\linkS4class{clpPtr}"} as returned by + \code{\link{initProbCLP}}. This is basically a pointer to a COIN-OR Clp + problem object. + } + + \item{i}{ + Row index. + } + + \item{rname}{ + A single character string containing the row name. + } +} + +\details{ + Interface to the C function \code{setRowName} which calls + the COIN-OR Clp function \code{Clp_setRowName}. +} + +\value{ + NULL +} + +\references{ + The COIN-OR Clp home page at + \url{https://projects.coin-or.org/Clp} +} + +\author{ + Gabriel Gelius-Dietrich <geliudie@uni-duesseldorf.de> + + Maintainer: Mayo Roettger <mayo.roettger@hhu.de> +} + + +\keyword{ optimize } + diff --git a/man/writeMPSCLP.Rd b/man/writeMPSCLP.Rd new file mode 100755 index 0000000000000000000000000000000000000000..fde340ed857a4d7128535e0c6302774acd74a1d1 --- /dev/null +++ b/man/writeMPSCLP.Rd @@ -0,0 +1,66 @@ +\name{writeMPSCLP} +\alias{writeMPSCLP} +\alias{Clp_writeMps} + +\title{ + Write an MPS Format file to the given filename +} + +\description{ + Low level interface function to the COIN-OR Clp function + \code{Clp_writeMps}. Consult the COIN-OR Clp documentation + for more detailed information. This function is only available, + if you are using COIN-OR Clp version >= 1.17.2. +} + +\usage{ + writeMPSCLP(lp, fname, formatType = 0, numberAcross = 1, objSense = 1) +} + +\arguments{ + \item{lp}{ + An object of class \code{"\linkS4class{clpPtr}"} as returned by + \code{\link{initProbCLP}}. This is basically a pointer to a COIN-OR Clp + problem object. + } + + \item{fname}{ + A filename. + } + + \item{formatType}{ + Integer value: 0 = normal, 1 = extra or 2 = hex. + } + + \item{numberAcross}{ + Number across is 1 or 2. + } + + \item{objSense}{ + Use objSense = -1 to flip the objective funtion around. + } +} + +\details{ + Interface to the C function \code{writeMps} which calls + the COIN-OR Clp function \code{Clp_writeMps}. +} + +\value{ + Returns zero on success, otherwise non zero. +} + +\references{ + The COIN-OR Clp home page at + \url{https://projects.coin-or.org/Clp} +} + +\author{ + Gabriel Gelius-Dietrich <geliudie@uni-duesseldorf.de> + + Maintainer: Mayo Roettger <mayo.roettger@hhu.de> +} + + +\keyword{ optimize } + diff --git a/src/clpAPI.c b/src/clpAPI.c index 8227fc212eca10a93523698b119561abb625ea61..ac230146f5d6bf0738871b1e4b527d0f6d4ff30c 100755 --- a/src/clpAPI.c +++ b/src/clpAPI.c @@ -25,6 +25,9 @@ #include "clpAPI.h" +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif /* HAVE_CONFIG_H */ static SEXP tagCLPprob; @@ -196,7 +199,8 @@ SEXP addRows(SEXP lp, SEXP nrows, const double *rlb = REAL(lb); const double *rub = REAL(ub); - const int *rrowst = INTEGER(rowst); + /* const int *rrowst = INTEGER(rowst); */ + const CoinBigIndex *rrowst = INTEGER(rowst); const int *rcols = INTEGER(cols); const double *rval = REAL(val); @@ -219,7 +223,8 @@ SEXP addCols(SEXP lp, SEXP ncols, const double *rlb = REAL(lb); const double *rub = REAL(ub); const double *robj = REAL(obj); - const int *rcolst = INTEGER(colst); + /* const int *rcolst = INTEGER(colst); */ + const CoinBigIndex *rcolst = INTEGER(colst); const int *rrows = INTEGER(rows); const double *rval = REAL(val); @@ -597,7 +602,7 @@ SEXP loadMatrix(SEXP lp, SEXP ncols, SEXP nrows, SEXP ia, SEXP ja, SEXP ra) { SEXP getNumNnz(SEXP lp) { SEXP out = R_NilValue; - int nnz; + CoinBigIndex nnz; checkProb(lp); @@ -1294,3 +1299,98 @@ SEXP probName(SEXP lp, SEXP nc, SEXP pname) { return out; } + + + +#ifdef HAVE_CLP_EXT1_17_2 + +/* NEW in Clp-1.17.2 */ +/* -------------------------------------------------------------------------- */ +/* fill in row name */ +SEXP setRowName(SEXP lp, SEXP i, SEXP rname) { + + SEXP out = R_NilValue; + + const char *rrname = CHAR(STRING_ELT(rname, 0)); + + checkProb(lp); + + Clp_setRowName(R_ExternalPtrAddr(lp), Rf_asInteger(i), (char *) rrname); + + return out; +} + + +/* NEW in Clp-1.17.2 */ +/* -------------------------------------------------------------------------- */ +/* fill in column name */ +SEXP setColName(SEXP lp, SEXP j, SEXP cname) { + + SEXP out = R_NilValue; + + const char *rcname = CHAR(STRING_ELT(cname, 0)); + + checkProb(lp); + + Clp_setColumnName(R_ExternalPtrAddr(lp), Rf_asInteger(j), (char *) rcname); + + return out; +} + + +/* NEW in Clp-1.17.2 */ +/* -------------------------------------------------------------------------- */ +/* Write an mps file to the given filename */ +SEXP writeMps(SEXP lp, SEXP filename, SEXP formatType, SEXP numberAcross, SEXP objSense) { + + int check = 0; + + const char *rfilename = CHAR(STRING_ELT(filename, 0)); + + checkProb(lp); + + check = Clp_writeMps(R_ExternalPtrAddr(lp), rfilename, Rf_asInteger(formatType), Rf_asInteger(numberAcross), Rf_asReal(objSense)); + + return Rf_ScalarInteger(check); +} + + +/* NEW in Clp-1.17.2 */ +/* -------------------------------------------------------------------------- */ +/* Change matrix coefficients */ +SEXP modifyCoefficient(SEXP lp, SEXP row, SEXP column, SEXP newElement, SEXP keepZero) { + + SEXP out = R_NilValue; + + bool rkeepZero = Rf_asLogical(keepZero); + + checkProb(lp); + + Clp_modifyCoefficient(R_ExternalPtrAddr(lp), Rf_asInteger(row), Rf_asInteger(column), Rf_asReal(newElement), rkeepZero); + + return out; +} + +#else /* not CLP_EXT1_17_2 */ + +SEXP setRowName(SEXP lp, SEXP i, SEXP rname) { + SEXP out = R_NilValue; + return out; +} + +SEXP setColName(SEXP lp, SEXP j, SEXP cname) { + SEXP out = R_NilValue; + return out; +} + +SEXP writeMps(SEXP lp, SEXP filename, SEXP formatType, SEXP numberAcross, SEXP objSense) { + SEXP out = R_NilValue; + return out; +} + +SEXP modifyCoefficient(SEXP lp, SEXP row, SEXP column, SEXP newElement, SEXP keepZero) { + SEXP out = R_NilValue; + return out; +} + +#endif /* HAVE_CLP_EXT1_17_2 */ diff --git a/src/clpAPI.h b/src/clpAPI.h index 51e6116598fc598ae9c84e6ff0da65f911dc6ab8..bea917f7057d021848faccfcd3b059a449b58fa4 100755 --- a/src/clpAPI.h +++ b/src/clpAPI.h @@ -237,3 +237,19 @@ SEXP colName(SEXP lp, SEXP j, SEXP cname); /* fill in problem name */ SEXP probName(SEXP lp, SEXP nc, SEXP pname); + + +/* ------------------------------------------------ */ +/* NEW in Clp-1.17.2 */ +/* set row name */ +SEXP setRowName(SEXP lp, SEXP i, SEXP rname); + +/* set column name */ +SEXP setColName(SEXP lp, SEXP j, SEXP cname); + +/* Write an mps file to the given filename */ +SEXP writeMps(SEXP lp, SEXP filename, SEXP formatType, SEXP numberAcross, SEXP objSense); + +/* Change matrix coefficients */ +SEXP modifyCoefficient(SEXP lp, SEXP row, SEXP column, SEXP newElement, SEXP keepZero); +/* ------------------------------------------------ */ diff --git a/src/clpR.h b/src/clpR.h index b8ef2acfdcc5674af43a9f73f8a594b39e754c6a..2a507bc7bce45973da976784f92ad7d89f4e8b44 100755 --- a/src/clpR.h +++ b/src/clpR.h @@ -25,11 +25,20 @@ #include <stdio.h> #include <stdlib.h> + +/* include config.h definitions */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif /* HAVE_CONFIG_H */ + +/* include stdbool.h */ +#ifdef HAVE_STDBOOL_H #include <stdbool.h> +#endif /* HAVE_STDBOOL_H */ + #include <Clp_C_Interface.h> #include <ClpConfig.h> - /* avoid remapping of Rf_<function> to <function> in R header files */ #ifndef R_NO_REMAP #define R_NO_REMAP diff --git a/src/config.h b/src/config.h new file mode 100755 index 0000000000000000000000000000000000000000..adcbc6f3e0eacd69edb4331c0de929e7663c36c5 --- /dev/null +++ b/src/config.h @@ -0,0 +1,56 @@ +/* src/config.h. Generated from config.h.in by configure. */ +/* src/config.h.in. Generated from configure.ac by autoheader. */ + +/* defined, if extended functions are available */ +#define HAVE_CLP_EXT1_17_2 1 + +/* Define to 1 if you have the <inttypes.h> header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the <memory.h> header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the <stdbool.h> header file. */ +#define HAVE_STDBOOL_H 1 + +/* Define to 1 if you have the <stdint.h> header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the <strings.h> header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the <string.h> header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the <sys/types.h> header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the <unistd.h> header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "mayo.roettger@hhu.de" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "clpAPI" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "clpAPI 1.2.10" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "clpapi" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.2.10" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 diff --git a/src/config.h.in b/src/config.h.in new file mode 100755 index 0000000000000000000000000000000000000000..42ec66f2636b6c9346410e19be033c576d6ae603 --- /dev/null +++ b/src/config.h.in @@ -0,0 +1,55 @@ +/* src/config.h.in. Generated from configure.ac by autoheader. */ + +/* defined, if extended functions are available */ +#undef HAVE_CLP_EXT1_17_2 + +/* Define to 1 if you have the <inttypes.h> header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the <memory.h> header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the <stdbool.h> header file. */ +#undef HAVE_STDBOOL_H + +/* Define to 1 if you have the <stdint.h> header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the <stdlib.h> header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the <strings.h> header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the <string.h> header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the <sys/types.h> header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the <unistd.h> header file. */ +#undef HAVE_UNISTD_H + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS diff --git a/src/init.c b/src/init.c index ca231a2faed94de3a941c65f81c9dbefc9a64eb9..a3213a7930567e0e52dc5b35a883ca4953b087f9 100755 --- a/src/init.c +++ b/src/init.c @@ -96,6 +96,12 @@ static const R_CallMethodDef callMethods[] = { {"getMaximumIterations", (DL_FUNC) &getMaximumIterations, 1}, {"getMaximumSeconds", (DL_FUNC) &getMaximumSeconds, 1}, {"getHitMaximumIterations", (DL_FUNC) &getHitMaximumIterations, 1}, + + {"setRowName", (DL_FUNC) &setRowName, 3}, + {"setColName", (DL_FUNC) &setColName, 3}, + {"writeMps", (DL_FUNC) &writeMps, 5}, + {"modifyCoefficient", (DL_FUNC) &modifyCoefficient, 5}, + {NULL, NULL, 0} }; diff --git a/src/symbols.rds b/src/symbols.rds new file mode 100755 index 0000000000000000000000000000000000000000..74ded543e88932db402abd777261159e9e53b5ef Binary files /dev/null and b/src/symbols.rds differ