1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import os
- from devtools.yamaker.fileutil import re_sub_file
- from devtools.yamaker.project import NixProject
- from devtools.yamaker import python
- def post_install(self):
- dist_files = python.extract_dist_info(self)
- re_sub_file(
- f"{self.dstdir}/cython.py",
- r"# Change content of this file to change uids for cython programs - cython.*",
- rf"# Change content of this file to change uids for cython programs - cython {self.version} r0",
- )
- self.yamakes.clear()
- self.yamakes["."] = self.module(
- module="PY3_LIBRARY",
- NO_LINT=True,
- RESOURCE_FILES=python.prepare_resource_files(self, *dist_files),
- )
- for path, dirs, files in os.walk(self.dstdir):
- for file in files:
- if file.endswith(".c"):
- file = f"{path}/{file}"
- with open(file) as f:
- first_line = f.readline()
- if first_line.startswith("/* Generated by Cython"):
- os.remove(file)
- cython = NixProject(
- owners=["g:python-contrib"],
- arcdir="contrib/tools/cython",
- nixattr=python.make_nixattr("cython"),
- copy_sources=["Cython/", "cygdb.py", "cython.py"],
- keep_paths=[
- "Cython/Includes/numpy.pxd",
- "Cython/Utility/CommonTypes.c",
- "Cython/ya.make",
- "generated_c_headers.h",
- "generated_cpp_headers.h",
- ],
- post_install=post_install,
- )
|