Skip to content

Commit

Permalink
Add rattler-build recipe for cudf
Browse files Browse the repository at this point in the history
  • Loading branch information
gforsyth committed Feb 20, 2025
1 parent c8b97fe commit 30bf6c7
Show file tree
Hide file tree
Showing 4 changed files with 125 additions and 124 deletions.
4 changes: 0 additions & 4 deletions conda/recipes/cudf/build.sh

This file was deleted.

119 changes: 0 additions & 119 deletions conda/recipes/cudf/meta.yaml

This file was deleted.

124 changes: 124 additions & 0 deletions conda/recipes/cudf/recipe.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/prefix-dev/recipe-format/main/schema.json
# Copyright (c) 2018-2025, NVIDIA CORPORATION.
schema_version: 1

context:
version: ${{ env.get("RAPIDS_PACKAGE_VERSION") }}
minor_version: ${{ (version | split('.'))[:2] | join('.') }}
cuda_version: ${{ (env.get('RAPIDS_CUDA_VERSION') | split('.'))[:2] | join(".") }}
cuda_major: ${{ (env.get('RAPIDS_CUDA_VERSION') | split('.'))[0] }}
date_string: ${{ env.get("RAPIDS_DATE_STRING") }}
head_rev: ${{ git.head_rev(".")[:8] }}

package:
name: cudf
version: ${{ version }}

source:
path: ../../..

build:
string: cuda${{ cuda_major }}_py${{ py_version }}_${{ date_string }}_${{ head_rev }}
script:
content:
- ./build.sh cudf
secrets:
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- AWS_SESSION_TOKEN
env:
CMAKE_C_COMPILER_LAUNCHER: ${{ env.get("CMAKE_C_COMPILER_LAUNCHER") }}
CMAKE_CUDA_COMPILER_LAUNCHER: ${{ env.get("CMAKE_CUDA_COMPILER_LAUNCHER") }}
CMAKE_CXX_COMPILER_LAUNCHER: ${{ env.get("CMAKE_CXX_COMPILER_LAUNCHER") }}
CMAKE_GENERATOR: ${{ env.get("CMAKE_GENERATOR") }}
SCCACHE_BUCKET: ${{ env.get("SCCACHE_BUCKET") }}
SCCACHE_IDLE_TIMEOUT: ${{ env.get("SCCACHE_IDLE_TIMEOUT") }}
SCCACHE_REGION: ${{ env.get("SCCACHE_REGION") }}
SCCACHE_S3_USE_SSL: ${{ env.get("SCCACHE_S3_USE_SSL") }}
SCCACHE_S3_NO_CREDENTIALS: ${{ env.get("SCCACHE_S3_NO_CREDENTIALS") }}
SCCACHE_S3_KEY_PREFIX: cudf-${{ env.get("RAPIDS_CONDA_ARCH") }}

requirements:
build:
- cmake ${{ cmake_version }}
- ninja
- ${{ compiler("c") }}
- ${{ compiler("cxx") }}
- ${{ compiler("cuda") }}
- cuda-version =${{ cuda_version }}
- ${{ stdlib("c") }}
host:
- python
- cython >=3.0.3
- rapids-build-backend >=0.3.0,<0.4.0.dev0
- scikit-build-core >=0.10.0
- dlpack >=0.8,<1.0
- libcudf =${{ version }}
- pylibcudf =${{ version }}
- rmm =${{ minor_version }}
- if: cuda_major == "11"
then:
- cudatoolkit
else:
- cuda-cudart-dev
- cuda-nvrtc
- if: linux64
then:
- libcufile-dev
- cuda-version =${{ cuda_version }}
run:
- python
- typing_extensions >=4.0.0
- pandas >=2.0,<2.2.4dev0
- cupy >=12.0.0
- numba-cuda >=0.2.0,<0.3.0a0
- numba >=0.59.1,<0.61.0a0
- numpy >=1.23,<3.0a0
- pyarrow>=14.0.0,<20.0.0a0
- libcudf =${{ version }}
- pylibcudf =${{ version }}
- ${{ pin_compatible('rmm', upper_bound='x.x') }}
- fsspec >=0.6.0
- if: cuda_major == "11"
then:
- cudatoolkit
- ptxcompiler >=0.7.0
- cubinlinker # CUDA enhanced compatibility.
- cuda-python >=11.8.5,<12.0a0
else:
- cuda-cudart
# Needed by Numba for CUDA support
- cuda-nvcc-impl
# TODO: Add nvjitlink here
# xref: https://github.com/rapidsai/cudf/issues/12822
- cuda-nvrtc
- cuda-python >=12.6.2,<13.0a0
- pynvjitlink
- if: linux64
then:
- libcufile
- ${{ pin_compatible('cuda-version', upper_bound='x', lower_bound='x') }}
- nvtx >=0.2.1
- packaging
- cachetools
- rich

ignore_run_exports:
from_package:
- if: cuda_major != "11"
then:
- cuda-cudart-dev
- if: linux64
then: libcufile-dev


tests:
- python:
imports:
- cudf
pip_check: false

about:
homepage: ${{ load_from_file("python/cudf/pyproject.toml").project.urls.Homepage }}
license: ${{ load_from_file("python/cudf/pyproject.toml").project.license.text }}
summary: ${{ load_from_file("python/cudf/pyproject.toml").project.description }}
2 changes: 1 addition & 1 deletion python/cudf/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ readme = { file = "README.md", content-type = "text/markdown" }
authors = [
{ name = "NVIDIA Corporation" },
]
license = { text = "Apache 2.0" }
license = { text = "Apache-2.0" }
requires-python = ">=3.10"
dependencies = [
"cachetools",
Expand Down

0 comments on commit 30bf6c7

Please sign in to comment.