This gets rid of evaluation error for armv7a-darwin. It makes no sense
to support this platform in this overlay. According to the discussion
around around
https://github.com/NixOS/nixpkgs/pull/324155#issuecomment-2362297603,
it is better to support just the systems exposed by the nixpkgs flake.
Currently, these are:
- aarch64-darwin
- aarch64-linux
- armv6l-linux
- armv7l-linux
- i686-linux
- powerpc64le-linux
- riscv64-linux
- x86_64-darwin
- x86_64-freebsd
- 86_64-linux
In file included from ../../../ThirdParty/GL/glh/glh_obs.h:62:
../../../ThirdParty/GL/glh/glh_linear.h:371:11: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
371 | register real u;
| ^~~~~~~~
The vendored version of libjpeg fails to build with errors like this:
../../ThirdParty/LibJPEG/jccolor.c:135:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
135 | register int r, g, b;
| ^~~~~~~~
In e78372fd63,
the sip_configure.py cmake helper script in python-qt-binding was
updated to live-patch the QtCoremod.sip file in a temp directory. Which
is the same change that is applied from the aur here. The live patch
thing breaks the build as it is writing to a file outside of the nix
build area. Remove that write and apply the patch from the AUR.
Also moved the ros1 rviz pyqt patch into the regular python-qt-binding
overlay to allow any downstream packages to have functional pyqt if that
is what ends up being used.
This is needed at least for Humble and Iron. Jazzy version cannot be
build due to build failures in its dependencies.
Without this change the build fails with:
-- The CXX compiler identification is GNU 13.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/mpm3i0sbqc9svfch6a17179fs64dz2kv-gcc-wrapper-13.3.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at cmake/CPM.cmake:19 (file):
file DOWNLOAD cannot compute hash on failed download
status: [6;"Couldn't resolve host name"]
Call Stack (most recent call first):
CMakeLists.txt:8 (include)
The version in jazzy uses a different version, so we copy the original
expression to {humble,iron}/overrides.nix and add an updated one to
jazzy/overrides.nix.
Gets around:
> error: Multiple top-level packages discovered in a flat-layout: ['srv', 'msg', 'sample', 'action'].
>
> To avoid accidental inclusion of unwanted files or directories,
> setuptools will not proceed with this build.
>
> If you are trying to create a single distribution with multiple packages
> on purpose, you should not rely on automatic discovery.
> Instead, consider the following options:
>
> 1. set up custom discovery (`find` directive with `include` or `exclude`)
> 2. use a `src-layout`
> 3. explicitly set `py_modules` or `packages` with a list of names
>
> To find more information, look for "package discovery" on setuptools docs.
> CMake Error at catkin_generated/safe_execute_install.cmake:4 (message):
>
> execute_process(/build/jsk_recognition-release-release-noetic-jsk_recognition_msgs-1.2.17-2/build/catkin_generated/python_distutils_install.sh)
> returned error code
> Call Stack (most recent call first):
> cmake_install.cmake:46 (include)
>
>
> make: *** [Makefile💯 install] Error 1
This catches when packages update their vendored version but we haven't
updated on our end. Try to fix all usages of patchExternalProjectGit so
they are correct now.