1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
from setuptools import setup
from setuptools.command.build_py import build_py
import lzma
import os
class compress_data(build_py):
_data = [('conway_polynomials', 'CPimport.txt')]
def compress(self):
""" Compress data files into build directory"""
for pkg, filename in self._data:
src = os.path.join(self.build_lib, pkg, filename)
dst = os.path.join(self.build_lib, pkg, filename + '.xz')
print(f"compressing {src} -> {dst}")
with open(src, "rb") as s:
with lzma.open(dst, "w") as d:
d.write(s.read())
os.remove(src)
def run(self):
build_py.run(self)
self.compress()
cmdclass = {'build_py': compress_data}
setup(cmdclass=cmdclass)
|