Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmake: export targets, allow to build models via CMake #2746

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Commits on May 17, 2024

  1. cmake: export targets, allow to build models via CMake

    This PR aims to allow dependent projects to build their models via CMake
    rather than a combination of shell scripts and Makefiles.  In the long
    term, this may help facilitate building natively on Windows.
    
    To try:
    ```
    git clone -b imported-main https://github.com/BlueBrain/neurodamus-models.git
    cd neurodamus-models
    ```
    
    Create a `CMakeLists.txt` with contents like:
    ```cmake
    cmake_minimum_required(VERSION 3.28)
    
    project(newrodamus)
    
    find_package(neuron REQUIRED)
    
    create_libnrnmech(MOD_FILES
      neocortex/mod/v6/CaDynamics_DC0.mod
      neocortex/mod/v6/Ca_HVA2.mod
      neocortex/mod/v6/Ca_LVAst.mod
      neocortex/mod/v6/DetAMPANMDA.mod
      neocortex/mod/v6/DetGABAAB.mod
      neocortex/mod/v6/GluSynapse.mod
      neocortex/mod/v6/Ih.mod
      neocortex/mod/v6/K_Pst.mod
      neocortex/mod/v6/K_Tst.mod
      neocortex/mod/v6/KdShu2007.mod
      neocortex/mod/v6/NaTg.mod
      neocortex/mod/v6/Nap_Et2.mod
      neocortex/mod/v6/ProbAMPANMDA_EMS.mod
      neocortex/mod/v6/ProbGABAAB_EMS.mod
      neocortex/mod/v6/SK_E2.mod
      neocortex/mod/v6/SKv3_1.mod
      neocortex/mod/v6/StochKv3.mod
      neocortex/mod/v6/TTXDynamicsSwitch.mod
      neocortex/mod/v6/VecStim.mod
      neocortex/mod/v6/gap.mod
      neocortex/mod/v6/netstim_inhpoisson.mod
    )
    ```
    
    Then build and install:
    ```
    cmake -B build -S . -GNinja -DCMAKE_INSTALL_PREFIX=x86_64
    cmake --build build
    cmake --install build
    ```
    
    To be continued‥
    matz-e committed May 17, 2024
    Configuration menu
    Copy the full SHA
    c210d77 View commit details
    Browse the repository at this point in the history
  2. Fix formatting

    github-actions[bot] committed May 17, 2024
    Configuration menu
    Copy the full SHA
    df64a62 View commit details
    Browse the repository at this point in the history
  3. Fix dynamic Python?

    matz-e committed May 17, 2024
    Configuration menu
    Copy the full SHA
    ed29f50 View commit details
    Browse the repository at this point in the history
  4. More include fixes

    matz-e committed May 17, 2024
    Configuration menu
    Copy the full SHA
    8e68179 View commit details
    Browse the repository at this point in the history
  5. Meh.

    matz-e committed May 17, 2024
    Configuration menu
    Copy the full SHA
    9503627 View commit details
    Browse the repository at this point in the history