├── .authors.yml ├── .devcontainer ├── apt-deps.txt ├── devcontainer.json ├── post_create.sh └── post_start.sh ├── .git-blame-ignore-revs ├── .git_archival.txt ├── .gitattributes ├── .github ├── CODEOWNERS ├── ISSUE_TEMPLATE │ ├── 0_bug.yml │ ├── 1_feature.yml │ ├── 2_documentation.yml │ └── epic.yml ├── PULL_REQUEST_TEMPLATE.md ├── codecov.yml ├── condarc ├── dependabot.yml ├── disclaimer.txt ├── labels.yml ├── template-files │ ├── config.yml │ └── templates │ │ ├── issue_template_details.yml │ │ └── pull_request_template_details.md └── workflows │ ├── builds-review.yaml │ ├── cla.yml │ ├── docs.yml │ ├── issues.yml │ ├── labels.yml │ ├── lock.yml │ ├── project.yml │ ├── stale.yml │ ├── tests.yml │ ├── update.yml │ └── upload.yml ├── .gitignore ├── .mailmap ├── .pre-commit-config.yaml ├── .readthedocs.yml ├── AUTHORS.md ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── HOW_WE_USE_GITHUB.md ├── LICENSE ├── MANIFEST.in ├── Makefile ├── README.md ├── RELEASE.md ├── asv.conf.json ├── benchmarks ├── __init__.py └── time_render.py ├── bin ├── conda-build ├── conda-convert ├── conda-develop ├── conda-index ├── conda-inspect ├── conda-metapackage ├── conda-render └── conda-skeleton ├── conda_build ├── __init__.py ├── _link.py ├── _load_setup_py_data.py ├── api.py ├── build.py ├── cli-32.exe ├── cli-64.exe ├── cli │ ├── __init__.py │ ├── actions.py │ ├── main_build.py │ ├── main_convert.py │ ├── main_debug.py │ ├── main_develop.py │ ├── main_inspect.py │ ├── main_metapackage.py │ ├── main_render.py │ ├── main_skeleton.py │ └── validators.py ├── config.py ├── convert.py ├── create_test.py ├── deprecations.py ├── develop.py ├── environ.py ├── exceptions.py ├── features.py ├── gui-32.exe ├── gui-64.exe ├── index.py ├── inspect_pkg.py ├── jinja_context.py ├── launcher_sources │ ├── build.sh │ ├── cpython-launcher-c-mods-for-setuptools.3.6.patch │ ├── cpython-launcher-c-mods-for-setuptools.3.7.patch │ └── manifest.xml ├── license_family.py ├── metadata.py ├── metapackage.py ├── noarch_python.py ├── os_utils │ ├── __init__.py │ ├── elf.py │ ├── external.py │ ├── ldd.py │ ├── liefldd.py │ ├── macho.py │ └── pyldd.py ├── plugin.py ├── post.py ├── render.py ├── skeletons │ ├── __init__.py │ ├── _example_skeleton.py │ ├── cpan.py │ ├── cran.py │ ├── get_core_modules.pl │ ├── luarocks.py │ ├── pypi.py │ └── rpm.py ├── source.py ├── tarcheck.py ├── templates │ ├── channeldata-index.html.j2 │ ├── npm.yaml │ ├── rss.xml.j2 │ ├── setuptools.yaml │ └── subdir-index.html.j2 ├── utils.py ├── variants.py ├── version.py └── windows.py ├── docs ├── Makefile ├── click │ └── meta.yaml ├── make.bat ├── requirements.txt ├── scrape_help.py └── source │ ├── concepts │ ├── channels.rst │ ├── generating-index.rst │ ├── index.rst │ ├── package-naming-conv.rst │ └── recipe.rst │ ├── conda-logo.png │ ├── conf.py │ ├── contributing-guide.md │ ├── img │ └── conda_names.png │ ├── index.rst │ ├── install-conda-build.rst │ ├── release-notes.md │ ├── resources │ ├── activate-scripts.rst │ ├── add-win-start-menu-items.rst │ ├── build-scripts.rst │ ├── commands │ │ ├── conda-build.rst │ │ ├── conda-convert.rst │ │ ├── conda-develop.rst │ │ ├── conda-index.rst │ │ ├── conda-inspect-channels.rst │ │ ├── conda-inspect-linkages.rst │ │ ├── conda-inspect-objects.rst │ │ ├── conda-inspect.rst │ │ ├── conda-metapackage.rst │ │ ├── conda-render.rst │ │ ├── conda-skeleton-cpan.rst │ │ ├── conda-skeleton-cran.rst │ │ ├── conda-skeleton-luarocks.rst │ │ ├── conda-skeleton-pypi.rst │ │ ├── conda-skeleton.rst │ │ └── index.rst │ ├── compiler-tools.rst │ ├── define-metadata.rst │ ├── index.rst │ ├── link-scripts.rst │ ├── make-relocatable.rst │ ├── package-spec.rst │ ├── style-guide.rst │ ├── tutorial-template.rst │ ├── use-shared-libraries.rst │ └── variants.rst │ ├── robots.txt │ └── user-guide │ ├── environment-variables.rst │ ├── getting-started.rst │ ├── index.rst │ ├── recipes │ ├── debugging.rst │ ├── index.rst │ └── sample-recipes.rst │ ├── tutorials │ ├── build-pkgs-skeleton.rst │ ├── build-pkgs.rst │ ├── build-r-pkgs.rst │ ├── building-conda-packages.rst │ ├── index.rst │ └── meta.yaml │ └── wheel-files.rst ├── news └── TEMPLATE.md ├── pyproject.toml ├── recipe ├── conda_build_config.yaml └── meta.yaml ├── rever.xsh └── tests ├── __init__.py ├── archives ├── a.tar.bz2 ├── b.tar.bz2 ├── conda-forge-repodata-patches-20180828-0.tar.bz2 ├── conda-index-pkg-a-1.0-py27h5e241af_0.conda ├── conda-index-pkg-a-1.0-py27h5e241af_0.tar.bz2 ├── conda-index-pkg-a-1.0-pyhed9eced_1.tar.bz2 ├── flask-0.11.1-py_0.tar.bz2 ├── fly-2.5.2-0.tar.bz2 ├── nano-2.4.1-0.tar.bz2 ├── readme ├── spiffy-test-app-0.5-pyh6afbcc8_0.tar.bz2 ├── subfolder.tar.bz2 ├── subfolder2.tar.bz2 ├── test_debug_pkg-1.0-0.tar.bz2 └── test_index_of_removed_pkg-1.0-1.tar.bz2 ├── cli ├── __init__.py ├── test_main_build.py ├── test_main_convert.py ├── test_main_debug.py ├── test_main_develop.py ├── test_main_inspect.py ├── test_main_metapackage.py ├── test_main_render.py ├── test_main_skeleton.py └── test_validators.py ├── conftest.py ├── data └── ldd │ ├── clear.elf │ ├── clear.exe │ ├── clear.macho │ ├── jansi.dll │ └── uuid.pyd ├── gen_patch.py ├── index_data ├── .gitignore ├── corrupt │ └── noarch │ │ ├── another_bad_package.conda │ │ └── bad_package.tar.bz2 ├── packages │ ├── noarch │ │ ├── run_exports_versions-1.0-he35c369_0.tar.bz2 │ │ └── run_exports_versions-2.0-h39de5ba_0.tar.bz2 │ ├── osx-64 │ │ ├── dummy-package-1.0-0.tar.bz2 │ │ └── dummy-package-2.0-0.tar.bz2 │ └── versions.yml ├── recipes │ └── run_exports_versions │ │ ├── conda_build_config.yaml │ │ └── meta.yaml └── time_cut │ └── repodata.json ├── index_hotfix_pkgs ├── README.md ├── channeldata.json ├── index.html ├── noarch │ ├── current_repodata.json │ ├── current_repodata.json.bz2 │ ├── index.html │ ├── repodata.json │ ├── repodata.json.bz2 │ ├── repodata_from_packages.json │ └── repodata_from_packages.json.bz2 └── osx-64 │ ├── current_repodata.json │ ├── current_repodata.json.bz2 │ ├── hotfix_depends_test-1.0-dummy_0.conda │ ├── hotfix_depends_test-1.0-dummy_0.tar.bz2 │ ├── index.html │ ├── remove_test-1.0-0.conda │ ├── remove_test-1.0-0.tar.bz2 │ ├── repodata.json │ ├── repodata.json.bz2 │ ├── repodata_from_packages.json │ ├── repodata_from_packages.json.bz2 │ ├── revoke_test-1.0-0.conda │ ├── revoke_test-1.0-0.tar.bz2 │ ├── track_features_test-1.0-0.conda │ └── track_features_test-1.0-0.tar.bz2 ├── os_utils └── test_codefile.py ├── requirements-Linux.txt ├── requirements-Windows.txt ├── requirements-benchmarks.txt ├── requirements-ci.txt ├── requirements-macOS.txt ├── requirements.txt ├── test-append.yaml ├── test-clobber.yaml ├── test-cran-skeleton └── rpart │ └── DESCRIPTION ├── test-recipes ├── TODO.md ├── dll-package │ ├── jansi.dll │ └── meta.yaml ├── dummy_dependency │ └── meta.yaml ├── fail │ ├── backslash_in_include_files │ │ └── meta.yaml │ ├── check_runtime_dependencies │ │ └── meta.yaml │ ├── check_test_dependencies │ │ └── meta.yaml │ ├── create_bad_folder_for_conda_verify │ │ └── meta.yaml │ ├── pip_reqs_fail_informatively │ │ └── meta.yaml │ ├── recursive-build │ │ └── meta.yaml │ ├── recursive-build2 │ │ └── meta.yaml │ ├── source_git_jinja2_oops │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ └── symlinks │ │ ├── build.sh │ │ ├── file1 │ │ └── meta.yaml ├── go-package │ ├── hello.go │ └── meta.yaml ├── metadata │ ├── TODO.md │ ├── _about_license_file │ │ ├── recipes │ │ │ ├── dir-no-slash-suffix │ │ │ │ ├── license-dir-from-recipe │ │ │ │ │ ├── first-license.txt │ │ │ │ │ └── second-license.txt │ │ │ │ └── meta.yaml │ │ │ ├── dir │ │ │ │ ├── license-dir-from-recipe │ │ │ │ │ ├── first-license.txt │ │ │ │ │ └── second-license.txt │ │ │ │ └── meta.yaml │ │ │ ├── list │ │ │ │ ├── license-from-recipe.txt │ │ │ │ └── meta.yaml │ │ │ └── single │ │ │ │ └── meta.yaml │ │ └── source │ │ │ ├── license-dir-from-source │ │ │ ├── first-license.txt │ │ │ └── second-license.txt │ │ │ └── license-from-source.txt │ ├── _about_prelink_message │ │ ├── recipes │ │ │ ├── dir-no-slash-suffix │ │ │ │ ├── meta.yaml │ │ │ │ └── prelink_message-dir-from-recipe │ │ │ │ │ ├── first-prelink_message.txt │ │ │ │ │ └── second-prelink_message.txt │ │ │ ├── dir │ │ │ │ ├── meta.yaml │ │ │ │ └── prelink_message-dir-from-recipe │ │ │ │ │ ├── first-prelink_message.txt │ │ │ │ │ └── second-prelink_message.txt │ │ │ ├── list │ │ │ │ ├── meta.yaml │ │ │ │ └── prelink_message-from-recipe.txt │ │ │ └── single │ │ │ │ └── meta.yaml │ │ └── source │ │ │ ├── prelink_message-dir-from-source │ │ │ ├── first-prelink_message.txt │ │ │ └── second-prelink_message.txt │ │ │ └── prelink_message-from-source.txt │ ├── _activate_scripts_not_included │ │ └── meta.yaml │ ├── _backslash_in_include_files │ │ └── meta.yaml │ ├── _bad_patch │ │ ├── fail_to_apply.patch │ │ └── meta.yaml │ ├── _binary_has_prefix_files │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.py │ │ └── write_binary_has_prefix.py │ ├── _binary_has_utf_non_8 │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.py │ │ └── write_binary_has_prefix.py │ ├── _blas_pins │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _build_deps_no_infinite_loop │ │ ├── test_a │ │ │ └── meta.yaml │ │ └── test_b │ │ │ └── meta.yaml │ ├── _build_msvc_compiler │ │ ├── bld.bat │ │ ├── meta.yaml │ │ └── run_test.bat │ ├── _build_script_errors │ │ ├── output_build_script │ │ │ └── meta.yaml │ │ ├── output_script │ │ │ ├── exit_1.bat │ │ │ ├── exit_1.sh │ │ │ └── meta.yaml │ │ └── toplevel │ │ │ └── meta.yaml │ ├── _c_vendoring_detection │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _checkout_tool_as_dependency │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── readme.txt │ ├── _clean_rpaths │ │ └── meta.yaml │ ├── _cmake_generator │ │ ├── CMakeLists.txt │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── hello.c │ │ └── meta.yaml │ ├── _compile-test │ │ ├── f1.py │ │ ├── f2_bad.py │ │ ├── f3.py │ │ └── meta.yaml │ ├── _compiler_jinja2 │ │ └── meta.yaml │ ├── _compiler_python_build_section │ │ └── meta.yaml │ ├── _conda-build-test-environment-vars-in-build-env │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _condarc_channel │ │ └── meta.yaml │ ├── _cross_build_unix_windows │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _cross_helloworld │ │ ├── conda_build_config.yaml │ │ ├── meta.yaml │ │ └── src │ │ │ └── helloworld.c │ ├── _cross_libgreeting │ │ ├── conda_build_config.yaml │ │ ├── meta.yaml │ │ └── src │ │ │ ├── libgreeting.c │ │ │ └── libgreeting.h │ ├── _cross_prefix_elision │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _cross_prefix_elision_compiler_used │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _cross_unix_windows_mingw │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _debug_pkg │ │ └── meta.yaml │ ├── _debug_pkg_multiple_outputs │ │ └── meta.yaml │ ├── _detect_binary_files_with_prefix │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.sh │ │ └── write_binary_has_prefix.py │ ├── _dirty_skip_section │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _disable_pip │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── build_script.py │ │ └── meta.yaml │ ├── _empty_host_avoids_merge │ │ └── meta.yaml │ ├── _empty_pkg_with_python_build_host │ │ └── meta.yaml │ ├── _empty_target_platform_yields_default │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _extra_meta │ │ └── meta.yaml │ ├── _git_describe_number_branch │ │ └── meta.yaml │ ├── _grpc │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _host_entries_finalized │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _ignore_prefix_files │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _ignore_some_prefix_files │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _ignore_verify_codes │ │ └── meta.yaml │ ├── _index_hotfix_pkgs │ │ └── meta.yaml │ ├── _inject_jinja2_vars_on_first_pass │ │ └── meta.yaml │ ├── _jinja_outputs │ │ └── meta.yaml │ ├── _keep_work_dir │ │ ├── conda_build_config.yaml │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _legacy_noarch_python │ │ ├── meta.yaml │ │ ├── noarch_test_package │ │ │ ├── README │ │ │ ├── noarch_test_package.py │ │ │ └── setup.py │ │ └── run_test.py │ ├── _lua_env_defined │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _macos_tbd_handling │ │ ├── build.sh │ │ ├── hello-world.c │ │ └── meta.yaml │ ├── _menu_json_validation │ │ ├── menu.json │ │ └── meta.yaml │ ├── _no_include_recipe │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── run_test.sh │ ├── _no_merge_build_host │ │ └── meta.yaml │ ├── _noarch_none │ │ ├── meta.yaml │ │ ├── noarch_test_package │ │ │ ├── README │ │ │ ├── noarch_test_package.py │ │ │ └── setup.py │ │ └── run_test.py │ ├── _noarch_python │ │ ├── meta.yaml │ │ └── noarch_python_test_package │ │ │ ├── MANIFEST.in │ │ │ ├── noarch_python_test_package.py │ │ │ ├── setup.py │ │ │ └── shell │ │ │ ├── test-executable │ │ │ └── test-executable.bat │ ├── _noarch_python_with_tests │ │ ├── meta.yaml │ │ ├── noarch_python_test_package │ │ │ ├── noarch_python_test_package.py │ │ │ └── setup.py │ │ └── run_test.py │ ├── _noarch_with_no_platform_deps │ │ └── meta.yaml │ ├── _noarch_with_platform_deps │ │ └── meta.yaml │ ├── _numpy_setup_py_data │ │ ├── meta.yaml │ │ └── setup.py │ ├── _numpy_xx │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── _numpy_xx_host │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── _osx_is_app_missing_python_app │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── run_test.sh │ ├── _overdepending_detection │ │ ├── bld.bat │ │ ├── build.bat │ │ ├── build.sh │ │ ├── build_scripts │ │ │ ├── default.sh │ │ │ └── no_as_needed.sh │ │ ├── main.c │ │ ├── meta.yaml │ │ └── test │ │ │ └── hello_world.xar │ ├── _overlapping_files_warning │ │ ├── a │ │ │ └── meta.yaml │ │ └── b │ │ │ └── meta.yaml │ ├── _overlinking_detection │ │ ├── build_scripts │ │ │ ├── default.bat │ │ │ ├── default.sh │ │ │ ├── no_as_needed.sh │ │ │ └── with_bzip2.bat │ │ └── meta.yaml │ ├── _overlinking_detection_ignore_patterns │ │ ├── build_scripts │ │ │ ├── default.bat │ │ │ ├── default.sh │ │ │ ├── no_as_needed.sh │ │ │ └── with_bzip2.bat │ │ └── meta.yaml │ ├── _path_not_cached │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _perl_env_defined │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _pin_compatible │ │ └── meta.yaml │ ├── _pin_depends_record │ │ └── meta.yaml │ ├── _pin_depends_strict │ │ └── meta.yaml │ ├── _pin_subpackage_benchmark │ │ └── meta.yaml │ ├── _pin_subpackage_exact │ │ └── meta.yaml │ ├── _pinning_prerelease │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _pinning_prerelease_python │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _post-link-fails │ │ ├── meta.yaml │ │ ├── post-link.bat │ │ └── post-link.sh │ ├── _post_link_exits_after_retry │ │ └── meta.yaml │ ├── _post_link_exits_tests │ │ └── meta.yaml │ ├── _post_link_in_output │ │ ├── meta.yaml │ │ ├── mypostlinkscript.bat │ │ └── mypostlinkscript.sh │ ├── _post_link_in_output_implicit │ │ ├── meta.yaml │ │ ├── out1-post-link.bat │ │ └── out1-post-link.sh │ ├── _preferred_env │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _pypi_installer_metadata │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _python_site_packages_path │ │ └── meta.yaml │ ├── _python_version_independent │ │ └── meta.yaml │ ├── _python_xx │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── _pytorch_cpu │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _pyyaml_find_header │ │ └── meta.yaml │ ├── _r_env_defined │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _recipe_requiring_external_channel │ │ └── meta.yaml │ ├── _recursive-build-a │ │ └── meta.yaml │ ├── _recursive-build-b │ │ └── meta.yaml │ ├── _recursive-build-c │ │ └── meta.yaml │ ├── _recursive-build-d │ │ └── meta.yaml │ ├── _recursive-build-two-layers │ │ └── meta.yaml │ ├── _recursive-build-two-packages │ │ └── meta.yaml │ ├── _render_recipe │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _requirements_txt_run_reqs │ │ ├── meta.yaml │ │ ├── requirements.txt │ │ └── run_test.py │ ├── _requires_provides_features │ │ └── meta.yaml │ ├── _resolved_packages_host_build │ │ └── meta.yaml │ ├── _rewrite_env │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── run_test.sh │ ├── _rpath │ │ ├── meta.yaml │ │ └── rpath │ ├── _rpath_symlink │ │ └── meta.yaml │ ├── _run_constrained │ │ └── meta.yaml │ ├── _run_constrained_error │ │ └── meta.yaml │ ├── _run_exports │ │ └── meta.yaml │ ├── _run_exports_constrains │ │ └── meta.yaml │ ├── _run_exports_implicit_weak │ │ └── meta.yaml │ ├── _run_exports_in_outputs │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _run_exports_noarch │ │ └── meta.yaml │ ├── _script_env_warnings │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _script_win_creates_exe │ │ ├── meta.yaml │ │ ├── setup.py │ │ └── test-script │ ├── _script_win_creates_exe_garbled │ │ ├── meta.yaml │ │ ├── setup.py │ │ └── test-script │ ├── _self_reference_run_exports │ │ └── meta.yaml │ ├── _set_env_var_activate_build │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── conda_build_config.yaml │ │ ├── install-output.bat │ │ └── meta.yaml │ ├── _set_env_var_no_activate_build │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _setup_py_data_in_env │ │ └── meta.yaml │ ├── _skip_detect_binary_files_with_prefix │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.sh │ │ └── write_binary_has_prefix.py │ ├── _source_git_jinja2_relative_git_url │ │ └── meta.yaml │ ├── _source_git_jinja2_relative_path │ │ └── meta.yaml │ ├── _source_hg │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _source_hg_jinja2 │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _source_setuptools │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── _source_setuptools_env_var │ │ └── meta.yaml │ ├── _stdlib_jinja2 │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _symlink_dirs_in_always_include_files │ │ ├── create_symlinks.sh │ │ └── meta.yaml │ ├── _sysroot_detection │ │ ├── build.sh │ │ ├── conda_build_config.yaml │ │ ├── main.c │ │ └── meta.yaml │ ├── _test_dependencies │ │ └── meta.yaml │ ├── _test_downstreams │ │ ├── downstream │ │ │ └── meta.yaml │ │ └── upstream │ │ │ └── meta.yaml │ ├── _test_early_abort │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _test_failed_test_exits │ │ └── meta.yaml │ ├── _test_long_test_prefix │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _test_test_deps_when_not_include_test_files │ │ ├── conda-recipe │ │ │ ├── meta.yaml │ │ │ └── recipe_file │ │ └── test_files_folder │ │ │ └── text.txt │ ├── _test_test_source_files │ │ ├── conda-recipe │ │ │ ├── meta.yaml │ │ │ └── recipe_file │ │ └── test_files_folder │ │ │ └── text.txt │ ├── _test_uses_src_dir │ │ ├── meta.yaml │ │ └── run_test.py │ ├── _xattr_copy │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── mode_400_file │ ├── always_include_files_glob │ │ ├── echo_file.bat │ │ ├── echo_file.sh │ │ ├── meta.yaml │ │ └── run_test.py │ ├── arbitrary_file_in_info_dir │ │ └── meta.yaml │ ├── binary_has_prefix_files_list │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.sh │ │ └── write_binary_has_prefix.py │ ├── build_env │ │ ├── meta.yaml │ │ └── run_test.py │ ├── build_number │ │ ├── meta.yaml │ │ └── run_test.py │ ├── build_skip │ │ ├── meta.yaml │ │ └── run_test.py │ ├── build_string │ │ ├── meta.yaml │ │ └── run_test.py │ ├── cdt_linking │ │ ├── build.sh │ │ └── meta.yaml │ ├── ds_store_ignored │ │ ├── .DS_Store │ │ └── meta.yaml │ ├── empty_patch_section │ │ └── meta.yaml │ ├── empty_run_section │ │ └── meta.yaml │ ├── empty_sections │ │ └── meta.yaml │ ├── empty_with_build_script │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── entry_points │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── run_test.sh │ ├── entry_points_have_prefix │ │ ├── README.md │ │ ├── meta.yaml │ │ ├── requirements.txt │ │ ├── run_test.bat │ │ ├── run_test.sh │ │ ├── setup.py │ │ └── src │ │ │ └── entry_points_have_prefix │ │ │ ├── __init__.py │ │ │ └── main.py │ ├── entry_points_have_prefix_noarch_has_prefix_files │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── setup.py │ ├── extra_freeform_metadata │ │ ├── meta.yaml │ │ └── run_test.py │ ├── fix_permissions │ │ ├── README │ │ ├── meta.yaml │ │ └── sub │ │ │ └── lacks_grp_other_read_perms │ ├── float_misinterpretation │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── run_test.sh │ ├── gh-5342 │ │ └── meta.yaml │ ├── has_prefix_files │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.py │ │ ├── write_backward_slash_prefix.py │ │ ├── write_binary_has_prefix.py │ │ ├── write_escaped_backward_slash_prefix.py │ │ ├── write_forward_slash_prefix.py │ │ ├── write_mixed_slash_prefix.py │ │ └── write_mixed_slash_prefixes.py │ ├── hoist_source_multilevel │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── mypkg.zip │ ├── hoist_source_multilevel_shadow │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── mypkg.zip │ ├── ignore_run_exports_from_substr │ │ └── meta.yaml │ ├── jinja2 │ │ └── meta.yaml │ ├── jinja2_build_str │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── jinja_load_setuptools │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── setup.py │ ├── jinja_load_toml │ │ ├── meta.yaml │ │ └── pyproject.toml │ ├── jinja_load_toml_from_source │ │ ├── meta.yaml │ │ └── src │ │ │ └── pyproject.toml │ ├── jinja_load_yaml │ │ ├── environment.yml │ │ └── meta.yaml │ ├── jinja_vars │ │ ├── build.sh │ │ └── meta.yaml │ ├── libarchive │ │ ├── meta.yaml │ │ ├── test.7z │ │ ├── test.tar │ │ ├── test.tar.bz2 │ │ ├── test.tar.gz │ │ ├── test.tar.lzma │ │ ├── test.tar.xz │ │ ├── test.tar.z │ │ ├── test.tgz │ │ ├── test.whl │ │ └── test.zip │ ├── multiple_sources │ │ └── meta.yaml │ ├── nested_prefix │ │ ├── build.sh │ │ └── meta.yaml │ ├── nested_recipe │ │ └── build_number │ │ │ ├── meta.yaml │ │ │ └── run_test.py │ ├── no_link │ │ ├── meta.yaml │ │ └── run_test.py │ ├── noarch_generic │ │ └── meta.yaml │ ├── numpy_build │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── numpy_build_run │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── numpy_run │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── osx_is_app │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── run_test.sh │ ├── outputs_overwrite_base_file │ │ ├── install.bat │ │ ├── install.sh │ │ └── meta.yaml │ ├── patch-read-only │ │ ├── 0001-Patch-with-levels-to-strip.patch │ │ ├── 0002-Patch-without-additional-levels.patch │ │ ├── meta.yaml │ │ └── somefile.tar │ ├── patch │ │ ├── meta.yaml │ │ ├── somefile │ │ └── test.patch │ ├── preserve_egg_dir │ │ └── meta.yaml │ ├── python_build │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── python_build_run │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── python_env_defined │ │ ├── meta.yaml │ │ └── run_test.py │ ├── python_run │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ ├── run_test.py │ │ └── run_test.sh │ ├── r_test_import │ │ ├── meta.yaml │ │ └── run_test.r │ ├── relative_url_download │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── run_test.py │ │ └── test.tar.gz │ ├── selectors_in_imported_templates │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── variables.jinja │ ├── skip_compile_pyc │ │ ├── README │ │ ├── compile_pyc.py │ │ ├── meta.yaml │ │ ├── skip_compile_pyc.py │ │ └── sub │ │ │ ├── compile_pyc.py │ │ │ └── skip_compile_pyc.py │ ├── source_git │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_git_am │ │ ├── 0001-Extra-commit-ensuring-verify_git_repo-ignores-it.patch │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_git_jinja2 │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_multiple │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_path │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_regex │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_regex_from_recipe_dir │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_setup_py_data │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_setup_py_data_subdir │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── source_url │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml │ ├── state_variables │ │ ├── meta.yaml │ │ └── setup.py │ ├── symlinks │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── run_test.sh │ ├── test_source_files │ │ └── meta.yaml │ ├── transitive_subpackage │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── unicode_all_over │ │ └── love-feedstock │ │ │ └── meta.yaml │ ├── unicode_in_meta │ │ └── meta.yaml │ ├── unknown_selector │ │ └── meta.yaml │ └── wheel_source │ │ └── meta.yaml ├── published_code │ ├── building_jinja2_direct_env_vars │ │ └── meta.yaml │ ├── building_jinja2_environ │ │ └── meta.yaml │ └── building_jinja2_setup_py_data │ │ └── meta.yaml ├── skip │ └── source_svn │ │ ├── bld.bat │ │ ├── build.sh │ │ └── meta.yaml ├── split-packages │ ├── _about_metadata │ │ └── meta.yaml │ ├── _alternate_type_wheel │ │ └── meta.yaml │ ├── _build_script │ │ └── meta.yaml │ ├── _build_script_missing_var │ │ └── meta.yaml │ ├── _build_script_relying_on_missing_var │ │ └── meta.yaml │ ├── _build_string_with_variant │ │ ├── build_clangdev.bat │ │ ├── build_clangdev.sh │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _circular_deps_cross │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _empty_outputs_requires_package_version │ │ └── meta.yaml │ ├── _entry_points │ │ ├── install-pkg1.sh │ │ ├── install-pkg2.sh │ │ ├── meta.yaml │ │ ├── test-pkg1.py │ │ └── test-pkg2.py │ ├── _extra_metadata │ │ └── meta.yaml │ ├── _git_in_output_version │ │ └── meta.yaml │ ├── _hash_inputs │ │ ├── build.sh │ │ ├── install-script.sh │ │ ├── meta.yaml │ │ ├── run_test.py │ │ ├── test-script.bat │ │ └── test-script.sh │ ├── _inherit_build_number │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _intradep_with_templated_output_name │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _intradependencies │ │ ├── conda_build_config.yaml │ │ ├── install-lib1.sh │ │ ├── install-lib2.sh │ │ ├── install-py1.sh │ │ ├── install-py2.sh │ │ ├── install-r1.sh │ │ ├── install-r2.sh │ │ └── meta.yaml │ ├── _intradependencies_circular │ │ └── meta.yaml │ ├── _intradependencies_toplevel_circular │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _invalid_script_extension │ │ ├── meta.yaml │ │ └── subpackage3.unrecognized │ ├── _line_up_python_compiled_libs │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _line_up_python_compiled_libs_top_level_same_name_output │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _merge_build_host │ │ └── meta.yaml │ ├── _multi_outputs_without_package_version │ │ └── meta.yaml │ ├── _order │ │ └── meta.yaml │ ├── _order_bad │ │ └── meta.yaml │ ├── _output_activation │ │ ├── install_activated.sh │ │ ├── install_not_activated.sh │ │ └── meta.yaml │ ├── _output_named_same_as_top_level │ │ └── meta.yaml │ ├── _output_specific_subdir │ │ └── meta.yaml │ ├── _output_test_script │ │ ├── meta.yaml │ │ └── run_output_2_test.py │ ├── _overlapping_files │ │ ├── meta.yaml │ │ └── subpackage1.py │ ├── _per_output_tests │ │ └── meta.yaml │ ├── _pin_compatible_in_output │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _rm_rf_stays_within_prefix │ │ ├── bin │ │ │ └── lsfm │ │ ├── conda │ │ │ ├── meta.yaml │ │ │ └── run_test.py │ │ ├── lsfm │ │ │ └── __init__.py │ │ └── setup.py │ ├── _script_and_files │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ ├── my_script.bat │ │ └── my_script.sh │ ├── _strong_run_exports_applies_from_build_to_host │ │ ├── build.sh │ │ └── meta.yaml │ ├── _test-file-hash │ │ ├── build.sh │ │ ├── conda_build_config.yaml │ │ ├── install-py.sh │ │ └── meta.yaml │ ├── _variant_override │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── _xgboost_example │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── compose_run_requirements_from_subpackages │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── run_test.sh │ ├── copying_files │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── meta.yaml │ │ └── subpackage_test.py │ ├── jinja2_subpackage_name │ │ └── meta.yaml │ ├── noarch_subpackage │ │ └── meta.yaml │ ├── outputs_using_vars_defined_in_meta │ │ └── meta.yaml │ ├── python_test_dep │ │ ├── conda_build_config.yaml │ │ ├── meta.yaml │ │ └── test_thingie.py │ ├── script_autodetect_interpreter │ │ ├── meta.yaml │ │ ├── subpackage1.py │ │ └── subpackage2.sh │ ├── script_bash_windows │ │ ├── meta.yaml │ │ ├── subpackage1.sh │ │ └── subpackage2.sh │ ├── script_install_files │ │ ├── meta.yaml │ │ ├── subpackage1.py │ │ └── test_subpackage1.py │ ├── split_packages_hash_resolution │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── test_files_copying │ │ ├── file │ │ ├── folder │ │ │ └── file2 │ │ ├── meta.yaml │ │ ├── source_file │ │ └── source_folder │ │ │ └── file3 │ └── test_files_in_parent │ │ ├── meta.yaml │ │ ├── recipe_file │ │ └── src │ │ └── somefile ├── test-package │ ├── bin │ │ └── test-script-setup.py │ ├── conda_build_test │ │ ├── __init__.py │ │ ├── empty.py │ │ └── manual_entry.py │ └── setup.py ├── variants │ ├── 01_basic_templating │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 02_python_version │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 03_ignore_version_reduces_matrix │ │ └── meta.yaml │ ├── 04_numpy_matrix_pinned │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 05_compatible │ │ └── meta.yaml │ ├── 06_compatible_custom │ │ └── meta.yaml │ ├── 07_compatible_custom_lower_upper │ │ └── meta.yaml │ ├── 08_compiler │ │ └── meta.yaml │ ├── 09_cross │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 10_runtimes │ │ ├── consumes_exports │ │ │ └── meta.yaml │ │ ├── ignore_exports │ │ │ └── meta.yaml │ │ └── uses_run_exports │ │ │ └── meta.yaml │ ├── 11_variant_output_names │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 12_variant_versions │ │ ├── conda_build_config.yaml │ │ ├── meta.yaml │ │ ├── setup.py │ │ ├── ver470.zip │ │ └── ver480.zip │ ├── 13_git_vars │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 14_variant_in_run_and_test │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 17_multiple_recipes_independent_config │ │ ├── a │ │ │ ├── conda_build_config.yaml │ │ │ └── meta.yaml │ │ └── b │ │ │ ├── conda_build_config.yaml │ │ │ └── meta.yaml │ ├── 18_subspace_selection │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 19_used_variables │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 20_reprovision_source │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── conda_build_config.yaml │ │ ├── install-output.bat │ │ ├── install-output.sh │ │ ├── meta.yaml │ │ ├── run_test.bat │ │ └── run_test.sh │ ├── 20_subspace_selection_cli │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 21_conditional_sections │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 22_run_exports_rerendered_for_other_variants │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 24_test_used_vars_in_scripts │ │ ├── bld.bat │ │ ├── build.sh │ │ ├── conda_build_config.yaml │ │ ├── meta.yaml │ │ └── output_script.sh │ ├── 25_target_platform_looping │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 26_reduced_hashing │ │ ├── hash_no_python │ │ │ ├── conda_build_config.yaml │ │ │ └── meta.yaml │ │ ├── hash_yes_compiler │ │ │ ├── conda_build_config.yaml │ │ │ └── meta.yaml │ │ └── hash_yes_pinned │ │ │ ├── conda_build_config.yaml │ │ │ └── meta.yaml │ ├── 27_requirements_host │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 28_custom_compiler │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 29_different_git_vars │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 30_top_level_finalized │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── 31_variant_subkeys │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── conda-build-demo.ipynb │ ├── exclusive_config_file │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── jinja2_used_variables │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── numpy_used │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── python_in_build_only │ │ ├── conda_build_config.yaml │ │ └── meta.yaml │ ├── selector_conda_build_config.yaml │ ├── test_python_as_subpackage_loop │ │ ├── conda_build_config.yaml │ │ ├── config_with_zip.yaml │ │ └── meta.yaml │ └── variant_recipe │ │ └── meta.yaml └── work-deleted │ ├── bld.bat │ ├── build.py │ ├── build.sh │ ├── meta.yaml │ └── test.py ├── test-skeleton ├── sympy-0.7.5-url │ ├── bld.bat │ ├── build.sh │ └── meta.yaml └── sympy-0.7.5 │ ├── bld.bat │ ├── build.sh │ └── meta.yaml ├── test_api_build.py ├── test_api_build_conda_v2.py ├── test_api_build_dll_package.py ├── test_api_build_go_package.py ├── test_api_consistency.py ├── test_api_convert.py ├── test_api_debug.py ├── test_api_inspect.py ├── test_api_render.py ├── test_api_skeleton.py ├── test_api_skeleton_cpan.py ├── test_api_skeleton_cran.py ├── test_api_test.py ├── test_build.py ├── test_check.py ├── test_codesigned.py ├── test_config.py ├── test_cpan_skeleton.py ├── test_cran_skeleton.py ├── test_create_test.py ├── test_deprecations.py ├── test_develop.py ├── test_environ.py ├── test_index.py ├── test_inspect.py ├── test_inspect_pkg.py ├── test_jinja_context.py ├── test_key ├── test_license_family.py ├── test_metadata.py ├── test_misc.py ├── test_noarch_python.py ├── test_os_utils_external.py ├── test_patch.py ├── test_post.py ├── test_published_examples.py ├── test_pypi_skeleton.py ├── test_render.py ├── test_source.py ├── test_subpackages.py ├── test_utils.py ├── test_variants.py └── utils.py /.devcontainer/apt-deps.txt: -------------------------------------------------------------------------------- 1 | git 2 | less 3 | htop 4 | nano 5 | ssh 6 | -------------------------------------------------------------------------------- /.git_archival.txt: -------------------------------------------------------------------------------- 1 | node: bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b 2 | node-date: 2025-06-02T12:21:12-05:00 3 | describe-name: 25.4.2-25-gbf2bec377b 4 | ref-names: HEAD -> main 5 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | .git_archival.txt export-subst 3 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | # Syntax for this file at https://help.github.com/articles/about-codeowners/ 2 | 3 | * @conda/builds-tools 4 | -------------------------------------------------------------------------------- /.github/codecov.yml: -------------------------------------------------------------------------------- 1 | comment: false 2 | -------------------------------------------------------------------------------- /.github/condarc: -------------------------------------------------------------------------------- 1 | auto_update_conda: False 2 | auto_activate_base: True 3 | notify_outdated_conda: False 4 | changeps1: False 5 | always_yes: True 6 | local_repodata_ttl: 7200 7 | channels: 8 | - defaults 9 | -------------------------------------------------------------------------------- /.github/disclaimer.txt: -------------------------------------------------------------------------------- 1 | Copyright (C) 2014 Anaconda, Inc 2 | SPDX-License-Identifier: BSD-3-Clause 3 | -------------------------------------------------------------------------------- /.github/labels.yml: -------------------------------------------------------------------------------- 1 | # Builds 2 | - name: build::review 3 | description: trigger a build for this PR 4 | color: '#7b4052' 5 | 6 | # Tags 7 | - name: tag::noarch 8 | description: related to noarch builds 9 | color: '#86c579' 10 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *.pyc 3 | *.egg-info 4 | *.swp 5 | build/ 6 | dist/ 7 | docs/_build 8 | docs/build 9 | tags 10 | .idea/ 11 | MANIFEST 12 | ve 13 | venv 14 | junit.xml 15 | .cache 16 | .DS_Store 17 | .pytest_cache/ 18 | .asv 19 | prof 20 | relative 21 | conda-build-testing 22 | 23 | 24 | # Rever 25 | rever/ 26 | **/.vscode 27 | **/_build 28 | 29 | # setuptools-scm 30 | conda_build/_version.py 31 | -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | sphinx: 4 | configuration: docs/source/conf.py 5 | 6 | build: 7 | os: ubuntu-22.04 8 | tools: 9 | python: '3.11' 10 | 11 | python: 12 | install: 13 | - requirements: docs/requirements.txt 14 | 15 | # Build PDF, ePub and zipped HTML 16 | formats: 17 | - epub 18 | - pdf 19 | - htmlzip 20 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include versioneer.py 2 | include conda_build/_version.py 3 | -------------------------------------------------------------------------------- /benchmarks/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | -------------------------------------------------------------------------------- /bin/conda-build: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_build import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-convert: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_convert import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-develop: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_develop import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-index: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_index import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-inspect: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_inspect import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-metapackage: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_metapackage import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-render: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_render import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /bin/conda-skeleton: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | 4 | from conda_build.cli.main_skeleton import main 5 | 6 | sys.exit(main()) 7 | -------------------------------------------------------------------------------- /conda_build/cli-32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/conda_build/cli-32.exe -------------------------------------------------------------------------------- /conda_build/cli-64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/conda_build/cli-64.exe -------------------------------------------------------------------------------- /conda_build/cli/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | -------------------------------------------------------------------------------- /conda_build/gui-32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/conda_build/gui-32.exe -------------------------------------------------------------------------------- /conda_build/gui-64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/conda_build/gui-64.exe -------------------------------------------------------------------------------- /conda_build/os_utils/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | -------------------------------------------------------------------------------- /conda_build/skeletons/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | -------------------------------------------------------------------------------- /docs/source/conda-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/docs/source/conda-logo.png -------------------------------------------------------------------------------- /docs/source/contributing-guide.md: -------------------------------------------------------------------------------- 1 | ```{include} ../../CONTRIBUTING.md 2 | ``` 3 | [contributing-guide]: contributing-guide 4 | -------------------------------------------------------------------------------- /docs/source/img/conda_names.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/docs/source/img/conda_names.png -------------------------------------------------------------------------------- /docs/source/release-notes.md: -------------------------------------------------------------------------------- 1 | # Release notes 2 | 3 | This information is drawn from the GitHub conda project 4 | changelog: https://github.com/conda/conda-build/blob/main/CHANGELOG.md 5 | 6 | ```{include} ../../CHANGELOG.md 7 | ``` 8 | -------------------------------------------------------------------------------- /docs/source/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | 3 | Sitemap: https://docs.conda.io/projects/conda-build/en/stable/sitemap.xml 4 | -------------------------------------------------------------------------------- /docs/source/user-guide/recipes/index.rst: -------------------------------------------------------------------------------- 1 | ******* 2 | Recipes 3 | ******* 4 | 5 | Review :doc:`recipe concepts <../../concepts/recipe>` for more information about 6 | conda-build recipes. 7 | 8 | .. toctree:: 9 | :maxdepth: 1 10 | 11 | sample-recipes 12 | debugging 13 | -------------------------------------------------------------------------------- /docs/source/user-guide/tutorials/index.rst: -------------------------------------------------------------------------------- 1 | ********* 2 | Tutorials 3 | ********* 4 | 5 | Before starting the tutorials, review the 6 | :doc:`Getting started <../getting-started>` guide. 7 | 8 | .. toctree:: 9 | :maxdepth: 1 10 | 11 | building-conda-packages 12 | build-pkgs-skeleton 13 | build-pkgs 14 | build-r-pkgs 15 | -------------------------------------------------------------------------------- /news/TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ### Enhancements 2 | 3 | * 4 | 5 | ### Bug fixes 6 | 7 | * 8 | 9 | ### Deprecations 10 | 11 | * 12 | 13 | ### Docs 14 | 15 | * 16 | 17 | ### Other 18 | 19 | * 20 | -------------------------------------------------------------------------------- /recipe/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - '3.9' 3 | - '3.10' 4 | - '3.11' 5 | - '3.12' 6 | - '3.13' 7 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | # This is just here so that tests is a package, so that dotted relative 4 | # imports work. 5 | -------------------------------------------------------------------------------- /tests/archives/a.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/a.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/b.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/b.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/conda-forge-repodata-patches-20180828-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/conda-forge-repodata-patches-20180828-0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/conda-index-pkg-a-1.0-py27h5e241af_0.conda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/conda-index-pkg-a-1.0-py27h5e241af_0.conda -------------------------------------------------------------------------------- /tests/archives/conda-index-pkg-a-1.0-py27h5e241af_0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/conda-index-pkg-a-1.0-py27h5e241af_0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/conda-index-pkg-a-1.0-pyhed9eced_1.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/conda-index-pkg-a-1.0-pyhed9eced_1.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/flask-0.11.1-py_0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/flask-0.11.1-py_0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/fly-2.5.2-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/fly-2.5.2-0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/nano-2.4.1-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/nano-2.4.1-0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/readme: -------------------------------------------------------------------------------- 1 | These are archive files used in testing the multiple sources functionality. 2 | 3 | To save space, some have been re-packed to contain only the info/ folder and not the actual package data.œ -------------------------------------------------------------------------------- /tests/archives/spiffy-test-app-0.5-pyh6afbcc8_0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/spiffy-test-app-0.5-pyh6afbcc8_0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/subfolder.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/subfolder.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/subfolder2.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/subfolder2.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/test_debug_pkg-1.0-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/test_debug_pkg-1.0-0.tar.bz2 -------------------------------------------------------------------------------- /tests/archives/test_index_of_removed_pkg-1.0-1.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/archives/test_index_of_removed_pkg-1.0-1.tar.bz2 -------------------------------------------------------------------------------- /tests/cli/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | -------------------------------------------------------------------------------- /tests/data/ldd/clear.elf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/data/ldd/clear.elf -------------------------------------------------------------------------------- /tests/data/ldd/clear.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/data/ldd/clear.exe -------------------------------------------------------------------------------- /tests/data/ldd/clear.macho: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/data/ldd/clear.macho -------------------------------------------------------------------------------- /tests/data/ldd/jansi.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/data/ldd/jansi.dll -------------------------------------------------------------------------------- /tests/data/ldd/uuid.pyd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/data/ldd/uuid.pyd -------------------------------------------------------------------------------- /tests/gen_patch.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | # for tests only 4 | def _patch_repodata(repodata, subdir): 5 | instructions = { 6 | "patch_instructions_version": 1, 7 | "packages": {}, 8 | "revoke": [], 9 | "remove": [], 10 | } 11 | return instructions 12 | -------------------------------------------------------------------------------- /tests/index_data/.gitignore: -------------------------------------------------------------------------------- 1 | corrupt 2 | packages 3 | -------------------------------------------------------------------------------- /tests/index_data/corrupt/noarch/another_bad_package.conda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_data/corrupt/noarch/another_bad_package.conda -------------------------------------------------------------------------------- /tests/index_data/corrupt/noarch/bad_package.tar.bz2: -------------------------------------------------------------------------------- 1 | not_a_valid_bz2 2 | -------------------------------------------------------------------------------- /tests/index_data/packages/noarch/run_exports_versions-1.0-he35c369_0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_data/packages/noarch/run_exports_versions-1.0-he35c369_0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_data/packages/noarch/run_exports_versions-2.0-h39de5ba_0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_data/packages/noarch/run_exports_versions-2.0-h39de5ba_0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_data/packages/osx-64/dummy-package-1.0-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_data/packages/osx-64/dummy-package-1.0-0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_data/packages/osx-64/dummy-package-2.0-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_data/packages/osx-64/dummy-package-2.0-0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_data/packages/versions.yml: -------------------------------------------------------------------------------- 1 | dummy-package: 2 | - 1.0 3 | - 2.0 4 | -------------------------------------------------------------------------------- /tests/index_data/recipes/run_exports_versions/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | VERSION: 2 | - 1.0 3 | - 2.0 4 | -------------------------------------------------------------------------------- /tests/index_data/recipes/run_exports_versions/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: run_exports_versions 3 | version: {{ VERSION }} 4 | 5 | build: 6 | noarch: generic 7 | run_exports: 8 | - run_exports_version {{ VERSION }} 9 | -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/README.md: -------------------------------------------------------------------------------- 1 | # `_index_hotfix_pkgs` 2 | 3 | Built from `conda-build/tests/test-recipes/metadata/_index_hotfix_pkgs`, 4 | cached here to speed tests. 5 | -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/noarch/current_repodata.json: -------------------------------------------------------------------------------- 1 | { 2 | "info": { 3 | "subdir": "noarch" 4 | }, 5 | "packages": {}, 6 | "packages.conda": {}, 7 | "removed": [], 8 | "repodata_version": 1 9 | } 10 | -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/noarch/current_repodata.json.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/noarch/current_repodata.json.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/noarch/repodata.json: -------------------------------------------------------------------------------- 1 | { 2 | "info": { 3 | "subdir": "noarch" 4 | }, 5 | "packages": {}, 6 | "packages.conda": {}, 7 | "removed": [], 8 | "repodata_version": 1 9 | } 10 | -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/noarch/repodata.json.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/noarch/repodata.json.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/noarch/repodata_from_packages.json: -------------------------------------------------------------------------------- 1 | { 2 | "info": { 3 | "subdir": "noarch" 4 | }, 5 | "packages": {}, 6 | "packages.conda": {}, 7 | "removed": [], 8 | "repodata_version": 1 9 | } 10 | -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/noarch/repodata_from_packages.json.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/noarch/repodata_from_packages.json.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/current_repodata.json.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/current_repodata.json.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/hotfix_depends_test-1.0-dummy_0.conda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/hotfix_depends_test-1.0-dummy_0.conda -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/hotfix_depends_test-1.0-dummy_0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/hotfix_depends_test-1.0-dummy_0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/remove_test-1.0-0.conda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/remove_test-1.0-0.conda -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/remove_test-1.0-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/remove_test-1.0-0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/repodata.json.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/repodata.json.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/repodata_from_packages.json.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/repodata_from_packages.json.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/revoke_test-1.0-0.conda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/revoke_test-1.0-0.conda -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/revoke_test-1.0-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/revoke_test-1.0-0.tar.bz2 -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/track_features_test-1.0-0.conda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/track_features_test-1.0-0.conda -------------------------------------------------------------------------------- /tests/index_hotfix_pkgs/osx-64/track_features_test-1.0-0.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/index_hotfix_pkgs/osx-64/track_features_test-1.0-0.tar.bz2 -------------------------------------------------------------------------------- /tests/requirements-Linux.txt: -------------------------------------------------------------------------------- 1 | patch 2 | patchelf 3 | shellcheck 4 | -------------------------------------------------------------------------------- /tests/requirements-Windows.txt: -------------------------------------------------------------------------------- 1 | m2-git 2 | m2-patch 3 | -------------------------------------------------------------------------------- /tests/requirements-benchmarks.txt: -------------------------------------------------------------------------------- 1 | conda-forge::pytest-codspeed >=3.0.0 2 | -------------------------------------------------------------------------------- /tests/requirements-ci.txt: -------------------------------------------------------------------------------- 1 | anaconda-client 2 | contextlib2 3 | coverage 4 | cytoolz 5 | git 6 | numpy 7 | perl 8 | pip 9 | pyflakes 10 | pytest 11 | pytest-cov 12 | pytest-forked 13 | pytest-mock 14 | pytest-rerunfailures 15 | pytest-xdist 16 | ruamel.yaml 17 | setuptools <75.1.0 # temporary, see https://github.com/conda/conda-build/issues/5493 18 | tomli # [py<3.11] for coverage pyproject.toml 19 | -------------------------------------------------------------------------------- /tests/requirements-macOS.txt: -------------------------------------------------------------------------------- 1 | patch 2 | shellcheck 3 | -------------------------------------------------------------------------------- /tests/test-append.yaml: -------------------------------------------------------------------------------- 1 | requirements: 2 | build: 3 | - frank 4 | -------------------------------------------------------------------------------- /tests/test-clobber.yaml: -------------------------------------------------------------------------------- 1 | about: 2 | summary: yep 3 | -------------------------------------------------------------------------------- /tests/test-recipes/TODO.md: -------------------------------------------------------------------------------- 1 | - build environment variables 2 | - pre/post link/unlink 3 | - post-build version 4 | -------------------------------------------------------------------------------- /tests/test-recipes/dll-package/jansi.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/dll-package/jansi.dll -------------------------------------------------------------------------------- /tests/test-recipes/dll-package/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: dll-hello 3 | version: 1.0.0 4 | 5 | build: 6 | number: 0 7 | script: 8 | - pushd ${RECIPE_DIR} # [not win] 9 | - pushd %RECIPE_DIR% # [win] 10 | 11 | - cp jansi.dll ${PREFIX} # [not win] 12 | - copy jansi.dll %LIBRARY_PREFIX% # [win] 13 | 14 | about: 15 | summary: Tests that standalone dlls can be packaged 16 | -------------------------------------------------------------------------------- /tests/test-recipes/dummy_dependency/meta.yaml: -------------------------------------------------------------------------------- 1 | # this file is manually built and uploaded to the conda_build_test anaconda.org account. 2 | # Its purpose is to provide a package dependency that is only available on our test account. 3 | 4 | package: 5 | name: conda_build_test_requirement 6 | version: 1.0 7 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/backslash_in_include_files/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: backslash_in_include_files 3 | version: 1.0 4 | 5 | build: 6 | always_include_files: 7 | - include\abstract.h 8 | - include\\abstract.h 9 | 10 | requirements: 11 | build: 12 | - python 13 | 14 | test: 15 | commands: 16 | - IF NOT EXIST "%PREFIX%\include\abstract.h" exit 1 17 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/check_runtime_dependencies/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-depedencies 3 | version: 1.0 4 | 5 | build: 6 | string: abc 7 | 8 | requirements: 9 | build: 10 | - python 11 | run: 12 | - python 13 | - some-nonexistent-package1 14 | 15 | test: 16 | requires: 17 | - pytest 18 | - pytest-cov -------------------------------------------------------------------------------- /tests/test-recipes/fail/check_test_dependencies/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-depedencies 3 | version: 1.0 4 | 5 | build: 6 | string: abc 7 | 8 | requirements: 9 | build: 10 | - python 11 | run: 12 | - python 13 | 14 | test: 15 | requires: 16 | - pytest 17 | - pytest-cov 18 | - pytest-package-does-not-exist -------------------------------------------------------------------------------- /tests/test-recipes/fail/create_bad_folder_for_conda_verify/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: create_bad_folder 3 | version: 1.0 4 | 5 | build: 6 | script: 7 | - mkdir $PREFIX/conda-bld # [unix] 8 | - touch $PREFIX/conda-bld/file # [unix] 9 | - mkdir %PREFIX%\\conda-bld # [win] 10 | - echo . > %PREFIX%\\conda-bld\\file # [win] 11 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/pip_reqs_fail_informatively/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pip_reqs_fail_informatively 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | - pip: 9 | - setuptools 10 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/recursive-build/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-recursive-build-fail 3 | version: 1.0 4 | 5 | source: 6 | path: ../../test-package 7 | 8 | # This is a version of the package that doesn't exist. The test is that this 9 | # doesn't run infinitely. 10 | requirements: 11 | build: 12 | - recursive-build2 2.0 13 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/recursive-build2/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: recursive-build2 3 | version: 1.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/source_git_jinja2_oops/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.8.1 ] 7 | echo "\$PKG_VERSION = $PKG_VERSION" 8 | [ "${PKG_VERSION}" = 1.8.1 ] 9 | PYTHONPATH=. python -c "import conda_build; assert conda_build.__version__ == '1.8.1', conda_build.__version__" 10 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/source_git_jinja2_oops/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-git-jinja2-oops 3 | version: {{ GIT_DSECRIBE_TAG }} 4 | 5 | source: 6 | git_url: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | git_tag: 1.20.2 8 | 9 | requirements: 10 | build: 11 | # To test the conda_build version 12 | - python 13 | -------------------------------------------------------------------------------- /tests/test-recipes/fail/symlinks/file1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/fail/symlinks/file1 -------------------------------------------------------------------------------- /tests/test-recipes/fail/symlinks/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-symlinks-fail 3 | version: 1.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/go-package/hello.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import "fmt" 4 | 5 | func main() { 6 | fmt.Printf("Hello, World!\n") 7 | } 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/TODO.md: -------------------------------------------------------------------------------- 1 | - tests 2 | - about 3 | - app 4 | - selectors 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/dir-no-slash-suffix/license-dir-from-recipe/first-license.txt: -------------------------------------------------------------------------------- 1 | first license from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/dir-no-slash-suffix/license-dir-from-recipe/second-license.txt: -------------------------------------------------------------------------------- 1 | second license from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/dir-no-slash-suffix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_license_file_dir-no-slash-suffix 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | license_file: 10 | - license-dir-from-source/ 11 | - license-dir-from-recipe 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/dir/license-dir-from-recipe/first-license.txt: -------------------------------------------------------------------------------- 1 | first license from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/dir/license-dir-from-recipe/second-license.txt: -------------------------------------------------------------------------------- 1 | second license from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/dir/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_license_file_dir 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | license_file: 10 | - license-dir-from-source/ 11 | - license-dir-from-recipe/ 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/list/license-from-recipe.txt: -------------------------------------------------------------------------------- 1 | license from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/list/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_license_file_list 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | license_file: 10 | - license-from-source.txt 11 | - license-from-recipe.txt 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/recipes/single/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_license_file_single 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | license_file: license-from-source.txt 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/source/license-dir-from-source/first-license.txt: -------------------------------------------------------------------------------- 1 | first license from source 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/source/license-dir-from-source/second-license.txt: -------------------------------------------------------------------------------- 1 | second license from source 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_license_file/source/license-from-source.txt: -------------------------------------------------------------------------------- 1 | license from source 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/dir-no-slash-suffix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_prelink_message_file_dir-no-slash-suffix 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | prelink_message: 10 | - prelink_message-dir-from-source/ 11 | - prelink_message-dir-from-recipe 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/dir-no-slash-suffix/prelink_message-dir-from-recipe/first-prelink_message.txt: -------------------------------------------------------------------------------- 1 | first prelink_message from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/dir-no-slash-suffix/prelink_message-dir-from-recipe/second-prelink_message.txt: -------------------------------------------------------------------------------- 1 | second prelink_message from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/dir/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_prelink_message_file_dir 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | prelink_message: 10 | - prelink_message-dir-from-source/ 11 | - prelink_message-dir-from-recipe/ 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/dir/prelink_message-dir-from-recipe/first-prelink_message.txt: -------------------------------------------------------------------------------- 1 | first prelink_message from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/dir/prelink_message-dir-from-recipe/second-prelink_message.txt: -------------------------------------------------------------------------------- 1 | second prelink_message from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/list/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_prelink_message_file_list 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | prelink_message: 10 | - prelink_message-from-source.txt 11 | - prelink_message-from-recipe.txt 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/list/prelink_message-from-recipe.txt: -------------------------------------------------------------------------------- 1 | prelink_message from recipe 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/recipes/single/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_about_prelink_message_file_single 3 | version: 1.0 4 | 5 | source: 6 | path: ../../source 7 | 8 | about: 9 | prelink_message: prelink_message-from-source.txt 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/source/prelink_message-dir-from-source/first-prelink_message.txt: -------------------------------------------------------------------------------- 1 | first prelink_message from source 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/source/prelink_message-dir-from-source/second-prelink_message.txt: -------------------------------------------------------------------------------- 1 | second prelink_message from source 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_about_prelink_message/source/prelink_message-from-source.txt: -------------------------------------------------------------------------------- 1 | prelink_message from source 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_activate_scripts_not_included/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: scratch 3 | version: 0 4 | 5 | build: 6 | script: echo weee 7 | 8 | requirements: 9 | build: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_backslash_in_include_files/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: backslash_in_include_files 3 | version: 1.0 4 | 5 | build: 6 | always_include_files: 7 | - include/abstract.h 8 | 9 | requirements: 10 | build: 11 | - python 12 | 13 | test: 14 | commands: 15 | - IF NOT EXIST "%PREFIX%\include\abstract.h" exit 1 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_bad_patch/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_bad_patch 3 | version: 1.0 4 | 5 | source: 6 | path: ../../test-package 7 | patches: 8 | fail_to_apply.patch 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_prefix_files/bld.bat: -------------------------------------------------------------------------------- 1 | python "%RECIPE_DIR%\write_binary_has_prefix.py" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_prefix_files/build.sh: -------------------------------------------------------------------------------- 1 | python $RECIPE_DIR/write_binary_has_prefix.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_prefix_files/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-binary-has-prefix-files 3 | version: 1.0 4 | 5 | build: 6 | binary_has_prefix_files: 7 | - binary-has-prefix 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_prefix_files/write_binary_has_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = os.path.join(prefix, 'binary-has-prefix') 5 | 6 | if not os.path.isdir(prefix): 7 | os.makedirs(prefix) 8 | 9 | with open(fn, 'wb') as f: 10 | f.write(prefix.encode('utf-8') + b'\x00') 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_utf_non_8/bld.bat: -------------------------------------------------------------------------------- 1 | python "%RECIPE_DIR%\write_binary_has_prefix.py" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_utf_non_8/build.sh: -------------------------------------------------------------------------------- 1 | python $RECIPE_DIR/write_binary_has_prefix.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_binary_has_utf_non_8/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-binary-has-prefix-files 3 | version: 1.0 4 | 5 | build: 6 | binary_has_prefix_files: 7 | - binary-has-prefix-utf-8 8 | - binary-has-prefix-utf-16-le 9 | - binary-has-prefix-utf-16-be 10 | - binary-has-prefix-utf-32-le 11 | - binary-has-prefix-utf-32-be 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_deps_no_infinite_loop/test_a/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_a 3 | version: 2.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_deps_no_infinite_loop/test_b/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_b 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | # unsatisfiable. Folder can produce version 2.0.* 8 | # we control pinning in variant in test definition 9 | - test_a {{ test_a }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_msvc_compiler/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-build-msvc-compiler 3 | version: 1.0 4 | 5 | build: 6 | msvc_compiler: {{ environ.get('CONDATEST_MSVC_VER') }} 7 | script_env: 8 | - CONDATEST_MSVC_VER 9 | - CL_EXE_VERSION 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_script_errors/output_build_script/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg 3 | version: '1.0' 4 | source: 5 | path: . 6 | outputs: 7 | - name: pkg-output 8 | build: 9 | script: 10 | - exit 1 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_script_errors/output_script/exit_1.bat: -------------------------------------------------------------------------------- 1 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_script_errors/output_script/exit_1.sh: -------------------------------------------------------------------------------- 1 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_script_errors/output_script/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg 3 | version: '1.0' 4 | source: 5 | path: . 6 | outputs: 7 | - name: pkg-output 8 | script: exit_1.sh # [unix] 9 | script: exit_1.bat # [win] 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_build_script_errors/toplevel/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg 3 | version: '1.0' 4 | source: 5 | path: . 6 | build: 7 | script: exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_c_vendoring_detection/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | rm -f ${PREFIX}/lib/libz*{.dylib,.so}* || true 4 | echo -e '#include \n#include \nint main(int argc, char const * argv[]) {\n const char * zlv = zlibVersion();\n printf("zlibVersion=%s", zlv);\n return 0;\n}\n' | ${CC} ${CFLAGS} ${LDFLAGS} -o ${PREFIX}/bin/c_vendoring -I${PREFIX}/include -L${PREFIX}/lib -x c - -lz 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_c_vendoring_detection/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: c_vendoring 3 | version: 0 4 | 5 | build: 6 | number: 0 7 | ignore_run_exports: 8 | - zlib 9 | 10 | requirements: 11 | build: 12 | - {{ compiler('c') }} 13 | host: 14 | - zlib 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_checkout_tool_as_dependency/bld.bat: -------------------------------------------------------------------------------- 1 | svn upgrade 2 | svn info 3 | if errorlevel 1 exit 1 4 | for /f "delims=" %%i in ('svn info ^| findstr "Revision"') do set svnrev=%%i 5 | if errorlevel 1 exit 1 6 | echo %svnrev% 7 | if not "%svnrev%"=="Revision: 1" exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_checkout_tool_as_dependency/build.sh: -------------------------------------------------------------------------------- 1 | # Ensure the checkout went well 2 | # Think of the non-English speaking world 3 | export LC_ALL=C 4 | svn upgrade 5 | svn info 6 | [ "$(svn info | grep "Revision")" = "Revision: 1" ] 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_checkout_tool_as_dependency/readme.txt: -------------------------------------------------------------------------------- 1 | This file is run explicitly by test_recipe_builds, in the test_checkout_tool_as_dependency function. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cmake_generator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | PROJECT(HELLO) 2 | 3 | CMAKE_MINIMUM_REQUIRED(VERSION 2.6) 4 | 5 | add_executable(hello hello.c) 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cmake_generator/bld.bat: -------------------------------------------------------------------------------- 1 | where cl.exe 2 | where link.exe 3 | :: maybe informative for MinGW? 4 | where gcc.exe 5 | 6 | cmake -G "%CMAKE_GENERATOR:"=%" "%RECIPE_DIR%" 7 | cmake --build . --config Release 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cmake_generator/build.sh: -------------------------------------------------------------------------------- 1 | cmake -G "$CMAKE_GENERATOR" $RECIPE_DIR 2 | cmake --build . --config Release 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cmake_generator/hello.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | printf("Hello world!\n"); 5 | } 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cmake_generator/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-cmake-generator 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - cmake 8 | - {{ compiler("c") }} 9 | - {{ compiler("cxx") }} 10 | - make # [unix] 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_compile-test/f1.py: -------------------------------------------------------------------------------- 1 | print("file 1") 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_compile-test/f2_bad.py: -------------------------------------------------------------------------------- 1 | I am a bad file that should not pass compileall. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_compile-test/f3.py: -------------------------------------------------------------------------------- 1 | print("File 3") 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_compiler_jinja2/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: compiler-test 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - {{ compiler('c') }} 8 | - {{ compiler('cxx') }} 9 | - {{ compiler('fortran') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_compiler_python_build_section/meta.yaml: -------------------------------------------------------------------------------- 1 | # common point of confusion around the split between build and host 2 | 3 | package: 4 | name: empty_pkg_with_python_build_host 5 | version: 1.0 6 | 7 | build: 8 | script: echo weeee 9 | 10 | requirements: 11 | build: 12 | - {{ compiler('c') }} 13 | - python 14 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_conda-build-test-environment-vars-in-build-env/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: _conda-build-test-environment-vars-in-build-env 3 | version: 1.0 4 | 5 | about: 6 | summary: test that scripts with activate.d and deactivate.d (set up activate/deactivate scripts) 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_condarc_channel/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_recipe_needing_channel 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | # this is only available at conda_build_test, and is a test of whether that channel is available. 9 | - conda_build_test_requirement 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_build_unix_windows/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | target_platform: 2 | - win-64 # [not win] 3 | - linux-64 # [win] 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_build_unix_windows/meta.yaml: -------------------------------------------------------------------------------- 1 | # Empty package that gets cross-built on Unix for Windows and vice versa. 2 | 3 | package: 4 | name: test_cross_unix_windows 5 | version: 1.0 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_helloworld/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: "compiler_linux-64" 2 | target_platform: "linux-imx351uc" 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_libgreeting/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: "compiler_linux-64" 2 | target_platform: "linux-imx351uc" 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_libgreeting/src/libgreeting.h: -------------------------------------------------------------------------------- 1 | #ifndef LIBGREETING_H_INCLUDED 2 | #define LIBGREETING_H_INCLUDED 3 | 4 | char * greeting(char const * suffix); 5 | 6 | #endif /* LIBGREETING_H_INCLUDED */ 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_prefix_elision/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | # force cross-compiling 2 | target_platform: 3 | - linux-64 [not linux] 4 | - osx-64 [linux] 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_prefix_elision_compiler_used/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | # force cross-compiling 2 | target_platform: 3 | - linux-64 [not linux] 4 | - osx-64 [linux] 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_unix_windows_mingw/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | target_platform: 2 | - win-64 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_cross_unix_windows_mingw/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: foo 3 | version: 0.0.1 4 | 5 | build: 6 | number: 0 7 | script: 8 | - echo 'hello' 9 | - ls $PREFIX 10 | # this is the unix layout. 11 | - test ! -d $PREFIX/x86_64-w64-mingw32 12 | - test -d $PREFIX/Library 13 | 14 | requirements: 15 | build: 16 | host: 17 | - m2w64-sysroot_win-64 18 | run: 19 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_debug_pkg/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_debug_pkg 3 | version: 1.0 4 | 5 | build: 6 | script: echo "weeee" 7 | noarch: generic 8 | 9 | requirements: 10 | build: 11 | - zlib 12 | host: 13 | - jpeg 14 | run: 15 | - bzip2 16 | 17 | test: 18 | requires: 19 | - xz 20 | commands: 21 | - echo "steve" 22 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_detect_binary_files_with_prefix/bld.bat: -------------------------------------------------------------------------------- 1 | python %RECIPE_DIR%\write_binary_has_prefix.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_detect_binary_files_with_prefix/build.sh: -------------------------------------------------------------------------------- 1 | python $RECIPE_DIR/write_binary_has_prefix.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_detect_binary_files_with_prefix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-detect-binary-files-with-prefix 3 | version: 1.0 4 | 5 | build: 6 | detect_binary_files_with_prefix: true 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_detect_binary_files_with_prefix/run_test.sh: -------------------------------------------------------------------------------- 1 | cd $PREFIX 2 | cat binary-has-prefix 3 | cat binary-has-prefix | grep $PREFIX 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_detect_binary_files_with_prefix/write_binary_has_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = '%s/binary-has-prefix' % prefix 5 | 6 | if not os.path.isdir(prefix): 7 | os.makedirs(prefix) 8 | 9 | with open(fn, 'wb') as f: 10 | f.write(prefix.encode('utf-8') + b'\x00') 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_dirty_skip_section/bld.bat: -------------------------------------------------------------------------------- 1 | :: ensure that the DIRTY environment variable is available for logic in build scripts 2 | echo DIRTY environment variable should be "1". Is currently: "%DIRTY%" 3 | IF "%DIRTY%" == "1" exit 0 4 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_dirty_skip_section/build.sh: -------------------------------------------------------------------------------- 1 | # ensure that the DIRTY environment variable is available for logic in build scripts 2 | [ -n "$DIRTY" ] && exit 0 3 | exit 1 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_dirty_skip_section/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-dirty-skip-section 3 | version: 1.0 4 | 5 | about: 6 | summary: ensure that the DIRTY environment variable is available to bld.bat and build.sh 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_disable_pip/bld.bat: -------------------------------------------------------------------------------- 1 | python %RECIPE_DIR%/build_script.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_disable_pip/build.sh: -------------------------------------------------------------------------------- 1 | python $RECIPE_DIR/build_script.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_disable_pip/build_script.py: -------------------------------------------------------------------------------- 1 | import sys 2 | # import setuptools should work 3 | import setuptools 4 | try: 5 | # import pip should not. The exception is what we want to see. 6 | import pip 7 | except ImportError: 8 | sys.exit(0) 9 | sys.exit(1) 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_disable_pip/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: disable_pip 3 | version: 1.0 4 | 5 | build: 6 | disable_pip: True 7 | 8 | requirements: 9 | build: 10 | - python 11 | - setuptools 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_empty_host_avoids_merge/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg 3 | version: 0.0.1 4 | 5 | # build: 6 | # merge_build_host: False 7 | 8 | requirements: 9 | build: 10 | - bzip2 11 | host: 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_empty_pkg_with_python_build_host/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: empty_pkg_with_python_build_host 3 | version: 1.0 4 | 5 | build: 6 | script: echo weeee 7 | 8 | requirements: 9 | build: 10 | - python 11 | host: 12 | - python 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_empty_target_platform_yields_default/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_empty_platform_yields_default 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - {{ compiler('c') }} 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_extra_meta/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_extra_info 3 | version: 1.0 4 | 5 | source: 6 | path: ../../test-package 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_git_describe_number_branch/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: git_describe_number_branch 3 | version: {{ GIT_DESCRIBE_TAG }}.0 4 | 5 | source: 6 | git_url: https://github.com/conda/conda_build_test_recipe 7 | git_branch: 1.20.2+1 8 | 9 | build: 10 | number: {{ GIT_DESCRIBE_NUMBER }} 11 | string: {{ GIT_BUILD_STR }} 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_host_entries_finalized/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_host_entries_finalized/meta.yaml: -------------------------------------------------------------------------------- 1 | # When host requirements were added, they were not respected during finalization 2 | # thus things like the filenaming and variant distribution were not working. 3 | 4 | package: 5 | name: test_host_packages_finalized 6 | version: 1.0 7 | 8 | requirements: 9 | host: 10 | - python 11 | run: 12 | - python 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_ignore_prefix_files/run_test.py: -------------------------------------------------------------------------------- 1 | from glob import glob 2 | import os 3 | 4 | 5 | pkgs = os.path.join(os.environ["ROOT"], "pkgs") 6 | pkg_dir = glob(os.path.join(pkgs, "conda-build-test-ignore-prefix-files-1.0-0"))[0] 7 | info_dir = os.path.join(pkg_dir, 'info') 8 | assert os.path.isdir(info_dir) 9 | assert not os.path.isfile(os.path.join(info_dir, "has_prefix")) 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_ignore_verify_codes/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_ignore_verify_codes 3 | version: 1.0 4 | 5 | build: 6 | ignore_verify_codes: 7 | - C1115 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_inject_jinja2_vars_on_first_pass/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: noarch-test 3 | version: 0.1 4 | 5 | source: 6 | path: ../../test-package 7 | 8 | build: 9 | number: 0 10 | noarch: python 11 | 12 | requirements: 13 | host: 14 | - python {{ python_min }}.* 15 | run: 16 | - python >={{ python_min }} 17 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_keep_work_dir/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | something: 2 | - abc 3 | - def 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_keep_work_dir/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_keep_work_dir_{{ something }} 3 | version: 1.0 4 | 5 | source: 6 | path: ../../test-package 7 | 8 | test: 9 | source_files: 10 | - setup.py 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_keep_work_dir/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | assert os.path.isfile(os.path.join(os.getenv("SRC_DIR"), 'setup.py')) 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_legacy_noarch_python/noarch_test_package/README: -------------------------------------------------------------------------------- 1 | Simple package to test noarch package building. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_legacy_noarch_python/noarch_test_package/noarch_test_package.py: -------------------------------------------------------------------------------- 1 | """ This functions as a module but also as entry point. 2 | """ 3 | 4 | answer = 142 5 | 6 | 7 | def main(): 8 | print(answer + 100) 9 | 10 | if __name__ == '__main__': 11 | main() 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_lua_env_defined/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_lua_env 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - lua 8 | run: 9 | - lua 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_lua_env_defined/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | assert os.getenv('LUA') 4 | assert os.getenv('LUA_VER') 5 | assert os.getenv('CONDA_LUA') 6 | assert os.getenv('LUA_INCLUDE_DIR') 7 | assert not os.getenv('R') 8 | assert not os.getenv('PERL') 9 | # python is allowed, because it's present to run this script. 10 | # assert not os.getenv('PYTHON') 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_macos_tbd_handling/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | [[ -d ${PREFIX}/bin ]] || mkdir ${PREFIX}/bin 4 | [[ -d ${PREFIX}/lib ]] || mkdir ${PREFIX}/lib 5 | export LDFLAGS=$(echo "${LDFLAGS}" | sed "s/-Wl,-dead_strip_dylibs//g") 6 | ${CC} ${CFLAGS} ${LDFLAGS} -framework CoreFoundation -o ${PREFIX}/bin/hello_world -x c hello-world.c 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_macos_tbd_handling/hello-world.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | #if !defined(SUFFIX) 4 | #define SUFFIX_STR "A test string" 5 | #else 6 | #define STRINGIZE2(_x) #_x 7 | #define STRINGIZE(_x) STRINGIZE2(_x) 8 | #define SUFFIX_STR STRINGIZE(SUFFIX) 9 | #endif 10 | 11 | int main(int argc, char * argv[]) 12 | { 13 | printf("Hello World!\n" SUFFIX_STR "\n"); 14 | return 0; 15 | } 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_no_include_recipe/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: no_include_recipe 3 | version: 0.0 4 | 5 | build: 6 | include_recipe: False 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_no_include_recipe/run_test.bat: -------------------------------------------------------------------------------- 1 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_no_include_recipe/run_test.sh: -------------------------------------------------------------------------------- 1 | exit 1 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_no_merge_build_host/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg 3 | version: 0.0.1 4 | 5 | build: 6 | merge_build_host: False 7 | 8 | requirements: 9 | build: 10 | - bzip2 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_none/noarch_test_package/README: -------------------------------------------------------------------------------- 1 | Simple package to test noarch package building. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_none/noarch_test_package/noarch_test_package.py: -------------------------------------------------------------------------------- 1 | """ This functions as a module but also as entry point. 2 | """ 3 | 4 | answer = 142 5 | 6 | 7 | def main(): 8 | print(answer + 100) 9 | 10 | if __name__ == '__main__': 11 | main() 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_python/noarch_python_test_package/MANIFEST.in: -------------------------------------------------------------------------------- 1 | include setup.py 2 | recursive-exclude shell * 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_python/noarch_python_test_package/noarch_python_test_package.py: -------------------------------------------------------------------------------- 1 | """ This functions as a module but also as entry point. 2 | """ 3 | 4 | answer = 142 5 | 6 | 7 | def main(): 8 | print(answer + 100) 9 | 10 | if __name__ == '__main__': 11 | main() 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_python/noarch_python_test_package/shell/test-executable: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | echo "hello world" 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_python/noarch_python_test_package/shell/test-executable.bat: -------------------------------------------------------------------------------- 1 | ECHO "hello world" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_python_with_tests/noarch_python_test_package/noarch_python_test_package.py: -------------------------------------------------------------------------------- 1 | """ This functions as a module but also as entry point. 2 | """ 3 | 4 | answer = 142 5 | 6 | 7 | def main(): 8 | print(answer + 100) 9 | 10 | if __name__ == '__main__': 11 | main() 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_noarch_with_no_platform_deps/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test-noarch-with-no-platform-deps 3 | version: 0.0.1 4 | 5 | build: 6 | number: 0 7 | noarch: python 8 | 9 | requirements: 10 | build: 11 | host: 12 | - python >=3.7 13 | run: 14 | - python >=3.7 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_setup_py_data/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: load_setup_py_test 3 | version: {{ load_setup_py_data().version }} 4 | 5 | source: 6 | path: . 7 | 8 | requirements: 9 | host: 10 | - cython 11 | - numpy 12 | - nomkl # [unix] 13 | - python 14 | - setuptools 15 | run: 16 | - numpy x.x 17 | - python 18 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_xx/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-numpy-build-run 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | # legacy "pin run as build" 9 | - numpy x.x 10 | - nomkl # [unix] 11 | run: 12 | - python 13 | - numpy x.x 14 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_xx/run_test.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | conda list -p "%PREFIX%" --canonical 3 | if errorlevel 1 exit 1 4 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-numpy-build-run-1\.0-np115py.._0" 5 | if errorlevel 1 exit 1 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_xx/run_test.sh: -------------------------------------------------------------------------------- 1 | conda list -p $PREFIX --canonical 2 | # Test the build string. Should contain NumPy, but not the version 3 | conda list -p $PREFIX --canonical | grep "conda-build-test-numpy-build-run-1\.0-np115py.._0" 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_xx_host/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-numpy-build-run 3 | version: 1.0 4 | 5 | requirements: 6 | host: 7 | - python 8 | - numpy x.x 9 | - nomkl # [unix] 10 | run: 11 | - python 12 | - numpy 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_xx_host/run_test.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | conda list -p "%PREFIX%" --canonical 3 | if errorlevel 1 exit 1 4 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-numpy-build-run-1\.0-np115py.._0" 5 | if errorlevel 1 exit 1 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_numpy_xx_host/run_test.sh: -------------------------------------------------------------------------------- 1 | conda list -p $PREFIX --canonical 2 | # Test the build string. Should contain NumPy, but not the version 3 | conda list -p $PREFIX --canonical | grep "conda-build-test-numpy-build-run-1\.0-np115py.._0" 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_osx_is_app_missing_python_app/build.sh: -------------------------------------------------------------------------------- 1 | # conda-build/tests/test-recipes/test-package 2 | cd $RECIPE_DIR/../../test-package 3 | 4 | python setup.py install 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_osx_is_app_missing_python_app/run_test.sh: -------------------------------------------------------------------------------- 1 | test-script-setup.py 2 | test-script-setup.py | grep "Test script setup\.py" 3 | cat $PREFIX/bin/test-script-setup.py | grep "pythonw" 4 | 5 | test-script-manual 6 | test-script-manual | grep "Manual entry point" 7 | cat $PREFIX/bin/test-script-manual | grep "pythonw" 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overdepending_detection/bld.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | cl -c -EHsc -GR -Zc:forScope -Zc:wchar_t -Fomain.obj main.c 3 | link -out:%PREFIX%\Library\bin\main.exe main.obj -LIBPATH:%PREFIX%\Library\lib zlib.lib 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overdepending_detection/build.bat: -------------------------------------------------------------------------------- 1 | cl.exe %CFLAGS}% main.c -o overlinking.exe -LIBDIR=%PREFIX%\Lib -LIB=zlib.lib 2 | 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overdepending_detection/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ${CC} ${CFLAGS} main.c -o ${PREFIX}/bin/overdepends 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overdepending_detection/main.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | return 0; 5 | } 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overdepending_detection/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set version = "1" %} 2 | 3 | package: 4 | name: overdepending 5 | version: {{ version }} 6 | 7 | source: 8 | path: main.c 9 | 10 | build: 11 | number: 0 12 | 13 | requirements: 14 | build: 15 | - {{ compiler('c') }} 16 | host: 17 | - libcurl 18 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overdepending_detection/test/hello_world.xar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_overdepending_detection/test/hello_world.xar -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlapping_files_warning/a/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg_a 3 | version: "1.0.0" 4 | 5 | build: 6 | script: touch $PREFIX/this_is_a_file # [unix] 7 | script: echo 0 > %PREFIX%\this_is_a_file # [win] 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlapping_files_warning/b/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg_b 3 | version: "1.0.0" 4 | 5 | build: 6 | script: touch $PREFIX/this_is_a_file # [unix] 7 | script: echo 0 > %PREFIX%\this_is_a_file # [win] 8 | 9 | requirements: 10 | run: 11 | pkg_a 12 | 13 | test: 14 | commands: 15 | - echo "hello" 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection/build_scripts/default.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | echo int main() { return 0; }>main.c 3 | cl -c -EHsc -GR -Zc:forScope -Zc:wchar_t -Fomain.obj main.c 4 | link -out:%PREFIX%\Library\bin\main.exe main.obj 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection/build_scripts/default.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo "int main() { return 0; }" | ${CC} ${CFLAGS} ${LDFLAGS} -o ${PREFIX}/bin/overlinking -lbz2 -x c - 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection/build_scripts/with_bzip2.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | echo #include ^>main.c 3 | echo int main() { BZ2_bzlibVersion(); return 0; }>>main.c 4 | cl -c -EHsc -GR -Zc:forScope -Zc:wchar_t -Fomain.obj main.c -INCLUDE:%PREFIX%\Library\include 5 | link -out:%PREFIX%\Library\bin\main.exe main.obj -LIBPATH:%PREFIX%\Library\lib bzip2.lib 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: overlinking 3 | version: 0 4 | 5 | build: 6 | number: 0 7 | ignore_run_exports: 8 | - bzip2 9 | 10 | requirements: 11 | build: 12 | - {{ compiler('c') }} 13 | host: 14 | - bzip2 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection_ignore_patterns/build_scripts/default.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | echo int main() { return 0; }>main.c 3 | cl -c -EHsc -GR -Zc:forScope -Zc:wchar_t -Fomain.obj main.c 4 | link -out:%PREFIX%\Library\bin\main.exe main.obj 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection_ignore_patterns/build_scripts/default.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo "int main() { return 0; }" | ${CC} ${CFLAGS} ${LDFLAGS} -o ${PREFIX}/bin/overlinking -lbz2 -x c - 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_overlinking_detection_ignore_patterns/build_scripts/with_bzip2.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | echo #include ^>main.c 3 | echo int main() { BZ2_bzlibVersion(); return 0; }>>main.c 4 | cl -c -EHsc -GR -Zc:forScope -Zc:wchar_t -Fomain.obj main.c -INCLUDE:%PREFIX%\Library\include 5 | link -out:%PREFIX%\Library\bin\main.exe main.obj -LIBPATH:%PREFIX%\Library\lib bzip2.lib 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_path_not_cached/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: mypkg 3 | version: 1.0 4 | 5 | source: 6 | path: . 7 | 8 | test: 9 | files: 10 | - test2.py 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_path_not_cached/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | print("Tests run OK") 4 | # test2 is not a checked-in file. It is written by the test, and removed after being run. 5 | test2 = os.path.join(os.path.dirname(__file__), 'test2.py') 6 | assert os.path.isfile(test2), os.listdir(os.path.dirname(__file__)) 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_perl_env_defined/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_perl_env_var_present 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - perl 8 | run: 9 | - perl 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_perl_env_defined/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | assert os.getenv('PERL') 4 | assert os.getenv('PERL_VER') 5 | assert os.getenv('CONDA_PERL') 6 | assert not os.getenv('R') 7 | assert not os.getenv('LUA'), os.getenv('LUA') 8 | # python is allowed, because it's present to run this script. 9 | # assert not os.getenv('PYTHON') 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pin_compatible/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_pin_compatible_semver 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - zlib 1.2.11 8 | run: 9 | - {{ pin_compatible('zlib') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pin_depends_record/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pintest 3 | version: 1.0 4 | 5 | build: 6 | pin_depends: record 7 | 8 | requirements: 9 | run: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pin_depends_strict/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pintest 3 | version: 1.0 4 | 5 | build: 6 | pin_depends: strict 7 | 8 | requirements: 9 | run: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pin_subpackage_exact/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_has_run_exports 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - {{ pin_subpackage('run_exports_subpkg', exact=True) }} 8 | 9 | outputs: 10 | - name: run_exports_subpkg 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pinning_prerelease/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | pin_run_as_build: 2 | foo: 3 | min_pin: x.x 4 | max_pin: x.x 5 | 6 | foo: 7 | - 3.10.0.rc1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pinning_prerelease/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: foo 3 | version: 3.10.0.rc1 4 | 5 | outputs: 6 | - name: foo 7 | - name: bar 8 | requirements: 9 | host: 10 | - foo 11 | run: 12 | - foo 13 | test: 14 | commands: 15 | - echo "hello world" 16 | 17 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pinning_prerelease_python/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | pin_run_as_build: 2 | python: 3 | min_pin: x.x 4 | max_pin: x.x 5 | 6 | python: 7 | - 3.10.0rc1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pinning_prerelease_python/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: foo 3 | version: 3.10.0rc1 4 | 5 | outputs: 6 | - name: python 7 | - name: bar 8 | requirements: 9 | host: 10 | - python 11 | run: 12 | - python 13 | test: 14 | commands: 15 | - echo "hello world" 16 | 17 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post-link-fails/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: _post-link-fails 3 | version: 1.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post-link-fails/post-link.bat: -------------------------------------------------------------------------------- 1 | echo failing post link 2 | exit 1 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post-link-fails/post-link.sh: -------------------------------------------------------------------------------- 1 | echo failing post link 2 | exit 1 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_exits_after_retry/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-post-link-build-error 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - _post-link-fails 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_exits_tests/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-post-link-test-error 3 | version: 1.0 4 | 5 | test: 6 | requires: 7 | - _post-link-fails 8 | commands: 9 | - echo 'weeee' 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_in_output/mypostlinkscript.bat: -------------------------------------------------------------------------------- 1 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_in_output/mypostlinkscript.sh: -------------------------------------------------------------------------------- 1 | exit 1 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_in_output_implicit/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_post_link_in_output_implicit 3 | version: 1.0 4 | 5 | outputs: 6 | - name: out1 7 | test: 8 | commands: 9 | - echo 'weee' 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_in_output_implicit/out1-post-link.bat: -------------------------------------------------------------------------------- 1 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_post_link_in_output_implicit/out1-post-link.sh: -------------------------------------------------------------------------------- 1 | exit 1 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_preferred_env/bld.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | mkdir %PREFIX%\Scripts 3 | @echo hello world > %PREFIX%\Scripts\exepath1.bat 4 | @echo hello again world > %PREFIX%\Scripts\exepath2.bat 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_preferred_env/build.sh: -------------------------------------------------------------------------------- 1 | printf '#!/bin/bash\necho 'hello world'\n' > $PREFIX/bin/exepath1 2 | printf '#!/bin/bash\necho 'hello again world'\n' > $PREFIX/bin/exepath2 3 | 4 | chmod +x $PREFIX/bin/exepath1 5 | chmod +x $PREFIX/bin/exepath2 6 | 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_preferred_env/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: preferred_env_test_package 3 | version: "1.0" 4 | 5 | build: 6 | preferred_env: _env_ 7 | preferred_env_executable_paths: 8 | - bin/exepath1 [unix] 9 | - bin/exepath2 [unix] 10 | - Scripts/exepath1.bat [win] 11 | - Scripts/exepath2.bat [win] 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_pypi_installer_metadata/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 3.9 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_python_site_packages_path/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: python 3 | version: 3.99.99 4 | 5 | build: 6 | python_site_packages_path: "some/path" 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_python_xx/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-python-xx 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | # legacy "pin run as build" 8 | - python x.x 9 | run: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_python_xx/run_test.bat: -------------------------------------------------------------------------------- 1 | @echo on 2 | conda list -p "%PREFIX%" --canonical 3 | if errorlevel 1 exit 1 4 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-python-xx-1\.0-py35_0" 5 | if errorlevel 1 exit 1 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_python_xx/run_test.sh: -------------------------------------------------------------------------------- 1 | conda list -p $PREFIX --canonical 2 | conda list -p $PREFIX --canonical | grep "conda-build-test-python-xx-1\.0-py35_0" 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_r_env_defined/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_r_env_var_present 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - r-base 8 | run: 9 | - r-base 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_r_env_defined/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | assert os.getenv('R') 4 | assert os.getenv('R_VER') 5 | assert os.getenv('CONDA_R') 6 | assert not os.getenv('PERL') 7 | assert not os.getenv('LUA') 8 | # python is allowed, because it's present to run this script. 9 | # assert not os.getenv('PYTHON') 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recipe_requiring_external_channel/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: requires_external_channel 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | # package that does not exist on defaults, but only on our test channel 8 | - conda_build_test_requirement 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recursive-build-a/meta.yaml: -------------------------------------------------------------------------------- 1 | # this is a utility package for recursive-build-two-layer 2 | 3 | package: 4 | name: _recursive-build-a 5 | version: 1.0 6 | 7 | requirements: 8 | build: 9 | - _recursive-build-b 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recursive-build-b/meta.yaml: -------------------------------------------------------------------------------- 1 | # this is a utility package for recursive-build-two-layer 2 | 3 | package: 4 | name: _recursive-build-b 5 | version: 1.0 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recursive-build-c/meta.yaml: -------------------------------------------------------------------------------- 1 | # this is a utility package for recursive-build-two-packages 2 | 3 | package: 4 | name: _recursive-build-c 5 | version: 1.0 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recursive-build-d/meta.yaml: -------------------------------------------------------------------------------- 1 | # this is a utility package for recursive-build-two-packages 2 | 3 | package: 4 | name: _recursive-build-d 5 | version: 1.0 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recursive-build-two-layers/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-recursive-build-two-layers 3 | version: 1.0 4 | 5 | # This test should recursively build _recursive-build-a, 6 | # which depends on _recursive-build-b 7 | requirements: 8 | build: 9 | - _recursive-build-a 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_recursive-build-two-packages/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-recursive-build-two-layers 3 | version: 1.0 4 | 5 | # This test should build both _recursive-build-c and _recursive-build-d 6 | # so that it can then build the current package 7 | requirements: 8 | build: 9 | - _recursive-build-c 10 | - _recursive-build-d 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_requirements_txt_run_reqs/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: requirements_txt_run_reqs 3 | version: 1.0 4 | 5 | requirements: 6 | run: [] 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_requirements_txt_run_reqs/requirements.txt: -------------------------------------------------------------------------------- 1 | yaml 2 | pyyaml 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_requirements_txt_run_reqs/run_test.py: -------------------------------------------------------------------------------- 1 | import yaml 2 | yaml 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_requires_provides_features/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_requires_provides_features 3 | version: 1.0 4 | 5 | build: 6 | requires_features: 7 | test: ok 8 | provides_features: 9 | test2: also_ok 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_rewrite_env/bld.bat: -------------------------------------------------------------------------------- 1 | echo "BEGIN TEST" 2 | echo "PREFIX=%PREFIX%" 3 | echo "LIBDIR=%PREFIX%\lib" 4 | echo "PWD=%CD%" 5 | echo "BUILD_PREFIX=%BUILD_PREFIX%" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_rewrite_env/build.sh: -------------------------------------------------------------------------------- 1 | echo "BEGIN TEST" 2 | echo "PREFIX=$PREFIX" 3 | echo "LIBDIR=$PREFIX/lib" 4 | echo "PWD=$PWD" 5 | echo "BUILD_PREFIX=$BUILD_PREFIX" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_rewrite_env/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-rewrite-env 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - zlib 8 | host: [] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_rewrite_env/run_test.bat: -------------------------------------------------------------------------------- 1 | echo %PREFIX% 2 | echo %CD% 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_rewrite_env/run_test.sh: -------------------------------------------------------------------------------- 1 | echo $PREFIX 2 | echo $PWD 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_rpath/rpath: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_rpath/rpath -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_run_constrained/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_run_constrained 3 | version: 1.0 4 | 5 | requirements: 6 | run_constrained: 7 | - bzip2 1.* 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_run_exports/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_has_run_exports 3 | version: '1.0' 4 | 5 | build: 6 | run_exports: 7 | strong: 8 | - strong_pinned_package 1.0 9 | weak: 10 | - weak_pinned_package 1.0 11 | 12 | outputs: 13 | - name: test_has_run_exports 14 | - name: strong_pinned_package 15 | - name: weak_pinned_package 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_run_exports_implicit_weak/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_has_run_exports_implicit_weak 3 | version: '1.0' 4 | 5 | build: 6 | run_exports: 7 | - weak_pinned_package 2.0 8 | 9 | outputs: 10 | - name: test_has_run_exports_implicit_weak 11 | - name: weak_pinned_package 12 | version: '2.0' 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_run_exports_noarch/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: python 3 | version: 3.6 4 | 5 | build: 6 | number: 0 7 | string: with_run_exports 8 | run_exports: 9 | noarch: 10 | - python 11 | weak: 12 | - python 3.6 run_exports 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_env_warnings/bld.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_script_env_warnings/bld.bat -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_env_warnings/build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_script_env_warnings/build.sh -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_env_warnings/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_script_env_warnings 3 | version: '1.0' 4 | 5 | build: 6 | script_env: 7 | - CONDA_BUILD_PYTEST_SCRIPT_ENV_TEST_TOKEN 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_win_creates_exe/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: script_win_creates_exe 3 | version: 1.0 4 | 5 | source: 6 | path: . 7 | 8 | build: 9 | script: python setup.py install 10 | 11 | requirements: 12 | build: 13 | - python 14 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_win_creates_exe/setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | setup(name='foobar', 3 | version='1.0', 4 | scripts=['test-script'] 5 | ) 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_win_creates_exe/test-script: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import sys 3 | print(sys.version) 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_win_creates_exe_garbled/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: script_win_creates_exe 3 | version: 1.0 4 | 5 | source: 6 | path: . 7 | 8 | build: 9 | script: python setup.py install 10 | 11 | requirements: 12 | build: 13 | - python 14 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_script_win_creates_exe_garbled/setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | setup(name='foobar', 3 | version='1.0', 4 | scripts=['test-script'] 5 | ) 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_self_reference_run_exports/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test 3 | version: 1.0.0 4 | 5 | build: 6 | run_exports: 7 | - {{ pin_subpackage('test') }} 8 | 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_set_env_var_activate_build/bld.bat: -------------------------------------------------------------------------------- 1 | echo TEST_VAR is "%TEST_VAR%" (should be "1") 2 | if "%TEST_VAR%" == "" exit 1 3 | 4 | echo VS90COMNTOOLS is "%VS90COMNTOOLS%" (should be some path to vs) 5 | if "%VS90COMNTOOLS%" == "" exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_set_env_var_activate_build/build.sh: -------------------------------------------------------------------------------- 1 | if [ -z "$TEST_VAR" ]; then 2 | exit 1 3 | fi 4 | if [ -z "$CC" ]; then 5 | exit 1 6 | fi 7 | exit 0 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_set_env_var_activate_build/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | 2.7 3 | vc: 4 | 9 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_set_env_var_activate_build/install-output.bat: -------------------------------------------------------------------------------- 1 | echo VS90COMNTOOLS is "%VS90COMNTOOLS%" (should be some path to vs) 2 | if "%VS90COMNTOOLS%" == "" exit 1 3 | 4 | call "%PREFIX%\..\_build_env\Scripts\activate.bat" -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_set_env_var_no_activate_build/bld.bat: -------------------------------------------------------------------------------- 1 | if "%TEST_VAR%" == "" exit 0 2 | exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_set_env_var_no_activate_build/build.sh: -------------------------------------------------------------------------------- 1 | if [ -z "$TEST_VAR" ]; then 2 | exit 0 3 | fi 4 | exit 1 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_skip_detect_binary_files_with_prefix/bld.bat: -------------------------------------------------------------------------------- 1 | python %RECIPE_DIR%\write_binary_has_prefix.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_skip_detect_binary_files_with_prefix/build.sh: -------------------------------------------------------------------------------- 1 | python $RECIPE_DIR/write_binary_has_prefix.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_skip_detect_binary_files_with_prefix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-skip-detect-binary-files-with-prefix 3 | version: 1.0 4 | 5 | build: 6 | detect_binary_files_with_prefix: false 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_skip_detect_binary_files_with_prefix/run_test.sh: -------------------------------------------------------------------------------- 1 | cd $PREFIX 2 | cat binary-has-prefix 3 | cat binary-has-prefix | grep --invert-match $PREFIX 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_skip_detect_binary_files_with_prefix/write_binary_has_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = '%s/binary-has-prefix' % prefix 5 | 6 | if not os.path.isdir(prefix): 7 | os.makedirs(prefix) 8 | 9 | with open(fn, 'wb') as f: 10 | f.write(prefix.encode('utf-8') + b'\x00') 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_git_jinja2_relative_git_url/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: flex 3 | version: {{ environ.get('GIT_DESCRIBE_TAG', '.0') }} 4 | 5 | build: 6 | number: {{ environ.get('GIT_DESCRIBE_NUMBER', 0) }} 7 | string: {{ environ.get('GIT_DESCRIBE_NUMBER', '0') + '_JPMC' }} 8 | 9 | source: 10 | git_url: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_git_jinja2_relative_path/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: flex 3 | version: {{ environ.get('GIT_DESCRIBE_TAG', '0.0') }} 4 | 5 | build: 6 | number: {{ environ.get('GIT_DESCRIBE_NUMBER', 0) }} 7 | string: {{ environ.get('GIT_DESCRIBE_NUMBER', '0') + '_JPMC' }} 8 | 9 | source: 10 | path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_hg/bld.bat: -------------------------------------------------------------------------------- 1 | if not exist .hg exit 1 2 | hg id 3 | if errorlevel 1 exit 1 4 | for /f "delims=" %%i in ('hg id') do set hgid=%%i 5 | if errorlevel 1 exit 1 6 | echo "%hgid%" 7 | if not "%hgid%"=="6364a674cc15 test" exit 1 8 | if not exist test exit 1 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_hg/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .hg ] 5 | hg id 6 | [ "$(hg id)" = "6364a674cc15 test" ] 7 | [ -e test ] 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_hg/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-hg 3 | version: 1.0 4 | 5 | source: 6 | hg_url: https://bitbucket.org/asmeurer/conda-build-hg-test 7 | hg_tag: test 8 | 9 | requirements: 10 | build: 11 | # To test the conda_build version 12 | - python 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_hg_jinja2/bld.bat: -------------------------------------------------------------------------------- 1 | if not exist .hg exit 1 2 | hg id 3 | if errorlevel 1 exit 1 4 | for /f "delims=" %%i in ('hg id') do set hgid=%%i 5 | if errorlevel 1 exit 1 6 | echo "%hgid%" 7 | if not "%hgid%"=="6364a674cc15 test" exit 1 8 | if not exist test exit 1 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_hg_jinja2/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .hg ] 5 | hg id 6 | [ "$(hg id)" = "6364a674cc15 test" ] 7 | [ -e test ] 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_hg_jinja2/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-hg 3 | version: {{ HG_LATEST_TAG }} 4 | 5 | build: 6 | number: {{ HG_LATEST_TAG_DISTANCE }} 7 | 8 | source: 9 | hg_url: https://bitbucket.org/asmeurer/conda-build-hg-test 10 | hg_tag: test 11 | 12 | requirements: 13 | build: 14 | # To test the conda_build version 15 | - python 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_source_setuptools/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.21.0 ] 7 | echo "\$PKG_VERSION = $PKG_VERSION" 8 | [ "${PKG_VERSION}" = 1.21.0 ] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_stdlib_jinja2/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: stdlib-test 3 | version: 1.0 4 | 5 | requirements: 6 | host: 7 | - {{ stdlib('c') }} 8 | # - {{ stdlib('cxx') }} 9 | # - {{ stdlib('fortran') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_symlink_dirs_in_always_include_files/create_symlinks.sh: -------------------------------------------------------------------------------- 1 | mkdir -p $PREFIX/sysroot/lib64 2 | touch $PREFIX/sysroot/lib64/empty 3 | ln -s $PREFIX/sysroot/lib64 $PREFIX/sysroot/lib 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_sysroot_detection/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mkdir -p ${PREFIX}/bin 4 | 5 | # Delete the x86_64 libc.so.6 to make sure we find the powerpc libc.so.6 6 | rm -f ${BUILD_PREFIX}/x86_64-conda-linux-gnu/sysroot/lib64/libc.so.6 7 | 8 | ${CC} ${CFLAGS} main.c -o ${PREFIX}/bin/sysroot-detection 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_sysroot_detection/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | target_platform: 2 | - linux-ppc64le 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_sysroot_detection/main.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main() { 4 | return 0; 5 | } 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_sysroot_detection/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set version = "1" %} 2 | 3 | package: 4 | name: sysroot_detection 5 | version: {{ version }} 6 | 7 | source: 8 | path: main.c 9 | 10 | build: 11 | number: 0 12 | 13 | requirements: 14 | build: 15 | - {{ compiler('c') }} 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_dependencies/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-depedencies 3 | version: 1.0 4 | 5 | build: 6 | string: abc 7 | 8 | requirements: 9 | build: 10 | - python 11 | 12 | test: 13 | requires: 14 | - somenonexistentpackage1 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_downstreams/downstream/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_downstream_with_test_fail 3 | version: 1.0 4 | 5 | test: 6 | commands: 7 | - exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_downstreams/upstream/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_upstream_with_downstream_tests 3 | version: 1.0 4 | 5 | test: 6 | downstreams: 7 | - test_downstream_with_test_fail 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_early_abort/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: foobar 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - python 8 | 9 | test: 10 | commands: 11 | - python --version 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_early_abort/run_test.py: -------------------------------------------------------------------------------- 1 | print("Hello World") 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_failed_test_exits/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: foobar 3 | version: 1.0 4 | 5 | test: 6 | commands: 7 | - exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_long_test_prefix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_long_test_prefix 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - python 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_long_test_prefix/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | prefix = os.getenv('PREFIX') 3 | 4 | assert '_plac' in prefix 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_test_deps_when_not_include_test_files/conda-recipe/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: testprg 3 | version: "1.0" 4 | 5 | source: 6 | path: ../ 7 | 8 | test: 9 | requires: 10 | - pytest 11 | source_files: 12 | - test_files_folder 13 | files: 14 | - recipe_file 15 | 16 | commands: 17 | - pytest -h 18 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_test_deps_when_not_include_test_files/conda-recipe/recipe_file: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_test_test_deps_when_not_include_test_files/conda-recipe/recipe_file -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_test_deps_when_not_include_test_files/test_files_folder/text.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_test_test_deps_when_not_include_test_files/test_files_folder/text.txt -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_test_source_files/conda-recipe/recipe_file: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_test_test_source_files/conda-recipe/recipe_file -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_test_source_files/test_files_folder/text.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_test_test_source_files/test_files_folder/text.txt -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_uses_src_dir/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_uses_src_dir 3 | version: 1.0 4 | 5 | source: 6 | path: ../../test-package 7 | 8 | test: 9 | requires: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_test_uses_src_dir/run_test.py: -------------------------------------------------------------------------------- 1 | a = "SRC_DIR" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_xattr_copy/build.sh: -------------------------------------------------------------------------------- 1 | cp mode_400_file $PREFIX/ 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_xattr_copy/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda_build_test_xattr_copy 3 | version: 1.0 4 | 5 | source: 6 | path: . 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/_xattr_copy/mode_400_file: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/_xattr_copy/mode_400_file -------------------------------------------------------------------------------- /tests/test-recipes/metadata/always_include_files_glob/echo_file.bat: -------------------------------------------------------------------------------- 1 | echo it works > %PREFIX%\test.txt 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/always_include_files_glob/echo_file.sh: -------------------------------------------------------------------------------- 1 | echo "it works" > $PREFIX/test.txt 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/binary_has_prefix_files_list/bld.bat: -------------------------------------------------------------------------------- 1 | %PYTHON% %RECIPE_DIR%\write_binary_has_prefix.py binary-has-prefix 2 | %PYTHON% %RECIPE_DIR%\write_binary_has_prefix.py binary-has-prefix-ignored 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/binary_has_prefix_files_list/build.sh: -------------------------------------------------------------------------------- 1 | ${PYTHON} ${RECIPE_DIR}/write_binary_has_prefix.py binary-has-prefix 2 | ${PYTHON} ${RECIPE_DIR}/write_binary_has_prefix.py binary-has-prefix-ignored 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/binary_has_prefix_files_list/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-binary_has_prefix_files_list 3 | version: 1.0 4 | 5 | build: 6 | binary_has_prefix_files: 7 | - binary-has-prefix 8 | 9 | requirements: 10 | build: 11 | - python 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/binary_has_prefix_files_list/run_test.sh: -------------------------------------------------------------------------------- 1 | set -x 2 | 3 | cd $PREFIX 4 | cat binary-has-prefix 5 | cat binary-has-prefix | grep $PREFIX 6 | 7 | cat binary-has-prefix-ignored 8 | cat binary-has-prefix-ignored | grep --invert-match $PREFIX 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/binary_has_prefix_files_list/write_binary_has_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | prefix = os.environ['PREFIX'] 5 | fn = f'{prefix}/{sys.argv[1]}' 6 | 7 | if not os.path.isdir(prefix): 8 | os.makedirs(prefix) 9 | 10 | with open(fn, 'wb') as f: 11 | f.write(prefix.encode('utf-8') + b'\x00') 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/build_env/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-env 3 | version: 1.0 4 | 5 | build: 6 | script_env: 7 | - UNDEF_VAR 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/build_env/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | 4 | def main(): 5 | undef_var = os.environ.get("UNDEF_VAR") 6 | 7 | assert undef_var is None 8 | 9 | if __name__ == '__main__': 10 | main() 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/build_number/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-build-number 3 | version: 1.0 4 | 5 | build: 6 | number: 1 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/build_skip/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-skip 3 | version: 1.0 4 | 5 | build: 6 | skip: True 7 | 8 | requirements: 9 | run: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/build_skip/run_test.py: -------------------------------------------------------------------------------- 1 | raise ValueError("This shouldn't have built. We skipped it! :(") 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/build_string/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-build-string 3 | version: 1.0 4 | 5 | build: 6 | string: abc 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/cdt_linking/build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -x 4 | 5 | echo -e "#include \nint main() { glBegin(GL_TRIANGLES); glEnd(); return 0; }">gl.c 6 | ${CC} -o ${PREFIX}/bin/links-to-opengl-cdt -x c $(pkg-config --libs gl) -Wl,-rpath-link,${PREFIX}/lib gl.c 7 | find ${PREFIX} -name "libGL*" 8 | find ${PREFIX} -name "libc.so*" 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/ds_store_ignored/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/ds_store_ignored/.DS_Store -------------------------------------------------------------------------------- /tests/test-recipes/metadata/empty_patch_section/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: patch_section_empty 3 | version: 1.0 4 | 5 | source: 6 | path: . 7 | # the test here is that selectors can make this field empty. Make it empty here no matter what. 8 | # https://github.com/conda/conda-build/issues/1490 9 | patches: 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/empty_run_section/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_empty_run_deps 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | 8 | 9 | test: 10 | requires: 11 | commands: 12 | - echo 'test' 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/empty_sections/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: empty_sections 3 | version: 0.0 4 | 5 | source: 6 | path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | 8 | build: 9 | 10 | requirements: 11 | build: 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/empty_with_build_script/bld.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/empty_with_build_script/bld.bat -------------------------------------------------------------------------------- /tests/test-recipes/metadata/empty_with_build_script/build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/empty_with_build_script/build.sh -------------------------------------------------------------------------------- /tests/test-recipes/metadata/empty_with_build_script/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: empty_with_build_script 3 | version: 0.0 4 | 5 | source: 6 | path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | 8 | build: 9 | 10 | requirements: 11 | build: 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points/bld.bat: -------------------------------------------------------------------------------- 1 | :: cd %RECIPE_DIR%\..\..\test-package 2 | pip install . 3 | if errorlevel 1 exit 1 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points/build.sh: -------------------------------------------------------------------------------- 1 | # conda-build/tests/test-recipes/test-package 2 | # cd $RECIPE_DIR/../../test-package 3 | 4 | pip install . 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points/run_test.sh: -------------------------------------------------------------------------------- 1 | test-script-setup.py 2 | test-script-setup.py | grep "Test script setup\.py" 3 | 4 | test-script-manual 5 | test-script-manual | grep "Manual entry point" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points_have_prefix/README.md: -------------------------------------------------------------------------------- 1 | This is just a test program for conda-build. The only point is to have an entry point. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points_have_prefix/requirements.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points_have_prefix/src/entry_points_have_prefix/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/entry_points_have_prefix/src/entry_points_have_prefix/__init__.py -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points_have_prefix/src/entry_points_have_prefix/main.py: -------------------------------------------------------------------------------- 1 | def main(): 2 | print("entry_point called ok") 3 | 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/entry_points_have_prefix_noarch_has_prefix_files/run_test.bat: -------------------------------------------------------------------------------- 1 | :: This one is noarch: python so conda creates the entry points. 2 | %CONDA_PREFIX%\Scripts\test_entry_points_have_prefix_CASED.exe 3 | if %ErrorLevel% NEQ 0 exit /b 1 4 | exit /b 0 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/extra_freeform_metadata/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-extra-metadata 3 | version: 1.0 4 | 5 | test: 6 | requires: 7 | - pyyaml 8 | 9 | extra: 10 | custom: metadata 11 | however: {we: want} 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/fix_permissions/README: -------------------------------------------------------------------------------- 1 | Simple package to test fix_permissions. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/fix_permissions/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: fix_permissions 3 | version: "1.0" 4 | 5 | source: 6 | path: . 7 | 8 | build: 9 | script: 10 | - cp -rf "${SRC_DIR}"/* "${PREFIX}"/ # [unix] 11 | - xcopy /s %SRC_DIR% %PREFIX% # [win] 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/fix_permissions/sub/lacks_grp_other_read_perms: -------------------------------------------------------------------------------- 1 | no_one_can_read 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/float_misinterpretation/meta.yaml: -------------------------------------------------------------------------------- 1 | # test ensuring that version numbers that look like floating point numbers are kept as strings 2 | 3 | package: 4 | name: test_floating_point_version 5 | version: 1.10 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/float_misinterpretation/run_test.bat: -------------------------------------------------------------------------------- 1 | if not "%PKG_VERSION%" == "1.10" ( 2 | echo PKG_VERSION is %PKG_VERSION%; should be 1.10 3 | exit 1 4 | ) -------------------------------------------------------------------------------- /tests/test-recipes/metadata/float_misinterpretation/run_test.sh: -------------------------------------------------------------------------------- 1 | if [ "$PKG_VERSION" != "1.10" ]; then 2 | echo "PKG_VERSION is $PKG_VERSION, but should be 1.10" 3 | exit 1 4 | fi 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/gh-5342/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set name = "gh-5342" %} 2 | 3 | package: 4 | name: {{ name }} 5 | version: 1.0 6 | 7 | outputs: 8 | - name: {{ name }} 9 | build: 10 | skip: true 11 | 12 | - name: {{ name }}-dev 13 | build: 14 | files: 15 | - file 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/has_prefix_files/build.sh: -------------------------------------------------------------------------------- 1 | echo $PREFIX > $PREFIX/unlisted-text-prefix 2 | echo /opt/anaconda1anaconda2anaconda3 > $PREFIX/has-prefix 3 | python $RECIPE_DIR/write_binary_has_prefix.py 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/has_prefix_files/write_backward_slash_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = os.path.join(prefix, 'backward-slash-prefix') 5 | 6 | with open(fn, 'w') as f: 7 | f.write(prefix.replace('/', '\\')) 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/has_prefix_files/write_binary_has_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = os.path.join(prefix, 'binary-has-prefix') 5 | 6 | with open(fn, 'wb') as f: 7 | f.write(prefix.encode('utf-8') + b'\x00') 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/has_prefix_files/write_escaped_backward_slash_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = os.path.join(prefix, 'escaped-backward-slash-prefix') 5 | 6 | with open(fn, 'w') as f: 7 | f.write(prefix.replace('\\', '\\\\').replace("/", "\\\\")) 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/has_prefix_files/write_forward_slash_prefix.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | prefix = os.environ['PREFIX'] 4 | fn = os.path.join(prefix, 'forward-slash-prefix') 5 | 6 | with open(fn, 'w') as f: 7 | f.write(prefix.replace('\\', '/')) 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel/bld.bat: -------------------------------------------------------------------------------- 1 | if not exist "%SRC_DIR%\mypkg\awesomeheader.h" exit 1 2 | echo "found source files OK" 3 | exit 0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel/build.sh: -------------------------------------------------------------------------------- 1 | find $SRC_DIR -type f 2 | if [[ ! -f "$SRC_DIR/mypkg/awesomeheader.h" ]]; then 3 | exit 1 4 | fi 5 | echo "found source files OK" 6 | exit 0 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: mypkg 3 | version: 1.0.0 4 | 5 | source: 6 | url: mypkg.zip 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel/mypkg.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/hoist_source_multilevel/mypkg.zip -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel_shadow/bld.bat: -------------------------------------------------------------------------------- 1 | if not exist "%SRC_DIR%\mypkg\awesomeheader.h" exit 1 2 | if not exist "%SRC_DIR%\mypkg\mypkg" exit 1 3 | echo "found source files OK" 4 | exit 0 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel_shadow/build.sh: -------------------------------------------------------------------------------- 1 | find $SRC_DIR -type f 2 | if [[ ! -f "$SRC_DIR/mypkg/awesomeheader.h" ]]; then 3 | exit 1 4 | fi 5 | 6 | # when a file shadows the parent directory name 7 | if [[ ! -f "$SRC_DIR/mypkg/mypkg" ]]; then 8 | exit 1 9 | fi 10 | 11 | echo "found source files OK" 12 | exit 0 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel_shadow/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: mypkg 3 | version: 1.0.0 4 | 5 | source: 6 | url: mypkg.zip 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/hoist_source_multilevel_shadow/mypkg.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/hoist_source_multilevel_shadow/mypkg.zip -------------------------------------------------------------------------------- /tests/test-recipes/metadata/ignore_run_exports_from_substr/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: pkg 3 | version: 1.0.0 4 | 5 | build: 6 | number: 0 7 | ignore_run_exports_from: 8 | - i-like-python 9 | 10 | requirements: 11 | host: 12 | - conda-forge::python 13 | run: 14 | - numpy 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja2/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-jinja2-in-recipe 3 | version: 1.0 4 | 5 | build: 6 | number: 0 7 | 8 | requirements: 9 | build: 10 | - jinja2 11 | - python 12 | 13 | test: 14 | commands: 15 | - echo 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja2_build_str/bld.bat: -------------------------------------------------------------------------------- 1 | set PATH 2 | 3 | rem check that GIT_* tags are present 4 | for %%i in (GIT_DESCRIBE_TAG GIT_DESCRIBE_NUMBER GIT_DESCRIBE_HASH GIT_FULL_HASH) DO ( 5 | if defined %%i ( 6 | echo %%i 7 | ) else ( 8 | exit 1 9 | ) 10 | ) 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja2_build_str/build.sh: -------------------------------------------------------------------------------- 1 | # check if GIT_* variables are defined 2 | for i in GIT_DESCRIBE_TAG GIT_DESCRIBE_NUMBER GIT_DESCRIBE_HASH GIT_FULL_HASH 3 | do 4 | if [ -n "eval $i" ]; then 5 | eval echo \$$i 6 | else 7 | exit 1 8 | fi 9 | done 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja2_build_str/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-git-jinja2-2 3 | version: 1.0 4 | 5 | source: 6 | path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | 8 | build: 9 | string: {{ PKG_BUILDNUM }}_g{{ GIT_FULL_HASH[:7] }} 10 | 11 | requirements: 12 | build: 13 | # To test the conda_build version 14 | - python 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja_load_setuptools/build.sh: -------------------------------------------------------------------------------- 1 | python setup.py install 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja_load_toml_from_source/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set pyproject = load_file_data("pyproject.toml") %} 2 | 3 | package: 4 | name: example 5 | version: {{ pyproject['project']['version'] }} 6 | 7 | source: 8 | path: ./src 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja_load_toml_from_source/src/pyproject.toml: -------------------------------------------------------------------------------- 1 | [project] 2 | version = "1.test" 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/jinja_load_yaml/environment.yml: -------------------------------------------------------------------------------- 1 | name: foo 2 | channels: 3 | - defaults 4 | dependencies: 5 | - python 6 | - tqdm 7 | prefix: /home/abraham/.conda/envs/foo 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.7z: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.7z -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.tar.bz2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.tar.bz2 -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.tar.gz -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.tar.lzma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.tar.lzma -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.tar.xz -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.tar.z: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.tar.z -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.tgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.tgz -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.whl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.whl -------------------------------------------------------------------------------- /tests/test-recipes/metadata/libarchive/test.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/libarchive/test.zip -------------------------------------------------------------------------------- /tests/test-recipes/metadata/multiple_sources/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_multiple_sources 3 | version: 1.0 4 | 5 | source: 6 | - folder: 'f1' 7 | url: ../../../archives/a.tar.bz2 8 | - folder: 'f2' 9 | url: ../../../archives/b.tar.bz2 10 | 11 | about: 12 | license_file: 13 | - f1/a 14 | - f2/b 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/nested_prefix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_nested_prefix_structure 3 | version: 1.0 4 | 5 | build: 6 | # don't test this on windows. The path length issue is too annoying. 7 | skip: True # [win] 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/nested_recipe/build_number/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-nested-recipe 3 | version: 1.0 4 | 5 | build: 6 | number: 1 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/no_link/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | f = os.path.join(os.getenv('PREFIX'), 'no_link_file.example') 3 | assert os.path.isfile(f), "File does not exist" 4 | assert os.stat(f).st_nlink <= 1, f"File is hard-linked where it should not be (link count = {os.stat(f).st_nlink})" 5 | assert not os.path.islink(f), "File is a symlink where it should not be" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/noarch_generic/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: noarch_generic_test_package 3 | version: "1.0" 4 | 5 | build: 6 | noarch: generic 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_build/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-numpy-build 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | - numpy 9 | - nomkl # [unix] 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_build/run_test.bat: -------------------------------------------------------------------------------- 1 | :: show list 2 | conda list -p "%PREFIX%" --canonical 3 | if errorlevel 1 exit 1 4 | 5 | :: grep for package 6 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-numpy-build-1.0-0" 7 | if errorlevel 1 exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_build/run_test.sh: -------------------------------------------------------------------------------- 1 | # show list 2 | conda list -p "$PREFIX" --canonical 3 | 4 | # grep for package 5 | conda list -p "$PREFIX" --canonical | grep "conda-build-test-numpy-build-1.0-0" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_build_run/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-numpy-build-run 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | - numpy 9 | - nomkl # [unix] 10 | run: 11 | - python 12 | - numpy 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_build_run/run_test.bat: -------------------------------------------------------------------------------- 1 | :: show list 2 | conda list -p "%PREFIX%" --canonical 3 | if errorlevel 1 exit 1 4 | 5 | :: grep for package 6 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-numpy-build-run-1.0-py.*_0" 7 | if errorlevel 1 exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_build_run/run_test.sh: -------------------------------------------------------------------------------- 1 | # show list 2 | conda list -p $PREFIX --canonical 3 | 4 | # grep for package 5 | conda list -p $PREFIX --canonical | grep "conda-build-test-numpy-build-run-1.0-py.*_0" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_run/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-numpy-run 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - python 8 | - numpy 9 | - nomkl # [unix] 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_run/run_test.bat: -------------------------------------------------------------------------------- 1 | conda list -p "%PREFIX%" --canonical 2 | if errorlevel 1 exit 1 3 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-numpy-run-1\.0-0" 4 | if errorlevel 1 exit 1 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/numpy_run/run_test.sh: -------------------------------------------------------------------------------- 1 | conda list -p $PREFIX --canonical 2 | # Test the build string. Should contian NumPy, but not the version 3 | conda list -p $PREFIX --canonical | grep "conda-build-test-numpy-run-1\.0-0" 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/osx_is_app/build.sh: -------------------------------------------------------------------------------- 1 | # conda-build/tests/test-recipes/test-package 2 | cd $RECIPE_DIR/../../test-package 3 | 4 | python setup.py install 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/osx_is_app/run_test.sh: -------------------------------------------------------------------------------- 1 | test-script-setup.py 2 | test-script-setup.py | grep "Test script setup\.py" 3 | cat $PREFIX/bin/test-script-setup.py | grep "pythonw" 4 | 5 | test-script-manual 6 | test-script-manual | grep "Manual entry point" 7 | cat $PREFIX/bin/test-script-manual | grep "pythonw" 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/outputs_overwrite_base_file/install.bat: -------------------------------------------------------------------------------- 1 | :: Always output 4 characters to properly test even if "SafetyError: ... incorrect size." is not triggered. 2 | < nul set /p="%PKG_NAME:~0,4%" > "%PREFIX%\file" & call; 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/outputs_overwrite_base_file/install.sh: -------------------------------------------------------------------------------- 1 | ## Always output 4 characters to properly test even if "SafetyError: ... incorrect size." is not triggered. 2 | printf '%.4s' "${PKG_NAME}" > "${PREFIX}/file" 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/patch-read-only/0001-Patch-with-levels-to-strip.patch: -------------------------------------------------------------------------------- 1 | diff --git a/tests/test-recipes/metadata/patch-read-only/somefile b/tests/test-recipes/metadata/patch-read-only/somefile 2 | index 8baef1b..cd470e6 100444 3 | --- a/tests/test-recipes/metadata/patch-read-only/somefile 4 | +++ b/tests/test-recipes/metadata/patch-read-only/somefile 5 | @@ -1 +1 @@ 6 | -abc 7 | +xyz 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/patch-read-only/0002-Patch-without-additional-levels.patch: -------------------------------------------------------------------------------- 1 | diff --git a/somefile b/somefile 2 | index cd470e6..190a180 100444 3 | --- a/somefile 4 | +++ b/somefile 5 | @@ -1 +1 @@ 6 | -xyz 7 | +123 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/patch/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_patch 3 | version: 1.0 4 | 5 | source: 6 | path: . 7 | patches: 8 | - test.patch 9 | 10 | build: 11 | script: | 12 | grep -qxF 123 somefile # [not win] 13 | findstr "^123" somefile # [win] 14 | if errorlevel 1 exit 1 # [win] 15 | 16 | requirements: 17 | build: 18 | - m2-patch # [win] 19 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/patch/somefile: -------------------------------------------------------------------------------- 1 | abc 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/patch/test.patch: -------------------------------------------------------------------------------- 1 | diff --git a/tests/test-recipes/metadata/patch/somefile b/tests/test-recipes/metadata/patch/somefile 2 | index 8baef1b..190a180 100644 3 | --- a/tests/test-recipes/metadata/patch/somefile 4 | +++ b/tests/test-recipes/metadata/patch/somefile 5 | @@ -1 +1 @@ 6 | -abc 7 | +123 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/preserve_egg_dir/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_preserve_egg_dir 3 | version: 1.0 4 | 5 | source: 6 | path: ../../test-package 7 | 8 | build: 9 | preserve_egg_dir: True 10 | script: python setup.py install 11 | 12 | requirements: 13 | build: 14 | - python 15 | - setuptools 16 | run: 17 | - python 18 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build/bld.bat: -------------------------------------------------------------------------------- 1 | IF NOT DEFINED STDLIB_DIR exit 1 2 | IF NOT DEFINED SP_DIR exit 1 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-python-build 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build/run_test.bat: -------------------------------------------------------------------------------- 1 | conda list -p "%PREFIX%" --canonical 2 | if errorlevel 1 exit 1 3 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-python-build-1.0-0" 4 | if errorlevel 1 exit 1 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build/run_test.sh: -------------------------------------------------------------------------------- 1 | conda list -p $PREFIX --canonical 2 | # Test the build string. Should not contain Python 3 | conda list -p $PREFIX --canonical | grep "conda-build-test-python-build-1.0-0" 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build_run/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-python-build-run 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | run: 9 | - python 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build_run/run_test.bat: -------------------------------------------------------------------------------- 1 | :: show list 2 | conda list -p "%PREFIX%" --canonical 3 | if errorlevel 1 exit 1 4 | 5 | :: grep for package 6 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-python-build-run-1.0-py.*_0" 7 | if errorlevel 1 exit 1 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_build_run/run_test.sh: -------------------------------------------------------------------------------- 1 | # show list 2 | conda list -p "$PREFIX" --canonical 3 | 4 | # grep for package 5 | conda list -p "$PREFIX" --canonical | grep "conda-build-test-python-build-run-1.0-py.*_0" 6 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_env_defined/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_python_env_var_present 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | run: 9 | - python 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_run/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-python-run 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - python 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_run/run_test.bat: -------------------------------------------------------------------------------- 1 | conda list -p "%PREFIX%" --canonical 2 | if errorlevel 1 exit 1 3 | conda list -p "%PREFIX%" --canonical | grep "conda-build-test-python-run-1\.0-0" 4 | if errorlevel 1 exit 1 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/python_run/run_test.sh: -------------------------------------------------------------------------------- 1 | type conda 2 | conda list -p $PREFIX --canonical 3 | # Test the build string. Should contain Python 4 | conda list -p $PREFIX --canonical | grep "conda-build-test-python-run-1\.0-0" 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/r_test_import/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: r-test_conda_build_r_tests 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - r-base 8 | 9 | tests: 10 | imports: 11 | - r-boot 12 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/r_test_import/run_test.r: -------------------------------------------------------------------------------- 1 | print("weee") -------------------------------------------------------------------------------- /tests/test-recipes/metadata/relative_url_download/bld.bat: -------------------------------------------------------------------------------- 1 | MOVE test %PREFIX%\test -------------------------------------------------------------------------------- /tests/test-recipes/metadata/relative_url_download/build.sh: -------------------------------------------------------------------------------- 1 | cp test $PREFIX 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/relative_url_download/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_relative_url 3 | version: 1.0 4 | 5 | source: 6 | url: ./test.tar.gz 7 | sha256: a904c0efb2b8a6a7837369eb1cdce63d7f34beda851ba00f55c3e724ce5df422 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/relative_url_download/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | assert os.path.isfile(os.path.join(os.getenv('PREFIX'), 'test')) 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/relative_url_download/test.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/metadata/relative_url_download/test.tar.gz -------------------------------------------------------------------------------- /tests/test-recipes/metadata/selectors_in_imported_templates/build.sh: -------------------------------------------------------------------------------- 1 | # The selectors in variables.jinja make build_num == 2 2 | [ "${PKG_BUILDNUM}" == "2" ] 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/selectors_in_imported_templates/meta.yaml: -------------------------------------------------------------------------------- 1 | {% import 'variables.jinja' as variables %} 2 | package: 3 | name: selectors-in-imported-templates 4 | version: 1.0 5 | 6 | build: 7 | number: {{ variables.build_num }} 8 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/selectors_in_imported_templates/variables.jinja: -------------------------------------------------------------------------------- 1 | 2 | {% set build_num = 1 %} # [False] 3 | {% set build_num = 2 %} # [True] 4 | {% set build_num = 3 %} # [False] 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/skip_compile_pyc/README: -------------------------------------------------------------------------------- 1 | Simple package to test skip_compile_pyc package building. 2 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/skip_compile_pyc/compile_pyc.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/skip_compile_pyc/skip_compile_pyc.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/skip_compile_pyc/sub/compile_pyc.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/skip_compile_pyc/sub/skip_compile_pyc.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_git/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-git 3 | version: 1.0 4 | 5 | source: 6 | git_url: https://github.com/conda/conda_build_test_recipe 7 | git_tag: 1.20.2 8 | 9 | requirements: 10 | build: 11 | # To test the conda_build version 12 | - python 13 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_git_am/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-git 3 | version: 1.0 4 | 5 | source: 6 | git_url: https://github.com/conda/conda_build_test_recipe 7 | git_tag: 1.20.2 8 | patches: 9 | - 0001-Extra-commit-ensuring-verify_git_repo-ignores-it.patch 10 | 11 | requirements: 12 | build: 13 | # To test the conda_build version 14 | - python 15 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_git_jinja2/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.20.2 ] 7 | echo "\$PKG_VERSION = $PKG_VERSION" 8 | [ "${PKG_VERSION}" = 1.20.2 ] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_multiple/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-multiple 3 | version: 1.0 4 | 5 | source: 6 | - path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | 8 | - git_url: https://github.com/conda/conda_build_test_recipe 9 | git_tag: 1.20.2 10 | folder: second-source 11 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_path/bld.bat: -------------------------------------------------------------------------------- 1 | rem check that GIT_* tags are present 2 | for %%i in (GIT_DESCRIBE_TAG GIT_DESCRIBE_NUMBER GIT_DESCRIBE_HASH GIT_FULL_HASH) DO ( 3 | if defined %%i ( 4 | echo %%i 5 | ) else ( 6 | exit 1 7 | ) 8 | ) 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_path/build.sh: -------------------------------------------------------------------------------- 1 | # check if GIT_* variables are defined 2 | for i in GIT_DESCRIBE_TAG GIT_DESCRIBE_NUMBER GIT_DESCRIBE_HASH GIT_FULL_HASH 3 | do 4 | if [ -n "eval $i" ]; then 5 | eval echo \$$i 6 | else 7 | exit 1 8 | fi 9 | done 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_path/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-path 3 | version: 1.0 4 | 5 | source: 6 | path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_regex/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.21.0 ] 7 | # This looks weird, but it reflects accurately the meta.yaml in conda_build_test_recipe at 1.21.0 tag 8 | echo "\$PKG_VERSION = $PKG_VERSION" 9 | [ "${PKG_VERSION}" = 1.20.2 ] 10 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_regex_from_recipe_dir/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.21.0 ] 7 | echo "\$PKG_VERSION = $PKG_VERSION" 8 | [ "${PKG_VERSION}" = 1.21.0 ] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_setup_py_data/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.22.0 ] 7 | echo "\$PKG_VERSION = $PKG_VERSION" 8 | [ "${PKG_VERSION}" = 1.22.0 ] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_setup_py_data_subdir/build.sh: -------------------------------------------------------------------------------- 1 | # We test the environment variables in a different recipe 2 | 3 | # Ensure we are in a git repo 4 | [ -d .git ] 5 | git describe 6 | [ "$(git describe)" = 1.21.0 ] 7 | echo "\$PKG_VERSION = $PKG_VERSION" 8 | [ "${PKG_VERSION}" = 1.21.0 ] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_url/bld.bat: -------------------------------------------------------------------------------- 1 | cd constructor-tar-gz 2 | set PYTHONPATH=. 3 | python -c "import constructor; assert constructor.__version__ == '3.0.0'" 4 | if errorlevel 1 exit 1 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/source_url/build.sh: -------------------------------------------------------------------------------- 1 | cd constructor-tar-gz 2 | # Not sure how versioneer comes up with this version 3 | PYTHONPATH=. python -c "import constructor; assert constructor.__version__ == '3.0.0'" 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/symlinks/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_symlinks 3 | version: 1.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/transitive_subpackage/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | openssl: 2 | - 1.0.2 3 | python: 4 | - 3.6 5 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/transitive_subpackage/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: foo_split 3 | version: 1.0.0 4 | 5 | outputs: 6 | - name: libfoo 7 | requirements: 8 | host: 9 | - openssl 10 | 11 | - name: foo 12 | requirements: 13 | host: 14 | - python 15 | - {{ pin_subpackage('libfoo', exact=True) }} 16 | -------------------------------------------------------------------------------- /tests/test-recipes/metadata/unknown_selector/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: unknown_selector_test 3 | version: 1.0.0 4 | 5 | build: 6 | skip: True #[unknown_selector] -------------------------------------------------------------------------------- /tests/test-recipes/skip/source_svn/bld.bat: -------------------------------------------------------------------------------- 1 | if not exist trunk exit 1 2 | cd trunk 3 | svn info 4 | if errorlevel 1 exit 1 5 | for /f "delims=" %%i in ('svn info ^| findstr "Revision"') do set svnrev=%%i 6 | if errorlevel 1 exit 1 7 | echo %svnrev% 8 | if not "%svnrev%"=="Revision: 1157" exit 1 9 | -------------------------------------------------------------------------------- /tests/test-recipes/skip/source_svn/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-source-svn 3 | version: 1.0 4 | 5 | source: 6 | svn_url: https://github.com/conda/conda-build 7 | svn_rev: 1157 # Corresponding to tag 1.8.1 8 | 9 | requirements: 10 | build: 11 | # To test the conda_build version 12 | - python 13 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_about_metadata/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: subpackage_has_about_metadata 3 | version: 1.0 4 | 5 | outputs: 6 | - name: abc 7 | about: 8 | summary: weee 9 | - name: def 10 | about: 11 | home: http://not.a.url 12 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_alternate_type_wheel/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: split_packages_alternate_type_wheel 3 | version: 1.0 4 | 5 | source: 6 | path: {{ environ.get('CONDA_BUILD_TEST_RECIPE_PATH') }} 7 | 8 | outputs: 9 | - type: wheel 10 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_build_script_missing_var/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_build_script_in_output 3 | version: 1.0 4 | 5 | outputs: 6 | - name: test_1 7 | build: 8 | script_env: 9 | - TEST_FN_DOESNT_EXIST 10 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_build_string_with_variant/build_clangdev.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/_build_string_with_variant/build_clangdev.bat -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_build_string_with_variant/build_clangdev.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/_build_string_with_variant/build_clangdev.sh -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_build_string_with_variant/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | clang_variant: 2 | - default 3 | - cling 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_circular_deps_cross/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | target_platform: 2 | - linux-32 3 | cross_target_platform: 4 | - linux-32 5 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_empty_outputs_requires_package_version/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: _empty_outputs_requires_package_version 3 | # when there are not outputs, package/version is required 4 | # version: 0 5 | 6 | outputs: 7 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_entry_points/install-pkg1.sh: -------------------------------------------------------------------------------- 1 | set -ex 2 | env 3 | cat < $SP_DIR/pkg1.py 4 | def main(): 5 | print("Hello pkg1") 6 | EOF 7 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_entry_points/install-pkg2.sh: -------------------------------------------------------------------------------- 1 | set -ex 2 | cat < $SP_DIR/pkg2.py 3 | def main(): 4 | print("Hello pkg2") 5 | EOF 6 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_entry_points/test-pkg1.py: -------------------------------------------------------------------------------- 1 | import os 2 | import subprocess 3 | import sys 4 | import pkg1 5 | pkg1.main() 6 | bindir = 'Scripts' if sys.platform == 'win32' else 'bin' 7 | print("attempting to call ", os.path.join(os.getenv('PREFIX'), bindir, 'pkg1')) 8 | subprocess.check_call([os.path.join(os.getenv('PREFIX'), bindir, 'pkg1')]) 9 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_entry_points/test-pkg2.py: -------------------------------------------------------------------------------- 1 | import os 2 | import subprocess 3 | import sys 4 | import pkg2 5 | pkg2.main() 6 | bindir = 'Scripts' if sys.platform == 'win32' else 'bin' 7 | print("attempting to call ", os.path.join(os.getenv('PREFIX'), bindir, 'pkg2')) 8 | subprocess.check_call([os.path.join(os.getenv('PREFIX'), bindir, 'pkg2')]) 9 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_extra_metadata/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: subpackage_has_about_metadata 3 | version: 1.0 4 | 5 | outputs: 6 | - name: abc 7 | extra: 8 | enthusiasm: weee 9 | - name: def 10 | extra: 11 | dummy_url: http://not.a.url 12 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_hash_inputs/build.sh: -------------------------------------------------------------------------------- 1 | echo "building OK" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_hash_inputs/install-script.sh: -------------------------------------------------------------------------------- 1 | echo "installed OK" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_hash_inputs/run_test.py: -------------------------------------------------------------------------------- 1 | print("I should only exist in the top-level package, not the subpackage.") 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_hash_inputs/test-script.bat: -------------------------------------------------------------------------------- 1 | echo "tested OK" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_hash_inputs/test-script.sh: -------------------------------------------------------------------------------- 1 | echo "tested OK" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_inherit_build_number/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | maybe: 2 | - True 3 | - False 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_intradep_with_templated_output_name/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | test_var: abc 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_intradependencies/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | DEP1: 2 | - 2.7.16 3 | - 3.7.3 4 | DEP2: 5 | - 3.5.1 6 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_intradependencies_toplevel_circular/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | cross_target_platform: linux-64 2 | gcc: 7.1 3 | binutils: 2.28 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_invalid_script_extension/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: split_packages_unrecognized_script_type 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - my_script_subpackage_unrecognized 8 | 9 | outputs: 10 | # what happens when we have an unrecognized script type? 11 | - name: my_script_subpackage_unrecognized 12 | script: subpackage3.unrecognized 13 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_invalid_script_extension/subpackage3.unrecognized: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/_invalid_script_extension/subpackage3.unrecognized -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_multi_outputs_without_package_version/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: _multi_outputs_without_package_version 3 | # when there are outputs, package/version is not required 4 | # version: 0 5 | 6 | outputs: 7 | - name: a 8 | version: 1 9 | - name: b 10 | version: 2 11 | - name: c 12 | version: 3 13 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_order/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: toplevel-ab 3 | version: 1 4 | 5 | outputs: 6 | - name: a 7 | version: 1 8 | - name: b 9 | version: 1 10 | requirements: 11 | host: 12 | - {{ pin_subpackage('a', min_pin='x.x.x.x.x.x.x.x', max_pin='x.x.x.x.x.x.x.x') }} 13 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_order_bad/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: toplevel-dc 3 | version: 1 4 | outputs: 5 | - name: d 6 | version: 1 7 | - name: c 8 | version: 1 9 | requirements: 10 | host: 11 | - {{ pin_subpackage('d', min_pin='x.x.x.x.x.x.x.x', max_pin='x.x.x.x.x.x.x.x') }} 12 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_output_activation/install_activated.sh: -------------------------------------------------------------------------------- 1 | if [ -z ${ACTIVATION_VAR+x} ]; then echo "not activated, but we should be" && exit 1; fi 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_output_activation/install_not_activated.sh: -------------------------------------------------------------------------------- 1 | if [ ! -z ${ACTIVATION_VAR+x} ]; then echo "activated, but we should not be" && exit 1; fi 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_output_specific_subdir/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_output_specific_subdir 3 | version: 1.0 4 | 5 | outputs: 6 | - name: default_subdir 7 | - name: custom_subdir 8 | target: linux-aarch64 9 | # one package after to show that the customization is local to the one package 10 | - name: default_subdir_2 11 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_output_test_script/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_output_test_script 3 | version: 1.0 4 | 5 | outputs: 6 | - name: output_2 7 | test: 8 | script: run_output_2_test.py 9 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_output_test_script/run_output_2_test.py: -------------------------------------------------------------------------------- 1 | import sys 2 | sys.exit(1) 3 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_per_output_tests/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_per_output_tests 3 | version: 1.0 4 | 5 | test: 6 | commands: 7 | - echo "top-level test" 8 | 9 | outputs: 10 | # top-level recipe - ensure that its tests also get run 11 | - name: test_per_output_tests 12 | - name: output_1 13 | test: 14 | commands: 15 | - echo "output-level test" 16 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_pin_compatible_in_output/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | somevar: 2 | - abc 3 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_rm_rf_stays_within_prefix/bin/lsfm: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | print("yeehaw") 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_rm_rf_stays_within_prefix/conda/run_test.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | 4 | if sys.platform != 'win32': 5 | assert os.path.isfile(os.path.join(os.getenv("PREFIX"), 'bin', 'lsfm')) 6 | else: 7 | assert os.path.isfile(os.path.join(os.getenv("PREFIX"), 'Scripts', 'lsfm.exe')) 8 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_rm_rf_stays_within_prefix/lsfm/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/_rm_rf_stays_within_prefix/lsfm/__init__.py -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_rm_rf_stays_within_prefix/setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | from os.path import join 3 | 4 | setup(name='lsfm', 5 | version="1.0", 6 | py_modules=['lsfm'], 7 | scripts=[join('bin', 'lsfm')], 8 | ) 9 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_script_and_files/bld.bat: -------------------------------------------------------------------------------- 1 | echo "weee" > %PREFIX%\foo 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_script_and_files/build.sh: -------------------------------------------------------------------------------- 1 | echo "weee" > $PREFIX/foo 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_script_and_files/my_script.bat: -------------------------------------------------------------------------------- 1 | echo "weee" > %PREFIX%\bar 2 | echo "weee" > %PREFIX%\baz 3 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_script_and_files/my_script.sh: -------------------------------------------------------------------------------- 1 | echo "weee" > $PREFIX/bar 2 | echo "weee" > $PREFIX/baz 3 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_strong_run_exports_applies_from_build_to_host/build.sh: -------------------------------------------------------------------------------- 1 | stat $PREFIX/lib/libc++.dylib 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_strong_run_exports_applies_from_build_to_host/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test 3 | version: 1.0.0 4 | 5 | requirements: 6 | host: 7 | - make 8 | build: 9 | - {{ compiler('cxx') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_test-file-hash/build.sh: -------------------------------------------------------------------------------- 1 | echo "int main() {}" > main.c 2 | mkdir -p $PREFIX/bin 3 | $CC main.c -o $PREFIX/bin/_file_hash 4 | 5 | echo "int foo() {return 2;}" > foo.c 6 | echo "int foo(); int bar() {return foo()*2;}" > bar.c 7 | $CC -shared foo.c -o libupstream.so 8 | $CC -shared bar.c -o libdownstream.so -L$PWD -lupstream '-Wl,-rpath,$ORIGIN' 9 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_test-file-hash/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 3.10 3 | - 3.11 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_test-file-hash/install-py.sh: -------------------------------------------------------------------------------- 1 | mkdir -p $SP_DIR/_py_file_hash 2 | cp libdownstream.so $SP_DIR/_py_file_hash/ 3 | cp libupstream.so $SP_DIR/_py_file_hash/ 4 | 5 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_variant_override/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 3.8 3 | - 3.9 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_variant_override/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_variant_override 3 | version: 1.0 4 | 5 | outputs: 6 | # this one should not loop over the pythons in the variant config 7 | - name: test_subpkg_no_python 8 | # this one should loop over the pythons in the variant config 9 | - name: test_subpkg 10 | requirements: 11 | - python {{ python }} 12 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/_xgboost_example/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | r_version: 5 | - 3.5.0 6 | r_implementation: 7 | - 'r-base' 8 | - 'mro-base' # [not osx] 9 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/compose_run_requirements_from_subpackages/run_test.bat: -------------------------------------------------------------------------------- 1 | if not exist %PREFIX%\Library\bin\zlib.dll exit 1 2 | if not exist %PREFIX%\Library\bin\libjpeg.dll exit 1 -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/compose_run_requirements_from_subpackages/run_test.sh: -------------------------------------------------------------------------------- 1 | set -ex 2 | 3 | if [ "$(uname)" == "Darwin" ]; then 4 | test -e $PREFIX/lib/libz.dylib 5 | test -e $PREFIX/lib/libjpeg.dylib 6 | else 7 | test -e $PREFIX/lib/libz.so 8 | test -e $PREFIX/lib/libjpeg.so 9 | fi 10 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/jinja2_subpackage_name/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: split_packages_jinja2_subpackage_name 3 | version: 1.0 4 | 5 | requirements: 6 | run: 7 | - {{ pin_subpackage( PKG_NAME ~ "_subpackage") }} 8 | 9 | outputs: 10 | - name: {{ PKG_NAME }}_subpackage 11 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/python_test_dep/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 3.8 3 | - 3.9 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/python_test_dep/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_python_in_test_specs 3 | version: 1.0 4 | 5 | test: 6 | requires: 7 | - python 8 | - numpy 9 | - nomkl # [unix] 10 | 11 | outputs: 12 | - name: py_dep_1 13 | requirements: 14 | - python {{ python }} 15 | script: test_thingie.py 16 | test: 17 | script: test_thingie.py 18 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/python_test_dep/test_thingie.py: -------------------------------------------------------------------------------- 1 | print('weeee') 2 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/script_autodetect_interpreter/subpackage2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo "weeee" > $PREFIX/subpackage_file_2 3 | 4 | echo "$PREFIX/subpackage_file_2" > $PREFIX/subpackage2.txt 5 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/script_bash_windows/subpackage1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | 4 | function cygpath() 5 | { 6 | if type -P cygpath.exe > /dev/null 2>&1; then 7 | echo $(cygpath.exe -u "$@") 8 | else 9 | echo $@ 10 | fi 11 | } 12 | 13 | env 14 | echo "PREFIX was ${PREFIX}" 15 | PREFIX=$(cygpath -u ${PREFIX}) 16 | echo "PREFIX now ${PREFIX}" 17 | exit 0 18 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/script_bash_windows/subpackage2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo "weeee" > $PREFIX/subpackage_file_2 3 | 4 | echo "$PREFIX/subpackage_file_2" > $PREFIX/subpackage2.txt 5 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/script_install_files/test_subpackage1.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | print(os.getenv('PREFIX')) 4 | filename = os.path.join(os.getenv('PREFIX'), 'subpackage_file_1') 5 | 6 | assert os.path.isfile(filename) 7 | assert open(filename).read() == "weeee" 8 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/split_packages_hash_resolution/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | blas_impl: 2 | - mkl # [x86 or x86_64] 3 | - openblas 4 | -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/test_files_copying/file: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/test_files_copying/file -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/test_files_copying/folder/file2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/test_files_copying/folder/file2 -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/test_files_copying/source_file: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/test_files_copying/source_file -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/test_files_copying/source_folder/file3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/test_files_copying/source_folder/file3 -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/test_files_in_parent/recipe_file: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/test_files_in_parent/recipe_file -------------------------------------------------------------------------------- /tests/test-recipes/split-packages/test_files_in_parent/src/somefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/split-packages/test_files_in_parent/src/somefile -------------------------------------------------------------------------------- /tests/test-recipes/test-package/bin/test-script-setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import conda_build_test 3 | conda_build_test 4 | 5 | print("Test script setup.py") 6 | 7 | if __name__ == "__main__": 8 | from conda_build_test import manual_entry 9 | manual_entry.main() 10 | -------------------------------------------------------------------------------- /tests/test-recipes/test-package/conda_build_test/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | conda build test package 3 | """ 4 | print("conda_build_test has been imported") 5 | -------------------------------------------------------------------------------- /tests/test-recipes/test-package/conda_build_test/empty.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/test-package/conda_build_test/empty.py -------------------------------------------------------------------------------- /tests/test-recipes/test-package/conda_build_test/manual_entry.py: -------------------------------------------------------------------------------- 1 | def main(): 2 | import argparse 3 | 4 | # Just picks them up from `sys.argv`. 5 | parser = argparse.ArgumentParser( 6 | description="Basic parser." 7 | ) 8 | parser.parse_args() 9 | 10 | print("Manual entry point") 11 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/01_basic_templating/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | something: 2 | - 1.0 3 | - 2.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/01_basic_templating/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: abc 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - something {{ something }} 8 | run: 9 | - something {{ something }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/02_python_version/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/02_python_version/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: abc 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | run: 9 | - python 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/03_ignore_version_reduces_matrix/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: ignore_version_reduces_matrix 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - packageA 8 | - packageB { packageB } 9 | run: 10 | - packageA 11 | - packageB 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/04_numpy_matrix_pinned/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | numpy: 5 | - 1.10 6 | - 1.16 7 | 8 | pin_run_as_build: 9 | numpy: 10 | min_pin: 'x.x.x' 11 | max_pin: 'x.x' 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/04_numpy_matrix_pinned/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: numpy_matrix 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python {{ python }} 8 | - numpy {{ numpy }} 9 | - nomkl # [unix] 10 | run: 11 | - python 12 | - numpy 13 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/05_compatible/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: compatible 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - libpng 8 | run: 9 | - {{ pin_compatible('libpng') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/06_compatible_custom/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: compatible 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - libpng 8 | run: 9 | - {{ pin_compatible('libpng', max_pin='x.x') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/07_compatible_custom_lower_upper/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: compatible 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - libpng 8 | run: 9 | - {{ pin_compatible('libpng', min_pin=None, upper_bound='5.0') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/08_compiler/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: cross 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - {{ compiler('c') }} 8 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/09_cross/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | target_platform: 4 | - linux-64 5 | - linux-cos5-64 6 | - linux-aarch64 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/09_cross/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: cross 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - {{ compiler('c') }} 8 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/10_runtimes/consumes_exports/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: package_consuming_run_exports 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - package_has_run_exports 8 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/10_runtimes/ignore_exports/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: package_consuming_run_exports 3 | version: 1.0 4 | 5 | build: 6 | ignore_run_exports: 7 | - bzip2 8 | 9 | requirements: 10 | build: 11 | - package_has_run_exports 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/10_runtimes/uses_run_exports/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: package_has_run_exports 3 | version: 1.0 4 | 5 | build: 6 | run_exports: 7 | - {{ pin_compatible('bzip2') }} 8 | 9 | requirements: 10 | build: 11 | - bzip2 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/11_variant_output_names/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | something: 2 | - abc 3 | - def 4 | something2: 5 | - ghi 6 | - jkl 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/11_variant_output_names/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_output_variant_naming 3 | version: 1.0 4 | 5 | outputs: 6 | - name: some_output_using_{{ something }}_{{ something2 }} 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/12_variant_versions/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | my_version: 2 | - 470 3 | - 480 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/12_variant_versions/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set setup_data = load_setup_py_data() %} 2 | package: 3 | name: my_package 4 | version: '{{my_version}}.{{setup_data.get('version')}}' 5 | 6 | source: 7 | {% if my_version %} 8 | url: ver{{my_version}}.zip 9 | {% endif %} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/12_variant_versions/setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | setup(name="test", version='480') 3 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/12_variant_versions/ver470.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/variants/12_variant_versions/ver470.zip -------------------------------------------------------------------------------- /tests/test-recipes/variants/12_variant_versions/ver480.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/conda/conda-build/bf2bec377bc91dda7aa6f50f1bfb0ddb0d8f4c7b/tests/test-recipes/variants/12_variant_versions/ver480.zip -------------------------------------------------------------------------------- /tests/test-recipes/variants/13_git_vars/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/14_variant_in_run_and_test/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | click: 2 | - 6 3 | pytest: 4 | - 3.2 5 | pytest_cov: 6 | - 2.3 7 | pytest_mock: 8 | - 1.6 9 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/17_multiple_recipes_independent_config/a/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | bzip2: 2 | - 1.0.6 3 | pin_run_as_build: 4 | bzip2: 5 | min_pin: x 6 | max_pin: x.x.x 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/17_multiple_recipes_independent_config/a/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_independent_config_a 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - bzip2 8 | run: 9 | - {{ pin_compatible('bzip2') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/17_multiple_recipes_independent_config/b/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | bzip2: 2 | - 1.0.6 3 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/17_multiple_recipes_independent_config/b/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_independent_config_b 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - bzip2 8 | run: 9 | - {{ pin_compatible('bzip2') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/18_subspace_selection/meta.yaml: -------------------------------------------------------------------------------- 1 | # this test ensures that we can merge and clobber fields that are part of zip_keys, and it will reduce 2 | # any other associated zip keys 3 | 4 | package: 5 | name: test_subspace_selection 6 | version: 1.0 7 | 8 | requirements: 9 | build: 10 | - a 11 | - b 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/bld.bat: -------------------------------------------------------------------------------- 1 | if not exist setup.py exit 1 2 | echo "found setup.py in workdir (%CD%) OK" -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/build.sh: -------------------------------------------------------------------------------- 1 | if [ ! -f setup.py ]; then 2 | exit 1 3 | else 4 | echo "found setup.py in workdir ($(pwd)) OK" 5 | fi 6 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | shared_lib: 2 | - top_a 3 | - top_b 4 | output_loop_var: 5 | - output_a 6 | - output_b 7 | dep_tied_to_shared_lib: 8 | - dep_a 9 | - dep_b 10 | zlib: 11 | - 1.2.8 12 | - 1.2.11 13 | zip_keys: 14 | - 15 | - shared_lib 16 | - dep_tied_to_shared_lib 17 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/install-output.bat: -------------------------------------------------------------------------------- 1 | cd %SRC_DIR% 2 | 3 | if not exist setup.py ( 4 | dir 5 | exit 1 6 | ) else ( 7 | echo "found setup.py in workdir (%CD%) OK" 8 | ) -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/install-output.sh: -------------------------------------------------------------------------------- 1 | set -ex 2 | 3 | cd $SRC_DIR 4 | 5 | if [ ! -f setup.py ]; then 6 | ls 7 | echo $(pwd) 8 | exit 1 9 | else 10 | echo "found setup.py in workdir ($(pwd)) OK" 11 | fi 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/run_test.bat: -------------------------------------------------------------------------------- 1 | echo "weee" -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_reprovision_source/run_test.sh: -------------------------------------------------------------------------------- 1 | echo "weee" 2 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_subspace_selection_cli/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 2.7 4 | - 3.8 5 | - 3.9 6 | six: 7 | - 1.11.0 8 | - 1.12.0 9 | - 1.15.0 10 | - 1.15.0 11 | zip_keys: 12 | - python 13 | - six 14 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/20_subspace_selection_cli/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_subspace_selection_cli 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | - six 9 | run: 10 | - python 11 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/21_conditional_sections/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | blas_impl: 2 | - mkl 3 | - openblas 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/21_conditional_sections/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_variants_used_in_conditional_sections 3 | version: 0.0 4 | 5 | source: 6 | path: . 7 | 8 | requirements: 9 | build: 10 | {% if blas_impl == 'mkl' %} 11 | - mkl-devel 12 | {% endif %} 13 | {% if blas_impl == 'openblas' %} 14 | - openblas-devel 15 | {% endif %} 16 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/22_run_exports_rerendered_for_other_variants/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_run_exports_rerendered_for_other_variants 3 | version: 1.0.0 4 | 5 | requirements: 6 | host: 7 | - openssl 8 | build: 9 | - {{ compiler('c') }} 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/24_test_used_vars_in_scripts/bld.bat: -------------------------------------------------------------------------------- 1 | echo %BAT_VAR% -------------------------------------------------------------------------------- /tests/test-recipes/variants/24_test_used_vars_in_scripts/build.sh: -------------------------------------------------------------------------------- 1 | echo ${BASH_VAR1} 2 | echo $BASH_VAR2 3 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/24_test_used_vars_in_scripts/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | BASH_VAR1: 2 | - abc 3 | - 123 4 | BASH_VAR2: 5 | - abc 6 | - 123 7 | BAT_VAR: 8 | - abc 9 | - 123 10 | OUTPUT_VAR: 11 | - abc123 12 | - 123 13 | SELECTOR_VAR: 14 | - True 15 | - False 16 | OUTPUT_SELECTOR_VAR: 17 | - True 18 | - False 19 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/24_test_used_vars_in_scripts/output_script.sh: -------------------------------------------------------------------------------- 1 | echo ${OUTPUT_VAR} 2 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/25_target_platform_looping/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | target_platform: 2 | - win-64 3 | - win-32 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/25_target_platform_looping/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_platform_looping 3 | version: 1 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/26_reduced_hashing/hash_no_python/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/26_reduced_hashing/hash_no_python/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_no_hash_pure_python 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | run: 9 | - python 10 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/26_reduced_hashing/hash_yes_compiler/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | c_compiler: 2 | - gcc 3 | target_platform: 4 | - linux-64 5 | - linux-cos5-64 6 | - linux-aarch64 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/26_reduced_hashing/hash_yes_compiler/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_has_hash_with_compiler 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - {{ compiler('c') }} 8 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/26_reduced_hashing/hash_yes_pinned/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.9 4 | unused_var: 5 | - abc 6 | - 123 7 | zlib: 8 | - 1.2.11 9 | some_package: 10 | - mooo 11 | - llama 12 | # not directly used, but is "used" by virtue of being zipped 13 | zipped_var: 14 | - chicken 15 | - dog 16 | zip_keys: 17 | - some_package 18 | - zipped_var 19 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/26_reduced_hashing/hash_yes_pinned/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | # an explicit usage 3 | name: test_has_hash_used_variables_{{ some_package }} 4 | version: 1.0 5 | 6 | requirements: 7 | build: 8 | # an implicit usage 9 | - python 10 | # an implicit usage other than python 11 | - zlib 12 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/27_requirements_host/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | mpi: 2 | - openmpi 3 | - mpich 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/27_requirements_host/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: cfastpm 3 | version: 0.0.1 4 | 5 | requirements: 6 | host: 7 | - {{ mpi }} 8 | 9 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/28_custom_compiler/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | go_compiler: 2 | - go 3 | target_platform: 4 | - linux-64 5 | - osx-64 6 | - win-64 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/28_custom_compiler/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: custom 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - {{ compiler('go') }} 8 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/29_different_git_vars/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | git_tag: 2 | - 1.21.11 3 | - 1.20.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/29_different_git_vars/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-variant-git 3 | version: {{ GIT_DESCRIBE_TAG }} 4 | 5 | source: 6 | git_url: https://github.com/conda/conda_build_test_recipe 7 | git_tag: {{ git_tag }} 8 | 9 | build: 10 | number: {{ GIT_DESCRIBE_NUMBER }} 11 | 12 | requirements: 13 | build: 14 | - python 15 | 16 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/30_top_level_finalized/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | xz: 2 | - 5.2.3 3 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/30_top_level_finalized/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: top_level 3 | version: 1.0 4 | 5 | build: 6 | script: "xzcat --version > ${PREFIX}/xzcat_output" 7 | 8 | requirements: 9 | host: 10 | - xz 11 | 12 | outputs: 13 | - name: output_level 14 | files: 15 | - xzcat_output 16 | requirements: 17 | host: 18 | - xz 19 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/exclusive_config_file/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | abc: 2 | - 123 3 | unique_to_recipe: 4 | - abc 5 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/exclusive_config_file/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_exclusive_config_file 3 | version: 1.0 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/numpy_used/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 3.8 3 | - 3.9 4 | numpy: 5 | - 1.19 6 | - 1.22 7 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/python_in_build_only/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.6 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/python_in_build_only/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set major_minor = "2.56" %} 2 | {% set version = major_minor + ".0" %} 3 | {% set sha256 = "ecef6e17e97b8d9150d0e8a4b3edee1ac37331213b8a2a87a083deea408a0fc7" %} 4 | 5 | package: 6 | name: glib 7 | version: {{ version }} 8 | 9 | requirements: 10 | build: 11 | - python 12 | host: 13 | - libffi >=3.0.0 14 | - zlib 15 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/selector_conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | value: 2 | - abc 3 | - def # [py > 99] 4 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/test_python_as_subpackage_loop/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.5 4 | - 3.6 5 | 6 | vc: # [win] 7 | - 9 # [win] 8 | - 14 # [win] 9 | - 14 # [win] 10 | 11 | # zip_keys: 12 | # - 13 | # - python 14 | # - vc # [win] 15 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/test_python_as_subpackage_loop/config_with_zip.yaml: -------------------------------------------------------------------------------- 1 | python: 2 | - 2.7 3 | - 3.5 4 | - 3.6 5 | 6 | vc: # [win] 7 | - 9 # [win] 8 | - 14 # [win] 9 | - 14 # [win] 10 | 11 | zip_keys: 12 | - 13 | - python 14 | - vc # [win] 15 | -------------------------------------------------------------------------------- /tests/test-recipes/variants/variant_recipe/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: test_variants 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | run: 9 | - python 10 | 11 | about: 12 | summary: {{ python }} 13 | -------------------------------------------------------------------------------- /tests/test-recipes/work-deleted/bld.bat: -------------------------------------------------------------------------------- 1 | python "%RECIPE_DIR%\build.py" 2 | if errorlevel 1 exit 1 3 | -------------------------------------------------------------------------------- /tests/test-recipes/work-deleted/build.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | PREFIX = os.environ["PREFIX"] 4 | SRC_DIR = os.environ["SRC_DIR"] 5 | 6 | with open(os.path.join(PREFIX, 'conda-build-test'), 'w') as f: 7 | f.write(SRC_DIR) 8 | -------------------------------------------------------------------------------- /tests/test-recipes/work-deleted/build.sh: -------------------------------------------------------------------------------- 1 | python $RECIPE_DIR/build.py 2 | -------------------------------------------------------------------------------- /tests/test-recipes/work-deleted/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: conda-build-test-work-deleted 3 | version: 1.0 4 | 5 | requirements: 6 | build: 7 | - python 8 | 9 | source: 10 | path: ../test-package 11 | 12 | test: 13 | files: 14 | - test.py 15 | requirements: 16 | - python 17 | commands: 18 | - python test.py 19 | -------------------------------------------------------------------------------- /tests/test-recipes/work-deleted/test.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | PREFIX = os.environ["PREFIX"] 4 | 5 | with open(os.path.join(PREFIX, 'conda-build-test')) as f: 6 | SRC_DIR = f.read().strip() 7 | 8 | # The directory might be recreated, so just check that it is empty 9 | assert not os.path.exists(SRC_DIR) or not os.listdir(SRC_DIR), SRC_DIR 10 | -------------------------------------------------------------------------------- /tests/test-skeleton/sympy-0.7.5-url/bld.bat: -------------------------------------------------------------------------------- 1 | "%PYTHON%" setup.py install 2 | if errorlevel 1 exit 1 3 | 4 | :: Add more build steps here, if they are necessary. 5 | 6 | :: See 7 | :: https://docs.conda.io/projects/conda-build 8 | :: for a list of environment variables that are set during the build process. 9 | -------------------------------------------------------------------------------- /tests/test-skeleton/sympy-0.7.5-url/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | $PYTHON setup.py install 4 | 5 | # Add more build steps here, if they are necessary. 6 | 7 | # See 8 | # https://docs.conda.io/projects/conda-build 9 | # for a list of environment variables that are set during the build process. 10 | -------------------------------------------------------------------------------- /tests/test-skeleton/sympy-0.7.5/bld.bat: -------------------------------------------------------------------------------- 1 | "%PYTHON%" setup.py install 2 | if errorlevel 1 exit 1 3 | 4 | :: Add more build steps here, if they are necessary. 5 | 6 | :: See 7 | :: https://docs.conda.io/projects/conda-build 8 | :: for a list of environment variables that are set during the build process. 9 | -------------------------------------------------------------------------------- /tests/test-skeleton/sympy-0.7.5/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | $PYTHON setup.py install 4 | 5 | # Add more build steps here, if they are necessary. 6 | 7 | # See 8 | # https://docs.conda.io/projects/conda-build 9 | # for a list of environment variables that are set during the build process. 10 | -------------------------------------------------------------------------------- /tests/test_check.py: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2014 Anaconda, Inc 2 | # SPDX-License-Identifier: BSD-3-Clause 3 | import os 4 | 5 | from conda_build import api 6 | 7 | from .utils import metadata_dir 8 | 9 | 10 | def test_check_multiple_sources(): 11 | recipe = os.path.join(metadata_dir, "multiple_sources") 12 | assert api.check(recipe) 13 | --------------------------------------------------------------------------------