---
# System prepended metadata

title: scikit-build Developer Meeting Notes 2023-11-03

---


# scikit-build Developer Meeting Notes 2023-11-03 #9

## Agenda

- [Henry Slides](https://docs.google.com/presentation/d/1TXpu7GagBkC5AJUcJHbzV32XghRQgOET_YwWaxdbwgE/edit#slide=id.p)

## Attending

- Matt McCormick
- Henry Scheiner
- Jean-Christophe Fillion-Robin


## Discussion

- https://gregoryszorc.com/blog/2023/10/30/my-user-experience-porting-off-setup.py/
- cython sample in progress
    - based on https://scikit-build-core.readthedocs.io/en/latest/getting_started.html 
- Docs intro
    - explicitly state that scikit-build is not just for scientific packages.
- --no-isolation -> do not delete temporary directory
    - set `tool.scikit-build.build-dir` to a local directory 

### Slides review notes

- Overrides discussion
- How to specify conditions?
    -  OR vs AND, AND is default, be able to specify all the conditions that are either all OR or all AND
    -  if.any, if.all
    -  if.env = "(BUILD_ME OR CIBUILDWHEEL)"
    -  if.env="and(BUILD_ME , CIBUILDWHEEL)"
    -  While we want to make sure remain declarative and constrained and well specified
    -  GitHub, but YAML vs TOML: https://docs.github.com/en/actions/learn-github-actions/expressions#functions
    -  if.any.env = {CIBUILDWHEEL = "1", CONDA_BUILD = "1", PIWHEELS_BUILD = "1"}
-  Conditions with config options
    -  tool.scikit-build.opt 
    -  -Copt.build = true or SKBUILD_OPT_BUILD="true" (env or CMake(?) variable)
        -  allow SKBUILD_<project_name>_<options> ?
        - shortcut with -Cbuild=true ?
            - Possible conflicts with skbuild configuration
                - Ask user to use -Copt.build=true ?
                    - Problem: if we add an option, this may suddenly change
                - Take users over ours
                    - Problem: Ours are not namespaced
                    - Solution: Allow access to ours via namespace? skbuild.build=true, reserve skbuild
    - opt: dict[str, bool | str, | int | list[bool | str | int]]
    - Design to allows specification of
        1. value
        2. type
        3. help description
    - But shortcut just to values
- cli in progress
    
    

Related tools:
* Other pep 517 backend integrating with CMake. See https://pypi.org/project/cmeel/, https://github.com/cmake-wheel/cmeel
* https://github.com/cmaker-dev/cmaker
    