1. REQUIREMENTS =============== * Python 2.6 or higher, 3.2 or higher (http://www.python.org/) - Tested with Python 3.8 * Cython 0.21 or higher (http://cython.org/) - Tested with Cython 0.29.16 * EFL must be the same minor version of the bindings, es. python-efl 1.24 need efl 1.24 * To build the DOCS you will also need: - python-sphinx - [optional] graphviz * At least 4GB of free RAM to build 2. BUILDING PYTHON-EFL ====================== Once EFL is built and installed in your desired destination, proceed with building the wrapper using: python setup.py build IMPORTANT NOTE: To build the bindings you will need at least 4GB of free ram! Otherwise the build process will badly fail. Distribution tarballs include pre-generated C source files, so cython usage is disabled by default, while is enabled in development git versions. You can always force the usage of cython using two environment variables: DISABLE_CYTHON or ENABLE_CYTHON * FORCE C SOURCES FOR BUILD env DISABLE_CYTHON=1 python setup.py build * FORCE THE USAGE OF CYTHON env ENABLE_CYTHON=1 python setup.py build 3. CLEANUP ========== * For cleaning up: python setup.py clean --all * To also remove all the C/HTML files generated by Cython: python setup.py clean_generated_files WARNING: you will need cython to regenerate the C files, do not use this in distribution tarballs, unless you know what are you doing. 4. INSTALLATION =============== * For system-wide installation (needs administrator privileges): (sudo) python setup.py install * For user installation: python setup.py install --user * To install for python3: (sudo) python3 setup.py install (also cython need to be installed with py3) * Install with a custom prefix: (sudo) python setup.py install --prefix=/MY_PREFIX * You can also uninstall using: (sudo) python setup.py uninstall 5. DOCUMENTATION ================ To build the docs for the bindings you need to have Sphinx installed, for (optional) graphs you need Graphviz, for (optional) Youtube demonstration videos you need the YouTube module from sphinx contrib repository. packages: python-sphinx, graphviz, python-pygraphviz, libgv-python To build the docs just run: python setup.py build_doc You will find the generated html docs under the folder: build/sphinx/html Note: you must build the bindings before building the docs, or you will end up with empty documentation. 6. TESTS and EXAMPLES ===================== The tests/ folder contains all the unit tests available, you can run individual tests or use the 00_run_all_tests.py in each folder or even in the tests/ base dir to run all the tests at once. Python 2.7 / 3.2 or greater is required for running the tests. The scripts in examples/ folder must be run by the user as they require user interaction.