3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-01-18 16:28:56 +00:00
z3/scripts
Dan Liew 4814555c46 Fix inconsistent emission of `gparams_register_modules.cpp`,
``install_tactics.cpp`` and ``mem_initialiszer.cpp`` files between
the CMake and Python build systems.

The problem was that the generated files were

* Senstive to the order component directories were traversed
* For CMake there are two directories (a source and build directory)
  for every component rather than a single directory like the
  Python build system has.

To fix this a new function ``sorted_headers_by_component()`` has been
added which defines a order that is consistent between both build
systems. This function is then used on lists of paths to discovered
header files.
2016-03-13 23:00:40 +00:00
..
mk_consts_files.py
mk_copyright.py
mk_def_file.py
mk_exception.py
mk_genfile_common.py Fix inconsistent emission of `gparams_register_modules.cpp`, 2016-03-13 23:00:40 +00:00
mk_gparams_register_modules_cpp.py
mk_install_tactic_cpp.py
mk_make.py
mk_mem_initializer_cpp.py
mk_pat_db.py
mk_project.py
mk_unix_dist.py
mk_util.py
mk_win_dist.py
pyg2hpp.py
README
trackall.sh
update_api.py
update_header_guards.py

Instructions for updating external Z3 API
-----------------------------------------

The python "macros": def_Type() and def_API() are used to add new types and function definitions to the Z3 API.
The .h files provided to `mk_bindings(API_files)` contain these definitions.
See src\api\z3_api.h for many examples.

The bindings for .Net and Python are generated when mk_make.py is invoked.