Unable to successfully install scikit-learn development version with MacBookPro with chip Apple M1 Pro

### Describe the bug

I installed the development version of scikit-learn on my computer (MacBookPro with chip Apple M1 Pro). When I ran pytest I got the following error: 
```
(sklearn-dev) ➜  scikit-learn git:(main) pytest
=========================================================================================== test session starts ============================================================================================
platform darwin -- Python 3.9.10, pytest-7.0.1, pluggy-1.0.0
rootdir: /Users/maren/Documents/scikit-learn, configfile: setup.cfg, testpaths: sklearn
plugins: xdist-2.5.0, forked-1.4.0, cov-3.0.0
collecting ... [1]    54294 killed     pytest
```

I investigated what's going on an this is the result: 
https://gist.github.com/marenwestermann/9ffddb7a2f0ef6798d350f3595997ed1

I'm using a conda environment. I used the Miniforge3-MacOSX-arm64 download from here: https://github.com/conda-forge/miniforge#miniforge

This is the content of my sklearn-dev conda environment: 
https://gist.github.com/marenwestermann/c01fc4d3044522e329ce83d16680e1a5

### Steps/Code to Reproduce

```
pytest
```

```
python -vvv -c "import sklearn"
```

### Expected Results

The expected result would be that when the command `pytest` is run all test are either skipped or are successful. 

### Actual Results

Pytest result:
```
(sklearn-dev) ➜  scikit-learn git:(main) pytest
=========================================================================================== test session starts ============================================================================================
platform darwin -- Python 3.9.10, pytest-7.0.1, pluggy-1.0.0
rootdir: /Users/maren/Documents/scikit-learn, configfile: setup.cfg, testpaths: sklearn
plugins: xdist-2.5.0, forked-1.4.0, cov-3.0.0
collecting ... [1]    54294 killed     pytest
```
Further investigation: 
https://gist.github.com/marenwestermann/9ffddb7a2f0ef6798d350f3595997ed1

### Versions

```shell
function>
```

COMMENT:
Interestingly, when I create a venv using the python installed on my machine (3.8), I can build and import sklearn and show versions (I have clang installed system-wide):

<details>

```
✗ python -c "import sklearn; sklearn.show_versions()"

System:
    python: 3.8.9 (default, Oct 26 2021, 07:25:53)  [Clang 13.0.0 (clang-1300.0.29.30)]
executable: /private/tmp/scikit-learn/.venv/bin/python
   machine: macOS-12.2.1-arm64-arm-64bit

Python dependencies:
      sklearn: 1.1.dev0
          pip: 22.0.3
   setuptools: 49.2.1
        numpy: 1.22.2
        scipy: 1.8.0
       Cython: 0.29.28
       pandas: None
   matplotlib: None
       joblib: 1.1.0
threadpoolctl: 3.1.0

Built with OpenMP: False

threadpoolctl info:
       user_api: blas
   internal_api: openblas
         prefix: libopenblas
       filepath: /private/tmp/scikit-learn/.venv/lib/python3.8/site-packages/numpy/.dylibs/libopenblas64_.0.dylib
        version: 0.3.18
threading_layer: pthreads
   architecture: armv8
    num_threads: 10

       user_api: blas
   internal_api: openblas
         prefix: libopenblas
       filepath: /private/tmp/scikit-learn/.venv/lib/python3.8/site-packages/scipy/.dylibs/libopenblas.0.dylib
        version: 0.3.17
threading_layer: pthreads
   architecture: armv8
    num_threads: 10
```

</details>

Of course this doesn't help me in the development env since I can't actually install sklearn (due to lack of openmp I think):

<details>

```
✗ pip install --verbose --no-build-isolation --editable .

Using pip 22.0.3 from /private/tmp/scikit-learn/.venv/lib/python3.8/site-packages/pip (python 3.8)
Obtaining file:///private/tmp/scikit-learn
  Running command Checking if build backend supports build_editable
  Checking if build backend supports build_editable ... done
  Running command Preparing metadata (pyproject.toml)
  INFO: C compiler: clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -iwithsysroot/System/Library/Frameworks/System.framework/PrivateHeaders -iwithsysroot/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/Headers -arch arm64 -arch x86_64 -Werror=implicit-function-declaration

  INFO: compile options: '-c'
  INFO: clang: test_program.c
  INFO: clang objects/test_program.o -o test_program
  INFO: C compiler: clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -iwithsysroot/System/Library/Frameworks/System.framework/PrivateHeaders -iwithsysroot/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/Headers -arch arm64 -arch x86_64 -Werror=implicit-function-declaration

  INFO: compile options: '-c'
  extra options: '-fopenmp'
  INFO: clang: test_program.c
  clang: error: unsupported option '-fopenmp'
  clang: error: unsupported option '-fopenmp'
  running dist_info
  running build_src
  INFO: build_src
  INFO: building library "libsvm-skl" sources
  INFO: building library "liblinear-skl" sources
  INFO: building extension "sklearn.__check_build._check_build" sources
  INFO: building extension "sklearn.preprocessing._csr_polynomial_expansion" sources
  INFO: building extension "sklearn._loss._loss" sources
  INFO: building extension "sklearn.cluster._dbscan_inner" sources
  INFO: building extension "sklearn.cluster._hierarchical_fast" sources
  INFO: building extension "sklearn.cluster._k_means_common" sources
  INFO: building extension "sklearn.cluster._k_means_lloyd" sources
  INFO: building extension "sklearn.cluster._k_means_elkan" sources
  INFO: building extension "sklearn.cluster._k_means_minibatch" sources
  INFO: building extension "sklearn.datasets._svmlight_format_fast" sources
  INFO: building extension "sklearn.decomposition._online_lda_fast" sources
  INFO: building extension "sklearn.decomposition._cdnmf_fast" sources
  INFO: building extension "sklearn.ensemble._gradient_boosting" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting._gradient_boosting" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting.histogram" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting.splitting" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting._binning" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting._predictor" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting._bitset" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting.common" sources
  INFO: building extension "sklearn.ensemble._hist_gradient_boosting.utils" sources
  INFO: building extension "sklearn.feature_extraction._hashing_fast" sources
  INFO: building extension "sklearn.manifold._utils" sources
  INFO: building extension "sklearn.manifold._barnes_hut_tsne" sources
  INFO: building extension "sklearn.metrics.cluster._expected_mutual_info_fast" sources
  INFO: building extension "sklearn.metrics._pairwise_fast" sources
  INFO: building extension "sklearn.metrics._dist_metrics" sources
  INFO: building extension "sklearn.metrics._pairwise_distances_reduction" sources
  INFO: building extension "sklearn.neighbors._ball_tree" sources
  INFO: building extension "sklearn.neighbors._kd_tree" sources
  INFO: building extension "sklearn.neighbors._partition_nodes" sources
  INFO: building extension "sklearn.neighbors._quad_tree" sources
  INFO: building extension "sklearn.tree._tree" sources
  INFO: building extension "sklearn.tree._splitter" sources
  INFO: building extension "sklearn.tree._criterion" sources
  INFO: building extension "sklearn.tree._utils" sources
  INFO: building extension "sklearn.utils.sparsefuncs_fast" sources
  INFO: building extension "sklearn.utils._cython_blas" sources
  INFO: building extension "sklearn.utils.arrayfuncs" sources
  INFO: building extension "sklearn.utils.murmurhash" sources
  INFO: building extension "sklearn.utils._fast_dict" sources
  INFO: building extension "sklearn.utils._openmp_helpers" sources
  INFO: building extension "sklearn.utils._seq_dataset" sources
  INFO: building extension "sklearn.utils._weight_vector" sources
  INFO: building extension "sklearn.utils._random" sources
  INFO: building extension "sklearn.utils._logistic_sigmoid" sources
  INFO: building extension "sklearn.utils._readonly_array_wrapper" sources
  INFO: building extension "sklearn.utils._typedefs" sources
  INFO: building extension "sklearn.utils._heap" sources
  INFO: building extension "sklearn.svm._newrand" sources
  INFO: building extension "sklearn.svm._libsvm" sources
  INFO: building extension "sklearn.svm._liblinear" sources
  INFO: building extension "sklearn.svm._libsvm_sparse" sources
  INFO: building extension "sklearn.linear_model._cd_fast" sources
  INFO: building extension "sklearn.linear_model._sgd_fast" sources
  INFO: building extension "sklearn.linear_model._sag_fast" sources
  INFO: building extension "sklearn._isotonic" sources
  INFO: building data_files sources
  INFO: build_src: building npy-pkg config files
  creating /private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info
  writing /private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/PKG-INFO
  writing dependency_links to /private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/dependency_links.txt
  writing requirements to /private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/requires.txt
  writing top-level names to /private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/top_level.txt
  writing manifest file '/private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/SOURCES.txt'
  reading manifest file '/private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no previously-included files matching '*' found under directory 'asv_benchmarks'
  warning: no previously-included files matching '*' found under directory 'benchmarks'
  warning: no previously-included files matching '*' found under directory 'build_tools'
  warning: no previously-included files matching '*' found under directory 'maint_tools'
  warning: no previously-included files matching '*' found under directory 'benchmarks'
  warning: no previously-included files matching '*' found under directory '.binder'
  warning: no previously-included files matching '*' found under directory '.circleci'
  warning: no previously-included files found matching '.codecov.yml'
  warning: no previously-included files found matching '.git-blame-ignore-revs'
  warning: no previously-included files found matching '.mailmap'
  warning: no previously-included files found matching '.pre-commit-config.yaml'
  warning: no previously-included files found matching 'azure-pipelines.yml'
  warning: no previously-included files found matching 'lgtm.yml'
  warning: no previously-included files found matching 'CODE_OF_CONDUCT.md'
  warning: no previously-included files found matching 'CONTRIBUTING.md'
  warning: no previously-included files found matching 'SECURITY.md'
  warning: no previously-included files found matching 'PULL_REQUEST_TEMPLATE.md'
  writing manifest file '/private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.egg-info/SOURCES.txt'
  creating '/private/var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/pip-modern-metadata-toy15lro/scikit_learn.dist-info'
  Partial import of sklearn during the build process.
  /private/tmp/scikit-learn/sklearn/_build_utils/openmp_helpers.py:127: UserWarning:

                  ***********
                  * WARNING *
                  ***********

  It seems that scikit-learn cannot be built with OpenMP.

  - Make sure you have followed the installation instructions:

      https://scikit-learn.org/dev/developers/advanced_installation.html

  - If your compiler supports OpenMP but you still see this
    message, please submit a bug report at:

      https://github.com/scikit-learn/scikit-learn/issues

  - The build will continue with OpenMP-based parallelism
    disabled. Note however that some estimators will run in
    sequential mode instead of leveraging thread-based
    parallelism.

                      ***

    warnings.warn(message)
  error: invalid command 'bdist_wheel'
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: /private/tmp/scikit-learn/.venv/bin/python3 /private/tmp/scikit-learn/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/in_process/_in_process.py prepare_metadata_for_build_wheel /var/folders/j9/kjwjsxpd75ngbp7lfgj8d9qc0000gn/T/tmpvq6p82lj
  cwd: /private/tmp/scikit-learn
  Preparing metadata (pyproject.toml) ... error
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
```
</details>

It probably would be nice to figure this out before the Paris sprint.

Labels: Bug, Build / CI