summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml1
-rw-r--r--COPYING13
-rw-r--r--NEWS10
-rw-r--r--config/cvc4.m434
-rw-r--r--config/readline.m44
-rw-r--r--configure.ac14
6 files changed, 57 insertions, 19 deletions
diff --git a/.travis.yml b/.travis.yml
index c47ad1928..9b8482c00 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,4 +1,5 @@
language: cpp
+cache: apt
compiler:
- gcc
- clang
diff --git a/COPYING b/COPYING
index 28e814415..4bccb1d13 100644
--- a/COPYING
+++ b/COPYING
@@ -245,8 +245,8 @@ Please be advised that as this library is covered under the GPLv3, if you
choose to use the combined work, "CVC4+CLN," by building CVC4 with CLN,
then it is also covered under the GPLv3. If you want to make sure you build
a version of CVC4 that uses no GPLed libraries, configure CVC4 with the
-"--bsd" option before building. CVC4 can then be used in contexts where you
-want to license CVC4 under the (modified) BSD license.
+"--bsd" option before building (which is the default). CVC4 can then be used
+in contexts where you want to license CVC4 under the (modified) BSD license.
CVC4 can be optionally configured to link against GLPK, the GNU Linear
Programming Kit, available here:
@@ -257,8 +257,8 @@ Please be advised that as this library is covered under the GPLv3, if
you choose to use the combined work, "CVC4+GLPK," by building CVC4 with
GLPK, then it is also covered under the GPLv3. If you want to make sure you
build a version of CVC4 that uses no GPLed libraries, configure CVC4 with the
-"--bsd" option before building. CVC4 can then be used in contexts where you
-want to license CVC4 under the (modified) BSD license.
+"--bsd" option before building (which is the default). CVC4 can then be used
+in contexts where you want to license CVC4 under the (modified) BSD license.
CVC4 can be optionally configured to link against GNU Readline for improved
text-editing support in interactive mode. GNU Readline is available here:
@@ -269,8 +269,9 @@ Please be advised that as this library is covered under the GPLv3, if
you choose to use the combined work, "CVC4+Readline," by building CVC4 with
Readline, then it is also covered under the GPLv3. If you want to make sure
you build a version of CVC4 that uses no GPLed libraries, configure CVC4 with
-the "--bsd" option before building. CVC4 can then be used in contexts where
-you want to license CVC4 under the (modified) BSD license.
+the "--bsd" option before building (which is the default). CVC4 can then be
+used in contexts where you want to license CVC4 under the (modified) BSD
+license.
CVC4 sources incorporate those of the LFSC proof checker, which is
covered by the following license:
diff --git a/NEWS b/NEWS
index d30c0ab77..f0159f4a1 100644
--- a/NEWS
+++ b/NEWS
@@ -7,11 +7,11 @@ Changes since 1.3
* The LFSC proof checker has been incorporated into CVC4 sources.
* By default, CVC4 builds in "production" mode (optimized, with fewer
internal checks on). The common alternative is a "debug" build, which
- is much slower. CVC4 also builds with GPL dependences by default now
- (if those libraries are available), as this is the best-performing
- version of CVC4. However, the new configure option "--bsd" disables
- these GPL dependences and builds the best-performing BSD-licenced version
- of CVC4.
+ is much slower. By default, CVC4 builds with no GPL'ed dependences.
+ However, this is not the best-performing version; for that, you should
+ configure with "--enable-gpl --best", which links against GPL'ed
+ libraries that improve usability and performance. For details on
+ licensing and dependences, see the README file.
* Small API adjustments to Datatypes to even out the API and make it
function better in Java.
* Better automatic handling of output language setting when using CVC4
diff --git a/config/cvc4.m4 b/config/cvc4.m4
index 87d984ab4..40e2054e6 100644
--- a/config/cvc4.m4
+++ b/config/cvc4.m4
@@ -13,12 +13,40 @@ dnl _AS_ME_PREPARE
AC_DEFUN([CVC4_REWRITE_ARGS_FOR_BUILD_PROFILE],
[m4_divert_push([PARSE_ARGS])dnl
+CVC4_BSD_LICENSED_CODE_ONLY=1
+
+m4_divert_once([HELP_ENABLE], [[
+Licensing and performance options:
+ --bsd disable all GPL dependences (default)
+ --enable-gpl permit GPL dependences, if available
+ --best turn on dependences known to give best performance]])dnl
+
handle_option() {
ac_option="$[]1"
case $ac_option in
- --bsd) ac_option='CVC4_BSD_LICENSED_CODE_ONLY=1' ;;
- -enable-proofs | --enable-proofs) ac_option='--enable-proof' ;;
- -*|*=*) ;;
+ --bsd|--disable-gpl|CVC4_BSD_LICENSED_CODE_ONLY=1)
+ if test "$CVC4_LICENSE_OPTION" = gpl; then AC_ERROR([cannot give both --bsd and --enable-gpl]); fi
+ CVC4_LICENSE_OPTION=bsd
+ ac_option="CVC4_BSD_LICENSED_CODE_ONLY=1"
+ eval $ac_option
+ ;;
+ --enable-gpl|--gpl|CVC4_BSD_LICENSED_CODE_ONLY=0)
+ if test "$CVC4_LICENSE_OPTION" = bsd; then AC_ERROR([cannot give both --bsd and --enable-gpl]); fi
+ CVC4_LICENSE_OPTION=gpl
+ ac_option="CVC4_BSD_LICENSED_CODE_ONLY=0"
+ eval $ac_option
+ ;;
+ --best)
+ # set the best configuration
+ handle_option --with-readline
+ handle_option --with-cln
+ return
+ ;;
+ -enable-proofs|--enable-proofs)
+ ac_option='--enable-proof'
+ ;;
+ -*|*=*)
+ ;;
production|production-*|debug|debug-*|competition|competition-*)
# regexp `\?' not supported on Mac OS X
ac_option_build=`expr "$ac_option" : '\([[^-]]*\)-\{0,1\}'`
diff --git a/config/readline.m4 b/config/readline.m4
index c298f3db4..e9ce921fb 100644
--- a/config/readline.m4
+++ b/config/readline.m4
@@ -9,8 +9,8 @@ readline_compentry_func_returns_charp=0
READLINE_LIBS=
if test "$with_readline" = no; then
AC_MSG_RESULT([no, readline disabled by user])
-elif test "$with_readline" = check -a -n "$CVC4_BSD_LICENSED_CODE_ONLY"; then
- AC_MSG_RESULT([no, user requested BSD-compatible dependences only])
+elif test "$with_readline" = check -a "$CVC4_BSD_LICENSED_CODE_ONLY" = 1; then
+ AC_MSG_RESULT([no, using BSD-compatible dependences only])
with_readline=no
else
if test "$with_readline" = check; then
diff --git a/configure.ac b/configure.ac
index 9179bc116..bf1e0dd0c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -285,7 +285,7 @@ fi
AC_CHECK_LIB(gmp, __gmpz_init, , [AC_MSG_ERROR([GNU MP (libgmp) not found, see http://gmplib.org/])])
if test $cvc4_use_cln = 2; then
- if test -n "$CVC4_BSD_LICENSED_CODE_ONLY" -o "$with_portfolio" = yes; then
+ if test "$CVC4_BSD_LICENSED_CODE_ONLY" = 1 -o "$with_portfolio" = yes; then
cvc4_use_cln=0
cvc4_use_gmp=1
fi
@@ -1337,8 +1337,9 @@ else
fi
if test "$gpl" = yes; then
- if test -n "$CVC4_BSD_LICENSED_CODE_ONLY"; then
- AC_ERROR([Bad configuration detected: user requested BSD-licensed code only, but also requested GPLed libraries:$gpllibs])
+ if test "$CVC4_BSD_LICENSED_CODE_ONLY" = 1; then
+ AC_ERROR([Bad configuration detected: BSD-licensed code only, but also requested GPLed libraries:$gpllibs
+To permit GPL'ed dependences, use the configure flag --enable-gpl])
fi
licensewarn="${licensewarn}"'****************************************************************************
@@ -1353,6 +1354,13 @@ option "--bsd", which will disable all optional GPLed library dependences.
'
license="GPLv3 (due to optional libraries; see below)"
else
+ licensewarn="${licensewarn}Please note that this configuration is NOT built against any GPL'ed
+libraries, so it is covered by the (modified) BSD license. This is,
+however, not the best-performing configuration of CVC4. To build
+against GPL'ed libraries which improve CVC4's performance, re-configure
+with '--best --enable-gpl'.
+
+"
license="modified BSD"
fi
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback