add z3 (regular) and angr
This commit is contained in:
parent
29be9a49e8
commit
faaa550daa
|
@ -5,13 +5,36 @@
|
|||
LD_LIBRARY_PATH: '/home/{{ ansible_user }}/.local/lib:{{ ansible_env.get("LD_LIBRARY_PATH", "") }}'
|
||||
vars:
|
||||
python_version: 3.9.5
|
||||
z3_version: 4.8.11
|
||||
base_packages:
|
||||
- dask
|
||||
- distributed
|
||||
- blosc
|
||||
- lz4
|
||||
worker_packages:
|
||||
- numpy
|
||||
- scipy
|
||||
- pandas
|
||||
- scikit-image
|
||||
- matplotlib
|
||||
- opt_einsum
|
||||
- cloudpickle
|
||||
- fsspec
|
||||
- partd
|
||||
- psutil
|
||||
- sqlalchemy
|
||||
- toolz
|
||||
- xxhash
|
||||
scheduler_packages:
|
||||
- bokeh
|
||||
- jupyter-server-proxy
|
||||
tasks:
|
||||
- name: install system packages
|
||||
become: yes
|
||||
apt:
|
||||
name: ["build-essential", "wget", "software-properties-common", "libnss3-dev", "zlib1g-dev",
|
||||
"libgdbm-dev", "libncurses5-dev", "libssl-dev", "libffi-dev", "libreadline-dev",
|
||||
"libsqlite3-dev", "libbz2-dev", "libopenblas-dev"]
|
||||
"libsqlite3-dev", "libbz2-dev", "libopenblas-dev", "cmake"]
|
||||
state: present
|
||||
update_cache: yes
|
||||
|
||||
|
@ -52,6 +75,39 @@
|
|||
make -j$(nproc) EXTRA_CFLAGS="$CFLAGS"
|
||||
make EXTRA_CFLAGS="$CFLAGS" install
|
||||
|
||||
- name: build and install z3 (workers)
|
||||
when: leylines_is_server == "no"
|
||||
register: z3install
|
||||
changed_when: "'NO_COMPILE_NEEDED' not in pyinstall.stdout"
|
||||
args:
|
||||
executable: "/bin/bash"
|
||||
shell: |
|
||||
set -eo pipefail
|
||||
existing_ver="$(python3 -c "import z3; print(z3.get_version_string())" || true)"
|
||||
if [ "$existing_ver" == "{{ z3_version }}" ]; then
|
||||
echo "NO_COMPILE_NEEDED"
|
||||
exit
|
||||
fi
|
||||
cd $HOME/python
|
||||
wget -O z3.tgz https://github.com/Z3Prover/z3/archive/z3-{{ z3_version }}.tar.gz
|
||||
tar xf z3.tgz
|
||||
# microsoft why are you like this
|
||||
cd z3-z3-{{ z3_version }}
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=$HOME/.local \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DZ3_LINK_TIME_OPTIMIZATION=1 \
|
||||
-DZ3_BUILD_PYTHON_BINDINGS=1 \
|
||||
-DPYTHON_EXECUTABLE=$HOME/.local/bin/python3
|
||||
make -j$(nproc)
|
||||
make install
|
||||
cd $HOME/.local/lib/python*/site-packages/z3
|
||||
python3 -m compileall .
|
||||
python3 -O -m compileall .
|
||||
|
||||
- name: create dask dir
|
||||
file:
|
||||
path: /home/{{ ansible_user }}/dask
|
||||
|
@ -60,35 +116,31 @@
|
|||
|
||||
- name: install python packages
|
||||
vars:
|
||||
- base_packages:
|
||||
- dask
|
||||
- distributed
|
||||
- blosc
|
||||
- lz4
|
||||
- worker_packages:
|
||||
- numpy
|
||||
- scipy
|
||||
- pandas
|
||||
- scikit-image
|
||||
- matplotlib
|
||||
- opt_einsum
|
||||
- cloudpickle
|
||||
- fsspec
|
||||
- partd
|
||||
- psutil
|
||||
- sqlalchemy
|
||||
- toolz
|
||||
- xxhash
|
||||
- scheduler_packages:
|
||||
- bokeh
|
||||
- jupyter-server-proxy
|
||||
- python_packages: "{% if leylines_is_server %}{{ base_packages + scheduler_packages }}{% else %}{{ base_packages + worker_packages }}{% endif %}"
|
||||
python_packages: "{% if leylines_is_server %}{{ base_packages + scheduler_packages }}{% else %}{{ base_packages + worker_packages }}{% endif %}"
|
||||
pip:
|
||||
virtualenv: /home/{{ ansible_user }}/dask/dask-venv
|
||||
virtualenv_command: python3.9 -m venv
|
||||
virtualenv_command: python3 -m venv
|
||||
virtualenv_site_packages: True
|
||||
state: latest
|
||||
name: "{{ python_packages }}"
|
||||
|
||||
- name: create alternate venv for angr
|
||||
when: leylines_is_server == "no"
|
||||
pip:
|
||||
virtualenv: /home/{{ ansible_user }}/dask/angr-venv
|
||||
virtualenv_command: python3 -m venv
|
||||
state: latest
|
||||
name: ["angr", "cloudpickle"]
|
||||
|
||||
- name: copy weird packages
|
||||
when: leylines_is_server == "no"
|
||||
changed_when: true
|
||||
args:
|
||||
executable: "/bin/bash"
|
||||
shell: |
|
||||
set -eo pipefail
|
||||
cp -r $HOME/.local/lib/python*/site-packages/z3/ $HOME/dask/dask-venv/lib/python*/site-packages/
|
||||
|
||||
- name: install systemd user dir
|
||||
file:
|
||||
path: /home/{{ ansible_user }}/.config/systemd/user
|
||||
|
|
Loading…
Reference in New Issue