Files
project_6/cccl_upstream/docs/cudax/Doxyfile
muh-bot 2a7ca101d7 feat(cccl): integrate missing CCCL directories — python/, ci/, .agent/, docs/, test/
Sparse-checkout from NVIDIA/cccl main branch to complete cccl_upstream:

Added:
- python/cuda_cccl/ (226 files) — Python bindings for device-level algorithms
  Critical for muh toolchain: cuda.compute.reduce_into, scan, radix_sort, etc.
  Includes 204 .py files with full test coverage for all 27 algorithms
- ci/ (163 files) — Build/test infrastructure
  build_cub.sh, test_cub.sh, build_and_test_targets.sh, matrix.yaml
  Directly maps to our [INFRA-CI] and [INFRA-BUILD] items
- .agent/skills/ (7 files) — NVIDIA's own agent skills for CCCL
  cccl-style/SKILL.md, cccl-test/SKILL.md, sass-diff/SKILL.md
- docs/ (491 files) — Official CCCL documentation
  CI references, CMake guides, Python compute docs, libcudacxx PTX docs
- test/ (12 files) — Top-level integration tests (cuda_smoke, stdpar)
- Root configs: .clang-format, .clang-tidy, CONTRIBUTING.md, pyproject.toml
- CLAUDE.md symlink → AGENTS.md (NVIDIA's standard)

cccl_upstream now mirrors full NVIDIA/cccl structure:
  Before: 42M (cub + thrust + libcudacxx + cudax + c + examples + benchmarks)
  After:  53M (+python +ci +docs +.agent +test +configs)

This completes the CCCL base needed for:
- [muh-bench] items: ci/util/build_and_test_targets.sh for targeted builds
- [CCCL-verify] items: python/cuda_cccl/tests/ as reference implementations
- [CCCL-test] items: ci/test_cub.sh, ci/test_thrust.sh
- Agent workflow: .agent/skills/ for consistent style and test patterns
2026-08-07 02:34:33 +00:00

186 lines
7.0 KiB
Plaintext

# Doxyfile for CUDAX
PROJECT_NAME = CUDAX
OUTPUT_DIRECTORY = ../_build/doxygen/cudax
CREATE_SUBDIRS = NO
GENERATE_HTML = NO
GENERATE_LATEX = NO
GENERATE_XML = YES
XML_OUTPUT = xml
XML_PROGRAMLISTING = YES
# Input directory - specific paths for cudax
INPUT = ../../cudax/include/cuda/experimental/__copy_bytes \
../../cudax/include/cuda/experimental/__fill_bytes \
../../cudax/include/cuda/experimental/__container \
../../cudax/include/cuda/experimental/__device \
../../cudax/include/cuda/experimental/graph.cuh \
../../cudax/include/cuda/experimental/__graph \
../../cudax/include/cuda/experimental/__group \
../../cudax/include/cuda/experimental/__launch \
../../cudax/include/cuda/experimental/__places \
../../cudax/include/cuda/experimental/__places/exec \
../../cudax/include/cuda/experimental/__stream \
../../cudax/include/cuda/experimental/stf.cuh \
../../cudax/include/cuda/experimental/__stf \
../../cudax/include/cuda/experimental/__stf/internal \
../../cudax/include/cuda/experimental/__stf/utility \
../../cudax/include/cuda/experimental/__stf/localization \
../../cudax/include/cuda/experimental/__stf/allocators \
../../cudax/include/cuda/experimental/__stf/graph \
../../cudax/include/cuda/experimental/__stf/graph/internal \
../../cudax/include/cuda/experimental/__stf/graph/interfaces \
../../cudax/include/cuda/experimental/__stf/places \
../../cudax/include/cuda/experimental/__stf/places/exec/host \
../../cudax/include/cuda/experimental/__stf/stream \
../../cudax/include/cuda/experimental/__stf/stream/internal \
../../cudax/include/cuda/experimental/__stf/stream/interfaces
RECURSIVE = YES
# Exclude patterns from repo.toml
EXCLUDE = ../../cudax/include/cuda/experimental/__graph/fwd.cuh
EXCLUDE_PATTERNS = */detail/* */test/* */tests/* */examples/* */__detail/*
# Exclude symbols from repo.toml
EXCLUDE_SYMBOLS = *detail* *RESERVED* *reserved* *__* _A* _B* _C* _D* _E* _F* _G* _H* _I* _J* _K* _L* _M* _N* _O* _P* _Q* _R* _S* _T* _U* _V* _W* _X* _Y* _Z* UNITTEST
# Path for @snippet references to test/example files
EXAMPLE_PATH = ../../cudax/include/cuda/experimental/__stf/utility \
../../cudax/test/multi_gpu/algorithms \
../../cudax/test/coop/reduce
FILE_PATTERNS = *.h *.hpp *.cuh
EXTENSION_MAPPING = cuh=C++ cu=C++
# Documentation extraction settings
EXTRACT_ALL = YES
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
SHOW_INCLUDE_FILES = YES
INLINE_INHERITED_MEMB = YES
FULL_PATH_NAMES = YES
STRIP_FROM_PATH = ../../cudax
SHORT_NAMES = NO
# Parsing settings
JAVADOC_AUTOBRIEF = YES
QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 4
BUILTIN_STL_SUPPORT = YES
# Preprocessing
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
SKIP_FUNCTION_MACROS = YES
# Predefined macros for CUDAX
PREDEFINED = \
"__device__=" \
"__host__=" \
"__global__=" \
"__forceinline__=" \
"__declspec(x)=" \
"__align__(x)=" \
"__cccl_lib_mdspan" \
"_CCCL_AND=&&" \
"_CCCL_CONCEPT=constexpr bool" \
"_CCCL_DOXYGEN_INVOKED" \
"_CCCL_HOST_DEVICE=" \
"_CCCL_DEVICE=" \
"_CCCL_HOST=" \
"_CCCL_FORCEINLINE=" \
"_CCCL_CONSTEXPR_CXX20=constexpr" \
"_CCCL_CONSTEXPR_CXX23=constexpr" \
"_CCCL_API=inline" \
"_CCCL_HOST_DEVICE_API=inline" \
"_CCCL_HOST_API=inline" \
"_CCCL_DEVICE_API=inline" \
"_CCCL_NODEBUG_API=inline" \
"_CCCL_NODEBUG_DEVICE_API=inline" \
"_CCCL_NODEBUG_HOST_API=inline" \
"_CCCL_TRIVIAL_API=inline" \
"_CCCL_TRIVIAL_HOST_API=inline" \
"_CCCL_TRIVIAL_DEVICE_API=inline" \
"_CCCL_PUBLIC_API=inline" \
"_CCCL_PUBLIC_DEVICE_API=inline" \
"_CCCL_PUBLIC_HOST_API=inline" \
"_CCCL_BEGIN_NAMESPACE_CUDA_STD=namespace cuda::std {" \
"_CCCL_END_NAMESPACE_CUDA_STD=}" \
"_CCCL_CATCH=catch" \
"_CCCL_CATCH_ALL=catch (...)" \
"_CCCL_CATCH_FALLTHROUGH=" \
"_CCCL_CONSTEXPR_FRIEND=friend " \
"_CCCL_CTK_AT_LEAST(x, y)=1" \
"_CCCL_CTK_BELOW(x, y)=0" \
"_CCCL_CUDACC_AT_LEAST(x, y)=1" \
"_CCCL_CUDACC_BELOW(x, y)=0" \
"_CCCL_DIAG_POP=" \
"_CCCL_DIAG_PUSH=" \
"_CCCL_DIAG_SUPPRESS_CLANG(x)=" \
"_CCCL_DIAG_SUPPRESS_GCC(x)=" \
"_CCCL_DIAG_SUPPRESS_MSVC(x)=" \
"_CCCL_DIAG_SUPPRESS_NVHPC(x)=" \
"_CCCL_EXEC_CHECK_DISABLE=" \
"_CCCL_GLOBAL_CONSTANT=inline constexpr" \
"_CCCL_HAS_CTK()=1" \
"_CCCL_HIDE_FROM_ABI=" \
"_CCCL_REQUIRES(x)= ::cuda::std::enable_if_t<x, int> = 0>" \
"_CCCL_STD_VER=2020" \
"_CCCL_SUPPRESS_DEPRECATED_POP=" \
"_CCCL_SUPPRESS_DEPRECATED_PUSH=" \
"_CCCL_TEMPLATE(x)=template<x, " \
"_CCCL_TRAILING_REQUIRES(x)=-> x requires " \
"_CCCL_TRY=try" \
"_CCCL_TYPE_VISIBILITY_DEFAULT=" \
"_CCCL_TYPE_VISIBILITY_HIDDEN=" \
"_CCCL_VISIBILITY_DEFAULT=" \
"_CCCL_VISIBILITY_HIDDEN=" \
"_CCCL_LIFETIMEBOUND=" \
"_CUDAX_CONSTEXPR_FRIEND=friend" \
"_LIBCUDACXX_HAS_SPACESHIP_OPERATOR()=1" \
"CCCL_DEPRECATED=" \
"CCCL_DEPRECATED_BECAUSE(x)=" \
"CCCL_IGNORE_DEPRECATED_CPP_DIALECT" \
"CUB_DISABLE_NAMESPACE_MAGIC" \
"CUB_IGNORE_NAMESPACE_MAGIC_ERROR" \
"CUB_NAMESPACE_BEGIN=namespace cub {" \
"CUB_NAMESPACE_END=}" \
"CUB_RUNTIME_FUNCTION=" \
"THRUST_FWD(x)=x" \
"THRUST_NAMESPACE_BEGIN=namespace thrust {" \
"THRUST_NAMESPACE_END=}" \
"THRUST_PREVENT_MACRO_SUBSTITUTION" \
"_CCCL_HOSTED()=1"
# Additional settings from repo.toml
DISTRIBUTE_GROUP_DOC = YES
DOXYFILE_ENCODING = UTF-8
INPUT_ENCODING = UTF-8
EXAMPLE_RECURSIVE = YES
EXAMPLE_PATTERNS = *.cu
AUTOLINK_SUPPORT = YES
# IMPORTANT: Aliases for custom commands
# The rst alias enables embedding reStructuredText in doxygen comments
# Using the same format as repo_docs for compatibility
ALIASES = "rst=\verbatim embed:rst:leading-asterisk"
ALIASES += "endrst=\endverbatim"
ALIASES += "rststar=\verbatim embed:rst:leading-asterisk"
ALIASES += "inlinerst=\verbatim embed:rst:inline"
# Quiet mode
QUIET = YES
WARNINGS = YES
WARN_AS_ERROR = FAIL_ON_WARNINGS
WARN_IF_UNDOCUMENTED = NO
WARN_IF_DOC_ERROR = YES
WARN_IF_INCOMPLETE_DOC = NO
WARN_NO_PARAMDOC = NO