0s autopkgtest [16:26:08]: starting date and time: 2024-07-26 16:26:08+0000 0s autopkgtest [16:26:08]: git checkout: fd3bed09 nova: allow more retries for quota issues 0s autopkgtest [16:26:08]: host juju-7f2275-prod-proposed-migration-environment-3; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.b5xjm1fj/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:setuptools --apt-upgrade scikit-build --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=setuptools/70.3.0-2 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-3@bos03-arm64-12.secgroup --name adt-oracular-arm64-scikit-build-20240726-160312-juju-7f2275-prod-proposed-migration-environment-3-fa86325f-38f9-4513-b07e-5ca0e3119e7d --image adt/ubuntu-oracular-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-3 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 57s autopkgtest [16:27:05]: testbed dpkg architecture: arm64 57s autopkgtest [16:27:05]: testbed apt version: 2.9.6 57s autopkgtest [16:27:05]: @@@@@@@@@@@@@@@@@@@@ test bed setup 58s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease [126 kB] 58s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/universe Sources [436 kB] 58s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/main Sources [50.6 kB] 58s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse Sources [4288 B] 58s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/restricted Sources [8548 B] 58s Get:6 http://ftpmaster.internal/ubuntu oracular-proposed/main arm64 Packages [88.6 kB] 58s Get:7 http://ftpmaster.internal/ubuntu oracular-proposed/main arm64 c-n-f Metadata [2116 B] 58s Get:8 http://ftpmaster.internal/ubuntu oracular-proposed/restricted arm64 Packages [43.9 kB] 58s Get:9 http://ftpmaster.internal/ubuntu oracular-proposed/restricted arm64 c-n-f Metadata [364 B] 58s Get:10 http://ftpmaster.internal/ubuntu oracular-proposed/universe arm64 Packages [482 kB] 58s Get:11 http://ftpmaster.internal/ubuntu oracular-proposed/universe arm64 c-n-f Metadata [8752 B] 58s Get:12 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse arm64 Packages [8744 B] 58s Get:13 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse arm64 c-n-f Metadata [276 B] 60s Fetched 1261 kB in 1s (1368 kB/s) 60s Reading package lists... 63s Reading package lists... 63s Building dependency tree... 63s Reading state information... 64s Calculating upgrade... 64s The following packages will be upgraded: 64s python3-pkg-resources python3-setuptools 65s 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 65s Need to get 615 kB of archives. 65s After this operation, 464 kB of additional disk space will be used. 65s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed/main arm64 python3-setuptools all 70.3.0-2 [429 kB] 65s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main arm64 python3-pkg-resources all 70.3.0-2 [187 kB] 65s Fetched 615 kB in 1s (691 kB/s) 66s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 78607 files and directories currently installed.) 66s Preparing to unpack .../python3-setuptools_70.3.0-2_all.deb ... 66s Unpacking python3-setuptools (70.3.0-2) over (68.1.2-2ubuntu1) ... 66s Preparing to unpack .../python3-pkg-resources_70.3.0-2_all.deb ... 66s Unpacking python3-pkg-resources (70.3.0-2) over (68.1.2-2ubuntu1) ... 66s Setting up python3-pkg-resources (70.3.0-2) ... 66s Setting up python3-setuptools (70.3.0-2) ... 67s Reading package lists... 67s Building dependency tree... 67s Reading state information... 68s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 68s Hit:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease 69s Hit:2 http://ftpmaster.internal/ubuntu oracular InRelease 69s Hit:3 http://ftpmaster.internal/ubuntu oracular-updates InRelease 69s Hit:4 http://ftpmaster.internal/ubuntu oracular-security InRelease 70s Reading package lists... 70s Reading package lists... 70s Building dependency tree... 70s Reading state information... 70s Calculating upgrade... 71s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 71s Reading package lists... 71s Building dependency tree... 71s Reading state information... 72s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 76s autopkgtest [16:27:24]: testbed running kernel: Linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 02:32:42 UTC 2024 76s autopkgtest [16:27:24]: @@@@@@@@@@@@@@@@@@@@ apt-source scikit-build 79s Get:1 http://ftpmaster.internal/ubuntu oracular/universe scikit-build 0.17.6-2 (dsc) [2777 B] 79s Get:2 http://ftpmaster.internal/ubuntu oracular/universe scikit-build 0.17.6-2 (tar) [271 kB] 79s Get:3 http://ftpmaster.internal/ubuntu oracular/universe scikit-build 0.17.6-2 (diff) [5576 B] 80s gpgv: Signature made Sat Apr 27 01:25:13 2024 UTC 80s gpgv: using RSA key 13796755BBC72BB8ABE2AEB5FA9DEC5DE11C63F1 80s gpgv: issuer "eamanu@debian.org" 80s gpgv: Can't check signature: No public key 80s dpkg-source: warning: cannot verify inline signature for ./scikit-build_0.17.6-2.dsc: no acceptable signature found 81s autopkgtest [16:27:29]: testing package scikit-build version 0.17.6-2 81s autopkgtest [16:27:29]: build not needed 81s autopkgtest [16:27:29]: test testsuite: preparing testbed 87s Reading package lists... 87s Building dependency tree... 87s Reading state information... 88s Starting pkgProblemResolver with broken count: 0 88s Starting 2 pkgProblemResolver with broken count: 0 88s Done 89s The following additional packages will be installed: 89s build-essential cmake cmake-data cpp cpp-14 cpp-14-aarch64-linux-gnu 89s cpp-aarch64-linux-gnu cython3 fonts-font-awesome fonts-lato g++ g++-14 89s g++-14-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-14 89s gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu git git-man libasan8 89s libatomic1 libcc1-0 liberror-perl libexpat1-dev libgcc-14-dev libhwasan0 89s libisl23 libitm1 libjs-jquery libjs-sphinxdoc libjs-underscore libjsoncpp25 89s liblsan0 libmpc3 libpython3-all-dev libpython3-dev libpython3.12-dev 89s libpython3.12t64 librhash0 libstdc++-14-dev libtsan2 libubsan1 89s python-skbuild-doc python3-all python3-all-dev python3-build python3-dev 89s python3-distlib python3-filelock python3-iniconfig python3-packaging 89s python3-pip python3-pip-whl python3-platformdirs python3-pluggy 89s python3-pyproject-hooks python3-pytest python3-pytest-mock 89s python3-setuptools-whl python3-skbuild python3-toml python3-virtualenv 89s python3-wheel python3-wheel-whl python3.12-dev sphinx-rtd-theme-common 89s zlib1g-dev 89s Suggested packages: 89s cmake-doc cmake-format elpa-cmake-mode ninja-build cpp-doc gcc-14-locales 89s cpp-14-doc cython-doc gcc-14-doc gcc-multilib manpages-dev autoconf automake 89s libtool flex bison gdb gcc-doc gdb-aarch64-linux-gnu git-daemon-run 89s | git-daemon-sysvinit git-doc git-email git-gui gitk gitweb git-cvs 89s git-mediawiki git-svn libstdc++-14-doc python3-venv python-build-doc 89s python-pytest-mock-doc 89s Recommended packages: 89s javascript-common 89s The following NEW packages will be installed: 89s autopkgtest-satdep build-essential cmake cmake-data cpp cpp-14 89s cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu cython3 fonts-font-awesome 89s fonts-lato g++ g++-14 g++-14-aarch64-linux-gnu g++-aarch64-linux-gnu gcc 89s gcc-14 gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu git git-man libasan8 89s libatomic1 libcc1-0 liberror-perl libexpat1-dev libgcc-14-dev libhwasan0 89s libisl23 libitm1 libjs-jquery libjs-sphinxdoc libjs-underscore libjsoncpp25 89s liblsan0 libmpc3 libpython3-all-dev libpython3-dev libpython3.12-dev 89s libpython3.12t64 librhash0 libstdc++-14-dev libtsan2 libubsan1 89s python-skbuild-doc python3-all python3-all-dev python3-build python3-dev 89s python3-distlib python3-filelock python3-iniconfig python3-packaging 89s python3-pip python3-pip-whl python3-platformdirs python3-pluggy 89s python3-pyproject-hooks python3-pytest python3-pytest-mock 89s python3-setuptools-whl python3-skbuild python3-toml python3-virtualenv 89s python3-wheel python3-wheel-whl python3.12-dev sphinx-rtd-theme-common 89s zlib1g-dev 89s 0 upgraded, 69 newly installed, 0 to remove and 0 not upgraded. 89s Need to get 99.0 MB/99.0 MB of archives. 89s After this operation, 362 MB of additional disk space will be used. 89s Get:1 /tmp/autopkgtest.ElRli6/1-autopkgtest-satdep.deb autopkgtest-satdep arm64 0 [780 B] 89s Get:2 http://ftpmaster.internal/ubuntu oracular/main arm64 fonts-lato all 2.015-1 [2781 kB] 91s Get:3 http://ftpmaster.internal/ubuntu oracular/main arm64 libisl23 arm64 0.26-3build1 [669 kB] 91s Get:4 http://ftpmaster.internal/ubuntu oracular/main arm64 libmpc3 arm64 1.3.1-1build1 [56.4 kB] 91s Get:5 http://ftpmaster.internal/ubuntu oracular/main arm64 cpp-14-aarch64-linux-gnu arm64 14.1.0-5ubuntu1 [10.6 MB] 92s Get:6 http://ftpmaster.internal/ubuntu oracular/main arm64 cpp-14 arm64 14.1.0-5ubuntu1 [1030 B] 92s Get:7 http://ftpmaster.internal/ubuntu oracular/main arm64 cpp-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [5452 B] 92s Get:8 http://ftpmaster.internal/ubuntu oracular/main arm64 cpp arm64 4:14.1.0-2ubuntu1 [22.5 kB] 92s Get:9 http://ftpmaster.internal/ubuntu oracular/main arm64 libcc1-0 arm64 14.1.0-5ubuntu1 [49.6 kB] 92s Get:10 http://ftpmaster.internal/ubuntu oracular/main arm64 libitm1 arm64 14.1.0-5ubuntu1 [27.9 kB] 92s Get:11 http://ftpmaster.internal/ubuntu oracular/main arm64 libatomic1 arm64 14.1.0-5ubuntu1 [11.5 kB] 92s Get:12 http://ftpmaster.internal/ubuntu oracular/main arm64 libasan8 arm64 14.1.0-5ubuntu1 [2894 kB] 92s Get:13 http://ftpmaster.internal/ubuntu oracular/main arm64 liblsan0 arm64 14.1.0-5ubuntu1 [1283 kB] 92s Get:14 http://ftpmaster.internal/ubuntu oracular/main arm64 libtsan2 arm64 14.1.0-5ubuntu1 [2685 kB] 92s Get:15 http://ftpmaster.internal/ubuntu oracular/main arm64 libubsan1 arm64 14.1.0-5ubuntu1 [1152 kB] 93s Get:16 http://ftpmaster.internal/ubuntu oracular/main arm64 libhwasan0 arm64 14.1.0-5ubuntu1 [1598 kB] 93s Get:17 http://ftpmaster.internal/ubuntu oracular/main arm64 libgcc-14-dev arm64 14.1.0-5ubuntu1 [2596 kB] 93s Get:18 http://ftpmaster.internal/ubuntu oracular/main arm64 gcc-14-aarch64-linux-gnu arm64 14.1.0-5ubuntu1 [20.9 MB] 93s Get:19 http://ftpmaster.internal/ubuntu oracular/main arm64 gcc-14 arm64 14.1.0-5ubuntu1 [506 kB] 94s Get:20 http://ftpmaster.internal/ubuntu oracular/main arm64 gcc-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [1200 B] 94s Get:21 http://ftpmaster.internal/ubuntu oracular/main arm64 gcc arm64 4:14.1.0-2ubuntu1 [4994 B] 94s Get:22 http://ftpmaster.internal/ubuntu oracular/main arm64 libstdc++-14-dev arm64 14.1.0-5ubuntu1 [2468 kB] 94s Get:23 http://ftpmaster.internal/ubuntu oracular/main arm64 g++-14-aarch64-linux-gnu arm64 14.1.0-5ubuntu1 [12.1 MB] 94s Get:24 http://ftpmaster.internal/ubuntu oracular/main arm64 g++-14 arm64 14.1.0-5ubuntu1 [18.0 kB] 94s Get:25 http://ftpmaster.internal/ubuntu oracular/main arm64 g++-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [958 B] 94s Get:26 http://ftpmaster.internal/ubuntu oracular/main arm64 g++ arm64 4:14.1.0-2ubuntu1 [1080 B] 94s Get:27 http://ftpmaster.internal/ubuntu oracular/main arm64 build-essential arm64 12.10ubuntu1 [4932 B] 94s Get:28 http://ftpmaster.internal/ubuntu oracular/main arm64 libjsoncpp25 arm64 1.9.5-6build1 [78.2 kB] 94s Get:29 http://ftpmaster.internal/ubuntu oracular/main arm64 librhash0 arm64 1.4.3-3build1 [126 kB] 94s Get:30 http://ftpmaster.internal/ubuntu oracular/main arm64 cmake-data all 3.29.6-1 [2193 kB] 94s Get:31 http://ftpmaster.internal/ubuntu oracular/main arm64 cmake arm64 3.29.6-1 [10.5 MB] 95s Get:32 http://ftpmaster.internal/ubuntu oracular/universe arm64 cython3 arm64 3.0.10+dfsg-5ubuntu1 [2298 kB] 95s Get:33 http://ftpmaster.internal/ubuntu oracular/main arm64 fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 95s Get:34 http://ftpmaster.internal/ubuntu oracular/main arm64 liberror-perl all 0.17029-2 [25.6 kB] 95s Get:35 http://ftpmaster.internal/ubuntu oracular/main arm64 git-man all 1:2.45.2-1ubuntu1 [1122 kB] 95s Get:36 http://ftpmaster.internal/ubuntu oracular/main arm64 git arm64 1:2.45.2-1ubuntu1 [4045 kB] 95s Get:37 http://ftpmaster.internal/ubuntu oracular/main arm64 libexpat1-dev arm64 2.6.2-1 [128 kB] 95s Get:38 http://ftpmaster.internal/ubuntu oracular/main arm64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 95s Get:39 http://ftpmaster.internal/ubuntu oracular/main arm64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 95s Get:40 http://ftpmaster.internal/ubuntu oracular/main arm64 libjs-sphinxdoc all 7.3.7-3 [154 kB] 95s Get:41 http://ftpmaster.internal/ubuntu oracular/main arm64 libpython3.12t64 arm64 3.12.4-1ubuntu1 [2279 kB] 95s Get:42 http://ftpmaster.internal/ubuntu oracular/main arm64 zlib1g-dev arm64 1:1.3.dfsg-3.1ubuntu2 [894 kB] 95s Get:43 http://ftpmaster.internal/ubuntu oracular/main arm64 libpython3.12-dev arm64 3.12.4-1ubuntu1 [5518 kB] 96s Get:44 http://ftpmaster.internal/ubuntu oracular/main arm64 libpython3-dev arm64 3.12.3-0ubuntu1 [10.2 kB] 96s Get:45 http://ftpmaster.internal/ubuntu oracular/main arm64 libpython3-all-dev arm64 3.12.3-0ubuntu1 [910 B] 96s Get:46 http://ftpmaster.internal/ubuntu oracular/main arm64 sphinx-rtd-theme-common all 2.0.0+dfsg-2 [1012 kB] 96s Get:47 http://ftpmaster.internal/ubuntu oracular/universe arm64 python-skbuild-doc all 0.17.6-2 [135 kB] 96s Get:48 http://ftpmaster.internal/ubuntu oracular/main arm64 python3-all arm64 3.12.3-0ubuntu1 [888 B] 96s Get:49 http://ftpmaster.internal/ubuntu oracular/main arm64 python3.12-dev arm64 3.12.4-1ubuntu1 [498 kB] 96s Get:50 http://ftpmaster.internal/ubuntu oracular/main arm64 python3-dev arm64 3.12.3-0ubuntu1 [26.7 kB] 96s Get:51 http://ftpmaster.internal/ubuntu oracular/main arm64 python3-all-dev arm64 3.12.3-0ubuntu1 [910 B] 96s Get:52 http://ftpmaster.internal/ubuntu oracular/main arm64 python3-packaging all 24.1-1 [41.4 kB] 96s Get:53 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-pyproject-hooks all 1.1.0-2 [9916 B] 96s Get:54 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-toml all 0.10.2-1 [16.5 kB] 96s Get:55 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-wheel all 0.43.0-1 [53.5 kB] 96s Get:56 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-build all 1.2.1-1 [29.7 kB] 96s Get:57 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-distlib all 0.3.8-1 [318 kB] 96s Get:58 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-filelock all 3.15.4-1 [12.8 kB] 96s Get:59 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-iniconfig all 1.1.1-2 [6024 B] 96s Get:60 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-pip all 24.1.1+dfsg-1 [1400 kB] 96s Get:61 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-pip-whl all 24.1.1+dfsg-1 [1427 kB] 96s Get:62 http://ftpmaster.internal/ubuntu oracular/main arm64 python3-platformdirs all 4.2.1-1 [16.3 kB] 96s Get:63 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-pluggy all 1.5.0-1 [21.0 kB] 96s Get:64 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-pytest all 7.4.4-1 [305 kB] 96s Get:65 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-pytest-mock all 3.14.0-1 [11.6 kB] 96s Get:66 http://ftpmaster.internal/ubuntu oracular-proposed/universe arm64 python3-setuptools-whl all 70.3.0-2 [762 kB] 96s Get:67 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-skbuild all 0.17.6-2 [59.1 kB] 96s Get:68 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-wheel-whl all 0.43.0-1 [68.2 kB] 96s Get:69 http://ftpmaster.internal/ubuntu oracular/universe arm64 python3-virtualenv all 20.26.2+ds-1 [71.6 kB] 98s Fetched 99.0 MB in 7s (13.8 MB/s) 98s Selecting previously unselected package fonts-lato. 99s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 78667 files and directories currently installed.) 99s Preparing to unpack .../00-fonts-lato_2.015-1_all.deb ... 99s Unpacking fonts-lato (2.015-1) ... 99s Selecting previously unselected package libisl23:arm64. 99s Preparing to unpack .../01-libisl23_0.26-3build1_arm64.deb ... 99s Unpacking libisl23:arm64 (0.26-3build1) ... 99s Selecting previously unselected package libmpc3:arm64. 99s Preparing to unpack .../02-libmpc3_1.3.1-1build1_arm64.deb ... 99s Unpacking libmpc3:arm64 (1.3.1-1build1) ... 99s Selecting previously unselected package cpp-14-aarch64-linux-gnu. 99s Preparing to unpack .../03-cpp-14-aarch64-linux-gnu_14.1.0-5ubuntu1_arm64.deb ... 99s Unpacking cpp-14-aarch64-linux-gnu (14.1.0-5ubuntu1) ... 100s Selecting previously unselected package cpp-14. 100s Preparing to unpack .../04-cpp-14_14.1.0-5ubuntu1_arm64.deb ... 100s Unpacking cpp-14 (14.1.0-5ubuntu1) ... 100s Selecting previously unselected package cpp-aarch64-linux-gnu. 100s Preparing to unpack .../05-cpp-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 100s Unpacking cpp-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 100s Selecting previously unselected package cpp. 100s Preparing to unpack .../06-cpp_4%3a14.1.0-2ubuntu1_arm64.deb ... 100s Unpacking cpp (4:14.1.0-2ubuntu1) ... 100s Selecting previously unselected package libcc1-0:arm64. 100s Preparing to unpack .../07-libcc1-0_14.1.0-5ubuntu1_arm64.deb ... 100s Unpacking libcc1-0:arm64 (14.1.0-5ubuntu1) ... 100s Selecting previously unselected package libitm1:arm64. 100s Preparing to unpack .../08-libitm1_14.1.0-5ubuntu1_arm64.deb ... 100s Unpacking libitm1:arm64 (14.1.0-5ubuntu1) ... 100s Selecting previously unselected package libatomic1:arm64. 100s Preparing to unpack .../09-libatomic1_14.1.0-5ubuntu1_arm64.deb ... 100s Unpacking libatomic1:arm64 (14.1.0-5ubuntu1) ... 100s Selecting previously unselected package libasan8:arm64. 100s Preparing to unpack .../10-libasan8_14.1.0-5ubuntu1_arm64.deb ... 100s Unpacking libasan8:arm64 (14.1.0-5ubuntu1) ... 100s Selecting previously unselected package liblsan0:arm64. 101s Preparing to unpack .../11-liblsan0_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking liblsan0:arm64 (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package libtsan2:arm64. 101s Preparing to unpack .../12-libtsan2_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking libtsan2:arm64 (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package libubsan1:arm64. 101s Preparing to unpack .../13-libubsan1_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking libubsan1:arm64 (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package libhwasan0:arm64. 101s Preparing to unpack .../14-libhwasan0_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking libhwasan0:arm64 (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package libgcc-14-dev:arm64. 101s Preparing to unpack .../15-libgcc-14-dev_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking libgcc-14-dev:arm64 (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package gcc-14-aarch64-linux-gnu. 101s Preparing to unpack .../16-gcc-14-aarch64-linux-gnu_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking gcc-14-aarch64-linux-gnu (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package gcc-14. 101s Preparing to unpack .../17-gcc-14_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking gcc-14 (14.1.0-5ubuntu1) ... 101s Selecting previously unselected package gcc-aarch64-linux-gnu. 101s Preparing to unpack .../18-gcc-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 101s Unpacking gcc-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 101s Selecting previously unselected package gcc. 101s Preparing to unpack .../19-gcc_4%3a14.1.0-2ubuntu1_arm64.deb ... 101s Unpacking gcc (4:14.1.0-2ubuntu1) ... 101s Selecting previously unselected package libstdc++-14-dev:arm64. 101s Preparing to unpack .../20-libstdc++-14-dev_14.1.0-5ubuntu1_arm64.deb ... 101s Unpacking libstdc++-14-dev:arm64 (14.1.0-5ubuntu1) ... 102s Selecting previously unselected package g++-14-aarch64-linux-gnu. 102s Preparing to unpack .../21-g++-14-aarch64-linux-gnu_14.1.0-5ubuntu1_arm64.deb ... 102s Unpacking g++-14-aarch64-linux-gnu (14.1.0-5ubuntu1) ... 102s Selecting previously unselected package g++-14. 102s Preparing to unpack .../22-g++-14_14.1.0-5ubuntu1_arm64.deb ... 102s Unpacking g++-14 (14.1.0-5ubuntu1) ... 102s Selecting previously unselected package g++-aarch64-linux-gnu. 102s Preparing to unpack .../23-g++-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 102s Unpacking g++-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 102s Selecting previously unselected package g++. 102s Preparing to unpack .../24-g++_4%3a14.1.0-2ubuntu1_arm64.deb ... 102s Unpacking g++ (4:14.1.0-2ubuntu1) ... 102s Selecting previously unselected package build-essential. 103s Preparing to unpack .../25-build-essential_12.10ubuntu1_arm64.deb ... 103s Unpacking build-essential (12.10ubuntu1) ... 103s Selecting previously unselected package libjsoncpp25:arm64. 103s Preparing to unpack .../26-libjsoncpp25_1.9.5-6build1_arm64.deb ... 103s Unpacking libjsoncpp25:arm64 (1.9.5-6build1) ... 103s Selecting previously unselected package librhash0:arm64. 103s Preparing to unpack .../27-librhash0_1.4.3-3build1_arm64.deb ... 103s Unpacking librhash0:arm64 (1.4.3-3build1) ... 103s Selecting previously unselected package cmake-data. 103s Preparing to unpack .../28-cmake-data_3.29.6-1_all.deb ... 103s Unpacking cmake-data (3.29.6-1) ... 104s Selecting previously unselected package cmake. 104s Preparing to unpack .../29-cmake_3.29.6-1_arm64.deb ... 104s Unpacking cmake (3.29.6-1) ... 104s Selecting previously unselected package cython3. 104s Preparing to unpack .../30-cython3_3.0.10+dfsg-5ubuntu1_arm64.deb ... 104s Unpacking cython3 (3.0.10+dfsg-5ubuntu1) ... 104s Selecting previously unselected package fonts-font-awesome. 105s Preparing to unpack .../31-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 105s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 105s Selecting previously unselected package liberror-perl. 105s Preparing to unpack .../32-liberror-perl_0.17029-2_all.deb ... 105s Unpacking liberror-perl (0.17029-2) ... 105s Selecting previously unselected package git-man. 106s Preparing to unpack .../33-git-man_1%3a2.45.2-1ubuntu1_all.deb ... 106s Unpacking git-man (1:2.45.2-1ubuntu1) ... 106s Selecting previously unselected package git. 106s Preparing to unpack .../34-git_1%3a2.45.2-1ubuntu1_arm64.deb ... 106s Unpacking git (1:2.45.2-1ubuntu1) ... 106s Selecting previously unselected package libexpat1-dev:arm64. 106s Preparing to unpack .../35-libexpat1-dev_2.6.2-1_arm64.deb ... 106s Unpacking libexpat1-dev:arm64 (2.6.2-1) ... 106s Selecting previously unselected package libjs-jquery. 107s Preparing to unpack .../36-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 107s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 107s Selecting previously unselected package libjs-underscore. 107s Preparing to unpack .../37-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 107s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 107s Selecting previously unselected package libjs-sphinxdoc. 107s Preparing to unpack .../38-libjs-sphinxdoc_7.3.7-3_all.deb ... 107s Unpacking libjs-sphinxdoc (7.3.7-3) ... 107s Selecting previously unselected package libpython3.12t64:arm64. 107s Preparing to unpack .../39-libpython3.12t64_3.12.4-1ubuntu1_arm64.deb ... 107s Unpacking libpython3.12t64:arm64 (3.12.4-1ubuntu1) ... 107s Selecting previously unselected package zlib1g-dev:arm64. 107s Preparing to unpack .../40-zlib1g-dev_1%3a1.3.dfsg-3.1ubuntu2_arm64.deb ... 107s Unpacking zlib1g-dev:arm64 (1:1.3.dfsg-3.1ubuntu2) ... 107s Selecting previously unselected package libpython3.12-dev:arm64. 107s Preparing to unpack .../41-libpython3.12-dev_3.12.4-1ubuntu1_arm64.deb ... 107s Unpacking libpython3.12-dev:arm64 (3.12.4-1ubuntu1) ... 108s Selecting previously unselected package libpython3-dev:arm64. 108s Preparing to unpack .../42-libpython3-dev_3.12.3-0ubuntu1_arm64.deb ... 108s Unpacking libpython3-dev:arm64 (3.12.3-0ubuntu1) ... 108s Selecting previously unselected package libpython3-all-dev:arm64. 108s Preparing to unpack .../43-libpython3-all-dev_3.12.3-0ubuntu1_arm64.deb ... 108s Unpacking libpython3-all-dev:arm64 (3.12.3-0ubuntu1) ... 108s Selecting previously unselected package sphinx-rtd-theme-common. 108s Preparing to unpack .../44-sphinx-rtd-theme-common_2.0.0+dfsg-2_all.deb ... 108s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-2) ... 108s Selecting previously unselected package python-skbuild-doc. 109s Preparing to unpack .../45-python-skbuild-doc_0.17.6-2_all.deb ... 109s Unpacking python-skbuild-doc (0.17.6-2) ... 109s Selecting previously unselected package python3-all. 109s Preparing to unpack .../46-python3-all_3.12.3-0ubuntu1_arm64.deb ... 109s Unpacking python3-all (3.12.3-0ubuntu1) ... 109s Selecting previously unselected package python3.12-dev. 109s Preparing to unpack .../47-python3.12-dev_3.12.4-1ubuntu1_arm64.deb ... 109s Unpacking python3.12-dev (3.12.4-1ubuntu1) ... 109s Selecting previously unselected package python3-dev. 109s Preparing to unpack .../48-python3-dev_3.12.3-0ubuntu1_arm64.deb ... 109s Unpacking python3-dev (3.12.3-0ubuntu1) ... 109s Selecting previously unselected package python3-all-dev. 109s Preparing to unpack .../49-python3-all-dev_3.12.3-0ubuntu1_arm64.deb ... 109s Unpacking python3-all-dev (3.12.3-0ubuntu1) ... 109s Selecting previously unselected package python3-packaging. 109s Preparing to unpack .../50-python3-packaging_24.1-1_all.deb ... 109s Unpacking python3-packaging (24.1-1) ... 109s Selecting previously unselected package python3-pyproject-hooks. 109s Preparing to unpack .../51-python3-pyproject-hooks_1.1.0-2_all.deb ... 109s Unpacking python3-pyproject-hooks (1.1.0-2) ... 109s Selecting previously unselected package python3-toml. 109s Preparing to unpack .../52-python3-toml_0.10.2-1_all.deb ... 109s Unpacking python3-toml (0.10.2-1) ... 110s Selecting previously unselected package python3-wheel. 110s Preparing to unpack .../53-python3-wheel_0.43.0-1_all.deb ... 110s Unpacking python3-wheel (0.43.0-1) ... 110s Selecting previously unselected package python3-build. 110s Preparing to unpack .../54-python3-build_1.2.1-1_all.deb ... 110s Unpacking python3-build (1.2.1-1) ... 110s Selecting previously unselected package python3-distlib. 110s Preparing to unpack .../55-python3-distlib_0.3.8-1_all.deb ... 110s Unpacking python3-distlib (0.3.8-1) ... 110s Selecting previously unselected package python3-filelock. 110s Preparing to unpack .../56-python3-filelock_3.15.4-1_all.deb ... 110s Unpacking python3-filelock (3.15.4-1) ... 110s Selecting previously unselected package python3-iniconfig. 110s Preparing to unpack .../57-python3-iniconfig_1.1.1-2_all.deb ... 110s Unpacking python3-iniconfig (1.1.1-2) ... 110s Selecting previously unselected package python3-pip. 110s Preparing to unpack .../58-python3-pip_24.1.1+dfsg-1_all.deb ... 110s Unpacking python3-pip (24.1.1+dfsg-1) ... 110s Selecting previously unselected package python3-pip-whl. 110s Preparing to unpack .../59-python3-pip-whl_24.1.1+dfsg-1_all.deb ... 110s Unpacking python3-pip-whl (24.1.1+dfsg-1) ... 110s Selecting previously unselected package python3-platformdirs. 110s Preparing to unpack .../60-python3-platformdirs_4.2.1-1_all.deb ... 110s Unpacking python3-platformdirs (4.2.1-1) ... 110s Selecting previously unselected package python3-pluggy. 110s Preparing to unpack .../61-python3-pluggy_1.5.0-1_all.deb ... 110s Unpacking python3-pluggy (1.5.0-1) ... 110s Selecting previously unselected package python3-pytest. 110s Preparing to unpack .../62-python3-pytest_7.4.4-1_all.deb ... 110s Unpacking python3-pytest (7.4.4-1) ... 110s Selecting previously unselected package python3-pytest-mock. 110s Preparing to unpack .../63-python3-pytest-mock_3.14.0-1_all.deb ... 110s Unpacking python3-pytest-mock (3.14.0-1) ... 110s Selecting previously unselected package python3-setuptools-whl. 110s Preparing to unpack .../64-python3-setuptools-whl_70.3.0-2_all.deb ... 110s Unpacking python3-setuptools-whl (70.3.0-2) ... 110s Selecting previously unselected package python3-skbuild. 110s Preparing to unpack .../65-python3-skbuild_0.17.6-2_all.deb ... 110s Unpacking python3-skbuild (0.17.6-2) ... 111s Selecting previously unselected package python3-wheel-whl. 111s Preparing to unpack .../66-python3-wheel-whl_0.43.0-1_all.deb ... 111s Unpacking python3-wheel-whl (0.43.0-1) ... 111s Selecting previously unselected package python3-virtualenv. 111s Preparing to unpack .../67-python3-virtualenv_20.26.2+ds-1_all.deb ... 111s Unpacking python3-virtualenv (20.26.2+ds-1) ... 111s Selecting previously unselected package autopkgtest-satdep. 111s Preparing to unpack .../68-1-autopkgtest-satdep.deb ... 111s Unpacking autopkgtest-satdep (0) ... 111s Setting up python3-iniconfig (1.1.1-2) ... 111s Setting up python3-setuptools-whl (70.3.0-2) ... 111s Setting up python3-filelock (3.15.4-1) ... 111s Setting up fonts-lato (2.015-1) ... 111s Setting up python3-pip-whl (24.1.1+dfsg-1) ... 111s Setting up python3-all (3.12.3-0ubuntu1) ... 111s Setting up python3-distlib (0.3.8-1) ... 111s Setting up python3-wheel (0.43.0-1) ... 112s Setting up python3-platformdirs (4.2.1-1) ... 112s Setting up liberror-perl (0.17029-2) ... 112s Setting up libpython3.12t64:arm64 (3.12.4-1ubuntu1) ... 112s Setting up python3-packaging (24.1-1) ... 112s Setting up libexpat1-dev:arm64 (2.6.2-1) ... 112s Setting up python3-pyproject-hooks (1.1.0-2) ... 112s Setting up libmpc3:arm64 (1.3.1-1build1) ... 112s Setting up libatomic1:arm64 (14.1.0-5ubuntu1) ... 112s Setting up cython3 (3.0.10+dfsg-5ubuntu1) ... 113s Setting up libjsoncpp25:arm64 (1.9.5-6build1) ... 113s Setting up python3-pip (24.1.1+dfsg-1) ... 114s Setting up python3-toml (0.10.2-1) ... 114s Setting up python3-pluggy (1.5.0-1) ... 114s Setting up libubsan1:arm64 (14.1.0-5ubuntu1) ... 114s Setting up zlib1g-dev:arm64 (1:1.3.dfsg-3.1ubuntu2) ... 114s Setting up libhwasan0:arm64 (14.1.0-5ubuntu1) ... 114s Setting up librhash0:arm64 (1.4.3-3build1) ... 114s Setting up libasan8:arm64 (14.1.0-5ubuntu1) ... 114s Setting up git-man (1:2.45.2-1ubuntu1) ... 114s Setting up cmake-data (3.29.6-1) ... 114s Setting up libtsan2:arm64 (14.1.0-5ubuntu1) ... 114s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 114s Setting up libisl23:arm64 (0.26-3build1) ... 114s Setting up python3-build (1.2.1-1) ... 114s Setting up python3-wheel-whl (0.43.0-1) ... 114s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 115s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-2) ... 115s Setting up libcc1-0:arm64 (14.1.0-5ubuntu1) ... 115s Setting up liblsan0:arm64 (14.1.0-5ubuntu1) ... 115s Setting up libitm1:arm64 (14.1.0-5ubuntu1) ... 115s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 115s Setting up python3-pytest (7.4.4-1) ... 115s Setting up python3-virtualenv (20.26.2+ds-1) ... 115s Setting up libpython3.12-dev:arm64 (3.12.4-1ubuntu1) ... 115s Setting up python3.12-dev (3.12.4-1ubuntu1) ... 115s Setting up git (1:2.45.2-1ubuntu1) ... 115s Setting up libjs-sphinxdoc (7.3.7-3) ... 115s Setting up python3-pytest-mock (3.14.0-1) ... 115s Setting up cpp-14-aarch64-linux-gnu (14.1.0-5ubuntu1) ... 115s Setting up cmake (3.29.6-1) ... 115s Setting up libgcc-14-dev:arm64 (14.1.0-5ubuntu1) ... 115s Setting up libstdc++-14-dev:arm64 (14.1.0-5ubuntu1) ... 115s Setting up libpython3-dev:arm64 (3.12.3-0ubuntu1) ... 115s Setting up python-skbuild-doc (0.17.6-2) ... 115s Setting up python3-skbuild (0.17.6-2) ... 115s Setting up cpp-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 115s Setting up libpython3-all-dev:arm64 (3.12.3-0ubuntu1) ... 115s Setting up python3-dev (3.12.3-0ubuntu1) ... 115s Setting up cpp-14 (14.1.0-5ubuntu1) ... 115s Setting up cpp (4:14.1.0-2ubuntu1) ... 115s Setting up gcc-14-aarch64-linux-gnu (14.1.0-5ubuntu1) ... 115s Setting up python3-all-dev (3.12.3-0ubuntu1) ... 115s Setting up gcc-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 115s Setting up g++-14-aarch64-linux-gnu (14.1.0-5ubuntu1) ... 115s Setting up gcc-14 (14.1.0-5ubuntu1) ... 115s Setting up g++-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 115s Setting up g++-14 (14.1.0-5ubuntu1) ... 115s Setting up gcc (4:14.1.0-2ubuntu1) ... 115s Setting up g++ (4:14.1.0-2ubuntu1) ... 115s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 115s Setting up build-essential (12.10ubuntu1) ... 115s Setting up autopkgtest-satdep (0) ... 115s Processing triggers for man-db (2.12.1-2) ... 117s Processing triggers for libc-bin (2.39-0ubuntu9) ... 121s (Reading database ... 86643 files and directories currently installed.) 121s Removing autopkgtest-satdep (0) ... 121s autopkgtest [16:28:09]: test testsuite: [----------------------- 122s + cp -r tests /tmp/autopkgtest.ElRli6/autopkgtest_tmp 122s + cp pyproject.toml /tmp/autopkgtest.ElRli6/autopkgtest_tmp 122s + cd /tmp/autopkgtest.ElRli6/autopkgtest_tmp 122s + py3versions -s 122s + python3.12 -m pytest -W ignore::DeprecationWarning -k not test_hello_sdist and not test_hello_sdist_with_base and not test_sdist_with_symlinks and not test_manifest_in_sdist and not test_generator_cleanup and not test_fortran and not test_pep518_findpython and not test_pep518 and not test_dual_pep518 and not test_hello_develop and not test_install_command and not test_help_commands and not test_test_command and not test_source_distribution and not test_wheel --ignore=tests/test_distribution.py 123s ============================= test session starts ============================== 123s platform linux -- Python 3.12.4, pytest-7.4.4, pluggy-1.5.0 123s installed packages of interest: build==1.2.1 distro==1.9.0 packaging==24.1 pip==24.1.1 scikit-build==0.17.6 setuptools==70.3.0 virtualenv==20.26.2 wheel==0.43.0 123s rootdir: /tmp/autopkgtest.ElRli6/autopkgtest_tmp 123s configfile: pyproject.toml 123s testpaths: tests 123s plugins: mock-3.14.0 123s collected 241 items / 19 deselected / 1 skipped / 222 selected 123s 129s tests/test_broken_project.py ....... [ 3%] 129s tests/test_cmake_target.py . [ 3%] 131s tests/test_cmakelists_not_in_top_level_dir.py F... [ 5%] 136s tests/test_cmaker.py ............... [ 12%] 138s tests/test_command_line.py .......FFFF.. [ 18%] 138s tests/test_constants.py . [ 18%] 142s tests/test_cython_flags.py F [ 18%] 143s tests/test_filter_manifest.py F [ 19%] 155s tests/test_hello_cpp.py FFFFF [ 21%] 167s tests/test_hello_cython.py FFF [ 22%] 168s tests/test_hello_pure.py FFFF [ 24%] 169s tests/test_include_exclude_data.py FF [ 25%] 171s tests/test_issue284_build_ext_inplace.py F [ 26%] 174s tests/test_issue335_support_cmake_source_dir.py F [ 26%] 175s tests/test_issue342_cmake_osx_args_in_setup.py ......... [ 30%] 175s tests/test_issue352_isolated_environment_support.py . [ 31%] 181s tests/test_issue668_symbol_visibility.py FF [ 31%] 181s tests/test_logging.py .. [ 32%] 181s tests/test_manifest_in.py F [ 33%] 182s tests/test_outside_project_root.py ... [ 34%] 183s tests/test_platform.py .............s [ 40%] 204s tests/test_setup.py .FF......FFF..FFFF.................................. [ 64%] 210s ..........sss.sss.sss.sss.sss.sss.sss.sssFF... [ 85%] 213s tests/test_skbuild.py .sF..ssss [ 89%] 215s tests/test_skbuild_variable.py .FF [ 90%] 215s tests/test_utils.py ..................... [100%] 215s 215s =================================== FAILURES =================================== 215s __________________________________ test_build __________________________________ 215s 215s iargs = () 215s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0xe03f4de5c260>} 215s 215s @functools.wraps(fun) 215s def wrapped(*iargs, **ikwargs): 215s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 215s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 215s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 215s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 215s 215s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 215s 215s disable_languages_test = True 215s fun = 215s iargs = () 215s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0xe03f4de5c260>} 215s ret = False 215s wrapped = 215s 215s tests/__init__.py:261: 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s /usr/lib/python3.12/contextlib.py:137: in __enter__ 215s return next(self.gen) 215s self = 215s tests/__init__.py:244: in execute_setup_py 215s exec(setup_code) 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-8/test_build0') 215s setup = 215s setup_args = ['build'] 215s setup_code = at 0xe03f4e040b30, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4de36160> 215s setup.py:5: in 215s ??? 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-8/test_build0') 215s setup = 215s setup_args = ['build'] 215s setup_code = at 0xe03f4e040b30, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4de36160> 215s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 215s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 215s BinaryDistribution = .BinaryDistribution'> 215s build_ext_inplace = False 215s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 215s cmake_args_from_args = [] 215s cmake_executable = '/usr/bin/cmake' 215s cmake_install_dir = '' 215s cmake_install_target = 'install' 215s cmake_install_target_from_command = '' 215s cmake_install_target_from_setup = 'install' 215s cmake_languages = ('C', 'CXX') 215s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so'] 215s cmake_minimum_required_version = None 215s cmake_process_manifest_hook = None 215s cmake_source_dir = 'hello' 215s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 215s cmake_with_sdist = False 215s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 215s cmkr = 215s commands = ['build'] 215s config_type = 'Release' 215s data_files = {} 215s developer_mode = False 215s display_only = False 215s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 215s env_cmake_args = [] 215s force_cmake = False 215s has_cmakelists = True 215s has_invalid_arguments = False 215s help_commands = 0 215s hide_listing = False 215s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (CMakeLists not in top-level dir)', ...} 215s make_args = ['--config', 'Release'] 215s new_py_modules = {} 215s new_scripts = {} 215s original_manifestin_data_files = [] 215s original_package_data = {} 215s package = 'hello' 215s package_data = {'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 215s package_dir = {'hello': 'hello'} 215s package_prefixes = [('hello', 'hello')] 215s packages = ['hello'] 215s plat_name = None 215s process_manifest = None 215s py_modules = [] 215s scripts = [] 215s skip_cmake = False 215s skip_generator_test = False 215s skip_skbuild = False 215s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 215s return distutils.core.setup(**attrs) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (CMakeLists not in top-level dir)', ...} 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 215s return run_commands(dist) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (CMakeLists not in top-level dir)', ...} 215s dist = .BinaryDistribution object at 0xe03f4ddbbb60> 215s klass = .BinaryDistribution'> 215s ok = True 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 215s dist.run_commands() 215s dist = .BinaryDistribution object at 0xe03f4ddbbb60> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 215s self.run_command(cmd) 215s cmd = 'build' 215s self = .BinaryDistribution object at 0xe03f4ddbbb60> 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'build' 215s self = .BinaryDistribution object at 0xe03f4ddbbb60> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'build' 215s self = .BinaryDistribution object at 0xe03f4ddbbb60> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 215s self.run_command(cmd_name) 215s cmd_name = 'build_py' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'build_py' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'build_py' 215s self = .BinaryDistribution object at 0xe03f4ddbbb60> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'build_py' 215s self = .BinaryDistribution object at 0xe03f4ddbbb60> 215s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 215s self.build_packages() 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 215s self.build_module(module, module_file, package) 215s module = '__init__' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 215s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('hello', '__main__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py')] 215s package = 'hello' 215s package_ = 'hello' 215s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 215s self = 215s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 215s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 215s __class__ = 215s module = '__init__' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 215s package = 'hello' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 215s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 215s module = '__init__' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 215s package = 'hello' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 215s self.mkpath(dir) 215s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 215s module = '__init__' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 215s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 215s package = ['hello'] 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 215s dir_util.mkpath(name, mode, dry_run=self.dry_run) 215s mode = 511 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 215s self = 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 215s mode = 511, verbose = True, dry_run = False 215s 215s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 215s """Create a directory and any missing ancestor directories. 215s 215s If the directory already exists (or if 'name' is the empty string, which 215s means the current directory, which of course exists), then do nothing. 215s Raise DistutilsFileError if unable to create some directory along the way 215s (eg. some sub-path exists, but is a file rather than a directory). 215s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 215s Return the list of directories actually created. 215s 215s os.makedirs is not used because: 215s 215s a) It's new to Python 1.5.2, and 215s b) it blows up if the directory already exists (in which case it should 215s silently succeed). 215s """ 215s 215s global _path_created 215s 215s # Detect a common bug -- name is None 215s if not isinstance(name, str): 215s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 215s 215s # XXX what's the better way to handle verbosity? print as we create 215s # each directory in the path (the current behaviour), or only announce 215s # the creation of the whole path? (quite easy to do the latter since 215s # we're not using a recursive algorithm) 215s 215s name = os.path.normpath(name) 215s created_dirs = [] 215s if os.path.isdir(name) or name == '': 215s return created_dirs 215s if os.path.abspath(name) in _path_created: 215s return created_dirs 215s 215s (head, tail) = os.path.split(name) 215s tails = [tail] # stack of lone dirs to create 215s 215s while head and tail and not os.path.isdir(head): 215s (head, tail) = os.path.split(head) 215s tails.insert(0, tail) # push next higher dir onto stack 215s 215s # now 'head' contains the deepest directory that already exists 215s # (that is, the child of 'head' in 'name' is the highest directory 215s # that does *not* exist) 215s for d in tails: 215s # print "head = %s, d = %s: " % (head, d), 215s head = os.path.join(head, d) 215s abs_head = os.path.abspath(head) 215s 215s if abs_head in _path_created: 215s continue 215s 215s if verbose >= 1: 215s log.info("creating %s", head) 215s 215s if not dry_run: 215s try: 215s os.mkdir(head, mode) 215s except OSError as exc: 215s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 215s raise DistutilsFileError( 215s f"could not create '{head}': {exc.args[-1]}" 215s ) 215s created_dirs.append(head) 215s 215s > _path_created.add(abs_head) 215s E AttributeError: 'dict' object has no attribute 'add' 215s 215s abs_head = '/tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 215s d = 'lib.linux-aarch64-cpython-312' 215s dry_run = False 215s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s mode = 511 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 215s tail = 'lib.linux-aarch64-cpython-312' 215s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 215s verbose = True 215s 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 215s ----------------------------- Captured stdout call ----------------------------- 215s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-8/test_build0/.git/ 215s [master (root-commit) ec12e7a] Initial commit 215s 5 files changed, 94 insertions(+) 215s create mode 100644 hello/CMakeLists.txt 215s create mode 100644 hello/__init__.py 215s create mode 100644 hello/__main__.py 215s create mode 100644 hello/_hello.cxx 215s create mode 100644 setup.py 215s Not searching for unused variables given on the command line. 215s -- Configuring incomplete, errors occurred! 215s Not searching for unused variables given on the command line. 215s -- Configuring done (0.0s) 215s -- Generating done (0.0s) 215s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-8/test_build0/_cmake_test_compile/build 215s Not searching for unused variables given on the command line. 215s -- The C compiler identification is GNU 14.1.0 215s -- The CXX compiler identification is GNU 14.1.0 215s -- Detecting C compiler ABI info 215s -- Detecting C compiler ABI info - done 215s -- Check for working C compiler: /usr/bin/cc - skipped 215s -- Detecting C compile features 215s -- Detecting C compile features - done 215s -- Detecting CXX compiler ABI info 215s -- Detecting CXX compiler ABI info - done 215s -- Check for working CXX compiler: /usr/bin/c++ - skipped 215s -- Detecting CXX compile features 215s -- Detecting CXX compile features - done 215s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 215s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 215s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 215s -- Configuring done (1.1s) 215s -- Generating done (0.0s) 215s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-aarch64-3.12/cmake-build 215s [ 50%] Building CXX object CMakeFiles/_hello.dir/_hello.cxx.o 215s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 215s [100%] Built target _hello 215s Install the project... 215s -- Install configuration: "Release" 215s -- Installing: /tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 215s 215s 215s -------------------------------------------------------------------------------- 215s -- Trying 'Ninja' generator 215s -------------------------------- 215s --------------------------- 215s ---------------------- 215s ----------------- 215s ------------ 215s ------- 215s -- 215s -- 215s ------- 215s ------------ 215s ----------------- 215s ---------------------- 215s --------------------------- 215s -------------------------------- 215s -- Trying 'Ninja' generator - failure 215s -------------------------------------------------------------------------------- 215s 215s 215s 215s -------------------------------------------------------------------------------- 215s -- Trying 'Unix Makefiles' generator 215s -------------------------------- 215s --------------------------- 215s ---------------------- 215s ----------------- 215s ------------ 215s ------- 215s -- 215s -- 215s ------- 215s ------------ 215s ----------------- 215s ---------------------- 215s --------------------------- 215s -------------------------------- 215s -- Trying 'Unix Makefiles' generator - success 215s -------------------------------------------------------------------------------- 215s 215s Configuring Project 215s Working directory: 215s /tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-aarch64-3.12/cmake-build 215s Command: 215s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-8/test_build0/hello -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 215s 215s 215s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 215s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 215s 215s ----------------------------- Captured stderr call ----------------------------- 215s hint: Using 'master' as the name for the initial branch. This default branch name 215s hint: is subject to change. To configure the initial branch name to use in all 215s hint: of your new repositories, which will suppress this warning, call: 215s hint: 215s hint: git config --global init.defaultBranch 215s hint: 215s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 215s hint: 'development'. The just-created branch can be renamed via this command: 215s hint: 215s hint: git branch -m 215s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 215s Compatibility with CMake < 3.5 will be removed from a future version of 215s CMake. 215s 215s Update the VERSION argument value or use a ... suffix to tell 215s CMake that the project does not need compatibility with older versions. 215s 215s 215s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 215s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 215s Compatibility with CMake < 3.5 will be removed from a future version of 215s CMake. 215s 215s Update the VERSION argument value or use a ... suffix to tell 215s CMake that the project does not need compatibility with older versions. 215s 215s 215s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 215s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 215s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 215s the cmake_policy command to set the policy and suppress this warning. 215s 215s Call Stack (most recent call first): 215s CMakeLists.txt:5 (find_package) 215s This warning is for project developers. Use -Wno-dev to suppress it. 215s 215s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 215s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 215s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 215s the cmake_policy command to set the policy and suppress this warning. 215s 215s Call Stack (most recent call first): 215s CMakeLists.txt:5 (find_package) 215s This warning is for project developers. Use -Wno-dev to suppress it. 215s 215s _modinit_prefix:PyInit_ 215s ------------------------------ Captured log call ------------------------------- 215s INFO root:dist.py:986 running build 215s INFO root:dist.py:986 running build_py 215s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 215s ________________________ test_hide_listing[True-sdist] _________________________ 215s 215s action = 'sdist', hide_listing = True 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4de14680> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4de15fa0> 215s 215s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 215s @pytest.mark.parametrize("hide_listing", [True, False]) 215s def test_hide_listing(action, hide_listing, capfd, caplog): 215s cmd = [action] 215s if hide_listing: 215s cmd.insert(0, "--hide-listing") 215s 215s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 215s def run(): 215s pass 215s 215s > run() 215s 215s action = 'sdist' 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4de14680> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4de15fa0> 215s cmd = ['--hide-listing', 'sdist'] 215s hide_listing = True 215s run = .run at 0xe03f4dcc6ac0> 215s 215s tests/test_command_line.py:154: 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s tests/__init__.py:261: in wrapped 215s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 215s disable_languages_test = True 215s fun = .run at 0xe03f4dcc7420> 215s iargs = () 215s ikwargs = {} 215s ret = False 215s wrapped = .run at 0xe03f4dcc6ac0> 215s /usr/lib/python3.12/contextlib.py:137: in __enter__ 215s return next(self.gen) 215s self = 215s tests/__init__.py:244: in execute_setup_py 215s exec(setup_code) 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-28/run0') 215s setup = 215s setup_args = ['--hide-listing', 'sdist'] 215s setup_code = at 0xe03f4dcb0be0, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4de37c40> 215s setup.py:5: in 215s ??? 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-28/run0') 215s setup = 215s setup_args = ['--hide-listing', 'sdist'] 215s setup_code = at 0xe03f4dcb0be0, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4de37c40> 215s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 215s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 215s build_ext_inplace = False 215s cmake_args = () 215s cmake_args_from_args = [] 215s cmake_executable = None 215s cmake_install_dir = '' 215s cmake_install_target = 'install' 215s cmake_languages = ('C', 'CXX') 215s cmake_minimum_required_version = None 215s cmake_process_manifest_hook = None 215s cmake_source_dir = '' 215s cmake_with_sdist = False 215s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 215s commands = ['sdist'] 215s display_only = False 215s force_cmake = False 215s has_cmakelists = True 215s has_invalid_arguments = False 215s help_commands = 0 215s hide_listing = 1 215s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 215s make_args = [] 215s plat_name = None 215s skip_cmake = False 215s skip_generator_test = False 215s skip_skbuild = True 215s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 215s return distutils.core.setup(**attrs) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 215s return run_commands(dist) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 215s dist = 215s klass = 215s ok = True 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 215s dist.run_commands() 215s dist = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 215s self.run_command(cmd) 215s cmd = 'sdist' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'sdist' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'sdist' 215s self = 215s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 215s self.run_command('egg_info') 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'egg_info' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'egg_info' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'egg_info' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 215s self.mkpath(self.egg_info) 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 215s dir_util.mkpath(name, mode, dry_run=self.dry_run) 215s mode = 511 215s name = 'hello.egg-info' 215s self = 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s 215s name = 'hello.egg-info', mode = 511, verbose = True, dry_run = False 215s 215s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 215s """Create a directory and any missing ancestor directories. 215s 215s If the directory already exists (or if 'name' is the empty string, which 215s means the current directory, which of course exists), then do nothing. 215s Raise DistutilsFileError if unable to create some directory along the way 215s (eg. some sub-path exists, but is a file rather than a directory). 215s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 215s Return the list of directories actually created. 215s 215s os.makedirs is not used because: 215s 215s a) It's new to Python 1.5.2, and 215s b) it blows up if the directory already exists (in which case it should 215s silently succeed). 215s """ 215s 215s global _path_created 215s 215s # Detect a common bug -- name is None 215s if not isinstance(name, str): 215s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 215s 215s # XXX what's the better way to handle verbosity? print as we create 215s # each directory in the path (the current behaviour), or only announce 215s # the creation of the whole path? (quite easy to do the latter since 215s # we're not using a recursive algorithm) 215s 215s name = os.path.normpath(name) 215s created_dirs = [] 215s if os.path.isdir(name) or name == '': 215s return created_dirs 215s if os.path.abspath(name) in _path_created: 215s return created_dirs 215s 215s (head, tail) = os.path.split(name) 215s tails = [tail] # stack of lone dirs to create 215s 215s while head and tail and not os.path.isdir(head): 215s (head, tail) = os.path.split(head) 215s tails.insert(0, tail) # push next higher dir onto stack 215s 215s # now 'head' contains the deepest directory that already exists 215s # (that is, the child of 'head' in 'name' is the highest directory 215s # that does *not* exist) 215s for d in tails: 215s # print "head = %s, d = %s: " % (head, d), 215s head = os.path.join(head, d) 215s abs_head = os.path.abspath(head) 215s 215s if abs_head in _path_created: 215s continue 215s 215s if verbose >= 1: 215s log.info("creating %s", head) 215s 215s if not dry_run: 215s try: 215s os.mkdir(head, mode) 215s except OSError as exc: 215s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 215s raise DistutilsFileError( 215s f"could not create '{head}': {exc.args[-1]}" 215s ) 215s created_dirs.append(head) 215s 215s > _path_created.add(abs_head) 215s E AttributeError: 'dict' object has no attribute 'add' 215s 215s abs_head = '/tmp/pytest-of-ubuntu/pytest-28/run0/hello.egg-info' 215s created_dirs = ['hello.egg-info'] 215s d = 'hello.egg-info' 215s dry_run = False 215s head = 'hello.egg-info' 215s mode = 511 215s name = 'hello.egg-info' 215s tail = 'hello.egg-info' 215s tails = ['hello.egg-info'] 215s verbose = True 215s 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 215s ----------------------------- Captured stderr call ----------------------------- 215s hint: Using 'master' as the name for the initial branch. This default branch name 215s hint: is subject to change. To configure the initial branch name to use in all 215s hint: of your new repositories, which will suppress this warning, call: 215s hint: 215s hint: git config --global init.defaultBranch 215s hint: 215s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 215s hint: 'development'. The just-created branch can be renamed via this command: 215s hint: 215s hint: git branch -m 215s ------------------------------ Captured log call ------------------------------- 215s INFO root:dist.py:986 running sdist 215s INFO root:dist.py:986 running generate_source_manifest 215s INFO root:dist.py:986 running egg_info 215s INFO root:dir_util.py:70 creating hello.egg-info 215s _____________________ test_hide_listing[True-bdist_wheel] ______________________ 215s 215s action = 'bdist_wheel', hide_listing = True 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dcce8a0> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4de17980> 215s 215s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 215s @pytest.mark.parametrize("hide_listing", [True, False]) 215s def test_hide_listing(action, hide_listing, capfd, caplog): 215s cmd = [action] 215s if hide_listing: 215s cmd.insert(0, "--hide-listing") 215s 215s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 215s def run(): 215s pass 215s 215s > run() 215s 215s action = 'bdist_wheel' 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dcce8a0> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4de17980> 215s cmd = ['--hide-listing', 'bdist_wheel'] 215s hide_listing = True 215s run = .run at 0xe03f4dcc7d80> 215s 215s tests/test_command_line.py:154: 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s tests/__init__.py:261: in wrapped 215s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 215s disable_languages_test = True 215s fun = .run at 0xe03f4dcc7920> 215s iargs = () 215s ikwargs = {} 215s ret = False 215s wrapped = .run at 0xe03f4dcc7d80> 215s /usr/lib/python3.12/contextlib.py:137: in __enter__ 215s return next(self.gen) 215s self = 215s tests/__init__.py:244: in execute_setup_py 215s exec(setup_code) 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-29/run0') 215s setup = 215s setup_args = ['--hide-listing', 'bdist_wheel'] 215s setup_code = at 0xe03f4dcb2560, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4de762a0> 215s setup.py:5: in 215s ??? 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-29/run0') 215s setup = 215s setup_args = ['--hide-listing', 'bdist_wheel'] 215s setup_code = at 0xe03f4dcb2560, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4de762a0> 215s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 215s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 215s BinaryDistribution = .BinaryDistribution'> 215s build_ext_inplace = False 215s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 215s cmake_args_from_args = [] 215s cmake_executable = '/usr/bin/cmake' 215s cmake_install_dir = '' 215s cmake_install_target = 'install' 215s cmake_install_target_from_command = '' 215s cmake_install_target_from_setup = 'install' 215s cmake_languages = ('C', 'CXX') 215s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 215s cmake_minimum_required_version = None 215s cmake_process_manifest_hook = None 215s cmake_source_dir = '' 215s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 215s cmake_with_sdist = False 215s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 215s cmkr = 215s commands = ['bdist_wheel'] 215s config_type = 'Release' 215s data_files = {} 215s developer_mode = False 215s display_only = False 215s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 215s env_cmake_args = [] 215s force_cmake = False 215s has_cmakelists = True 215s has_invalid_arguments = False 215s help_commands = 0 215s hide_listing = 1 215s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 215s make_args = ['--config', 'Release'] 215s new_py_modules = {'bonjourModule': False, 'helloModule': True} 215s new_scripts = {} 215s original_manifestin_data_files = [] 215s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 215s package = 'hello' 215s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['world.py', '__init__.py', '__main__.py']} 215s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 215s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 215s packages = ['bonjour', 'hello'] 215s plat_name = None 215s process_manifest = None 215s py_modules = ['bonjourModule', 'helloModule'] 215s scripts = [] 215s skip_cmake = False 215s skip_generator_test = False 215s skip_skbuild = False 215s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 215s return distutils.core.setup(**attrs) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 215s return run_commands(dist) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 215s dist = .BinaryDistribution object at 0xe03f4dccc650> 215s klass = .BinaryDistribution'> 215s ok = True 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 215s dist.run_commands() 215s dist = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 215s self.run_command(cmd) 215s cmd = 'bdist_wheel' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'bdist_wheel' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'bdist_wheel' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s old_write_files = 215s self = 215s update_write_files = .update_write_files at 0xe03f4dd2c2c0> 215s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 215s self.run_command("build") 215s build_ext = 215s build_scripts = 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'build' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'build' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'build' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 215s self.run_command(cmd_name) 215s cmd_name = 'build_py' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'build_py' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'build_py' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'build_py' 215s self = .BinaryDistribution object at 0xe03f4dccc650> 215s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 215s self.build_modules() 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 215s self.build_module(module, module_file, package) 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 215s package = '' 215s self = 215s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 215s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 215s __class__ = 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s package = '' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 215s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s package = '' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 215s self.mkpath(dir) 215s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 215s package = [''] 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 215s dir_util.mkpath(name, mode, dry_run=self.dry_run) 215s mode = 511 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s self = 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s mode = 511, verbose = True, dry_run = False 215s 215s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 215s """Create a directory and any missing ancestor directories. 215s 215s If the directory already exists (or if 'name' is the empty string, which 215s means the current directory, which of course exists), then do nothing. 215s Raise DistutilsFileError if unable to create some directory along the way 215s (eg. some sub-path exists, but is a file rather than a directory). 215s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 215s Return the list of directories actually created. 215s 215s os.makedirs is not used because: 215s 215s a) It's new to Python 1.5.2, and 215s b) it blows up if the directory already exists (in which case it should 215s silently succeed). 215s """ 215s 215s global _path_created 215s 215s # Detect a common bug -- name is None 215s if not isinstance(name, str): 215s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 215s 215s # XXX what's the better way to handle verbosity? print as we create 215s # each directory in the path (the current behaviour), or only announce 215s # the creation of the whole path? (quite easy to do the latter since 215s # we're not using a recursive algorithm) 215s 215s name = os.path.normpath(name) 215s created_dirs = [] 215s if os.path.isdir(name) or name == '': 215s return created_dirs 215s if os.path.abspath(name) in _path_created: 215s return created_dirs 215s 215s (head, tail) = os.path.split(name) 215s tails = [tail] # stack of lone dirs to create 215s 215s while head and tail and not os.path.isdir(head): 215s (head, tail) = os.path.split(head) 215s tails.insert(0, tail) # push next higher dir onto stack 215s 215s # now 'head' contains the deepest directory that already exists 215s # (that is, the child of 'head' in 'name' is the highest directory 215s # that does *not* exist) 215s for d in tails: 215s # print "head = %s, d = %s: " % (head, d), 215s head = os.path.join(head, d) 215s abs_head = os.path.abspath(head) 215s 215s if abs_head in _path_created: 215s continue 215s 215s if verbose >= 1: 215s log.info("creating %s", head) 215s 215s if not dry_run: 215s try: 215s os.mkdir(head, mode) 215s except OSError as exc: 215s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 215s raise DistutilsFileError( 215s f"could not create '{head}': {exc.args[-1]}" 215s ) 215s created_dirs.append(head) 215s 215s > _path_created.add(abs_head) 215s E AttributeError: 'dict' object has no attribute 'add' 215s 215s abs_head = '/tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 215s d = 'lib.linux-aarch64-cpython-312' 215s dry_run = False 215s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s mode = 511 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s tail = 'lib.linux-aarch64-cpython-312' 215s tails = ['lib.linux-aarch64-cpython-312'] 215s verbose = True 215s 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 215s ----------------------------- Captured stdout call ----------------------------- 215s 215s 215s -------------------------------------------------------------------------------- 215s -- Trying 'Ninja' generator 215s -------------------------------- 215s --------------------------- 215s ---------------------- 215s ----------------- 215s ------------ 215s ------- 215s -- 215s Not searching for unused variables given on the command line. 215s -- Configuring incomplete, errors occurred! 215s -- 215s ------- 215s ------------ 215s ----------------- 215s ---------------------- 215s --------------------------- 215s -------------------------------- 215s -- Trying 'Ninja' generator - failure 215s -------------------------------------------------------------------------------- 215s 215s 215s 215s -------------------------------------------------------------------------------- 215s -- Trying 'Unix Makefiles' generator 215s -------------------------------- 215s --------------------------- 215s ---------------------- 215s ----------------- 215s ------------ 215s ------- 215s -- 215s Not searching for unused variables given on the command line. 215s -- Configuring done (0.0s) 215s -- Generating done (0.0s) 215s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-29/run0/_cmake_test_compile/build 215s -- 215s ------- 215s ------------ 215s ----------------- 215s ---------------------- 215s --------------------------- 215s -------------------------------- 215s -- Trying 'Unix Makefiles' generator - success 215s -------------------------------------------------------------------------------- 215s 215s Configuring Project 215s Working directory: 215s /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-aarch64-3.12/cmake-build 215s Command: 215s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-29/run0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 215s 215s Not searching for unused variables given on the command line. 215s -- Configuring done (0.0s) 215s -- Generating done (0.0s) 215s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-aarch64-3.12/cmake-build 215s Install the project... 215s -- Install configuration: "Release" 215s -- Installing: /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 215s -- Installing: /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 215s 215s 215s ----------------------------- Captured stderr call ----------------------------- 215s hint: Using 'master' as the name for the initial branch. This default branch name 215s hint: is subject to change. To configure the initial branch name to use in all 215s hint: of your new repositories, which will suppress this warning, call: 215s hint: 215s hint: git config --global init.defaultBranch 215s hint: 215s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 215s hint: 'development'. The just-created branch can be renamed via this command: 215s hint: 215s hint: git branch -m 215s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 215s Compatibility with CMake < 3.5 will be removed from a future version of 215s CMake. 215s 215s Update the VERSION argument value or use a ... suffix to tell 215s CMake that the project does not need compatibility with older versions. 215s 215s 215s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 215s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 215s Compatibility with CMake < 3.5 will be removed from a future version of 215s CMake. 215s 215s Update the VERSION argument value or use a ... suffix to tell 215s CMake that the project does not need compatibility with older versions. 215s 215s 215s ------------------------------ Captured log call ------------------------------- 215s INFO root:dist.py:986 running bdist_wheel 215s INFO root:dist.py:986 running build 215s INFO root:dist.py:986 running build_py 215s ________________________ test_hide_listing[False-sdist] ________________________ 215s 215s action = 'sdist', hide_listing = False 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4de16ea0> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4de45160> 215s 215s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 215s @pytest.mark.parametrize("hide_listing", [True, False]) 215s def test_hide_listing(action, hide_listing, capfd, caplog): 215s cmd = [action] 215s if hide_listing: 215s cmd.insert(0, "--hide-listing") 215s 215s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 215s def run(): 215s pass 215s 215s > run() 215s 215s action = 'sdist' 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4de16ea0> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4de45160> 215s cmd = ['sdist'] 215s hide_listing = False 215s run = .run at 0xe03f4dcc5580> 215s 215s tests/test_command_line.py:154: 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s tests/__init__.py:261: in wrapped 215s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 215s disable_languages_test = True 215s fun = .run at 0xe03f4dcc7ec0> 215s iargs = () 215s ikwargs = {} 215s ret = False 215s wrapped = .run at 0xe03f4dcc5580> 215s /usr/lib/python3.12/contextlib.py:137: in __enter__ 215s return next(self.gen) 215s self = 215s tests/__init__.py:244: in execute_setup_py 215s exec(setup_code) 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-30/run0') 215s setup = 215s setup_args = ['sdist'] 215s setup_code = at 0xe03f4dcb0360, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc6a20> 215s setup.py:5: in 215s ??? 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-30/run0') 215s setup = 215s setup_args = ['sdist'] 215s setup_code = at 0xe03f4dcb0360, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc6a20> 215s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 215s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 215s build_ext_inplace = False 215s cmake_args = () 215s cmake_args_from_args = [] 215s cmake_executable = None 215s cmake_install_dir = '' 215s cmake_install_target = 'install' 215s cmake_languages = ('C', 'CXX') 215s cmake_minimum_required_version = None 215s cmake_process_manifest_hook = None 215s cmake_source_dir = '' 215s cmake_with_sdist = False 215s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 215s commands = ['sdist'] 215s display_only = False 215s force_cmake = False 215s has_cmakelists = True 215s has_invalid_arguments = False 215s help_commands = 0 215s hide_listing = False 215s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 215s make_args = [] 215s plat_name = None 215s skip_cmake = False 215s skip_generator_test = False 215s skip_skbuild = True 215s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 215s return distutils.core.setup(**attrs) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 215s return run_commands(dist) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 215s dist = 215s klass = 215s ok = True 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 215s dist.run_commands() 215s dist = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 215s self.run_command(cmd) 215s cmd = 'sdist' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'sdist' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'sdist' 215s self = 215s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 215s self.run_command('egg_info') 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'egg_info' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'egg_info' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'egg_info' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 215s self.mkpath(self.egg_info) 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 215s dir_util.mkpath(name, mode, dry_run=self.dry_run) 215s mode = 511 215s name = 'hello.egg-info' 215s self = 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s 215s name = 'hello.egg-info', mode = 511, verbose = True, dry_run = False 215s 215s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 215s """Create a directory and any missing ancestor directories. 215s 215s If the directory already exists (or if 'name' is the empty string, which 215s means the current directory, which of course exists), then do nothing. 215s Raise DistutilsFileError if unable to create some directory along the way 215s (eg. some sub-path exists, but is a file rather than a directory). 215s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 215s Return the list of directories actually created. 215s 215s os.makedirs is not used because: 215s 215s a) It's new to Python 1.5.2, and 215s b) it blows up if the directory already exists (in which case it should 215s silently succeed). 215s """ 215s 215s global _path_created 215s 215s # Detect a common bug -- name is None 215s if not isinstance(name, str): 215s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 215s 215s # XXX what's the better way to handle verbosity? print as we create 215s # each directory in the path (the current behaviour), or only announce 215s # the creation of the whole path? (quite easy to do the latter since 215s # we're not using a recursive algorithm) 215s 215s name = os.path.normpath(name) 215s created_dirs = [] 215s if os.path.isdir(name) or name == '': 215s return created_dirs 215s if os.path.abspath(name) in _path_created: 215s return created_dirs 215s 215s (head, tail) = os.path.split(name) 215s tails = [tail] # stack of lone dirs to create 215s 215s while head and tail and not os.path.isdir(head): 215s (head, tail) = os.path.split(head) 215s tails.insert(0, tail) # push next higher dir onto stack 215s 215s # now 'head' contains the deepest directory that already exists 215s # (that is, the child of 'head' in 'name' is the highest directory 215s # that does *not* exist) 215s for d in tails: 215s # print "head = %s, d = %s: " % (head, d), 215s head = os.path.join(head, d) 215s abs_head = os.path.abspath(head) 215s 215s if abs_head in _path_created: 215s continue 215s 215s if verbose >= 1: 215s log.info("creating %s", head) 215s 215s if not dry_run: 215s try: 215s os.mkdir(head, mode) 215s except OSError as exc: 215s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 215s raise DistutilsFileError( 215s f"could not create '{head}': {exc.args[-1]}" 215s ) 215s created_dirs.append(head) 215s 215s > _path_created.add(abs_head) 215s E AttributeError: 'dict' object has no attribute 'add' 215s 215s abs_head = '/tmp/pytest-of-ubuntu/pytest-30/run0/hello.egg-info' 215s created_dirs = ['hello.egg-info'] 215s d = 'hello.egg-info' 215s dry_run = False 215s head = 'hello.egg-info' 215s mode = 511 215s name = 'hello.egg-info' 215s tail = 'hello.egg-info' 215s tails = ['hello.egg-info'] 215s verbose = True 215s 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 215s ----------------------------- Captured stderr call ----------------------------- 215s hint: Using 'master' as the name for the initial branch. This default branch name 215s hint: is subject to change. To configure the initial branch name to use in all 215s hint: of your new repositories, which will suppress this warning, call: 215s hint: 215s hint: git config --global init.defaultBranch 215s hint: 215s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 215s hint: 'development'. The just-created branch can be renamed via this command: 215s hint: 215s hint: git branch -m 215s ------------------------------ Captured log call ------------------------------- 215s INFO root:dist.py:986 running sdist 215s INFO root:dist.py:986 running generate_source_manifest 215s INFO root:dist.py:986 running egg_info 215s INFO root:dir_util.py:70 creating hello.egg-info 215s _____________________ test_hide_listing[False-bdist_wheel] _____________________ 215s 215s action = 'bdist_wheel', hide_listing = False 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dce3c20> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4dce2750> 215s 215s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 215s @pytest.mark.parametrize("hide_listing", [True, False]) 215s def test_hide_listing(action, hide_listing, capfd, caplog): 215s cmd = [action] 215s if hide_listing: 215s cmd.insert(0, "--hide-listing") 215s 215s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 215s def run(): 215s pass 215s 215s > run() 215s 215s action = 'bdist_wheel' 215s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dce3c20> 215s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4dce2750> 215s cmd = ['bdist_wheel'] 215s hide_listing = False 215s run = .run at 0xe03f4df81da0> 215s 215s tests/test_command_line.py:154: 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s tests/__init__.py:261: in wrapped 215s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 215s disable_languages_test = True 215s fun = .run at 0xe03f4dcc7380> 215s iargs = () 215s ikwargs = {} 215s ret = False 215s wrapped = .run at 0xe03f4df81da0> 215s /usr/lib/python3.12/contextlib.py:137: in __enter__ 215s return next(self.gen) 215s self = 215s tests/__init__.py:244: in execute_setup_py 215s exec(setup_code) 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-31/run0') 215s setup = 215s setup_args = ['bdist_wheel'] 215s setup_code = at 0xe03f4dcb18a0, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc53a0> 215s setup.py:5: in 215s ??? 215s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 215s disable_languages_test = True 215s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 215s original_write_test_cmakelist = 215s platform = 215s project_dir = local('/tmp/pytest-of-ubuntu/pytest-31/run0') 215s setup = 215s setup_args = ['bdist_wheel'] 215s setup_code = at 0xe03f4dcb18a0, file "setup.py", line 1> 215s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc53a0> 215s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 215s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 215s BinaryDistribution = .BinaryDistribution'> 215s build_ext_inplace = False 215s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 215s cmake_args_from_args = [] 215s cmake_executable = '/usr/bin/cmake' 215s cmake_install_dir = '' 215s cmake_install_target = 'install' 215s cmake_install_target_from_command = '' 215s cmake_install_target_from_setup = 'install' 215s cmake_languages = ('C', 'CXX') 215s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 215s cmake_minimum_required_version = None 215s cmake_process_manifest_hook = None 215s cmake_source_dir = '' 215s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 215s cmake_with_sdist = False 215s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 215s cmkr = 215s commands = ['bdist_wheel'] 215s config_type = 'Release' 215s data_files = {} 215s developer_mode = False 215s display_only = False 215s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 215s env_cmake_args = [] 215s force_cmake = False 215s has_cmakelists = True 215s has_invalid_arguments = False 215s help_commands = 0 215s hide_listing = False 215s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 215s make_args = ['--config', 'Release'] 215s new_py_modules = {'bonjourModule': False, 'helloModule': True} 215s new_scripts = {} 215s original_manifestin_data_files = [] 215s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 215s package = 'hello' 215s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['world.py', '__init__.py', '__main__.py']} 215s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 215s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 215s packages = ['bonjour', 'hello'] 215s plat_name = None 215s process_manifest = None 215s py_modules = ['bonjourModule', 'helloModule'] 215s scripts = [] 215s skip_cmake = False 215s skip_generator_test = False 215s skip_skbuild = False 215s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 215s return distutils.core.setup(**attrs) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 215s return run_commands(dist) 215s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 215s dist = .BinaryDistribution object at 0xe03f4dd567e0> 215s klass = .BinaryDistribution'> 215s ok = True 215s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 215s dist.run_commands() 215s dist = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 215s self.run_command(cmd) 215s cmd = 'bdist_wheel' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'bdist_wheel' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'bdist_wheel' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s old_write_files = 215s self = 215s update_write_files = .update_write_files at 0xe03f4dcc6de0> 215s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 215s self.run_command("build") 215s build_ext = 215s build_scripts = 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'build' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'build' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'build' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 215s self.run_command(cmd_name) 215s cmd_name = 'build_py' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 215s self.distribution.run_command(command) 215s command = 'build_py' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 215s super().run_command(command) 215s __class__ = 215s command = 'build_py' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 215s cmd_obj.run() 215s cmd_obj = 215s command = 'build_py' 215s self = .BinaryDistribution object at 0xe03f4dd567e0> 215s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 215s super().run(*args, **kwargs) 215s __class__ = 215s args = () 215s kwargs = {} 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 215s self.build_modules() 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 215s self.build_module(module, module_file, package) 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 215s package = '' 215s self = 215s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 215s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 215s __class__ = 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s package = '' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 215s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s package = '' 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 215s self.mkpath(dir) 215s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s module = 'bonjourModule' 215s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 215s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 215s package = [''] 215s self = 215s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 215s dir_util.mkpath(name, mode, dry_run=self.dry_run) 215s mode = 511 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s self = 215s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 215s 215s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 215s mode = 511, verbose = True, dry_run = False 215s 215s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 215s """Create a directory and any missing ancestor directories. 215s 215s If the directory already exists (or if 'name' is the empty string, which 215s means the current directory, which of course exists), then do nothing. 215s Raise DistutilsFileError if unable to create some directory along the way 215s (eg. some sub-path exists, but is a file rather than a directory). 215s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 215s Return the list of directories actually created. 215s 215s os.makedirs is not used because: 215s 215s a) It's new to Python 1.5.2, and 215s b) it blows up if the directory already exists (in which case it should 215s silently succeed). 215s """ 215s 215s global _path_created 215s 215s # Detect a common bug -- name is None 215s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-31/run0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-31/run0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ___________________________ test_hello_cython_builds ___________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = False 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7c130, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7c130, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'cython_flags' 216s package_data = {'cython_flags': ['_hello.cpython-312-aarch64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 216s package_dir = {'cython_flags': 'hello'} 216s package_prefixes = [('hello', 'cython_flags')] 216s packages = ['cython_flags'] 216s plat_name = None 216s prefix = 'hello' 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s dist = .BinaryDistribution object at 0xe03f4dd7d250> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dd7d250> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd7d250> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd7d250> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd7d250> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd7d250> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd7d250> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('cython_flags', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('cython_flags', '__main__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py')] 216s package = 'cython_flags' 216s package_ = 'cython_flags' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'cython_flags' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'cython_flags' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/cython_flags' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/cython_flags/__init__.py' 216s package = ['cython_flags'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/cython_flags' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/cython_flags' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/cython_flags' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'cython_flags'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/.git/ 216s [master (root-commit) 3ad53e2] Initial commit 216s 6 files changed, 40 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.pyx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.6s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Found Cython: /usr/bin/cython 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.2s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 33%] Generating CXX source hello/_hello.cxx 216s [ 66%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/hello/_hello.pyx 216s tree = Parsing.p_module(s, pxd, full_module_name) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ___________________________ test_bdist_wheel_command ___________________________ 216s 216s def test_bdist_wheel_command(): 216s project = "test-filter-manifest" 216s 216s expected_content = [ 216s "hello/__init__.py", 216s "hello/swig_mwe.py", 216s "hello/_swig_mwe.pyd", 216s "hello-1.2.3.data/data/bin/hello", 216s ] 216s 216s expected_distribution_name = "hello-1.2.3" 216s 216s tmp_dir = _tmpdir("test_bdist_wheel_command") 216s prepare_project(project, tmp_dir) 216s initialize_git_repo_and_commit(tmp_dir, verbose=True) 216s 216s relative_setup_path = "wrapping/python/" 216s 216s > with execute_setup_py(tmp_dir.join(relative_setup_path), ["bdist_wheel"]): 216s 216s expected_content = ['hello/__init__.py', 'hello/swig_mwe.py', 'hello/_swig_mwe.pyd', 'hello-1.2.3.data/data/bin/hello'] 216s expected_distribution_name = 'hello-1.2.3' 216s project = 'test-filter-manifest' 216s relative_setup_path = 'wrapping/python/' 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0') 216s 216s tests/test_filter_manifest.py:27: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s exclude_dev_files = 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dcb1680, file "setup.py", line 1> 216s setup.py:10: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s exclude_dev_files = 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dcb1680, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/bin/hello', '_skbuild/linux-aarch64-3.12/cmake-install/hello/swig_mwe.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_swig_mwe.pyd'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = 216s cmake_source_dir = '../../' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_files = {'bin': {'_skbuild/linux-aarch64-3.12/cmake-install/bin/hello'}} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0xe03f4dd832f0> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4de75e40> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd832f0> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('hello', 'swig_mwe', '_skbuild/linux-aarch64-3.12/cmake-install/hello/swig_mwe.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/.git/ 216s [master (root-commit) 4b8ae76] Initial commit 216s 4 files changed, 60 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 wrapping/python/CMakeLists.txt 216s create mode 100644 wrapping/python/hello/__init__.py 216s create mode 100644 wrapping/python/setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.4s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/include/bar.h 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/include/foo.h 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/lib/static/libbar.a 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/lib/static/libfoo.a 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/bin/hello 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/hello/swig_mwe.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/hello/_swig_mwe.pyd 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ______________________________ test_hello_builds _______________________________ 216s 216s def test_hello_builds(): 216s with push_dir(): 216s 216s @project_setup_py_test("hello-cpp", ["build"], ret=True) 216s def run(): 216s pass 216s 216s # Check that a project can be build twice in a row 216s # See issue scikit-build#120 216s > tmp_dir = run()[0] 216s 216s run = .run at 0xe03f4dd2cea0> 216s 216s tests/test_hello_cpp.py:30: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = False 216s fun = .run at 0xe03f4dd2fba0> 216s iargs = () 216s ikwargs = {} 216s ret = True 216s wrapped = .run at 0xe03f4dd2cea0> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-36/run0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dd789c0, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-36/run0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dd789c0, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bonjourModule': False, 'helloModule': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 216s package = 'hello' 216s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 216s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 216s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 216s packages = ['bonjour', 'hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['bonjourModule', 'helloModule'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4d811010> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d811010> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4d811010> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d811010> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d811010> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d811010> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d811010> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-36/run0/.git/ 216s [master (root-commit) 5f4c252] Initial commit 216s 11 files changed, 115 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 bonjour/__init__.py 216s create mode 100644 bonjour/data/ciel.txt 216s create mode 100644 bonjour/data/soleil.txt 216s create mode 100644 bonjour/data/terre.txt 216s create mode 100644 bonjourModule.py 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.4s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-36/run0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-36/run0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s _______________________________ test_hello_wheel _______________________________ 216s 216s def test_hello_wheel(): 216s expected_content = [ 216s f"hello/_hello{get_ext_suffix()}", 216s "hello/__init__.py", 216s "hello/__main__.py", 216s "hello/world.py", 216s "helloModule.py", 216s "bonjour/__init__.py", 216s "bonjour/data/ciel.txt", 216s "bonjour/data/soleil.txt", 216s "bonjour/data/terre.txt", 216s "bonjourModule.py", 216s ] 216s 216s expected_distribution_name = "hello-1.2.3" 216s 216s @project_setup_py_test("hello-cpp", ["bdist_wheel"], ret=True) 216s def build_wheel(): 216s whls = glob.glob("dist/*.whl") 216s assert len(whls) == 1 216s check_wheel_content(whls[0], expected_distribution_name, expected_content) 216s os.remove(whls[0]) 216s assert not os.path.exists(whls[0]) 216s 216s assert os.path.exists(os.path.join(CMAKE_BUILD_DIR(), "CMakeCache.txt")) 216s os.remove(os.path.join(CMAKE_BUILD_DIR(), "CMakeCache.txt")) 216s 216s > tmp_dir = build_wheel()[0] 216s 216s build_wheel = .build_wheel at 0xe03f4dd41800> 216s expected_content = ['hello/_hello.cpython-312-aarch64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py', 'hello/world.py', 'helloModule.py', 'bonjour/__init__.py', ...] 216s expected_distribution_name = 'hello-1.2.3' 216s 216s tests/test_hello_cpp.py:98: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = False 216s fun = .build_wheel at 0xe03f4dd40540> 216s iargs = () 216s ikwargs = {} 216s ret = True 216s wrapped = .build_wheel at 0xe03f4dd41800> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-37/build_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dd79f00, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-37/build_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dd79f00, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bonjourModule': False, 'helloModule': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 216s package = 'hello' 216s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 216s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 216s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 216s packages = ['bonjour', 'hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['bonjourModule', 'helloModule'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4d811670> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4e03db20> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d811670> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/.git/ 216s [master (root-commit) ed6d3b3] Initial commit 216s 11 files changed, 115 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 bonjour/__init__.py 216s create mode 100644 bonjour/data/ciel.txt 216s create mode 100644 bonjour/data/soleil.txt 216s create mode 100644 bonjour/data/terre.txt 216s create mode 100644 bonjourModule.py 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.4s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-37/build_wheel0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ________________________ test_hello_clean[with-dry-run] ________________________ 216s 216s dry_run = True 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dd316a0> 216s 216s @pytest.mark.parametrize("dry_run", ["with-dry-run", "without-dry-run"]) 216s def test_hello_clean(dry_run, capfd): 216s with push_dir(): 216s dry_run = dry_run == "with-dry-run" 216s 216s @project_setup_py_test("hello-cpp", ["build"], ret=True) 216s def run_build(): 216s pass 216s 216s > tmp_dir = run_build()[0] 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dd316a0> 216s dry_run = True 216s run_build = .run_build at 0xe03f4dd2de40> 216s 216s tests/test_hello_cpp.py:119: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = False 216s fun = .run_build at 0xe03f4dd2f7e0> 216s iargs = () 216s ikwargs = {} 216s ret = True 216s wrapped = .run_build at 0xe03f4dd2de40> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-38/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dcb1680, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-38/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dcb1680, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bonjourModule': False, 'helloModule': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 216s package = 'hello' 216s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 216s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 216s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 216s packages = ['bonjour', 'hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['bonjourModule', 'helloModule'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd7c5c0> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-38/run_build0/.git/ 216s [master (root-commit) aadb6e1] Initial commit 216s 11 files changed, 115 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 bonjour/__init__.py 216s create mode 100644 bonjour/data/ciel.txt 216s create mode 100644 bonjour/data/soleil.txt 216s create mode 100644 bonjour/data/terre.txt 216s create mode 100644 bonjourModule.py 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.7s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-38/run_build0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.6s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ______________________ test_hello_clean[without-dry-run] _______________________ 216s 216s dry_run = False 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dd7c320> 216s 216s @pytest.mark.parametrize("dry_run", ["with-dry-run", "without-dry-run"]) 216s def test_hello_clean(dry_run, capfd): 216s with push_dir(): 216s dry_run = dry_run == "with-dry-run" 216s 216s @project_setup_py_test("hello-cpp", ["build"], ret=True) 216s def run_build(): 216s pass 216s 216s > tmp_dir = run_build()[0] 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dd7c320> 216s dry_run = False 216s run_build = .run_build at 0xe03f4dd2eb60> 216s 216s tests/test_hello_cpp.py:119: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = False 216s fun = .run_build at 0xe03f4dd2cae0> 216s iargs = () 216s ikwargs = {} 216s ret = True 216s wrapped = .run_build at 0xe03f4dd2eb60> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-39/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dcb0250, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-39/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dcb0250, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bonjourModule': False, 'helloModule': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 216s package = 'hello' 216s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 216s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 216s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 216s packages = ['bonjour', 'hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['bonjourModule', 'helloModule'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4dd31760> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dd31760> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd31760> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd31760> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dd31760> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd31760> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dd31760> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-39/run_build0/.git/ 216s [master (root-commit) bfc618d] Initial commit 216s 11 files changed, 115 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 bonjour/__init__.py 216s create mode 100644 bonjour/data/ciel.txt 216s create mode 100644 bonjour/data/soleil.txt 216s create mode 100644 bonjour/data/terre.txt 216s create mode 100644 bonjourModule.py 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.4s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-39/run_build0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ______________________________ test_hello_cleans _______________________________ 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dd7ede0> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4dd810d0> 216s 216s def test_hello_cleans(capfd, caplog): 216s with push_dir(): 216s tmp_dir = _tmpdir("test_hello_cleans") 216s 216s _copy_dir(tmp_dir, os.path.join(SAMPLES_DIR, "hello-cpp")) 216s 216s @project_setup_py_test("hello-cpp", ["build"], tmp_dir=tmp_dir) 216s def run_build(): 216s pass 216s 216s @project_setup_py_test("hello-cpp", ["clean"], tmp_dir=tmp_dir) 216s def run_clean(): 216s pass 216s 216s # Check that a project can be cleaned twice in a row 216s > run_build() 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4dd7ede0> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4dd810d0> 216s run_build = .run_build at 0xe03f4dd2c2c0> 216s run_clean = .run_clean at 0xe03f4dd2d300> 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0') 216s 216s tests/test_hello_cpp.py:163: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = False 216s fun = .run_build at 0xe03f4dd2cf40> 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = .run_build at 0xe03f4dd2c2c0> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dcb0030, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dcb0030, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bonjourModule': False, 'helloModule': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 216s package = 'hello' 216s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 216s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 216s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 216s packages = ['bonjour', 'hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['bonjourModule', 'helloModule'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4dcceb70> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dcceb70> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4dcceb70> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dcceb70> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dcceb70> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dcceb70> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dcceb70> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.6s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.1s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ___________________________ test_hello_cython_builds ___________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = False 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7f830, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7f830, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s make_args = ['--config', 'Release'] 216s msg = "package_dir={'hello_cython': 'hello/'} ends with a trailing slash, which is not supported by setuptools." 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'hello_cython' 216s package_data = {'hello_cython': ['_hello.cpython-312-aarch64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 216s package_dir = {'hello_cython': 'hello'} 216s package_prefixes = [('hello', 'hello_cython')] 216s packages = ['hello_cython'] 216s plat_name = None 216s prefix = 'hello/' 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s dist = .BinaryDistribution object at 0xe03f4dccf140> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dccf140> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4dccf140> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dccf140> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dccf140> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dccf140> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dccf140> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello_cython', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('hello_cython', '__main__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py')] 216s package = 'hello_cython' 216s package_ = 'hello_cython' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello_cython' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello_cython' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython/__init__.py' 216s package = ['hello_cython'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello_cython'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/.git/ 216s [master (root-commit) 593c596] Initial commit 216s 6 files changed, 42 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.pyx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.6s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Found Cython: /usr/bin/cython 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.7s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 33%] Generating CXX source hello/_hello.cxx 216s [ 66%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/hello/_hello.pyx 216s tree = Parsing.p_module(s, pxd, full_module_name) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ___________________________ test_hello_cython_sdist ____________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = False 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4de7eb30, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4de7eb30, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['sdist'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package (cython version)', 'license': 'MIT', ...} 216s make_args = [] 216s msg = "package_dir={'hello_cython': 'hello/'} ends with a trailing slash, which is not supported by setuptools." 216s package = 'hello_cython' 216s plat_name = None 216s prefix = 'hello/' 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package (cython version)', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package (cython version)', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 216s self.run_command('egg_info') 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 216s self.mkpath(self.egg_info) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = 'hello/hello_cython.egg-info' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = 'hello/hello_cython.egg-info', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0/hello/hello_cython.egg-info' 216s created_dirs = ['hello/hello_cython.egg-info'] 216s d = 'hello_cython.egg-info' 216s dry_run = False 216s head = 'hello/hello_cython.egg-info' 216s mode = 511 216s name = 'hello/hello_cython.egg-info' 216s tail = 'hello_cython.egg-info' 216s tails = ['hello_cython.egg-info'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0/.git/ 216s [master (root-commit) 3dbd65a] Initial commit 216s 6 files changed, 42 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.pyx 216s create mode 100644 setup.py 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running sdist 216s INFO root:dist.py:986 running generate_source_manifest 216s INFO root:dist.py:986 running egg_info 216s INFO root:dir_util.py:70 creating hello/hello_cython.egg-info 216s ___________________________ test_hello_cython_wheel ____________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = False 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4de7e030, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4de7e030, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s make_args = ['--config', 'Release'] 216s msg = "package_dir={'hello_cython': 'hello/'} ends with a trailing slash, which is not supported by setuptools." 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'hello_cython' 216s package_data = {'hello_cython': ['_hello.cpython-312-aarch64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 216s package_dir = {'hello_cython': 'hello'} 216s package_prefixes = [('hello', 'hello_cython')] 216s packages = ['hello_cython'] 216s plat_name = None 216s prefix = 'hello/' 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 216s dist = .BinaryDistribution object at 0xe03f4ddbac00> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4dd41300> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ddbac00> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello_cython', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('hello_cython', '__main__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py')] 216s package = 'hello_cython' 216s package_ = 'hello_cython' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello_cython' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello_cython' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython/__init__.py' 216s package = ['hello_cython'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello_cython' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello_cython'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/.git/ 216s [master (root-commit) f58deaf] Initial commit 216s 6 files changed, 42 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.pyx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (1.4s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Found Cython: /usr/bin/cython 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.3s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 33%] Generating CXX source hello/_hello.cxx 216s [ 66%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/hello/_hello.pyx 216s tree = Parsing.p_module(s, pxd, full_module_name) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ____________________________ test_hello_pure_builds ____________________________ 216s 216s iargs = () 216s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0xe03f4de45c70>} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0xe03f4de45c70>} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7f430, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc6fc0> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7f430, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc6fc0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['build'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s modules = [('hello', '__init__', 'hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0/.git/ 216s [master (root-commit) 31bbfec] Initial commit 216s 2 files changed, 12 insertions(+) 216s create mode 100644 hello/__init__.py 216s create mode 100644 setup.py 216s skipping skbuild (no CMakeLists.txt found) 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s ____________________________ test_hello_pure_sdist _____________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4de7df30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dd436a0> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4de7df30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dd436a0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['sdist'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 216s self.run_command('egg_info') 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 216s self.mkpath(self.egg_info) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = 'hello_pure.egg-info' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = 'hello_pure.egg-info', mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0/hello_pure.egg-info' 216s created_dirs = ['hello_pure.egg-info'] 216s d = 'hello_pure.egg-info' 216s dry_run = False 216s head = 'hello_pure.egg-info' 216s mode = 511 216s name = 'hello_pure.egg-info' 216s tail = 'hello_pure.egg-info' 216s tails = ['hello_pure.egg-info'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0/.git/ 216s [master (root-commit) 31bbfec] Initial commit 216s 2 files changed, 12 insertions(+) 216s create mode 100644 hello/__init__.py 216s create mode 100644 setup.py 216s skipping skbuild (no CMakeLists.txt found) 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running sdist 216s INFO root:dist.py:986 running generate_source_manifest 216s INFO root:dist.py:986 running egg_info 216s INFO root:dir_util.py:70 creating hello_pure.egg-info 216s ____________________________ test_hello_pure_wheel _____________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4de7d830, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dd437e0> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4de7d830, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dd437e0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['bdist_wheel'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4dd2d4e0> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s modules = [('hello', '__init__', 'hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0/.git/ 216s [master (root-commit) 31bbfec] Initial commit 216s 2 files changed, 12 insertions(+) 216s create mode 100644 hello/__init__.py 216s create mode 100644 setup.py 216s skipping skbuild (no CMakeLists.txt found) 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s _______________________________ test_hello_clean _______________________________ 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4d822450> 216s 216s def test_hello_clean(capfd): 216s with push_dir(): 216s 216s @project_setup_py_test("hello-pure", ["build"], disable_languages_test=True, ret=True) 216s def run_build(): 216s pass 216s 216s > tmp_dir = run_build()[0] 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4d822450> 216s run_build = .run_build at 0xe03f4d79d120> 216s 216s tests/test_hello_pure.py:65: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = True 216s fun = .run_build at 0xe03f4d79cf40> 216s iargs = () 216s ikwargs = {} 216s ret = True 216s wrapped = .run_build at 0xe03f4d79d120> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-47/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7d730, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dd43e20> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-47/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4de7d730, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dd43e20> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['build'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s modules = [('hello', '__init__', 'hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-47/run_build0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-47/run_build0/.git/ 216s [master (root-commit) 31bbfec] Initial commit 216s 2 files changed, 12 insertions(+) 216s create mode 100644 hello/__init__.py 216s create mode 100644 setup.py 216s skipping skbuild (no CMakeLists.txt found) 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s __________________________ test_include_exclude_data ___________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = False 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dcb3880, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dcb3880, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = () 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/cmake_generated_module.py', '_skbuild/linux-aarch64-3.12/cmake-insta..._and_exclude_from_setup.txt', '_skbuild/linux-aarch64-3.12/cmake-install/hello2/hello2_data1_cmake_generated.txt', ...] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_file = 'hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt' 216s data_files = {} 216s dest_data_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt' 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0xe03f4dce1fa0> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4de37ba0> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4dce1fa0> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('hello', 'cmake_generated_module', '_skbuild/linux-aarch64-3.12/cmake-install/hello/cmake_generated_module.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/.git/ 216s [master (root-commit) 92d33c0] Initial commit 216s 15 files changed, 79 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 MANIFEST.in 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/data/subdata/hello_data1_include_from_manifest.txt 216s create mode 100644 hello/data/subdata/hello_data2_include_from_manifest.txt 216s create mode 100644 hello/data/subdata/hello_data3_include_from_manifest_and_exclude_from_manifest.txt 216s create mode 100644 hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 216s create mode 100644 hello/hello_include_from_manifest.txt 216s create mode 100644 hello2/__init__.py 216s create mode 100644 hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 216s create mode 100644 hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 216s create mode 100644 hello2/data2/subdata2/hello2_data3_include_from_manifest_and_exclude_from_manifest.txt 216s create mode 100644 hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 216s create mode 100644 hello2/hello2_include_from_manifest.txt 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello/cmake_generated_module.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello/hello_data1_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello/hello_data2_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello/data/subdata/hello_data3_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello/data/subdata/hello_data4_cmake_generated_and_exclude_from_setup.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello2/hello2_data1_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello2/hello2_data2_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello2/data2/subdata2/hello2_data3_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-aarch64-3.12/cmake-install/hello2/data2/subdata2/hello2_data4_cmake_generated_and_exclude_from_setup.txt 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello2/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello2/__init__.py 216s copying hello/hello_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello/hello_include_from_manifest.txt 216s copying hello2/hello2_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello2/hello2_include_from_manifest.txt 216s copying hello/data/subdata/hello_data1_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello/data/subdata/hello_data1_include_from_manifest.txt 216s copying hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 216s copying hello/data/subdata/hello_data2_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello/data/subdata/hello_data2_include_from_manifest.txt 216s copying hello2/data2/subdata2/hello2_data1_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 216s copying hello2/data2/subdata2/hello2_data2_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 216s copying hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-aarch64-3.12/cmake-install/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s WARNING root:filelist.py:129 warning: no previously-included files found matching 'MANIFEST.in' 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s _____________________ test_include_exclude_data_with_base ______________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = False 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4de43bb0, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4de43bb0, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = () 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/src/hello/cmake_generated_module.py', '_skbuild/linux-aarch64-3.12/cmake-i..._exclude_from_setup.txt', '_skbuild/linux-aarch64-3.12/cmake-install/src/hello2/hello2_data1_cmake_generated.txt', ...] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_file = 'src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt' 216s data_files = {} 216s dest_data_file = '_skbuild/linux-aarch64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt' 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0xe03f4ddb8a10> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4dd41800> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ddb8a10> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/src/hello/__init__.py' 216s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/src/hello/__init__.py'), ('hello', 'cmake_generated_module', '_skbuild/linux-aarch64-3.12/cmake-install/src/hello/cmake_generated_module.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/src/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/src/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/src/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/src/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/.git/ 216s [master (root-commit) b02a54f] Initial commit 216s 15 files changed, 80 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 MANIFEST.in 216s create mode 100644 setup.py 216s create mode 100644 src/hello/__init__.py 216s create mode 100644 src/hello/data/subdata/hello_data1_include_from_manifest.txt 216s create mode 100644 src/hello/data/subdata/hello_data2_include_from_manifest.txt 216s create mode 100644 src/hello/data/subdata/hello_data3_include_from_manifest_and_exclude_from_manifest.txt 216s create mode 100644 src/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 216s create mode 100644 src/hello/hello_include_from_manifest.txt 216s create mode 100644 src/hello2/__init__.py 216s create mode 100644 src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 216s create mode 100644 src/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 216s create mode 100644 src/hello2/data2/subdata2/hello2_data3_include_from_manifest_and_exclude_from_manifest.txt 216s create mode 100644 src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 216s create mode 100644 src/hello2/hello2_include_from_manifest.txt 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello/cmake_generated_module.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello/hello_data1_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello/hello_data2_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello/data/subdata/hello_data3_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello/data/subdata/hello_data4_cmake_generated_and_exclude_from_setup.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello2/hello2_data1_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello2/hello2_data2_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data3_cmake_generated.txt 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-aarch64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data4_cmake_generated_and_exclude_from_setup.txt 216s 216s copying src/hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello/__init__.py 216s copying src/hello2/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello2/__init__.py 216s copying src/hello/hello_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello/hello_include_from_manifest.txt 216s copying src/hello2/hello2_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello2/hello2_include_from_manifest.txt 216s copying src/hello/data/subdata/hello_data1_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello/data/subdata/hello_data1_include_from_manifest.txt 216s copying src/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 216s copying src/hello/data/subdata/hello_data2_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello/data/subdata/hello_data2_include_from_manifest.txt 216s copying src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 216s copying src/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 216s copying src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-aarch64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s WARNING root:filelist.py:129 warning: no previously-included files found matching 'MANIFEST.in' 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ________________________ test_build_ext_inplace_command ________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s Extension = 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0') 216s setup = 216s setup_args = ['build_ext', '--inplace'] 216s setup_code = at 0xe03f4e022e50, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc53a0> 216s setup.py:7: in 216s ??? 216s Extension = 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0') 216s setup = 216s setup_args = ['build_ext', '--inplace'] 216s setup_code = at 0xe03f4e022e50, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4dcc53a0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = 1 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello_sk.cpython-312-aarch64-linux-gnu.so' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello_sk.cpython-312-aarch64-linux-gnu.so'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build_ext'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = 1 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s package = 'hello' 216s package_data = {'hello': ['_hello_sk.cpython-312-aarch64-linux-gnu.so']} 216s package_dir = {'hello': 'hello'} 216s package_file = '_hello_sk.cpython-312-aarch64-linux-gnu.so' 216s package_file_list = ['_hello_sk.cpython-312-aarch64-linux-gnu.so'] 216s package_path = 'hello/_hello_sk.cpython-312-aarch64-linux-gnu.so' 216s package_prefixes = [('hello', 'hello')] 216s packages = ['hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4de16c60> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4de16c60> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build_ext' 216s self = .BinaryDistribution object at 0xe03f4de16c60> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_ext' 216s self = .BinaryDistribution object at 0xe03f4de16c60> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_ext' 216s self = .BinaryDistribution object at 0xe03f4de16c60> 216s /usr/lib/python3/dist-packages/setuptools/command/build_ext.py:93: in run 216s _build_ext.run(self) 216s old_inplace = 1 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:359: in run 216s self.build_extensions() 216s new_compiler = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:479: in build_extensions 216s self._build_extensions_serial() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:505: in _build_extensions_serial 216s self.build_extension(ext) 216s ext = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_ext.py:254: in build_extension 216s _build_ext.build_extension(self, ext) 216s _compiler = 216s ext = 216s self = 216s /usr/lib/python3/dist-packages/Cython/Distutils/build_ext.py:135: in build_extension 216s super(build_ext, self).build_extension(ext) 216s __class__ = 216s cythonize = 216s directives = {} 216s ext = 216s include_dir = '/usr/include/python3.12' 216s includes = ['/usr/include/python3.12'] 216s new_ext = 216s options = {'build_dir': None, 'c_line_in_traceback': True, 'compile_time_env': None, 'compiler_directives': {}, ...} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:560: in build_extension 216s objects = self.compiler.compile( 216s depends = ['hello/_hello_ext.cxx'] 216s ext = 216s ext_path = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/_hello_ext.cpython-312-aarch64-linux-gnu.so' 216s extra_args = [] 216s macros = [] 216s self = 216s sources = ['hello/_hello_ext.cxx'] 216s /usr/lib/python3/dist-packages/setuptools/_distutils/ccompiler.py:595: in compile 216s macros, objects, extra_postargs, pp_opts, build = self._setup_compile( 216s debug = None 216s depends = [] 216s extra_postargs = [] 216s extra_preargs = None 216s include_dirs = [] 216s macros = [] 216s output_dir = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312' 216s self = 216s sources = ['hello/_hello_ext.cxx'] 216s /usr/lib/python3/dist-packages/setuptools/_distutils/ccompiler.py:360: in _setup_compile 216s self.mkpath(os.path.dirname(obj)) 216s build = {} 216s depends = [] 216s ext = '.cxx' 216s extra = [] 216s i = 0 216s incdirs = ['/usr/include/python3.12'] 216s macros = [] 216s obj = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312/hello/_hello_ext.o' 216s objects = ['_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312/hello/_hello_ext.o'] 216s outdir = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312' 216s pp_opts = ['-I/usr/include/python3.12'] 216s self = 216s sources = ['hello/_hello_ext.cxx'] 216s src = 'hello/_hello_ext.cxx' 216s /usr/lib/python3/dist-packages/setuptools/_distutils/ccompiler.py:1050: in mkpath 216s mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312'] 216s d = 'temp.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312/hello' 216s tail = 'temp.linux-aarch64-cpython-312' 216s tails = ['temp.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/.git/ 216s [master (root-commit) 1c55b3c] Initial commit 216s 5 files changed, 160 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/_hello_ext.cxx 216s create mode 100644 hello/_hello_sk.cxx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.3s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object CMakeFiles/_hello_sk.dir/hello/_hello_sk.cxx.o 216s [100%] Linking CXX shared module _hello_sk.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello_sk 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello_sk.cpython-312-aarch64-linux-gnu.so 216s copying _skbuild/linux-aarch64-3.12/cmake-install/hello/_hello_sk.cpython-312-aarch64-linux-gnu.so -> hello/_hello_sk.cpython-312-aarch64-linux-gnu.so 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build_ext 216s INFO root:build_ext.py:533 building 'hello._hello_ext' extension 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/temp.linux-aarch64-cpython-312 216s ___________________________ test_bdist_wheel_command ___________________________ 216s 216s def test_bdist_wheel_command(): 216s project = "issue-335-support-cmake-source-dir" 216s 216s expected_content = [ 216s "hello/__init__.py", 216s "hello/swig_mwe.py", 216s "hello/_swig_mwe.pyd", 216s "hello-1.2.3.data/data/bin/hello", 216s "hello-1.2.3.data/data/lib/static/libbar.a", 216s "hello-1.2.3.data/data/lib/static/libfoo.a", 216s "hello-1.2.3.data/data/include/bar.h", 216s "hello-1.2.3.data/data/include/foo.h", 216s ] 216s 216s expected_distribution_name = "hello-1.2.3" 216s 216s tmp_dir = _tmpdir("test_bdist_wheel_command") 216s prepare_project(project, tmp_dir) 216s initialize_git_repo_and_commit(tmp_dir, verbose=True) 216s 216s relative_setup_path = "wrapping/python/" 216s 216s > with execute_setup_py(tmp_dir.join(relative_setup_path), ["bdist_wheel"]): 216s 216s expected_content = ['hello/__init__.py', 'hello/swig_mwe.py', 'hello/_swig_mwe.pyd', 'hello-1.2.3.data/data/bin/hello', 'hello-1.2.3.data/data/lib/static/libbar.a', 'hello-1.2.3.data/data/lib/static/libfoo.a', ...] 216s expected_distribution_name = 'hello-1.2.3' 216s project = 'issue-335-support-cmake-source-dir' 216s relative_setup_path = 'wrapping/python/' 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0') 216s 216s tests/test_issue335_support_cmake_source_dir.py:31: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dba1530, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dba1530, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/include/bar.h', '_skbuild/linux-aarch64-3.12/cmake-install/include/foo.h',...kbuild/linux-aarch64-3.12/cmake-install/bin/hello', '_skbuild/linux-aarch64-3.12/cmake-install/hello/swig_mwe.py', ...] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '../../' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_files = {'bin': {'_skbuild/linux-aarch64-3.12/cmake-install/bin/hello'}, 'include': {'_skbuild/linux-aarch64-3.12/cmake-instal...inux-aarch64-3.12/cmake-install/lib/static/libbar.a', '_skbuild/linux-aarch64-3.12/cmake-install/lib/static/libfoo.a'}} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0xe03f4da162d0> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4d9d7ba0> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da162d0> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py'), ('hello', 'swig_mwe', '_skbuild/linux-aarch64-3.12/cmake-install/hello/swig_mwe.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/.git/ 216s [master (root-commit) 0116d46] Initial commit 216s 4 files changed, 53 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 wrapping/python/CMakeLists.txt 216s create mode 100644 wrapping/python/hello/__init__.py 216s create mode 100644 wrapping/python/setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (1.3s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/include/bar.h 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/include/foo.h 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/lib/static/libbar.a 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/lib/static/libfoo.a 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/bin/hello 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/hello/swig_mwe.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-aarch64-3.12/cmake-install/hello/_swig_mwe.pyd 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s __________________________ test_symbol_visibility[ON] __________________________ 216s 216s skip_override = 'ON' 216s 216s @pytest.mark.skipif( 216s platform.system().lower() not in ["linux"], reason="Executable and Linkable Format (ELF) is specific to Linux" 216s ) 216s @pytest.mark.parametrize("skip_override", ["ON", "OFF"]) 216s def test_symbol_visibility(skip_override): 216s with push_dir(): 216s tmp_dir = _tmpdir("test_issue668_symbol_visibility") 216s project = "issue-668-symbol-visibility" 216s prepare_project(project, tmp_dir) 216s initialize_git_repo_and_commit(tmp_dir, verbose=True) 216s 216s > with execute_setup_py( 216s tmp_dir, ["build", f"-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL={skip_override}"] 216s ): 216s 216s project = 'issue-668-symbol-visibility' 216s skip_override = 'ON' 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0') 216s 216s tests/test_issue668_symbol_visibility.py:32: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0') 216s setup = 216s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON'] 216s setup_code = at 0xe03f4dba2530, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0') 216s setup = 216s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON'] 216s setup_code = at 0xe03f4dba2530, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON', '-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON'] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s item = '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON' 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'hello' 216s package_data = {'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', '__init__.py']} 216s package_dir = {'hello': 'hello'} 216s package_prefixes = [('hello', 'hello')] 216s packages = ['hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 216s dist = .BinaryDistribution object at 0xe03f4da03c50> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4da03c50> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4da03c50> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da03c50> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da03c50> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da03c50> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da03c50> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/.git/ 216s [master (root-commit) 30d5cba] Initial commit 216s 5 files changed, 121 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 pyproject.toml 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.7s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.9s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object CMakeFiles/_hello.dir/hello/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s _________________________ test_symbol_visibility[OFF] __________________________ 216s 216s skip_override = 'OFF' 216s 216s @pytest.mark.skipif( 216s platform.system().lower() not in ["linux"], reason="Executable and Linkable Format (ELF) is specific to Linux" 216s ) 216s @pytest.mark.parametrize("skip_override", ["ON", "OFF"]) 216s def test_symbol_visibility(skip_override): 216s with push_dir(): 216s tmp_dir = _tmpdir("test_issue668_symbol_visibility") 216s project = "issue-668-symbol-visibility" 216s prepare_project(project, tmp_dir) 216s initialize_git_repo_and_commit(tmp_dir, verbose=True) 216s 216s > with execute_setup_py( 216s tmp_dir, ["build", f"-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL={skip_override}"] 216s ): 216s 216s project = 'issue-668-symbol-visibility' 216s skip_override = 'OFF' 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0') 216s 216s tests/test_issue668_symbol_visibility.py:32: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0') 216s setup = 216s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF'] 216s setup_code = at 0xe03f4dba2330, file "setup.py", line 1> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0') 216s setup = 216s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF'] 216s setup_code = at 0xe03f4dba2330, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF', '-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF'] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s item = '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF' 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'hello' 216s package_data = {'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', '__init__.py']} 216s package_dir = {'hello': 'hello'} 216s package_prefixes = [('hello', 'hello')] 216s packages = ['hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 216s dist = .BinaryDistribution object at 0xe03f4da5ac30> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4da5ac30> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4da5ac30> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da5ac30> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da5ac30> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da5ac30> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da5ac30> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s modules = [('hello', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/hello' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/.git/ 216s [master (root-commit) f801102] Initial commit 216s 5 files changed, 121 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 pyproject.toml 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.5s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.1s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object CMakeFiles/_hello.dir/hello/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ____________________________ test_manifest_in_wheel ____________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dba1f30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d9d7240> 216s setup.py:5: in 216s ??? 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4dba1f30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d9d7240> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['bdist_wheel'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package with a MANIFEST.in', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package with a MANIFEST.in', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package with a MANIFEST.in', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4da0f7e0> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 216s self.run_command("build") 216s build_ext = 216s build_scripts = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s modules = [('hello', '__init__', 'hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0/.git/ 216s [master (root-commit) d7adf4c] Initial commit 216s 4 files changed, 14 insertions(+) 216s create mode 100644 MANIFEST.in 216s create mode 100644 hello/__init__.py 216s create mode 100644 not_included.txt 216s create mode 100644 setup.py 216s skipping skbuild (no CMakeLists.txt found) 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s ____________________ test_distribution_is_pure[py_modules] _____________________ 216s 216s distribution_type = 'py_modules' 216s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0') 216s 216s @pytest.mark.parametrize("distribution_type", ["unknown", "py_modules", "packages", "skbuild"]) 216s def test_distribution_is_pure(distribution_type, tmpdir): 216s skbuild_setup_kwargs = {} 216s 216s if distribution_type == "unknown": 216s is_pure = False 216s 216s elif distribution_type == "py_modules": 216s is_pure = True 216s hello_py = tmpdir.join("hello.py") 216s hello_py.write("") 216s skbuild_setup_kwargs["py_modules"] = ["hello"] 216s 216s elif distribution_type == "packages": 216s is_pure = True 216s init_py = tmpdir.mkdir("hello").join("__init__.py") 216s init_py.write("") 216s skbuild_setup_kwargs["packages"] = ["hello"] 216s 216s elif distribution_type == "skbuild": 216s is_pure = False 216s cmakelists_txt = tmpdir.join("CMakeLists.txt") 216s cmakelists_txt.write( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(test NONE) 216s install(CODE "execute_process( 216s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 216s """ 216s ) 216s else: 216s msg = f"Unknown distribution_type: {distribution_type}" 216s raise Exception(msg) 216s 216s platform = get_platform() 216s original_write_test_cmakelist = platform.write_test_cmakelist 216s 216s def write_test_cmakelist_no_languages(_self, _languages): 216s original_write_test_cmakelist([]) 216s 216s with patch.object(type(platform), "write_test_cmakelist", new=write_test_cmakelist_no_languages): 216s with push_dir(str(tmpdir)), push_argv(["setup.py", "build"]): 216s > distribution = skbuild_setup( 216s name="test", 216s version="0.0.1", 216s description="test object returned by setup function", 216s author="The scikit-build team", 216s license="MIT", 216s **skbuild_setup_kwargs, # type: ignore[arg-type] 216s ) 216s 216s distribution_type = 'py_modules' 216s hello_py = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0/hello.py') 216s is_pure = True 216s original_write_test_cmakelist = 216s platform = 216s skbuild_setup_kwargs = {'py_modules': ['hello']} 216s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0') 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64c4a0> 216s 216s tests/test_setup.py:78: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['build'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'hello' 216s module_file = 'hello.py' 216s modules = [('', 'hello', 'hello.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'hello' 216s module_file = 'hello.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'hello' 216s module_file = 'hello.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib' 216s module = 'hello' 216s module_file = 'hello.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s skipping skbuild (no CMakeLists.txt found) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s _____________________ test_distribution_is_pure[packages] ______________________ 216s 216s distribution_type = 'packages' 216s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0') 216s 216s @pytest.mark.parametrize("distribution_type", ["unknown", "py_modules", "packages", "skbuild"]) 216s def test_distribution_is_pure(distribution_type, tmpdir): 216s skbuild_setup_kwargs = {} 216s 216s if distribution_type == "unknown": 216s is_pure = False 216s 216s elif distribution_type == "py_modules": 216s is_pure = True 216s hello_py = tmpdir.join("hello.py") 216s hello_py.write("") 216s skbuild_setup_kwargs["py_modules"] = ["hello"] 216s 216s elif distribution_type == "packages": 216s is_pure = True 216s init_py = tmpdir.mkdir("hello").join("__init__.py") 216s init_py.write("") 216s skbuild_setup_kwargs["packages"] = ["hello"] 216s 216s elif distribution_type == "skbuild": 216s is_pure = False 216s cmakelists_txt = tmpdir.join("CMakeLists.txt") 216s cmakelists_txt.write( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(test NONE) 216s install(CODE "execute_process( 216s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 216s """ 216s ) 216s else: 216s msg = f"Unknown distribution_type: {distribution_type}" 216s raise Exception(msg) 216s 216s platform = get_platform() 216s original_write_test_cmakelist = platform.write_test_cmakelist 216s 216s def write_test_cmakelist_no_languages(_self, _languages): 216s original_write_test_cmakelist([]) 216s 216s with patch.object(type(platform), "write_test_cmakelist", new=write_test_cmakelist_no_languages): 216s with push_dir(str(tmpdir)), push_argv(["setup.py", "build"]): 216s > distribution = skbuild_setup( 216s name="test", 216s version="0.0.1", 216s description="test object returned by setup function", 216s author="The scikit-build team", 216s license="MIT", 216s **skbuild_setup_kwargs, # type: ignore[arg-type] 216s ) 216s 216s distribution_type = 'packages' 216s init_py = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0/hello/__init__.py') 216s is_pure = True 216s original_write_test_cmakelist = 216s platform = 216s skbuild_setup_kwargs = {'packages': ['hello']} 216s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0') 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64e5c0> 216s 216s tests/test_setup.py:78: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['build'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s modules = [('hello', '__init__', 'hello/__init__.py')] 216s package = 'hello' 216s package_ = 'hello' 216s package_dir = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s package = 'hello' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s module = '__init__' 216s module_file = 'hello/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello/__init__.py' 216s package = ['hello'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib/hello' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib', 'hello'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s skipping skbuild (no CMakeLists.txt found) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s _______________ test_cmake_install_dir_keyword[banana-False-str] _______________ 216s 216s cmake_install_dir = 'banana', expected_failed = False 216s error_code_type = 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d5ecbc0> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d5ec4a0> 216s 216s @pytest.mark.parametrize( 216s ("cmake_install_dir", "expected_failed", "error_code_type"), 216s [ 216s (None, True, str), 216s ("", True, str), 216s (str(py.path.local.get_temproot().join("scikit-build")), True, SKBuildError), 216s ("banana", False, str), 216s ], 216s ) 216s def test_cmake_install_dir_keyword(cmake_install_dir, expected_failed, error_code_type, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # "SOURCE" tree layout: 216s # 216s # ROOT/ 216s # 216s # CMakeLists.txt 216s # setup.py 216s # 216s # apple/ 216s # __init__.py 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout 216s # 216s # ROOT/ 216s # 216s # apple/ 216s # __init__.py 216s # 216s 216s tmp_dir = _tmpdir("cmake_install_dir_keyword") 216s 216s setup_kwarg = "" 216s if cmake_install_dir is not None: 216s setup_kwarg = f"cmake_install_dir={str(cmake_install_dir)!r}" 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s f""" 216s from skbuild import setup 216s setup( 216s name="test_cmake_install_dir", 216s version="1.2.3", 216s description="a package testing use of cmake_install_dir", 216s author='The scikit-build team', 216s license="MIT", 216s packages=['apple', 'banana'], 216s {setup_kwarg} 216s ) 216s """ 216s ) 216s ) 216s 216s # Install location purposely set to "." so that we can test 216s # usage of "cmake_install_dir" skbuild.setup keyword. 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(banana NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/__init__.py" "") 216s install(FILES "${CMAKE_BINARY_DIR}/__init__.py" DESTINATION ".") 216s """ 216s ) 216s ) 216s 216s tmp_dir.ensure("apple", "__init__.py") 216s 216s failed = False 216s message = "" 216s try: 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d5ec4a0> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d5ecbc0> 216s cmake_install_dir = 'banana' 216s error_code_type = 216s expected_failed = False 216s failed = False 216s message = '' 216s setup_kwarg = "cmake_install_dir='banana'" 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0') 216s 216s tests/test_setup.py:210: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0130, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4e03db20> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0130, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4e03db20> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = 'banana' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/banana/__init__.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of cmake_install_dir', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'banana' 216s package_data = {'apple': ['__init__.py'], 'banana': ['__init__.py']} 216s package_dir = {'apple': 'apple', 'banana': 'banana'} 216s package_prefixes = [('banana', 'banana'), ('apple', 'apple')] 216s packages = ['apple', 'banana'] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of cmake_install_dir', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of cmake_install_dir', ...} 216s dist = .BinaryDistribution object at 0xe03f4d372240> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d372240> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4d372240> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d372240> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d372240> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d372240> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d372240> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/apple/__init__.py' 216s modules = [('apple', '__init__', '_skbuild/linux-aarch64-3.12/cmake-install/apple/__init__.py')] 216s package = 'apple' 216s package_ = 'apple' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/apple' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/apple/__init__.py' 216s package = 'apple' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/apple/__init__.py' 216s package = 'apple' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/apple' 216s module = '__init__' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/apple/__init__.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/apple/__init__.py' 216s package = ['apple'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/apple' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/apple' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/apple' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'apple'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_cmake_test_compile/build 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.2s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-aarch64-3.12/cmake-install/banana/./__init__.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-aarch64-3.12/cmake-install/banana -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/apple 216s copying apple/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/apple/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s _____________________ test_cmake_with_sdist_keyword[True] ______________________ 216s 216s cmake_with_sdist = True 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4d373560> 216s 216s @pytest.mark.parametrize("cmake_with_sdist", [True, False]) 216s def test_cmake_with_sdist_keyword(cmake_with_sdist, capfd): 216s tmp_dir = _tmpdir("cmake_with_sdist") 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s f""" 216s from skbuild import setup 216s setup( 216s name="cmake_with_sdist_keyword", 216s version="1.2.3", 216s description="a minimal example package", 216s author='The scikit-build team', 216s license="MIT", 216s cmake_with_sdist={cmake_with_sdist} 216s ) 216s """ 216s ) 216s ) 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(test NONE) 216s install(CODE "execute_process( 216s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 216s """ 216s ) 216s ) 216s 216s initialize_git_repo_and_commit(tmp_dir) 216s 216s > with execute_setup_py(tmp_dir, ["sdist"], disable_languages_test=True): 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4d373560> 216s cmake_with_sdist = True 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0') 216s 216s tests/test_setup.py:266: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4dd8c300, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64eac0> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4dd8c300, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64eac0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = [] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = True 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['sdist'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package_data = {} 216s package_dir = {} 216s package_prefixes = [] 216s packages = [] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4d5a7890> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d5a7890> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'sdist' 216s self = .BinaryDistribution object at 0xe03f4d5a7890> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'sdist' 216s self = .BinaryDistribution object at 0xe03f4d5a7890> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'sdist' 216s self = .BinaryDistribution object at 0xe03f4d5a7890> 216s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 216s self.run_command('egg_info') 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'egg_info' 216s self = .BinaryDistribution object at 0xe03f4d5a7890> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'egg_info' 216s self = .BinaryDistribution object at 0xe03f4d5a7890> 216s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 216s self.mkpath(self.egg_info) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = 'cmake_with_sdist_keyword.egg-info' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = 'cmake_with_sdist_keyword.egg-info', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/cmake_with_sdist_keyword.egg-info' 216s created_dirs = ['cmake_with_sdist_keyword.egg-info'] 216s d = 'cmake_with_sdist_keyword.egg-info' 216s dry_run = False 216s head = 'cmake_with_sdist_keyword.egg-info' 216s mode = 511 216s name = 'cmake_with_sdist_keyword.egg-info' 216s tail = 'cmake_with_sdist_keyword.egg-info' 216s tails = ['cmake_with_sdist_keyword.egg-info'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/.git/ 216s [master (root-commit) 02e09ab] Initial commit 216s 2 files changed, 15 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.5s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.1s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running sdist 216s INFO root:dist.py:986 running generate_source_manifest 216s INFO root:dist.py:986 running egg_info 216s INFO root:dir_util.py:70 creating cmake_with_sdist_keyword.egg-info 216s _____________________ test_cmake_with_sdist_keyword[False] _____________________ 216s 216s cmake_with_sdist = False 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4d3f6f60> 216s 216s @pytest.mark.parametrize("cmake_with_sdist", [True, False]) 216s def test_cmake_with_sdist_keyword(cmake_with_sdist, capfd): 216s tmp_dir = _tmpdir("cmake_with_sdist") 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s f""" 216s from skbuild import setup 216s setup( 216s name="cmake_with_sdist_keyword", 216s version="1.2.3", 216s description="a minimal example package", 216s author='The scikit-build team', 216s license="MIT", 216s cmake_with_sdist={cmake_with_sdist} 216s ) 216s """ 216s ) 216s ) 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(test NONE) 216s install(CODE "execute_process( 216s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 216s """ 216s ) 216s ) 216s 216s initialize_git_repo_and_commit(tmp_dir) 216s 216s > with execute_setup_py(tmp_dir, ["sdist"], disable_languages_test=True): 216s 216s capfd = <_pytest.capture.CaptureFixture object at 0xe03f4d3f6f60> 216s cmake_with_sdist = False 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0') 216s 216s tests/test_setup.py:266: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4da8e970, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64fc40> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4da8e970, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64fc40> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['sdist'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 216s self.run_command('egg_info') 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 216s self.mkpath(self.egg_info) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = 'cmake_with_sdist_keyword.egg-info' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = 'cmake_with_sdist_keyword.egg-info', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0/cmake_with_sdist_keyword.egg-info' 216s created_dirs = ['cmake_with_sdist_keyword.egg-info'] 216s d = 'cmake_with_sdist_keyword.egg-info' 216s dry_run = False 216s head = 'cmake_with_sdist_keyword.egg-info' 216s mode = 511 216s name = 'cmake_with_sdist_keyword.egg-info' 216s tail = 'cmake_with_sdist_keyword.egg-info' 216s tails = ['cmake_with_sdist_keyword.egg-info'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0/.git/ 216s [master (root-commit) cbeb79a] Initial commit 216s 2 files changed, 15 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 setup.py 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running sdist 216s INFO root:dist.py:986 running generate_source_manifest 216s INFO root:dist.py:986 running egg_info 216s INFO root:dir_util.py:70 creating cmake_with_sdist_keyword.egg-info 216s __________________________ test_script_keyword[pure] ___________________________ 216s 216s distribution_type = 'pure' 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d3f73b0> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d3f5d00> 216s 216s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 216s def test_script_keyword(distribution_type, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # 216s # "SOURCE" tree layout for "pure" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # foo.py 216s # bar.py 216s # 216s # "SOURCE" tree layout for "pure" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # CMakeLists.txt 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout is identical for both 216s # 216s # ROOT/ 216s # foo.py 216s # bar.py 216s # 216s 216s tmp_dir = _tmpdir("script_keyword") 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s """ 216s from skbuild import setup 216s setup( 216s name="test_script_keyword", 216s version="1.2.3", 216s description="a package testing use of script keyword", 216s author='The scikit-build team', 216s license="MIT", 216s scripts=['foo.py', 'bar.py'], 216s packages=[], 216s ) 216s """ 216s ) 216s ) 216s 216s if distribution_type == "skbuild": 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(foo NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 216s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/foo.py" 216s "${CMAKE_BINARY_DIR}/bar.py" 216s DESTINATION "." 216s ) 216s """ 216s ) 216s ) 216s 216s messages = [ 216s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" 216s for module in ["foo", "bar"] 216s ] 216s 216s elif distribution_type == "pure": 216s tmp_dir.join("foo.py").write("# foo.py") 216s tmp_dir.join("bar.py").write("# bar.py") 216s 216s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" for module in ["foo", "bar"]] 216s 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d3f5d00> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d3f73b0> 216s distribution_type = 'pure' 216s messages = ['copying foo.py -> _skbuild/linux-aarch64-3.12/setuptools/scripts-', 'copying bar.py -> _skbuild/linux-aarch64-3.12/setuptools/scripts-'] 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-78/script_keyword0') 216s 216s tests/test_setup.py:449: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-78/script_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0930, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d477600> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-78/script_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0930, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d477600> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['build'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of script keyword', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of script keyword', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of script keyword', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_scripts' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_scripts' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_scripts' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_scripts' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:57: in run 216s self.copy_scripts() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:68: in copy_scripts 216s self.mkpath(self.build_dir) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-78/script_keyword0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'scripts-3.12'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s skipping skbuild (no CMakeLists.txt found) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_scripts 216s INFO root:dir_util.py:70 creating _skbuild 216s _________________________ test_script_keyword[skbuild] _________________________ 216s 216s distribution_type = 'skbuild' 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4cd45eb0> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d459c10> 216s 216s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 216s def test_script_keyword(distribution_type, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # 216s # "SOURCE" tree layout for "pure" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # foo.py 216s # bar.py 216s # 216s # "SOURCE" tree layout for "pure" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # CMakeLists.txt 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout is identical for both 216s # 216s # ROOT/ 216s # foo.py 216s # bar.py 216s # 216s 216s tmp_dir = _tmpdir("script_keyword") 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s """ 216s from skbuild import setup 216s setup( 216s name="test_script_keyword", 216s version="1.2.3", 216s description="a package testing use of script keyword", 216s author='The scikit-build team', 216s license="MIT", 216s scripts=['foo.py', 'bar.py'], 216s packages=[], 216s ) 216s """ 216s ) 216s ) 216s 216s if distribution_type == "skbuild": 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(foo NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 216s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/foo.py" 216s "${CMAKE_BINARY_DIR}/bar.py" 216s DESTINATION "." 216s ) 216s """ 216s ) 216s ) 216s 216s messages = [ 216s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" 216s for module in ["foo", "bar"] 216s ] 216s 216s elif distribution_type == "pure": 216s tmp_dir.join("foo.py").write("# foo.py") 216s tmp_dir.join("bar.py").write("# bar.py") 216s 216s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" for module in ["foo", "bar"]] 216s 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d459c10> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4cd45eb0> 216s distribution_type = 'skbuild' 216s messages = ['copying _skbuild/linux-aarch64-3.12/cmake-install/foo.py -> _skbuild/linux-aarch64-3.12/setuptools/scripts-', 'copying _skbuild/linux-aarch64-3.12/cmake-install/bar.py -> _skbuild/linux-aarch64-3.12/setuptools/scripts-'] 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-79/script_keyword0') 216s 216s tests/test_setup.py:449: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-79/script_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dba3d30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d9d71a0> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-79/script_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4dba3d30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d9d71a0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/foo.py', '_skbuild/linux-aarch64-3.12/cmake-install/bar.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of script keyword', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {'bar.py': True, 'foo.py': True} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package_data = {} 216s package_dir = {} 216s package_prefixes = [] 216s packages = [] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = ['foo.py', 'bar.py'] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of script keyword', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of script keyword', ...} 216s dist = .BinaryDistribution object at 0xe03f4d3f4500> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d3f4500> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4d3f4500> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d3f4500> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d3f4500> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_scripts' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_scripts' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_scripts' 216s self = .BinaryDistribution object at 0xe03f4d3f4500> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_scripts' 216s self = .BinaryDistribution object at 0xe03f4d3f4500> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:57: in run 216s self.copy_scripts() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:68: in copy_scripts 216s self.mkpath(self.build_dir) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12', mode = 511 216s verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12'] 216s d = 'scripts-3.12' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/scripts-3.12' 216s tail = 'scripts-3.12' 216s tails = ['scripts-3.12'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_cmake_test_compile/build 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-aarch64-3.12/cmake-install/./foo.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-aarch64-3.12/cmake-install/./bar.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-79/script_keyword0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_ext 216s INFO root:dist.py:986 running build_scripts 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/scripts-3.12 216s ________________________ test_py_modules_keyword[pure] _________________________ 216s 216s distribution_type = 'pure' 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4cd45010> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4cd45cd0> 216s 216s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 216s def test_py_modules_keyword(distribution_type, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # 216s # "SOURCE" tree layout for "pure" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # foo.py 216s # bar.py 216s # 216s # "SOURCE" tree layout for "skbuild" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # CMakeLists.txt 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout is identical for both 216s # 216s # ROOT/ 216s # foo.py 216s # bar.py 216s # 216s 216s tmp_dir = _tmpdir("py_modules_keyword") 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s """ 216s from skbuild import setup 216s setup( 216s name="test_py_modules_keyword", 216s version="1.2.3", 216s description="a package testing use of py_modules keyword", 216s author='The scikit-build team', 216s license="MIT", 216s py_modules=['foo', 'bar'] 216s ) 216s """ 216s ) 216s ) 216s 216s if distribution_type == "skbuild": 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(foobar NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 216s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/foo.py" 216s "${CMAKE_BINARY_DIR}/bar.py" 216s DESTINATION "." 216s ) 216s """ 216s ) 216s ) 216s 216s messages = [ 216s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"] 216s ] 216s 216s elif distribution_type == "pure": 216s tmp_dir.join("foo.py").write("# foo.py") 216s tmp_dir.join("bar.py").write("# bar.py") 216s 216s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"]] 216s 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4cd45cd0> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4cd45010> 216s distribution_type = 'pure' 216s messages = ['copying foo.py -> _skbuild/linux-aarch64-3.12/setuptools/lib', 'copying bar.py -> _skbuild/linux-aarch64-3.12/setuptools/lib'] 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0') 216s 216s tests/test_setup.py:529: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4df4fa50, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d9d7240> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4df4fa50, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d9d7240> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['build'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = False 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of py_modules keyword', 'license': 'MIT', ...} 216s make_args = [] 216s plat_name = None 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = True 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of py_modules keyword', 'license': 'MIT', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of py_modules keyword', 'license': 'MIT', ...} 216s dist = 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'foo' 216s module_file = 'foo.py' 216s modules = [('', 'foo', 'foo.py'), ('', 'bar', 'bar.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'foo' 216s module_file = 'foo.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'foo' 216s module_file = 'foo.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib' 216s module = 'foo' 216s module_file = 'foo.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib/foo.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0/_skbuild' 216s created_dirs = ['_skbuild'] 216s d = '_skbuild' 216s dry_run = False 216s head = '_skbuild' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib' 216s tail = '_skbuild' 216s tails = ['_skbuild', 'linux-aarch64-3.12', 'setuptools', 'lib'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s skipping skbuild (no CMakeLists.txt found) 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild 216s _______________________ test_py_modules_keyword[skbuild] _______________________ 216s 216s distribution_type = 'skbuild' 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d3cd280> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d3ce4e0> 216s 216s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 216s def test_py_modules_keyword(distribution_type, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # 216s # "SOURCE" tree layout for "pure" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # foo.py 216s # bar.py 216s # 216s # "SOURCE" tree layout for "skbuild" distribution: 216s # 216s # ROOT/ 216s # setup.py 216s # CMakeLists.txt 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout is identical for both 216s # 216s # ROOT/ 216s # foo.py 216s # bar.py 216s # 216s 216s tmp_dir = _tmpdir("py_modules_keyword") 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s """ 216s from skbuild import setup 216s setup( 216s name="test_py_modules_keyword", 216s version="1.2.3", 216s description="a package testing use of py_modules keyword", 216s author='The scikit-build team', 216s license="MIT", 216s py_modules=['foo', 'bar'] 216s ) 216s """ 216s ) 216s ) 216s 216s if distribution_type == "skbuild": 216s tmp_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(foobar NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 216s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/foo.py" 216s "${CMAKE_BINARY_DIR}/bar.py" 216s DESTINATION "." 216s ) 216s """ 216s ) 216s ) 216s 216s messages = [ 216s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"] 216s ] 216s 216s elif distribution_type == "pure": 216s tmp_dir.join("foo.py").write("# foo.py") 216s tmp_dir.join("bar.py").write("# bar.py") 216s 216s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"]] 216s 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d3ce4e0> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d3cd280> 216s distribution_type = 'skbuild' 216s messages = ['copying _skbuild/linux-aarch64-3.12/cmake-install/foo.py -> _skbuild/linux-aarch64-3.12/setuptools/lib', 'copying _skbuild/linux-aarch64-3.12/cmake-install/bar.py -> _skbuild/linux-aarch64-3.12/setuptools/lib'] 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0') 216s 216s tests/test_setup.py:529: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4ddd71e0, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64dd00> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4ddd71e0, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64dd00> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/foo.py', '_skbuild/linux-aarch64-3.12/cmake-install/bar.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bar': True, 'foo': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package_data = {'': ['foo.py', 'bar.py']} 216s package_dir = {} 216s package_prefixes = [] 216s packages = [] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['foo', 'bar'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s dist = .BinaryDistribution object at 0xe03f4d613680> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d613680> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4d613680> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d613680> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4d613680> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d613680> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4d613680> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'foo' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/foo.py' 216s modules = [('', 'foo', '_skbuild/linux-aarch64-3.12/cmake-install/foo.py'), ('', 'bar', '_skbuild/linux-aarch64-3.12/cmake-install/bar.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'foo' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/foo.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'foo' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/foo.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'foo' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/foo.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/foo.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_cmake_test_compile/build 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-aarch64-3.12/cmake-install/./foo.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-aarch64-3.12/cmake-install/./bar.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ___________________ test_cmake_install_into_pure_package[0] ____________________ 216s 216s with_cmake_source_dir = 0 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d5ee2d0> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d5ef650> 216s 216s @pytest.mark.parametrize("with_cmake_source_dir", [0, 1]) 216s def test_cmake_install_into_pure_package(with_cmake_source_dir, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # "SOURCE" tree layout: 216s # 216s # (1) with_cmake_source_dir == 0 216s # 216s # ROOT/ 216s # 216s # CMakeLists.txt 216s # setup.py 216s # 216s # fruits/ 216s # __init__.py 216s # 216s # 216s # (2) with_cmake_source_dir == 1 216s # 216s # ROOT/ 216s # 216s # setup.py 216s # 216s # fruits/ 216s # __init__.py 216s # 216s # src/ 216s # 216s # CMakeLists.txt 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout: 216s # 216s # ROOT/ 216s # 216s # fruits/ 216s # 216s # __init__.py 216s # apple.py 216s # banana.py 216s # 216s # data/ 216s # 216s # apple.dat 216s # banana.dat 216s # 216s 216s tmp_dir = _tmpdir("cmake_install_into_pure_package") 216s 216s cmake_source_dir = "src" if with_cmake_source_dir else "" 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s f""" 216s from skbuild import setup 216s setup( 216s name="test_py_modules_keyword", 216s version="1.2.3", 216s description="a package testing use of py_modules keyword", 216s author='The scikit-build team', 216s license="MIT", 216s packages=['fruits'], 216s cmake_install_dir='fruits', 216s cmake_source_dir='{cmake_source_dir}', 216s ) 216s """ 216s ) 216s ) 216s 216s cmake_src_dir = tmp_dir.ensure(cmake_source_dir, dir=1) 216s cmake_src_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(test NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/apple.py" "# apple.py") 216s file(WRITE "${CMAKE_BINARY_DIR}/banana.py" "# banana.py") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/apple.py" 216s "${CMAKE_BINARY_DIR}/banana.py" 216s DESTINATION "." 216s ) 216s file(WRITE "${CMAKE_BINARY_DIR}/apple.dat" "# apple.dat") 216s file(WRITE "${CMAKE_BINARY_DIR}/banana.dat" "# banana.dat") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/apple.dat" 216s "${CMAKE_BINARY_DIR}/banana.dat" 216s DESTINATION "data" 216s ) 216s """ 216s ) 216s ) 216s 216s tmp_dir.ensure("fruits/__init__.py") 216s 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4d5ef650> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4d5ee2d0> 216s cmake_source_dir = '' 216s cmake_src_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 216s with_cmake_source_dir = 0 216s 216s tests/test_setup.py:1030: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0b30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4ce16200> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0b30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4ce16200> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = 'fruits' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/banana...-aarch64-3.12/cmake-install/fruits/data/apple.dat', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/data/banana.dat'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'fruits' 216s package_data = {'fruits': ['apple.py', 'banana.py', 'data/apple.dat', 'data/banana.dat', '__init__.py']} 216s package_dir = {'fruits': 'fruits'} 216s package_prefixes = [('fruits', 'fruits')] 216s packages = ['fruits'] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s dist = .BinaryDistribution object at 0xe03f4ce25430> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4ce25430> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4ce25430> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ce25430> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ce25430> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ce25430> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ce25430> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s modules = [('fruits', 'apple', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py'), ('fruits', '__init__', '_skbuild/li...cmake-install/fruits/__init__.py'), ('fruits', 'banana', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/banana.py')] 216s package = 'fruits' 216s package_ = 'fruits' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/fruits' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s package = 'fruits' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s package = 'fruits' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits/apple.py' 216s package = ['fruits'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'fruits'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_cmake_test_compile/build 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/./apple.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/./banana.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/data/apple.dat 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/data/banana.dat 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s 216s copying fruits/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/fruits/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s ___________________ test_cmake_install_into_pure_package[1] ____________________ 216s 216s with_cmake_source_dir = 1 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4ce13890> 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4ce129c0> 216s 216s @pytest.mark.parametrize("with_cmake_source_dir", [0, 1]) 216s def test_cmake_install_into_pure_package(with_cmake_source_dir, capsys, caplog): 216s # ------------------------------------------------------------------------- 216s # "SOURCE" tree layout: 216s # 216s # (1) with_cmake_source_dir == 0 216s # 216s # ROOT/ 216s # 216s # CMakeLists.txt 216s # setup.py 216s # 216s # fruits/ 216s # __init__.py 216s # 216s # 216s # (2) with_cmake_source_dir == 1 216s # 216s # ROOT/ 216s # 216s # setup.py 216s # 216s # fruits/ 216s # __init__.py 216s # 216s # src/ 216s # 216s # CMakeLists.txt 216s # 216s # ------------------------------------------------------------------------- 216s # "BINARY" distribution layout: 216s # 216s # ROOT/ 216s # 216s # fruits/ 216s # 216s # __init__.py 216s # apple.py 216s # banana.py 216s # 216s # data/ 216s # 216s # apple.dat 216s # banana.dat 216s # 216s 216s tmp_dir = _tmpdir("cmake_install_into_pure_package") 216s 216s cmake_source_dir = "src" if with_cmake_source_dir else "" 216s 216s tmp_dir.join("setup.py").write( 216s textwrap.dedent( 216s f""" 216s from skbuild import setup 216s setup( 216s name="test_py_modules_keyword", 216s version="1.2.3", 216s description="a package testing use of py_modules keyword", 216s author='The scikit-build team', 216s license="MIT", 216s packages=['fruits'], 216s cmake_install_dir='fruits', 216s cmake_source_dir='{cmake_source_dir}', 216s ) 216s """ 216s ) 216s ) 216s 216s cmake_src_dir = tmp_dir.ensure(cmake_source_dir, dir=1) 216s cmake_src_dir.join("CMakeLists.txt").write( 216s textwrap.dedent( 216s """ 216s cmake_minimum_required(VERSION 3.5.0) 216s project(test NONE) 216s file(WRITE "${CMAKE_BINARY_DIR}/apple.py" "# apple.py") 216s file(WRITE "${CMAKE_BINARY_DIR}/banana.py" "# banana.py") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/apple.py" 216s "${CMAKE_BINARY_DIR}/banana.py" 216s DESTINATION "." 216s ) 216s file(WRITE "${CMAKE_BINARY_DIR}/apple.dat" "# apple.dat") 216s file(WRITE "${CMAKE_BINARY_DIR}/banana.dat" "# banana.dat") 216s install( 216s FILES 216s "${CMAKE_BINARY_DIR}/apple.dat" 216s "${CMAKE_BINARY_DIR}/banana.dat" 216s DESTINATION "data" 216s ) 216s """ 216s ) 216s ) 216s 216s tmp_dir.ensure("fruits/__init__.py") 216s 216s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 216s 216s caplog = <_pytest.logging.LogCaptureFixture object at 0xe03f4ce129c0> 216s capsys = <_pytest.capture.CaptureFixture object at 0xe03f4ce13890> 216s cmake_source_dir = 'src' 216s cmake_src_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/src') 216s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0') 216s with_cmake_source_dir = 1 216s 216s tests/test_setup.py:1030: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0330, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4ce165c0> 216s setup.py:3: in 216s setup( 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d5e0330, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4ce165c0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = 'fruits' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/banana...-aarch64-3.12/cmake-install/fruits/data/apple.dat', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/data/banana.dat'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = 'src' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {} 216s package = 'fruits' 216s package_data = {'fruits': ['apple.py', 'banana.py', 'data/apple.dat', 'data/banana.dat', 'fruits/__init__.py']} 216s package_dir = {'fruits': 'fruits'} 216s package_prefixes = [('fruits', 'fruits')] 216s packages = ['fruits'] 216s plat_name = None 216s process_manifest = None 216s py_modules = [] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 216s dist = .BinaryDistribution object at 0xe03f4da4a060> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4da4a060> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4da4a060> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da4a060> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4da4a060> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da4a060> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4da4a060> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 216s self.build_packages() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 216s self.build_module(module, module_file, package) 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s modules = [('fruits', 'apple', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py'), ('fruits', '__init__', '_skbuild/li...cmake-install/fruits/__init__.py'), ('fruits', 'banana', '_skbuild/linux-aarch64-3.12/cmake-install/fruits/banana.py')] 216s package = 'fruits' 216s package_ = 'fruits' 216s package_dir = '_skbuild/linux-aarch64-3.12/cmake-install/fruits' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s package = 'fruits' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s package = 'fruits' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s module = 'apple' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/fruits/apple.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits/apple.py' 216s package = ['fruits'] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/fruits' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312', 'fruits'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Not searching for unused variables given on the command line. 216s -- Configuring incomplete, errors occurred! 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_cmake_test_compile/build 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/./apple.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/./banana.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/data/apple.dat 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits/data/banana.dat 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Ninja' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Ninja' generator - failure 216s -------------------------------------------------------------------------------- 216s 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/src -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-aarch64-3.12/cmake-install/fruits -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s 216s copying fruits/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/fruits/__init__.py 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s _____________________ test_generator[Unix Makefiles-make] ______________________ 216s 216s generator = 'Unix Makefiles', expected_make_program = 'make' 216s 216s @pytest.mark.parametrize( 216s ("generator", "expected_make_program"), [("NMake Makefiles", "nmake"), ("Unix Makefiles", "make")] 216s ) 216s def test_generator(generator, expected_make_program): 216s generator_platform = {"NMake Makefiles": ["windows"], "Unix Makefiles": ["darwin", "linux"]} 216s assert generator in generator_platform 216s 216s this_platform = platform.system().lower() 216s if this_platform not in generator_platform[generator]: 216s pytest.skip(f"{generator} generator is not available on {this_platform.title()}") 216s 216s @project_setup_py_test("hello-cpp", ["build"], ret=True) 216s def run_build(): 216s pass 216s 216s with push_env(CMAKE_GENERATOR=generator): 216s > tmp_dir = run_build()[0] 216s 216s expected_make_program = 'make' 216s generator = 'Unix Makefiles' 216s generator_platform = {'NMake Makefiles': ['windows'], 'Unix Makefiles': ['darwin', 'linux']} 216s run_build = .run_build at 0xe03f4ce5d8a0> 216s this_platform = 'linux' 216s 216s tests/test_skbuild.py:91: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s tests/__init__.py:261: in wrapped 216s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s disable_languages_test = False 216s fun = .run_build at 0xe03f4ce5d120> 216s iargs = () 216s ikwargs = {} 216s ret = True 216s wrapped = .run_build at 0xe03f4ce5d8a0> 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:247: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-151/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d445020, file "setup.py", line 1> 216s setup.py:5: in 216s version="1.2.3", 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = False 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-151/run_build0') 216s setup = 216s setup_args = ['build'] 216s setup_code = at 0xe03f4d445020, file "setup.py", line 1> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = ['_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py', '_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so', '_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py'] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['build'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s make_args = ['--config', 'Release'] 216s new_py_modules = {'bonjourModule': False, 'helloModule': True} 216s new_scripts = {} 216s original_manifestin_data_files = [] 216s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 216s package = 'hello' 216s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-aarch64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 216s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 216s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 216s packages = ['bonjour', 'hello'] 216s plat_name = None 216s process_manifest = None 216s py_modules = ['bonjourModule', 'helloModule'] 216s scripts = [] 216s skip_cmake = False 216s skip_generator_test = False 216s skip_skbuild = False 216s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 216s return distutils.core.setup(**attrs) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 216s return run_commands(dist) 216s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 216s dist = .BinaryDistribution object at 0xe03f4ce07f80> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4ce07f80> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'build' 216s self = .BinaryDistribution object at 0xe03f4ce07f80> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ce07f80> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build' 216s self = .BinaryDistribution object at 0xe03f4ce07f80> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 216s self.run_command(cmd_name) 216s cmd_name = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'build_py' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ce07f80> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'build_py' 216s self = .BinaryDistribution object at 0xe03f4ce07f80> 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 216s self.build_modules() 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 216s self.build_module(module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s modules = [('', 'bonjourModule', '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-aarch64-3.12/cmake-install/helloModule.py')] 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 216s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 216s __class__ = 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 216s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s package = '' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 216s self.mkpath(dir) 216s dir = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s module = 'bonjourModule' 216s module_file = '_skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py' 216s outfile = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312/bonjourModule.py' 216s package = [''] 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511, verbose = True, dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s created_dirs = ['_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312'] 216s d = 'lib.linux-aarch64-cpython-312' 216s dry_run = False 216s head = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s mode = 511 216s name = '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' 216s tail = 'lib.linux-aarch64-cpython-312' 216s tails = ['lib.linux-aarch64-cpython-312'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-151/run_build0/.git/ 216s [master (root-commit) 1bdea70] Initial commit 216s 11 files changed, 115 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 bonjour/__init__.py 216s create mode 100644 bonjour/data/ciel.txt 216s create mode 100644 bonjour/data/soleil.txt 216s create mode 100644 bonjour/data/terre.txt 216s create mode 100644 bonjourModule.py 216s create mode 100644 hello/CMakeLists.txt 216s create mode 100644 hello/__init__.py 216s create mode 100644 hello/__main__.py 216s create mode 100644 hello/_hello.cxx 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Configuring done (0.4s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-151/run_build0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- The C compiler identification is GNU 14.1.0 216s -- The CXX compiler identification is GNU 14.1.0 216s -- Detecting C compiler ABI info 216s -- Detecting C compiler ABI info - done 216s -- Check for working C compiler: /usr/bin/cc - skipped 216s -- Detecting C compile features 216s -- Detecting C compile features - done 216s -- Detecting CXX compiler ABI info 216s -- Detecting CXX compiler ABI info - done 216s -- Check for working CXX compiler: /usr/bin/c++ - skipped 216s -- Detecting CXX compile features 216s -- Detecting CXX compile features - done 216s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 216s -- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so (found version "3.12.4") 216s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 216s -- Configuring done (1.2s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/cmake-build 216s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 216s [100%] Linking CXX shared module _hello.cpython-312-aarch64-linux-gnu.so 216s [100%] Built target _hello 216s Install the project... 216s -- Install configuration: "Release" 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/./helloModule.py 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/_hello.cpython-312-aarch64-linux-gnu.so 216s -- Installing: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-aarch64-3.12/cmake-install/hello/world.py 216s 216s copying bonjourModule.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjourModule.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour 216s copying bonjour/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/__init__.py 216s copying hello/__init__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__init__.py 216s copying hello/__main__.py -> _skbuild/linux-aarch64-3.12/cmake-install/hello/__main__.py 216s creating directory _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data 216s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/soleil.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/soleil.txt 216s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/ciel.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/ciel.txt 216s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/terre.txt -> _skbuild/linux-aarch64-3.12/cmake-install/bonjour/data/terre.txt 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 216s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 216s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 216s the cmake_policy command to set the policy and suppress this warning. 216s 216s Call Stack (most recent call first): 216s CMakeLists.txt:5 (find_package) 216s This warning is for project developers. Use -Wno-dev to suppress it. 216s 216s _modinit_prefix:PyInit_ 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_py 216s INFO root:dir_util.py:70 creating _skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312 216s _________________________ test_skbuild_variable_sdist __________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4dba1f30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64fc40> 216s setup.py:5: in 216s version="1.2.3", 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0') 216s setup = 216s setup_args = ['sdist'] 216s setup_code = at 0xe03f4dba1f30, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d64fc40> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s build_ext_inplace = False 216s cmake_args = () 216s cmake_args_from_args = [] 216s cmake_executable = None 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s commands = ['sdist'] 216s display_only = False 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': 216s klass = 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'sdist' 216s self = 216s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 216s self.run_command('egg_info') 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 216s self.mkpath(self.egg_info) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = 'fail_unless_skbuild_set.egg-info' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = 'fail_unless_skbuild_set.egg-info', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0/fail_unless_skbuild_set.egg-info' 216s created_dirs = ['fail_unless_skbuild_set.egg-info'] 216s d = 'fail_unless_skbuild_set.egg-info' 216s dry_run = False 216s head = 'fail_unless_skbuild_set.egg-info' 216s mode = 511 216s name = 'fail_unless_skbuild_set.egg-info' 216s tail = 'fail_unless_skbuild_set.egg-info' 216s tails = ['fail_unless_skbuild_set.egg-info'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0/.git/ 216s [master (root-commit) 770d7b5] Initial commit 216s 2 files changed, 20 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 setup.py 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running sdist 216s INFO root:dist.py:986 running generate_source_manifest 216s INFO root:dist.py:986 running egg_info 216s INFO root:dir_util.py:70 creating fail_unless_skbuild_set.egg-info 216s _________________________ test_skbuild_variable_wheel __________________________ 216s 216s iargs = (), ikwargs = {} 216s 216s @functools.wraps(fun) 216s def wrapped(*iargs, **ikwargs): 216s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 216s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 216s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 216s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 216s 216s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 216s 216s disable_languages_test = True 216s fun = 216s iargs = () 216s ikwargs = {} 216s ret = False 216s wrapped = 216s 216s tests/__init__.py:261: 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s /usr/lib/python3.12/contextlib.py:137: in __enter__ 216s return next(self.gen) 216s self = 216s tests/__init__.py:244: in execute_setup_py 216s exec(setup_code) 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4d5e0330, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d124ae0> 216s setup.py:5: in 216s version="1.2.3", 216s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 216s disable_languages_test = True 216s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 216s original_write_test_cmakelist = 216s platform = 216s project_dir = local('/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0') 216s setup = 216s setup_args = ['bdist_wheel'] 216s setup_code = at 0xe03f4d5e0330, file "setup.py", line 1> 216s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0xe03f4d124ae0> 216s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 216s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 216s BinaryDistribution = .BinaryDistribution'> 216s build_ext_inplace = False 216s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 216s cmake_args_from_args = [] 216s cmake_executable = '/usr/bin/cmake' 216s cmake_install_dir = '' 216s cmake_install_target = 'install' 216s cmake_install_target_from_command = '' 216s cmake_install_target_from_setup = 'install' 216s cmake_languages = ('C', 'CXX') 216s cmake_manifest = [] 216s cmake_minimum_required_version = None 216s cmake_process_manifest_hook = None 216s cmake_source_dir = '' 216s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 216s cmake_with_sdist = False 216s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 216s cmkr = 216s commands = ['bdist_wheel'] 216s config_type = 'Release' 216s data_files = {} 216s developer_mode = False 216s display_only = False 216s env = {'ADTTMP': '/tmp/autopkgtest.ElRli6/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.ElRli6/testsuite-artifacts', ...} 216s env_cmake_args = [] 216s force_cmake = False 216s has_cmakelists = True 216s has_invalid_arguments = False 216s help_commands = 0 216s hide_listing = False 216s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0xe03f4d3cc380> 216s klass = .BinaryDistribution'> 216s ok = True 216s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 216s dist.run_commands() 216s dist = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 216s self.run_command(cmd) 216s cmd = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'bdist_wheel' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 216s super().run(*args, **kwargs) 216s __class__ = 216s args = () 216s kwargs = {} 216s old_write_files = 216s self = 216s update_write_files = .update_write_files at 0xe03f4d9eac00> 216s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:403: in run 216s self.run_command("install") 216s basedir_observed = '' 216s build_ext = 216s build_scripts = 216s install = 216s install_scripts = 216s key = 'platlib' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'install' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'install' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'install' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/command/install.py:81: in run 216s return super().run() 216s __class__ = 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/command/install.py:705: in run 216s self.run_command(cmd_name) 216s build_plat = 'linux-aarch64' 216s cmd_name = 'install_egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'install_egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'install_egg_info' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'install_egg_info' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/command/install_egg_info.py:48: in run 216s self.run_command('egg_info') 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 216s self.distribution.run_command(command) 216s command = 'egg_info' 216s self = 216s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 216s super().run_command(command) 216s __class__ = 216s command = 'egg_info' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 216s cmd_obj.run() 216s cmd_obj = 216s command = 'egg_info' 216s self = .BinaryDistribution object at 0xe03f4d3cc380> 216s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 216s self.mkpath(self.egg_info) 216s self = 216s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 216s dir_util.mkpath(name, mode, dry_run=self.dry_run) 216s mode = 511 216s name = 'fail_unless_skbuild_set.egg-info' 216s self = 216s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 216s 216s name = 'fail_unless_skbuild_set.egg-info', mode = 511, verbose = True 216s dry_run = False 216s 216s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 216s """Create a directory and any missing ancestor directories. 216s 216s If the directory already exists (or if 'name' is the empty string, which 216s means the current directory, which of course exists), then do nothing. 216s Raise DistutilsFileError if unable to create some directory along the way 216s (eg. some sub-path exists, but is a file rather than a directory). 216s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 216s Return the list of directories actually created. 216s 216s os.makedirs is not used because: 216s 216s a) It's new to Python 1.5.2, and 216s b) it blows up if the directory already exists (in which case it should 216s silently succeed). 216s """ 216s 216s global _path_created 216s 216s # Detect a common bug -- name is None 216s if not isinstance(name, str): 216s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 216s 216s # XXX what's the better way to handle verbosity? print as we create 216s # each directory in the path (the current behaviour), or only announce 216s # the creation of the whole path? (quite easy to do the latter since 216s # we're not using a recursive algorithm) 216s 216s name = os.path.normpath(name) 216s created_dirs = [] 216s if os.path.isdir(name) or name == '': 216s return created_dirs 216s if os.path.abspath(name) in _path_created: 216s return created_dirs 216s 216s (head, tail) = os.path.split(name) 216s tails = [tail] # stack of lone dirs to create 216s 216s while head and tail and not os.path.isdir(head): 216s (head, tail) = os.path.split(head) 216s tails.insert(0, tail) # push next higher dir onto stack 216s 216s # now 'head' contains the deepest directory that already exists 216s # (that is, the child of 'head' in 'name' is the highest directory 216s # that does *not* exist) 216s for d in tails: 216s # print "head = %s, d = %s: " % (head, d), 216s head = os.path.join(head, d) 216s abs_head = os.path.abspath(head) 216s 216s if abs_head in _path_created: 216s continue 216s 216s if verbose >= 1: 216s log.info("creating %s", head) 216s 216s if not dry_run: 216s try: 216s os.mkdir(head, mode) 216s except OSError as exc: 216s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 216s raise DistutilsFileError( 216s f"could not create '{head}': {exc.args[-1]}" 216s ) 216s created_dirs.append(head) 216s 216s > _path_created.add(abs_head) 216s E AttributeError: 'dict' object has no attribute 'add' 216s 216s abs_head = '/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/fail_unless_skbuild_set.egg-info' 216s created_dirs = ['fail_unless_skbuild_set.egg-info'] 216s d = 'fail_unless_skbuild_set.egg-info' 216s dry_run = False 216s head = 'fail_unless_skbuild_set.egg-info' 216s mode = 511 216s name = 'fail_unless_skbuild_set.egg-info' 216s tail = 'fail_unless_skbuild_set.egg-info' 216s tails = ['fail_unless_skbuild_set.egg-info'] 216s verbose = True 216s 216s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 216s ----------------------------- Captured stdout call ----------------------------- 216s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/.git/ 216s [master (root-commit) 770d7b5] Initial commit 216s 2 files changed, 20 insertions(+) 216s create mode 100644 CMakeLists.txt 216s create mode 100644 setup.py 216s 216s 216s -------------------------------------------------------------------------------- 216s -- Trying 'Unix Makefiles' generator 216s -------------------------------- 216s --------------------------- 216s ---------------------- 216s ----------------- 216s ------------ 216s ------- 216s -- 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_cmake_test_compile/build 216s -- 216s ------- 216s ------------ 216s ----------------- 216s ---------------------- 216s --------------------------- 216s -------------------------------- 216s -- Trying 'Unix Makefiles' generator - success 216s -------------------------------------------------------------------------------- 216s 216s Configuring Project 216s Working directory: 216s /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_skbuild/linux-aarch64-3.12/cmake-build 216s Command: 216s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_skbuild/linux-aarch64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/aarch64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 216s 216s Not searching for unused variables given on the command line. 216s -- Configuring done (0.0s) 216s -- Generating done (0.0s) 216s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_skbuild/linux-aarch64-3.12/cmake-build 216s Install the project... 216s -- Install configuration: "Release" 216s 216s 216s ----------------------------- Captured stderr call ----------------------------- 216s hint: Using 'master' as the name for the initial branch. This default branch name 216s hint: is subject to change. To configure the initial branch name to use in all 216s hint: of your new repositories, which will suppress this warning, call: 216s hint: 216s hint: git config --global init.defaultBranch 216s hint: 216s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 216s hint: 'development'. The just-created branch can be renamed via this command: 216s hint: 216s hint: git branch -m 216s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 216s Compatibility with CMake < 3.5 will be removed from a future version of 216s CMake. 216s 216s Update the VERSION argument value or use a ... suffix to tell 216s CMake that the project does not need compatibility with older versions. 216s 216s 216s ------------------------------ Captured log call ------------------------------- 216s INFO root:dist.py:986 running bdist_wheel 216s INFO root:dist.py:986 running build 216s INFO root:dist.py:986 running build_ext 216s INFO wheel:bdist_wheel.py:401 installing to _skbuild/linux-aarch64-3.12/setuptools/bdist.linux-aarch64/wheel 216s INFO root:dist.py:986 running install 216s INFO root:dist.py:986 running install_lib 216s WARNING root:cmd.py:334 warning: install_lib: '_skbuild/linux-aarch64-3.12/setuptools/lib.linux-aarch64-cpython-312' does not exist -- no Python modules to install 216s 216s INFO root:dist.py:986 running install_egg_info 216s INFO root:dist.py:986 running egg_info 216s INFO root:dir_util.py:70 creating fail_unless_skbuild_set.egg-info 216s =========================== short test summary info ============================ 216s SKIPPED [1] tests/test_hello_fortran.py:18: could not import 'numpy': No module named 'numpy' 216s SKIPPED [1] tests/test_platform.py:120: Requires Windows 216s SKIPPED [24] tests/test_setup.py:584: unsupported configuration: python package fully generated by CMake does *NOT* work. At least __init__.py should be in the project source tree 216s SKIPPED [1] tests/test_skbuild.py:84: NMake Makefiles generator is not available on Linux 216s SKIPPED [3] tests/test_skbuild.py:127: Requires Windows 216s SKIPPED [1] tests/test_skbuild.py:151: Requires Windows 216s FAILED tests/test_cmakelists_not_in_top_level_dir.py::test_build - AttributeE... 216s FAILED tests/test_command_line.py::test_hide_listing[True-sdist] - AttributeE... 216s FAILED tests/test_command_line.py::test_hide_listing[True-bdist_wheel] - Attr... 216s FAILED tests/test_command_line.py::test_hide_listing[False-sdist] - Attribute... 216s FAILED tests/test_command_line.py::test_hide_listing[False-bdist_wheel] - Att... 216s FAILED tests/test_cython_flags.py::test_hello_cython_builds - AttributeError:... 216s FAILED tests/test_filter_manifest.py::test_bdist_wheel_command - AttributeErr... 216s FAILED tests/test_hello_cpp.py::test_hello_builds - AttributeError: 'dict' ob... 216s FAILED tests/test_hello_cpp.py::test_hello_wheel - AttributeError: 'dict' obj... 216s FAILED tests/test_hello_cpp.py::test_hello_clean[with-dry-run] - AttributeErr... 216s FAILED tests/test_hello_cpp.py::test_hello_clean[without-dry-run] - Attribute... 216s FAILED tests/test_hello_cpp.py::test_hello_cleans - AttributeError: 'dict' ob... 216s FAILED tests/test_hello_cython.py::test_hello_cython_builds - AttributeError:... 216s FAILED tests/test_hello_cython.py::test_hello_cython_sdist - AttributeError: ... 216s FAILED tests/test_hello_cython.py::test_hello_cython_wheel - AttributeError: ... 216s FAILED tests/test_hello_pure.py::test_hello_pure_builds - AttributeError: 'di... 216s FAILED tests/test_hello_pure.py::test_hello_pure_sdist - AttributeError: 'dic... 216s FAILED tests/test_hello_pure.py::test_hello_pure_wheel - AttributeError: 'dic... 216s FAILED tests/test_hello_pure.py::test_hello_clean - AttributeError: 'dict' ob... 216s FAILED tests/test_include_exclude_data.py::test_include_exclude_data - Attrib... 216s FAILED tests/test_include_exclude_data.py::test_include_exclude_data_with_base 216s FAILED tests/test_issue284_build_ext_inplace.py::test_build_ext_inplace_command 216s FAILED tests/test_issue335_support_cmake_source_dir.py::test_bdist_wheel_command 216s FAILED tests/test_issue668_symbol_visibility.py::test_symbol_visibility[ON] 216s FAILED tests/test_issue668_symbol_visibility.py::test_symbol_visibility[OFF] 216s FAILED tests/test_manifest_in.py::test_manifest_in_wheel - AttributeError: 'd... 216s FAILED tests/test_setup.py::test_distribution_is_pure[py_modules] - Attribute... 216s FAILED tests/test_setup.py::test_distribution_is_pure[packages] - AttributeEr... 216s FAILED tests/test_setup.py::test_cmake_install_dir_keyword[banana-False-str] 216s FAILED tests/test_setup.py::test_cmake_with_sdist_keyword[True] - AttributeEr... 216s FAILED tests/test_setup.py::test_cmake_with_sdist_keyword[False] - AttributeE... 216s FAILED tests/test_setup.py::test_script_keyword[pure] - AttributeError: 'dict... 216s FAILED tests/test_setup.py::test_script_keyword[skbuild] - AttributeError: 'd... 216s FAILED tests/test_setup.py::test_py_modules_keyword[pure] - AttributeError: '... 216s FAILED tests/test_setup.py::test_py_modules_keyword[skbuild] - AttributeError... 216s FAILED tests/test_setup.py::test_cmake_install_into_pure_package[0] - Attribu... 216s FAILED tests/test_setup.py::test_cmake_install_into_pure_package[1] - Attribu... 216s FAILED tests/test_skbuild.py::test_generator[Unix Makefiles-make] - Attribute... 216s FAILED tests/test_skbuild_variable.py::test_skbuild_variable_sdist - Attribut... 216s FAILED tests/test_skbuild_variable.py::test_skbuild_variable_wheel - Attribut... 216s ===== 40 failed, 152 passed, 31 skipped, 19 deselected in 92.95s (0:01:32) ===== 217s autopkgtest [16:29:45]: test testsuite: -----------------------] 218s testsuite FAIL non-zero exit status 1 218s autopkgtest [16:29:46]: test testsuite: - - - - - - - - - - results - - - - - - - - - - 218s autopkgtest [16:29:46]: @@@@@@@@@@@@@@@@@@@@ summary 218s testsuite FAIL non-zero exit status 1 230s nova [W] Skipping flock in bos03-arm64 230s Creating nova instance adt-oracular-arm64-scikit-build-20240726-160312-juju-7f2275-prod-proposed-migration-environment-3-fa86325f-38f9-4513-b07e-5ca0e3119e7d from image adt/ubuntu-oracular-arm64-server-20240726.img (UUID 33caccb7-bc3b-4ecc-9e17-59d67995dc9e)...