# BLAS / LAPACK selection option('blas', type: 'string', value: 'auto', description: 'BLAS library to use (default: autodetect based on `blas-order`)') option('lapack', type: 'string', value: 'auto', description: 'LAPACK library to use (default: autodetect based on `lapack-order`)') option('allow-noblas', type: 'boolean', value: true, description: 'Allow building with (slow!) internal fallback routines if no BLAS library is found') option('blas-order', type: 'array', value: ['auto'], description: 'Preferred search order for BLAS libraries (e.g., mkl, openblas, blis, blas)') option('lapack-order', type: 'array', value: ['auto'], description: 'Preferred search order for LAPACK libraries (e.g., mkl, openblas, lapack)') option('use-ilp64', type: 'boolean', value: false, description: 'Use ILP64 (64-bit integer) BLAS/LAPACK interfaces') option('blas-symbol-suffix', type: 'string', value: 'auto', description: 'Symbol suffix for BLAS/LAPACK symbols (if any)') option('mkl-threading', type: 'combo', value: 'auto', choices: ['auto', 'seq', 'iomp', 'gomp', 'tbb'], description: 'Threading backend for MKL') # Threading & parallelism option('disable-threading', type: 'boolean', value: false, description: 'Disable threading support (see `NPY_ALLOW_THREADS` docs)') option('enable-openmp', type: 'boolean', value: false, description: 'Enable compilation with OpenMP support') # CPU optimization / SIMD option('disable-optimization', type: 'boolean', value: false, description: 'Disable all CPU optimizations (dispatch, SIMD, loop unrolling)') option('disable-svml', type: 'boolean', value: false, description: 'Disable use of Intel SVML') option('disable-highway', type: 'boolean', value: false, description: 'Disable SIMD-optimized operations related to Google Highway') option('disable-intel-sort', type: 'boolean', value: false, description: 'Disable SIMD-optimized operations related to Intel x86-simd-sort') option('cpu-baseline', type: 'string', value: 'min', description: 'Minimal set of required CPU features') option('cpu-baseline-detect', type: 'feature', value: 'auto', description: 'Detect CPU baseline from the compiler flags') option('cpu-dispatch', type: 'string', value: 'max', description: 'Additional CPU features to dispatch to (beyond baseline)') # SIMD test options option('test-simd', type: 'array', value: [ 'BASELINE', 'X86_V2', 'X86_V3', 'X86_V4', 'VSX', 'VSX2', 'VSX3', 'VSX4', 'NEON', 'ASIMD', 'VX', 'VXE', 'VXE2', 'LSX', ], description: 'CPU SIMD feature sets to be tested by the NumPy SIMD test module') option('test-simd-args', type: 'string', value: '', description: 'Extra arguments passed to the internal `_simd` test module')