Skip to content
Snippets Groups Projects
  1. Jan 17, 2022
    • AlQuemist's avatar
      Dependences: Correct condition for Python API · ff511336
      AlQuemist authored
      ff511336
    • Ammar Nejati's avatar
      Merge branch 'rmUnneededCMakeModules' into 'develop2' · d04e1b3e
      Ammar Nejati authored
      Remove unneeded CMake modules (Minor cleanup)
      
      * Removed `BornAgain/PythonAPI.cmake`:  
        The Python API is produced via `BornAgain/multipython/MakePythonAPI.cmake`.
        - Moved the SWIG-related contents of `PythonAPI` to `multipython/ConfigureSwig`.
        - Moved the Python-related contents of `PythonAPI` to `multipython/MakePythonAPI`.
      * Removed `SwigLib.cmake`:  
        The SWIG-produced API is made using `BornAgain/multipython/MakeSwigLib.cmake`.
      * Removed `MakeLib.cmake`:  
        The shared library is made using `BornAgain/multipython/MakeSharedLib.cmake`.
      * Moved `PythonDocs` module to `BornAgain/multipython` folder so that all Python-related CMake modules are gathered under `BornAgain/multipython` folder.
      * CMakeLists.txt<root>: Minor cleanup and improvements.
      
      See merge request !601
      d04e1b3e
    • AlQuemist's avatar
    • AlQuemist's avatar
      rm unneeded `SwigLib.cmake` · 11ed456f
      AlQuemist authored
      The SWIG-produced API is made using `BornAgain/multipython/MakeSwigLib.cmake`.
      11ed456f
    • AlQuemist's avatar
      rm unneeded `MakeLib.cmake` · 42e609d6
      AlQuemist authored
      The shared library is made using `BornAgain/multipython/MakeSharedLib.cmake`.
      42e609d6
    • AlQuemist's avatar
      PythonDocs: Move to `BornAgain/multipython` folder · bbd2ec50
      AlQuemist authored
      All Python-related CMake modules are gathered under `BornAgain/multipython` folder.
      bbd2ec50
    • AlQuemist's avatar
      rm unneeded `BornAgain/PythonAPI` · a7b4ef89
      AlQuemist authored
      The Python API is produced via `BornAgain/multipython/MakePythonAPI.cmake`.
      a7b4ef89
    • AlQuemist's avatar
      CMakeLists.txt<root>: Remove unnecessary dependency for BornAgainFit · bc3d00b8
      AlQuemist authored
      The SWIG runtime is produced in `multipython/ConfigureSwig.cmake`.
      bc3d00b8
    • AlQuemist's avatar
      PythonAPI.cmake: Move the SWIG-related contents to multipython/ConfigureSwig · e9c7f3f2
      AlQuemist authored
      Also, slightly improved `ConfigureSwig.cmake`.
      e9c7f3f2
    • AlQuemist's avatar
    • AlQuemist's avatar
      make_swig_bindings.sh: Add minor comment · 2c94611a
      AlQuemist authored
      2c94611a
    • Ammar Nejati's avatar
      Merge branch 'multipythonTests' into 'develop2' · 5190a377
      Ammar Nejati authored
      The unit and functional tests, as well as the example tests, can be built for _all_ Python versions; i.e., the main version and the Python versions set via `BORNAGAIN_PYTHON_PACKAGE_VERSIONS` variable.
      
      The tests for the extra Python versions are built by setting the variable `BORNAGAIN_PYTHON_PACKAGE_TESTS=ON`.
      
      * A `tests` subfolder is added to the main binary directory to to store the built tests for the _main_ version and their output.
      
      * A `tests` subfolder is added to the build directory for Python packages to store the built tests and their output.
      
      * Adapted unit and functional tests for multiple Python versions.  
        __NOTE:__
        - `Functional/PyEmbedded` test still cannot be performed for the Python packages, most probably due to a problem with proper usage of the Python C/API. Currently, it is produced only for the main version.
        - The GUI test is performed only for the main version, since the Python packages does not include a GUI.
      
      * A new CMake module `MakePythonAPI` is introduced to produce the Python interfaces to the C++ libraries. `MakePythonAPI` includes the necessary CMake code to build the Python interfaces and Python packages (via `MakeSwigLib` and `MakePythonWheel` modules). In this way, the Python-related part of the build mechanism is enclosed in `MakePythonAPI`.
      
      * Differentiated between `BORNAGAIN_PYTHON` variable and `WITH_PYTHON_API`
        argument:
        * `BORNAGAIN_PYTHON` = Add Python-related functionality to the C++ libraries.
        * `WITH_PYTHON_API` = Add a Python interface to the C++ libraries; currently made with SWIG.
      
      * Adapted `CMakeLists.txt` for all modules (`Base`, `Fit`, etc.) to the new interface of `MakeSharedLib`.
      
      * GUI:
        * `SampleListView`: Added proper preprocessor guards for `BORNAGAIN_PYTHON`.
        * Improved and cleaned up `CMakeLists.txt`.
        * Test: Minor improvements.
      
      See merge request !593
      5190a377
  2. Jan 14, 2022
  3. Jan 12, 2022
  4. Jan 10, 2022
  5. Dec 21, 2021
  6. Dec 20, 2021
Loading