Skip to content

Commit

Permalink
Added description for Gradle modules
Browse files Browse the repository at this point in the history
  • Loading branch information
tochilinak committed Jul 2, 2024
1 parent 7909461 commit 9c58616
Showing 1 changed file with 36 additions and 1 deletion.
37 changes: 36 additions & 1 deletion usvm-python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ For Windows you need MSBuild (see https://devguide.python.org/getting-started/se
brew install [email protected]
```
- Set a gradle property pointing to OpenSSL location:
- Set a gradle property pointing to OpenSSL location ([about `GRADLE_USER_HOME` directory](https://docs.gradle.org/current/userguide/directory_layout.html#dir:gradle_user_home)):
```
cpython.ssl.path=/opt/homebrew/opt/openssl
```
Expand All @@ -84,6 +84,41 @@ For Windows you need MSBuild (see https://devguide.python.org/getting-started/se
- `:usvm-python:manualTestDebug`: run with debug logging and debug build of CPython
- `:usvm-python:manualTestDebugNoLogs`: run with info logging and debug build of CPython
## Structure of `usvm-python`
`usvm-python` has several internal Gradle modules. Here is a description for them.
### Root module `usvm-python`
Puts all internal modules together. Tests are declared here.
### Module `usvm-python:usvm-python-main`
Main part of `usvm-python` symbolic machine.
### Module `usvm-python:cpythonadapter`
This module contains CPython as git submodule in folder `cpython`.
The code in `src` folder is a native part of the symbolic machine.
It is supposed to bind Python and USVM in one process.
In `usvm-python-main` the binding point is class `CPythonAdapter.java`.
### Module `usvm-python:usvm-python-annotations`
Declares several annotations for `CPythonAdadpter.java`.
They are used to automatically generate some C code.
After build, the generated code can be found in folder
`cpythonadapter/build/adapter_include`.
### Module `usvm-python:usvm-python-runner`
JVM library for using `usvm-python` in other applications (such as UTBot).
### Module `usvm-python:usvm-python-commons`
Code that is used both in `usvm-python-runner` and `usvm-python-main`.
## Addition of a method in CPythonAdapter
### Native method
Expand Down

0 comments on commit 9c58616

Please sign in to comment.