add script for creating Python sdist

master
Hubert Chathi 2023-04-25 18:47:37 -04:00
parent 8cbb60e476
commit 0d367baa5b
2 changed files with 73 additions and 0 deletions

32
python/make_sdist.sh Executable file
View File

@ -0,0 +1,32 @@
#!/bin/bash
set -e
DIR=$(mktemp -d)
SRC=$(pwd)
cd $DIR
echo "Copying python module"
cp -a $SRC/* .
mkdir -p libolm
echo "Cleaning sources"
make clean > /dev/null
cp -a $SRC/include .
echo "Copying libolm sources"
for src in cmake CMakeLists.txt common.mk include lib Makefile olm.pc.in src tests; do
cp -a $SRC/../$src libolm
done
find libolm -name \*~ -delete
find libolm -name \#\*\# -delete
echo "Building"
patch -p1 < $SRC/packaging.diff
python3 setup.py sdist
echo "Copying result"
mkdir -p $SRC/dist
cp dist/* $SRC/dist
echo "Cleaning up"
cd $SRC
rm -rf $DIR

41
python/packaging.diff Normal file
View File

@ -0,0 +1,41 @@
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,3 +1,8 @@
include include/olm/*.h
-include Makefile
include olm_build.py
+include libolm/*
+include libolm/cmake/*
+include libolm/include/olm/*
+recursive-include libolm/lib *
+include libolm/src/*
+recursive-include libolm/tests *
--- a/olm_build.py
+++ b/olm_build.py
@@ -25,14 +25,23 @@
DEVELOP = os.environ.get("DEVELOP")
-compile_args = ["-I../include"]
-link_args = ["-L../build"]
+compile_args = ["-Ilibolm/include"]
+link_args = ["-Llibolm/build"]
if DEVELOP and DEVELOP.lower() in ["yes", "true", "1"]:
link_args.append('-Wl,-rpath=../build')
-headers_build = subprocess.Popen("make headers", shell=True)
-headers_build.wait()
+try:
+ subprocess.run(
+ ["cmake", ".", "-Bbuild", "-DBUILD_SHARED_LIBS=NO"],
+ cwd="libolm", check=True,
+ )
+ subprocess.run(
+ ["cmake", "--build", "build"],
+ cwd="libolm", check=True,
+ )
+except FileNotFoundError:
+ subprocess.run(["make", "static"], cwd="libolm", check=True)
ffibuilder.set_source(