|
@@ -0,0 +1,51 @@
|
|
|
+#!/bin/bash
|
|
|
+# Exit on any error
|
|
|
+set -e
|
|
|
+
|
|
|
+# Find the venv directory
|
|
|
+if [ -d ".venv" ]; then
|
|
|
+ VENV_DIR=".venv"
|
|
|
+elif [ -d "../.venv" ]; then
|
|
|
+ VENV_DIR="../.venv"
|
|
|
+else
|
|
|
+ echo "The virtual environment does not exist. Please run 'python -m venv .venv' to create it." >&2
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
+
|
|
|
+# Activate the virtual environment
|
|
|
+source $VENV_DIR/bin/activate
|
|
|
+
|
|
|
+# Install pybind11-stubgen
|
|
|
+if ! pip show pybind11-stubgen > /dev/null; then
|
|
|
+ pip install pybind11-stubgen
|
|
|
+fi
|
|
|
+
|
|
|
+# Check if the virtual environment has the openfhe package installed
|
|
|
+if ! pip show openfhe > /dev/null; then
|
|
|
+ echo "The openfhe package is not installed in the virtual environment. Please run 'pip install -e .' to install it." >&2
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
+
|
|
|
+# Generate stub files using pybind11-stubgen
|
|
|
+echo "Generating stub files..."
|
|
|
+pybind11-stubgen openfhe
|
|
|
+
|
|
|
+# Check if stub generation was successful
|
|
|
+if [ $? -eq 0 ]; then
|
|
|
+ echo "Stub files generated successfully."
|
|
|
+else
|
|
|
+ echo "Stub generation failed." >&2
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
+
|
|
|
+# Move the generated stub files to the openfhe package directory
|
|
|
+echo "Moving the generated stub files to the openfhe package directory..."
|
|
|
+mv stubs/openfhe/* openfhe/
|
|
|
+rm -r -d stubs
|
|
|
+
|
|
|
+# Build the source distribution and wheel distribution
|
|
|
+echo "Building the sdist and bdist_wheel..."
|
|
|
+python setup.py sdist bdist_wheel
|
|
|
+
|
|
|
+# Indicate where the distributions were saved
|
|
|
+echo "The distributions have been built and are located in the 'dist' directory. You can install the package using 'pip install dist/<distribution_file>'."
|