diff --git a/LXST/Platforms/windows.c b/LXST/Platforms/windows.c new file mode 100644 index 0000000..7efb938 --- /dev/null +++ b/LXST/Platforms/windows.c @@ -0,0 +1 @@ +void PyInit_filterlib(void) { } \ No newline at end of file diff --git a/Makefile b/Makefile index 52298c4..27f96ae 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ all: release clean: @echo Cleaning... - -sudo rm -rf ./build + -rm -rf ./build -rm -rf ./dist -rm -r ./LXST/__pycache__ @@ -19,19 +19,20 @@ create_symlinks: -ln -s ../LXST/ ./examples/LXST build_wheel: - cp ./lib/0.4.2/* ./LXST/ + cp ./lib/static/* ./LXST/ + touch ./skip_extensions python3 setup.py sdist bdist_wheel - -(rm ./LXST/*.so) - -(rm ./LXST/*.dll) - -(rm ./LXST/*.dylib) + rm ./skip_extensions + -@(rm ./LXST/*.so) + -@(rm ./LXST/*.dll) native_libs: ./march_build.sh persist_libs: - -cp ./libs/dev/*.so ./libs/static/ - -cp ./libs/dev/*.dll ./libs/static/ - -cp ./libs/dev/*.dylib ./libs/static/ + -cp ./lib/dev/*.so ./lib/static/ + -cp ./lib/dev/*.dll ./lib/static/ + -cp ./lib/dev/*.dylib ./lib/static/ release: remove_symlinks build_wheel create_symlinks diff --git a/lib/dev/filterlib.cpython-311-aarch64-linux-gnu.so b/lib/dev/filterlib.cpython-311-aarch64-linux-gnu.so new file mode 100755 index 0000000..2d5026c Binary files /dev/null and b/lib/dev/filterlib.cpython-311-aarch64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-311-x86_64-linux-gnu.so b/lib/dev/filterlib.cpython-311-x86_64-linux-gnu.so new file mode 100755 index 0000000..15d2f23 Binary files /dev/null and b/lib/dev/filterlib.cpython-311-x86_64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-312-aarch64-linux-gnu.so b/lib/dev/filterlib.cpython-312-aarch64-linux-gnu.so new file mode 100755 index 0000000..275e4d6 Binary files /dev/null and b/lib/dev/filterlib.cpython-312-aarch64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-312-x86_64-linux-gnu.so b/lib/dev/filterlib.cpython-312-x86_64-linux-gnu.so new file mode 100755 index 0000000..f9886ab Binary files /dev/null and b/lib/dev/filterlib.cpython-312-x86_64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-313-aarch64-linux-gnu.so b/lib/dev/filterlib.cpython-313-aarch64-linux-gnu.so new file mode 100755 index 0000000..275e4d6 Binary files /dev/null and b/lib/dev/filterlib.cpython-313-aarch64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-313-x86_64-linux-gnu.so b/lib/dev/filterlib.cpython-313-x86_64-linux-gnu.so new file mode 100755 index 0000000..f9886ab Binary files /dev/null and b/lib/dev/filterlib.cpython-313-x86_64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-314-aarch64-linux-gnu.so b/lib/dev/filterlib.cpython-314-aarch64-linux-gnu.so new file mode 100755 index 0000000..275e4d6 Binary files /dev/null and b/lib/dev/filterlib.cpython-314-aarch64-linux-gnu.so differ diff --git a/lib/dev/filterlib.cpython-314-x86_64-linux-gnu.so b/lib/dev/filterlib.cpython-314-x86_64-linux-gnu.so new file mode 100755 index 0000000..f9886ab Binary files /dev/null and b/lib/dev/filterlib.cpython-314-x86_64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-311-aarch64-linux-gnu.so b/lib/static/filterlib.cpython-311-aarch64-linux-gnu.so new file mode 100755 index 0000000..2d5026c Binary files /dev/null and b/lib/static/filterlib.cpython-311-aarch64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-311-darwin.so b/lib/static/filterlib.cpython-311-darwin.so new file mode 100755 index 0000000..d539f24 Binary files /dev/null and b/lib/static/filterlib.cpython-311-darwin.so differ diff --git a/lib/static/filterlib.cpython-311-x86_64-linux-gnu.so b/lib/static/filterlib.cpython-311-x86_64-linux-gnu.so new file mode 100755 index 0000000..15d2f23 Binary files /dev/null and b/lib/static/filterlib.cpython-311-x86_64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-312-aarch64-linux-gnu.so b/lib/static/filterlib.cpython-312-aarch64-linux-gnu.so new file mode 100755 index 0000000..275e4d6 Binary files /dev/null and b/lib/static/filterlib.cpython-312-aarch64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-312-darwin.so b/lib/static/filterlib.cpython-312-darwin.so new file mode 100755 index 0000000..bf380f7 Binary files /dev/null and b/lib/static/filterlib.cpython-312-darwin.so differ diff --git a/lib/static/filterlib.cpython-312-x86_64-linux-gnu.so b/lib/static/filterlib.cpython-312-x86_64-linux-gnu.so new file mode 100755 index 0000000..f9886ab Binary files /dev/null and b/lib/static/filterlib.cpython-312-x86_64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-313-aarch64-linux-gnu.so b/lib/static/filterlib.cpython-313-aarch64-linux-gnu.so new file mode 100755 index 0000000..275e4d6 Binary files /dev/null and b/lib/static/filterlib.cpython-313-aarch64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-313-darwin.so b/lib/static/filterlib.cpython-313-darwin.so new file mode 100755 index 0000000..77a574a Binary files /dev/null and b/lib/static/filterlib.cpython-313-darwin.so differ diff --git a/lib/static/filterlib.cpython-313-x86_64-linux-gnu.so b/lib/static/filterlib.cpython-313-x86_64-linux-gnu.so new file mode 100755 index 0000000..f9886ab Binary files /dev/null and b/lib/static/filterlib.cpython-313-x86_64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-314-aarch64-linux-gnu.so b/lib/static/filterlib.cpython-314-aarch64-linux-gnu.so new file mode 100755 index 0000000..275e4d6 Binary files /dev/null and b/lib/static/filterlib.cpython-314-aarch64-linux-gnu.so differ diff --git a/lib/static/filterlib.cpython-314-darwin.so b/lib/static/filterlib.cpython-314-darwin.so new file mode 100755 index 0000000..ca76d4f Binary files /dev/null and b/lib/static/filterlib.cpython-314-darwin.so differ diff --git a/lib/static/filterlib.cpython-314-x86_64-linux-gnu.so b/lib/static/filterlib.cpython-314-x86_64-linux-gnu.so new file mode 100755 index 0000000..f9886ab Binary files /dev/null and b/lib/static/filterlib.cpython-314-x86_64-linux-gnu.so differ diff --git a/march_build.sh b/march_build.sh index d8ed8f4..479adbb 100755 --- a/march_build.sh +++ b/march_build.sh @@ -1,12 +1,13 @@ #!/bin/bash docker run --rm -v $(pwd):/io quay.io/pypa/manylinux_2_34_x86_64 /io/build_wheels.sh -docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_x86_64 /io/build_wheels.sh -docker run --rm -v $(pwd):/io quay.io/pypa/manylinux_2_31_armv7l /io/build_wheels.sh docker run --rm -v $(pwd):/io quay.io/pypa/manylinux_2_34_aarch64 /io/build_wheels.sh docker run --rm -v $(pwd):/io quay.io/pypa/manylinux_2_39_riscv64 /io/build_wheels.sh -docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_aarch64 /io/build_wheels.sh -docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_armv7l /io/build_wheels.sh -docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_riscv64 /io/build_wheels.sh + +# docker run --rm -v $(pwd):/io quay.io/pypa/manylinux_2_31_armv7l /io/build_wheels.sh +# docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_x86_64 /io/build_wheels.sh +# docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_aarch64 /io/build_wheels.sh +# docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_armv7l /io/build_wheels.sh +# docker run --rm -v $(pwd):/io quay.io/pypa/musllinux_1_2_riscv64 /io/build_wheels.sh ./fetch_libs.sh \ No newline at end of file diff --git a/setup.py b/setup.py index faeb282..eb5413e 100644 --- a/setup.py +++ b/setup.py @@ -4,12 +4,19 @@ from setuptools.command.build_ext import build_ext import os import platform -BUILD_EXTENSIONS = True +if os.path.isfile("./skip_extensions"): BUILD_EXTENSIONS = False +else: BUILD_EXTENSIONS = True + +if BUILD_EXTENSIONS: print(f"Building LXST with native extensions...") +else: print(f"Building LXST without native extensions...") with open("README.md", "r") as fh: long_description = fh.read() exec(open("LXST/_version.py", "r").read()) -if BUILD_EXTENSIONS: extensions = [ Extension("LXST.filterlib", sources=["LXST/Filters.c"], include_dirs=["LXST"], language="c"), ] +c_sources = ["LXST/Filters.c"] +if os.name == "nt": c_sources.append("LXST/Platforms/windows.c") + +if BUILD_EXTENSIONS: extensions = [ Extension("LXST.filterlib", sources=c_sources, include_dirs=["LXST"], language="c"), ] else: extensions = [] packages = setuptools.find_packages(exclude=[])