Naja is an umbrella repository containing mainly (for the moment) the SNL netlist data structure.
# First clone the repository and go inside it
git clone https://github.com/xtofalex/naja.git
cd naja
git submodule init
git submodule update
Mandatory dependencies:
- Boost
- cmake: at least 3.22 version
Optional dependencies:
- Python3: for building the Python3 interface
- Doxygen: for the documentation
Embedded dependencies:
For convenience, google test (https://github.com/google/googletest) is provided through git submodule.
#First define an env variable that points to the directory where you want naja to be installed:
export NAJA_INSTALL=<path_to_installation_dir>
# Create a build dir and go inside it
mkdir build
cd build
cmake <path_to_naja_sources_dir>
#For instance: cmake ~/srcs/naja
make
make test
make DESTDIR=$NAJA_INSTALL install
#make sure that doxygen was available when launching the cmake command
cd build
make docs
make DESTDIR=$NAJA_INSTALL install
Documentation will be installed in $NAJA_INSTALL/doc directory. Starting file to open in browser is: $NAJA_INSTALL/doc/html/index.html.
https://github.com/xtofalex/naja/blob/main/src/snl/snippets/app/src/SNLSnippet.cpp
https://github.com/xtofalex/naja/blob/main/src/snl/snippets/python/snl_snippet.py
An application snippet can be found at:
https://github.com/xtofalex/naja/blob/main/src/snl/snippets/app
This "app" directory and its contents can be copied to start a new application.