コード例 #1
0
ファイル: build.py プロジェクト: scoriiu/nautilus_trader
def _build_distribution(extensions: List[Extension]) -> Distribution:
    # Build a Distribution using cythonize()
    # Determine the build output directory
    if DEBUG_MODE:
        # For subsequent debugging, the C source needs to be in
        # the same tree as the Cython code (not in a separate build directory).
        build_dir = None
    elif ANNOTATION_MODE:
        build_dir = "build/annotated"
    else:
        build_dir = "build/optimized"

    distribution = Distribution(
        dict(
            name="nautilus_trader",
            ext_modules=cythonize(
                module_list=extensions,
                compiler_directives=CYTHON_COMPILER_DIRECTIVES,
                nthreads=os.cpu_count(),
                build_dir=build_dir,
                gdb_debug=DEBUG_MODE,
            ),
            zip_safe=False,
        )
    )
    distribution.package_dir = "nautilus_trader"
    return distribution
コード例 #2
0
    def test_distribution_files_package_dir():
        """
        Test packages collection when pacakge_dir is used to get packages from sub-directory.
        """
        dist = Distribution()
        with change_dir(TEST_PATH):
            dist.packages = find_packages("data")
            dist.package_dir = {"": "data"}
            files = FormatCommand(dist).distribution_files()

            # Ensure data is appended to fake_package
            assert list(files) == [os.path.join("data", "fake_package")]