3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-08 18:31:49 +00:00
Commit graph

761 commits

Author SHA1 Message Date
Dan Liew cb106d71cf Teach the OCaml bindings install rule to respect the DESTDIR makefile
variable. Previously it would try to install into the system (e.g.
``/usr/lib/ocaml``) regardless of the value of DESTDIR.

Unfortunately it looks like packagers who use DESTDIR to do staged
installs will need to have their packages patch their user's OCaml
``ld.conf`` file manually at package install time (not ``make install``
time) with the extra path to the Z3 Ocaml package directory. We could
use the ``touch`` command to create an empty ``ld.conf`` before running
``ocamlfind install`` but that adds the wrong path to ``ld.conf``
because it contains DESTDIR.
2016-01-11 21:13:25 +00:00
Dan Liew f038291293 Don't silently fail if ocamlfind cannot be found when building the Ocaml
bindings is enabled. That is really unhelpful behaviour. Instead emit a
warning. I would prefer an error message but apparently being able to
build but not install the OCaml bindings is desirable.

Whilst I'm here also print information about ocamlfind where it should
have been mentioned.
2016-01-11 19:36:02 +00:00
Mikolas Janota b26e4b1516 Merge remote-tracking branch 'upstream/master' into lackr 2016-01-11 18:27:47 +00:00
Dan Liew 49a2ed01c8 Improve error message emitting during configure when the Python
bindings are enabled and the set python package directory does
not live under the install prefix. This is the other part required
to fix issue #404.
2016-01-08 21:21:54 +00:00
Dan Liew e9ea687bb9 Disable the Python bindings by default which partially fixes issue #404.
To enable the Python bindings use the newly added ``--python`` option.
2016-01-08 21:21:54 +00:00
Mikolas Janota 743a59254e Merge remote-tracking branch 'upstream/master' into lackr 2016-01-07 16:39:43 +00:00
Christoph M. Wintersteiger 3e000d7525 build fix for libz3.vcxproj 2016-01-05 14:40:31 +00:00
Christoph M. Wintersteiger 8b47a84598 Merge branch 'master' of https://github.com/Z3Prover/z3 into jan4 2016-01-05 11:34:35 +00:00
Christoph M. Wintersteiger 4915f2da04 Added facilities for generating a libz3.vcxproj next to z3.vcxproj for simplified DLL build in VS. 2016-01-04 21:53:24 +00:00
Christoph M. Wintersteiger 25af97fb8b tabs 2016-01-04 21:04:07 +00:00
Nikolaj Bjorner 0c03a87c82 merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-03 14:08:29 -08:00
Christoph M. Wintersteiger 758c9cd7a0 Build fix for install dependencies 2016-01-01 17:02:31 +00:00
Christoph M. Wintersteiger d6330e157d Refactored Python API installation build. 2016-01-01 16:42:01 +00:00
Nikolaj Bjorner f414869456 add symbolic automaton
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-23 19:46:10 -08:00
Nikolaj Bjorner 7a9bd72e2e merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-22 17:48:47 -08:00
Nikolaj Bjorner ea876715e3 Merge branch 'master' of https://github.com/Z3Prover/z3 2015-12-22 10:46:50 -08:00
Nikolaj Bjorner 9c6271dded add debugging facilities for github issues #384 #367
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-22 10:43:18 -08:00
Tony Tiger e98ee6ec06 Fixing building under OS X
Previous method is_osx_hack didn't exist, possibly wasn't cleaned up. This
change has been tested and Z3 compiles successfully within a 2.7 virtualenv
running on OS X 10.10.5.
2015-12-22 13:00:55 +00:00
Christoph M. Wintersteiger a30fe1e2ec Followup to previous build fix. Relates to #357 and #361 2015-12-22 00:52:37 +01:00
Christoph M. Wintersteiger ea218da2c4 Bugfix in build scripts.
Additional fix for #357, relates to #361.
2015-12-22 00:37:27 +01:00
Christoph M. Wintersteiger 06deb07a49 Merge branch 'master' of https://github.com/Z3Prover/z3 2015-12-17 12:47:34 +00:00
Christoph M. Wintersteiger 0fe1e3248f .NET build fix 2015-12-17 12:47:24 +00:00
Christoph M. Wintersteiger 1cc2385fd2 typo 2015-12-17 12:33:45 +00:00
Mikolas Janota c6e66ebc3a Adding ackr component. 2015-12-15 18:43:36 +00:00
Christoph M. Wintersteiger 90b1b07af4 build fixes 2015-12-15 15:03:53 +00:00
Christoph M. Wintersteiger 22a77721ef Updated build options for .NET API 2015-12-15 14:20:31 +00:00
Christoph M. Wintersteiger f4e3989766 .NET API build fixes 2015-12-15 13:09:02 +00:00
Christoph M. Wintersteiger 942b6ba5ec Updated .NET build. 2015-12-15 12:24:59 +00:00
Christoph M. Wintersteiger fc5b9156cf Merge pull request #363 from delcypher/dotnet_configure_assembly_info
Refactor ``mk_all_assembly_infos()`` to use the ``configure_file()`` and misc fixes for dotnet bindings
2015-12-15 11:35:14 +00:00
Dan Liew 439d8d8afe Fix issue on non-windows systems when emitting the build rule
for the ".NET" bindings example.

Previously there was a hack that would to path separator replacement
( '/' -> '\' ) which breaks paths under non-windows platforms. The hack
has been made slightly better by doing ( '/' -> os.path.sep). This
preserves the existing behaviour under Windows and unbreaks the build
on non-windows platforms.

I'm not entirely sure why the path replacement needs to be done in
the first place. I thought Windows was supposed to support using
'/' as a path separator (as well as '/'). Maybe ``csc.exe`` doesn't
support these kind of paths?
2015-12-15 08:56:47 +00:00
Dan Liew 44393b37de Emit dependency of phony target `examples on _ex_dotnet_example`
when building of the ".NET" bindings is enabled.
2015-12-15 08:46:47 +00:00
Christoph M. Wintersteiger edb1f4d896 ML API build fix 2015-12-14 14:55:38 +00:00
Christoph M. Wintersteiger 134b93b43e ML API build fixes for Windows. 2015-12-14 14:41:19 +00:00
Dan Liew d3d10490ea Fix bug in `Makefile` generation when emitting the command to build
the ".NET" bindings when in debug mode.

``;`` is a shell command separator so it needs to be quoted when
emitting ``/define:DEBUG;TRACE``.
2015-12-14 09:56:03 +00:00
Dan Liew 81c98cf3ee Refactor `mk_all_assembly_infos() to use the configure_file()`
function. The old implementation was buggy under Python 3.5 and
unsafe (not using with statements on calls to ``open()``).
2015-12-14 09:51:45 +00:00
Christoph M. Wintersteiger 5a357097c0 ML API Windows build fixes 2015-12-12 20:01:52 +00:00
Christoph M. Wintersteiger d456400f93 Merge branch 'new_ocaml_install' of https://github.com/wintersteiger/z3 into new_ocaml_install 2015-12-12 19:34:02 +00:00
Christoph M. Wintersteiger d5f79c1f17 build fix for ML API 2015-12-12 19:30:25 +00:00
Dan Liew 140b3de3aa Make warnings that are emitted when installing Python bindings outside
the install prefix on OSX less aggressive by not stating that this might
lead to a broken install (even though it might!).

Also emit a similar warning during the configuration step.

This partially addresses #361
2015-12-12 19:30:24 +00:00
Christoph M. Wintersteiger 325d516825 ocaml build fix 2015-12-12 19:30:22 +00:00
Christoph M. Wintersteiger 02f7ae4a4d updated ocaml build and installation 2015-12-12 19:30:22 +00:00
Dan Liew 948df47027 Make warnings that are emitted when installing Python bindings outside
the install prefix on OSX less aggressive by not stating that this might
lead to a broken install (even though it might!).

Also emit a similar warning during the configuration step.

This partially addresses #361
2015-12-12 09:34:50 +00:00
Christoph M. Wintersteiger f164f17190 ocaml build fix 2015-12-11 20:01:55 +00:00
Christoph M. Wintersteiger 50f17e403c updated ocaml build and installation 2015-12-11 19:56:23 +00:00
Nikolaj Bjorner 8949790c16 Merge branch 'master' of https://github.com/Z3Prover/z3 2015-12-09 07:37:51 -08:00
Nikolaj Bjorner 820fb10ef8 create .so impages for OpenBSD
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-09 07:37:40 -08:00
Nikolaj Bjorner d11022cf2d Merge pull request #362 from NikolajBjorner/master
Combined updates to seq, add openbsd cases to build script.
2015-12-09 07:30:51 -08:00
Christoph M. Wintersteiger 84291825e6 Resolved conflicts 2015-12-09 13:07:25 +00:00
Christoph M. Wintersteiger a0f9f461f8 Build fix 2015-12-09 13:01:42 +00:00
Nikolaj Bjorner aebdc8950a Merge branch 'master' of https://github.com/Z3Prover/z3 2015-12-09 00:40:36 -08:00
Dan Liew 0a1c645b5e Don't emit install commands and dependencies if ML bindings are
disabled!
2015-12-08 23:20:39 +00:00
Dan Liew edf5ed27df Attempt to allow (but warn about) installation of Python bindings
under OSX when the Python ``site-packages`` directory doesn't live
under the install prefix. Also disallow installing under Windows
as it doesn't really make sense.
2015-12-08 23:10:48 +00:00
Dan Liew d98d392aac Try unbreak OSX build when Python installation doesn't live under
PREFIX. In this case it is not safe to call ``strip_path_prefix()``
due to the assertion error it will raise.
2015-12-08 23:10:48 +00:00
Dan Liew 0a8cd3ae19 Refactor the install and uninstall commands for the python bindings
out of ``DLLComponent`` and into ``PythonInstallComponent`` where they
belong.
2015-12-08 23:10:48 +00:00
Dan Liew 38b45919b5 Unbreak running `make install. The python site-package` directory
was not created before trying to create files in it.

The ``install_deps()`` method was also dead. It looks like that
should have been named ``mk_install_deps()`` but even if we give it
the right name it does the wrong thing. That method is supposed
emit target names (i.e. dependencies) not commands.
2015-12-08 23:10:48 +00:00
Dan Liew e2546d2b95 Refactor references to `pythonPkgDirWithoutPrefix` to a object
attribute.
2015-12-08 23:08:23 +00:00
Christoph M. Wintersteiger 83db19654f refactored ocamlfind_install target 2015-12-08 18:57:17 +00:00
Nikolaj Bjorner 895d032996 seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-08 10:33:09 -08:00
Christoph M. Wintersteiger ea79d0eacd Bugfix for Python installation on linuxes 2015-12-08 13:45:55 +00:00
Christoph M. Wintersteiger f6a10b0b82 tabs 2015-12-07 19:28:04 +00:00
Nikolaj Bjorner 34a0d7dfed remove python_install target from all
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-07 09:59:46 -08:00
Nikolaj Bjorner 70b10d53cf fix build break - remove tabs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 22:17:36 -08:00
Nikolaj Bjorner e1ab2370e1 fix python w.o. proper intallation, #338, #340
Signed-off-by: Nikolaj Bjorner <nbjorner@z3-mac.local>
2015-12-07 03:32:58 +00:00
Nikolaj Bjorner 92a4ac9eb7 make dotnet optional and recover from python installation mismatch. Pull requests #338, #340
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 19:28:39 -08:00
Nikolaj Bjorner febd83912e make dotnet optional and recover from python installation mismatch. Pull requests #338, #340
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 19:25:18 -08:00
Nikolaj Bjorner a940230301 make dotnet optional and recover from python installation mismatch. Pull requests #338, #340
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 19:14:53 -08:00
Nikolaj Bjorner 6c73c176b3 make dotnet optional and recover from python installation mismatch. Pull requests #338, #340
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-06 19:10:11 -08:00
Nikolaj Bjorner b5fcbd7099 Merge branch 'mono_dotnet_bindings' of https://github.com/delcypher/z3-1 2015-12-06 13:51:43 -08:00
Nikolaj Bjorner 4ec6bc0825 Merge branch 'better_packaging' of https://github.com/delcypher/z3-1 2015-12-06 12:31:55 -08:00
Dan Liew c8a2b6645a Teach the build system to generate and install a pkg-config file for the
".NET" bindings. This file is required for Monodevelop to find the
bindings because Monodevelop uses pkg-config to find packages
(it doesn't use the GAC).

For lack of a better name the GAC (and pkg-config) package name is now
``Microsoft.Z3.Sharp``. I don't want to call it ``Microsoft.Z3`` because
someone may want to create a ``Microsoft.Z3.pc`` file in the future for
the native Z3 library (i.e. C++ or C bindings).

In addition there is a new utility function ``configure_file()``
which reads a template file, applies some substitutions and writes
the result to another file. This very similar to what CMake does.

There is a new environment variable ``Z3_INSTALL_PKGCONFIG_DIR``
which allows pkgconfig directory to be controlled for the install.
2015-12-05 07:52:31 +00:00
Dan Liew 61d1cd524e Teach the build system to build and install the ".NET bindings"
under non Windows systems (i.e. Using mono).

Building these bindings is unfortunately on by default because
I didn't want to change the command line interface (i.e. ``--nodotnet``)
which people might be relying on. This should really be changed to
match the other binding flags (e.g. ``--java``) but I will leave
this for now.

To perform the build a C# compiler and the GAC utility are required.
The script will try to automatically detect them but the user can
override this by setting the ``CSC`` and ``GACUTIL`` environment
variables.

In order for the ".NET bindings" to be installed the assembly
(``Microsoft.Z3.dll``) needs to have a strong name which means
we need a Strong name key file which is what the
``Microsoft.Z3.mono.snk`` is for. This is the public and private
key so this key **must never** be used for checking integrity. Instead its
only purpose is to avoid any name clashes in the GAC.

It is also worth noting that slightly different flags needs to
be passed to the C# compiler on non Windows platforms. I don't
understand why some of the flags are being used on Windows but I left
a comment there that hopefully someone can fix...
2015-12-05 07:52:31 +00:00
Dan Liew 6884d3a245 Fix references to non existent function and variable due to a refactor
in 041c02feb7. Spotted by @NikolajBjorner
2015-12-05 07:50:33 +00:00
Christoph M. Wintersteiger 00271e5531 C API cleanup. Mainly removal of ML-specific macros that are not used anymore and inline documentation fixes. 2015-12-03 17:33:25 +00:00
Dan Liew d2ba6f0ebf Provide a way to customise the install directories via environment
variables:

Z3_INSTALL_BIN_DIR - defaults to "bin"
Z3_INSTALL_LIB_DIR - defaults to "lib"
Z3_INSTALL_INCLUDE_DIR - defaults to "include"

This has two advantages

* We no longer hard code strings like "bin" all over the place
* Packagers can easily control where things get installed.
2015-11-28 19:11:03 +00:00
Dan Liew d205b176e8 Bug fix for `MakeRuleCmd.create_relative_symbolic_link()`.
create_relative_symbolic_link(out, '/usr/lib64/libz3.so',
'/usr/lib/python3.5/site-package/libz3.so') would create an incorrect relative
path because it would consider ``/usr/lib`` to a be a path prefix of
``/usr/lib64``.
2015-11-28 19:03:05 +00:00
Dan Liew f1d4f36ddf Refactor the use of `$(DESTDIR)$(PREFIX) in MakeRuleCmd`
class so that it is exposed via a public method (``install_root()``)
so that is can be used externally. Also refactor the existing methods
to use it.
2015-11-28 19:03:05 +00:00
Dan Liew 32c4384d48 Fix dead comment and expand on the reasons for making a symbolic link
slightly.
2015-11-28 19:03:05 +00:00
Dan Liew 684318149b Remove dead code that I accidently left behind. 2015-11-28 19:03:05 +00:00
Dan Liew 6984070b3a Fix typo (missing argument) that I missed that didn't fire because
I did not test on Windows.
2015-11-28 19:03:05 +00:00
Dan Liew d6fa0583ab Fix bug in `ExeComponent.mk_uninstall()` in the build system
which would try to uninstall components that were never installed.

This bug would cause the following line to be emitted in the
``Makefile`` under the ``uninstall`` rule even though there was
no corresponding rule to install the file under the ``install`` rule.

```
@rm -f $(DESTDIR)$(PREFIX)/bin/test-z3$(EXE_EXT)
```
2015-11-28 19:03:05 +00:00
Dan Liew 041c02feb7 Finish addressing @wintersteiger comments on `$(DESTDIR)` being
duplicated in too many places by refactoring the installation and
removal of the Python bindings to use the ``MakeRuleCmd`` class.

In order to make this change:

* ``PYTHON_PACKAGE_DIR`` no longer contains the text ``$(PREFIX)``
* ``PYTHON_PACKAGE_DIR`` **MUST BE** inside the installation prefix
2015-11-28 19:03:05 +00:00
Dan Liew 23cf7e86a9 Start to address @wintersteiger 's comments aboug `$(DESTDIR)` being
duplicated in too many places and being worried that someone might
forget to use it when installing additional components.

To acheive this the new ``MakeRuleCmd`` class provides
several class methods to generate commonly needed commands used in
make file rules.

Most of the build system has been changed to use these helper methods
apart from stuff related to the Python bindings. This can't be changed
until we fix how PYTHON_PACKAGE_DIR is handled. Right it not guaranteed
to live under the install prefix but this is a requirement when using
the ``MakeRuleCmd`` methods.
2015-11-28 19:03:05 +00:00
Dan Liew 53f0addb6b Avoid making a copy of libz3 on non Windows platforms for the
Python bindings (provided they both exist within the same install
prefix) by creating a relative symbolic link. This saves
space when packaging Z3.
2015-11-28 19:03:05 +00:00
Dan Liew e8822b1806 Add a note about using DESTDIR when building Z3 completes. 2015-11-28 19:03:05 +00:00
Dan Liew 4c11037d70 Fix setting the path to the Python package directory.
There were several problems with the existing implementation.

* When specifying ``--prefix`` the implementation would assume the
  path was ``$(PREFIX)/lib/python-<VERSION>/dist-packages``. This
  is incorrect. ``dist-packages`` is Debian (and its derivatives,
  i.e Ubuntu) specific and won't work on other Linux distributions
  such as Arch Linux.

* When generating the ``Makefile``, ``$(PREFIX)`` was only emitted
  during the Python installation when ``--prefix`` was passed on
  the command line. When ``--prefix`` was not passed the absolute
  path to the Python package directory was emitted. This is not
  very consistent.

This patch checks that the detected Python package directory lives
under the install prefix and emits an error if it does not as this
indicates that the installation will be broken. If the Python package
directory does live under the install prefix it replaces that prefix
with the ``$(PREFIX)`` variable when emitting the ``Makefile`` for
consistency with the other install commands.

If a user really wants to install to a particular Python package
directory they can force it with the newly added ``--pypkgdir=``
flag.
2015-11-28 19:03:05 +00:00
Dan Liew b285ce7cee Partially fix not being able to do a staged install (using `DESTDIR`)
when installing the Python bindings.

If ``DESTDIR`` is set the bindings will now be installed under this
path but ``$(PREFIX)`` only appears in the ``Makefile`` if ``--prefix``
was set which seems a little broken (we'll fix this soon).

The creation of the Python ``site-packages`` (and ``__pycache__`` for Python
3) directories has been moved to build time instead of configure time
because we don't know what ``DESTDIR`` will be set to at configure time.
2015-11-28 19:03:05 +00:00
Dan Liew 9489665ddc Partially fix not being able to do a staged package install of Z3 using the
DESTDIR make file variable (https://www.gnu.org/prep/standards/html_node/DESTDIR.html)
for ``install`` and ``uninstall`` targets.

Typically packagers build packages like so

```
$ ./configure --prefix=/usr/
$ make
$ make DESTDIR=/some/path/ install
```

Doing this installs the files into a directory ``/some/path`` but places
files inside that directory using the layout in ``--prefix`` (e.g.
``/some/path/usr/bin/z3``).  The ``/some/path`` directory can then be
packaged (e.g. tarballed) for later installation.

The ``DESTDIR`` is not set in the Makefile and thus is empty by default
which maintains the existing ``make install`` behaviour.

Unfortunately this situation isn't fixed for the Python bindings (and
possibly others) yet as more invasive changes are needed here. I'll fix
this in later commits.
2015-11-28 19:03:05 +00:00
Nikolaj Bjorner 665af3d8b9 remove deprecated user-theory plugins and other unused functionality from API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-20 08:43:27 -08:00
Christoph M. Wintersteiger d9beb9e15a Windows build fix 2015-11-20 09:57:05 +01:00
Christoph M. Wintersteiger 0881c96b2e Merge branch 'master' of https://github.com/Z3Prover/z3 2015-11-19 23:24:34 +01:00
Christoph M. Wintersteiger b2281f956b Fixed Python 2.x vs 3.x issues.
Fixes Z3Prover/bin/#2.
2015-11-19 23:24:04 +01:00
Nikolaj Bjorner 2122fdee45 fix build script for update to name of get_error_msg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-19 08:33:27 -08:00
Nikolaj Bjorner 1d4b996765 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-18 16:39:51 -08:00
Nikolaj Bjorner 9cba63c31f remove deprecated iz3 example. Remove deprecated process control
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-18 12:32:15 -08:00
Christoph M. Wintersteiger fc05eb65bd Fixed regular expressions in build scripts to expect cross-platform newlines. 2015-11-17 13:55:16 +00:00
Nikolaj Bjorner 6e1c246454 avoid exception in Ratul's environment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-16 23:06:04 -08:00
Christoph M. Wintersteiger 706a037bf4 Python 3.x string decoding fix 2015-11-16 15:16:50 +01:00
Nikolaj Bjorner bea68cd194 remove deprecated API functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-14 17:05:15 -08:00
Christoph M. Wintersteiger 05eb78ccac fix for string decoding in build scripts 2015-11-14 15:42:49 +00:00
Christoph M. Wintersteiger 639dfc4b30 fix for string decoding in build scripts 2015-11-14 15:06:55 +00:00
Christoph M. Wintersteiger 27dcd8c5b6 Fix for python decoding of command line output strings
Fixes #302
2015-11-13 17:15:04 +00:00
Christoph M. Wintersteiger 2f216ee5c1 Fixed PREFIX for OSX installation. Fixes #124. 2015-11-03 15:35:43 +00:00
Christoph M. Wintersteiger 28ba92b298 Python 3.x issues 2015-10-30 06:31:16 -07:00
Christoph M. Wintersteiger 64fa2db3ff Python 3.x issues 2015-10-29 17:47:07 +00:00
Christoph M. Wintersteiger 7287478370 Fixed Python 3.x issue with commandline output from subprocess.Popen 2015-10-29 15:54:28 +00:00
Christoph M. Wintersteiger 5cb4b1d188 Fix for example build rules. 2015-10-29 13:06:48 +00:00
Christoph M. Wintersteiger b47e9d74e9 Refactored example build rules to avoid compiler warnings. 2015-10-29 13:03:02 +00:00
Christoph M. Wintersteiger eb28ee8999 Python 3.x issues 2015-10-28 22:40:07 +00:00
Christoph M. Wintersteiger 498bafcc4b Merge branch 'ocamlfind_stublibs' of https://github.com/zkincaid/z3 into zkincaid-172 2015-10-19 17:05:55 +01:00
Christoph M. Wintersteiger eb0cdc42d1 Merge branch 'pypy-fix' of https://github.com/zardus/z3 into zardus-76
# Conflicts:
#	scripts/mk_util.py
2015-10-19 16:51:43 +01:00
Christoph M. Wintersteiger aa1692370d Merge branch 'fix-mk_util_py' of https://github.com/cao/z3 into cao-tabs
# Conflicts:
#	scripts/mk_util.py
2015-10-19 15:35:14 +01:00
Christoph M. Wintersteiger b1fcdadd55 Merge branch 'buildsystem_cleanup' of https://github.com/daniel-j-h/z3 into daniel-j-h-buildsystem_cleanup 2015-10-19 15:18:13 +01:00
Christoph M. Wintersteiger 3c89312d1e Merge pull request #55 from zshipko/master
support openbsd
2015-10-19 14:15:56 +01:00
Christoph M. Wintersteiger 115187ee2b Bumped version number to 4.4.2. 2015-10-05 16:04:03 +01:00
Zachary Kincaid 9e34872e8f For ocamlfind install, set rpath to package directory if stublibs does not exist 2015-10-04 10:10:53 -04:00
Christoph M. Wintersteiger d8524ae4dd Fixed indentation 2015-10-03 16:24:06 +01:00
Christoph M. Wintersteiger 08a3ab92f3 Added --noomp to mk_make 2015-10-02 12:38:56 +01:00
Zachary Kincaid eca2488ab4 If ocamlfind is installed, add destdir/stublibs to rpath 2015-07-26 19:59:17 -04:00
Nikolaj Bjorner 9dd704bc4b remove double underscores
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-09 18:05:45 -07:00
Nikolaj Bjorner a9a5a69b73 remove double underscores
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-09 13:31:22 -07:00
Nikolaj Bjorner 4bc044c982 update header guards to be C++ style. Fixes issue #9
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-08 23:18:40 -07:00
Henning Guenther c7e96d897a Replace cone-of-influence filter with generalized dataflow-engine
Signed-off-by: Henning Guenther <t-hennig@microsoft.com>
2015-06-29 10:50:51 +01:00
Nuno Lopes e441db5bc4 build system: fix typo in OS_DEFINES for linux
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-06-23 13:59:36 +01:00
Nuno Lopes 4346966f00 Run link-time optimization on windows only when configured with --optimize
This should probably be revisited for VS 2015

Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-06-22 14:48:50 +01:00
Nikolaj Bjorner 6f0d76a62e Merge branch 'unstable' of https://github.com/Z3Prover/z3 into unstable 2015-06-21 09:39:32 -07:00
Nikolaj Bjorner 949c21ca08 enable incremental sat for QF_BV
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-21 02:23:56 -07:00
Nikolaj Bjorner fe7c577d99 isolate inc_sat_solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-21 01:54:52 -07:00
Nikolaj Bjorner 1657cdd8b4 add missing copyright
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-17 12:47:19 -07:00
Nikolaj Bjorner d469a16bb8 add more Copyright notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-10 11:59:21 -07:00
Nikolaj Bjorner b08ccc7816 added missing Copyright forms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-10 11:54:02 -07:00
zach shipko 9cc4fc919d Merge branch 'master' of https://github.com/Z3Prover/z3 2015-05-30 18:36:26 -07:00
Christoph M. Wintersteiger 85419ca503 Added branch into QF_NRA from QF_FP problems containing to_real terms. 2015-05-29 14:21:27 +01:00
Christoph M. Wintersteiger d8d0b21e42 Bugfix for dll/so name resolution in Java.
Fixes #111
2015-05-29 12:55:17 +01:00
Nuno Lopes 8ff7735a20 python 3 fixes
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-05-19 13:47:43 +01:00
Nuno Lopes ef32aaaf12 don't use -fPIC on cygwin 64
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-05-18 16:37:20 +01:00
Nikolaj Bjorner e8811748d3 fix regressions in nl/smt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-16 19:08:37 +01:00
Nuno Lopes 7ae68f003a dont use /LTCG on windows debug builds
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-05-15 19:20:57 +01:00
Nikolaj Bjorner ab5022888c Merge branch 'opt' of https://github.com/Z3Prover/z3 into unstable 2015-05-14 12:11:17 +01:00
Nuno Lopes ce749240d7 more fixes for python 3
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-05-12 18:43:51 +01:00
Christoph M. Wintersteiger 043f441a4c Python 3.x compatibility.
Fixes problems reported in comments to 1abeb825a3
2015-05-12 10:29:37 +01:00
Nikolaj Bjorner 839e3fbb7c add ddnf tests, add facility to solve QF_NRA + QF_UF(and other theories) in joint solver to allow broader use of QF_NRA core
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-09 19:40:34 -07:00
Yan 8b9bf9ea90 Fix mk_util.py so that it explicitly closes files (instead of relying on reference counting, which doesn't exist in pypy) 2015-05-05 11:38:04 -07:00
Kevin Borgolte 024923526b remove unused modules 2015-05-05 11:31:32 -07:00
Kevin Borgolte f458423868 remove trailing whitespace 2015-05-05 11:29:48 -07:00
Kevin Borgolte 7dcdecfa09 fix mixed tab/spaces indent 2015-05-05 11:29:26 -07:00
Nikolaj Bjorner 9377779e58 merge with unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-30 10:40:03 -07:00
Christoph M. Wintersteiger c0dc08ee9c Added configuration checks for floating-point build flags. 2015-04-30 17:17:44 +01:00
Christoph M. Wintersteiger 8c9afa423b Bumped version number to 4.4.1 in unstable.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-04-29 17:22:24 +01:00
Christoph M. Wintersteiger 78cc1e0703 Remove temporary files created during configuration tests. 2015-04-29 15:15:57 +01:00
Christoph M. Wintersteiger 1abeb825a3 Fixed python 3.x problems.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-04-28 14:58:58 +01:00
zach shipko f034ed54ab support openbsd 2015-04-23 11:28:17 -07:00
Nikolaj Bjorner 3ba2e712b2 merge with unstable branch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-12 15:54:52 -07:00
Daniel J. Hofmann ce9036c300 Minor python-related style fixes 2015-04-09 21:24:15 +02:00
Christoph M. Wintersteiger 03020b9f96 Build system bugfixes.
Partially fixes #27
2015-04-08 12:09:14 +01:00
Christoph M. Wintersteiger ba066ff899 Bugfix for build scripts.
Partially fixes #27
2015-04-08 11:54:25 +01:00
Christoph M. Wintersteiger 0e8d314a2a Fixed Java API installation targets. Fixes #28 2015-04-08 11:02:56 +01:00
Christoph M. Wintersteiger 0ad97022a1 Added (un)install targets for the Java API 2015-04-07 13:48:34 +01:00
Nikolaj Bjorner 52619b9dbb pull unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 14:57:11 -07:00
Christoph M. Wintersteiger 0f03cd2ae0 Enabled test for OpenMP in Windows (for old and express versions of visual studio).
Fixes #8
2015-03-29 15:49:03 +01:00
Nikolaj Bjorner 4bfe20647b remove tab in mk_util.py
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-27 02:43:21 -07:00
Christoph M. Wintersteiger 8d11c431b7 Bugfix for the OCaml bindings on Windows
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-04 17:44:53 +00:00
Christoph M. Wintersteiger ec4a07318e Bugfix for the Java API on Windows
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-04 15:19:15 +00:00
Christoph M. Wintersteiger 1f8119f601 Bugfix for the Java API. Thanks to codeplex user susmitj for reporting this problem!
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-04 15:14:07 +00:00
Christoph M. Wintersteiger 400e203bce Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-02 17:31:42 +00:00
Christoph M. Wintersteiger 71f2d358ef Bugfix in windows dist scripts
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-02 17:30:41 +00:00
Nuno Lopes dd2c179663 Fix warnings during compilation with MSVC due to /LTCG
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-03-02 15:05:38 +00:00
Nuno Lopes 8d303a09b5 Compile Z3 with link-time optimizations on Windows, yielding a 2-3% speedup
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-25 13:10:29 +00:00
Nuno Lopes 1e30fd2c65 Hide non-exported symbols when compiling with gcc/clang.
I get a 17% reduction in the size of libz3.so on linux 32 bits, plus a 0.5-1% speedup when using the API.

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-22 11:38:46 +00:00
Nuno Lopes 5676fbbc9e compiler love: make a few symbols static and avoid unneeded relocations
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-22 11:13:51 +00:00
Christoph M. Wintersteiger 5c7d0380d3 Fixes in the OCaml FPA API and example 2015-01-24 18:29:52 +00:00
Christoph M. Wintersteiger 1c9051016a Merge branch 'unstable' of https://git01.codeplex.com/z3 into ml-ng
Conflicts:
	scripts/mk_util.py
2015-01-24 18:29:03 +00:00
Christoph M. Wintersteiger 65ccc9a8ea added FPA ML API
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-23 19:36:47 +00:00
Christoph M. Wintersteiger ffd10675f4 Merge branch 'unstable' of https://git01.codeplex.com/z3 into ml-ng 2015-01-23 11:07:48 +00:00
Christoph M. Wintersteiger d56d63e3e8 Merge branch 'fpa-api' of https://git01.codeplex.com/z3 into unstable
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>

Conflicts:
	src/tactic/portfolio/default_tactic.cpp
2015-01-21 14:25:31 +00:00
Christoph M. Wintersteiger 052baaabe4 FPA API bugfixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-21 14:22:35 +00:00
Christoph M. Wintersteiger d0a7246f00 Merge branch 'unstable' of https://git01.codeplex.com/z3 into ml-ng 2015-01-21 13:51:00 +00:00
Christoph M. Wintersteiger 5e6ea4e570 added --x86 build flag 2015-01-20 19:03:49 +00:00
Christoph M. Wintersteiger 237577acc8 Bumping version to 4.4
Added to release notes

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-20 15:59:54 +00:00
Christoph M. Wintersteiger a8d8e3e9e5 formatting
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 18:16:51 +00:00
Christoph M. Wintersteiger ed0fa93245 Minor adjustments after rebase
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:35:19 +00:00
Christoph M. Wintersteiger c9fa77cc70 ML API: fixed Python 3.4 issues in the build scripts
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:17:59 +00:00
Christoph M. Wintersteiger e754aa1c11 Minor adjustments after rebasing ml-ng onto unstable.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:17:58 +00:00
Christoph M. Wintersteiger bb31014417 ML API: build fix
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:17:14 +00:00
Christoph M. Wintersteiger 5c67b59685 ML API: Windows build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:17:12 +00:00
Christoph M. Wintersteiger 05f42b0073 ML API: build fixes? 2015-01-19 17:17:11 +00:00
Christoph M. Wintersteiger 93a20d9074 ML API: build fixes 2015-01-19 17:17:10 +00:00
Christoph M. Wintersteiger ea9fc43544 ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:48 +00:00
Christoph M. Wintersteiger d47f143591 ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:47 +00:00
Christoph M. Wintersteiger 198c6ef930 ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:45 +00:00
Christoph M. Wintersteiger 4c28085022 ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:45 +00:00
Christoph M. Wintersteiger ceabafa01c ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:44 +00:00
Christoph M. Wintersteiger 2ee4409962 ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:43 +00:00
Christoph M. Wintersteiger 40c6be0baa ML API: build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:42 +00:00
Christoph M. Wintersteiger 93d7412950 ML API build fixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:41 +00:00
Christoph M. Wintersteiger b85c3e12f4 ML API build fix 2015-01-19 17:16:39 +00:00
Christoph M. Wintersteiger 5092ceec7d ML API: build fix
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:37 +00:00
Christoph M. Wintersteiger 42f12ed752 ML API: added interpolation, bugfixes.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:37 +00:00
Christoph M. Wintersteiger 8cd74a825d ML API: Undoing earlier changes.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:16:36 +00:00
Christoph M. Wintersteiger 7bd8dda766 ML API: bugfixes 2015-01-19 17:15:50 +00:00
Christoph M. Wintersteiger a1bb307dd1 ML API: bugfixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 17:15:49 +00:00