...
Assembly source file requires preprocessing. Gcc granted this by default, while MSVC doesnt, so for MSVC it should be done explicitly by C preprocessor
https://github.com/mesonbuild/wrapdb/pull/205/commits/da6a13fb61f64baca0567763c51efaed9b14c41f
The assembly optimization file is preprocessed, which results empty assembly file then C intrinsic neon optimization will be compiled, if the work-around is used below.
As libpng is was inactive at the time I’ve created these patches (and written this summary), the ARM neon config issue was fixed as a temporary work-around here
https://github.com/mesonbuild/wrapdb/pull/216/commits/a32c61a15724dfcf1af559160c7b1c1412f773d8
Even if libpng won’t explicitly support MSVC ARM64 define, we can still support ARM related source code for MSVC.
Integrate updated Meson config of libpng: https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/105/diffs?commit_id=e6e6cbf1648d4a776da0857921872f2fbc853205
...
https://github.com/python-pillow/Pillow/pull/5811/commits/768718623b01e91d9b49531dd53d82f16e99cfa8
lcms2
The host project is still in review at the time this page is last updated and this is the last broken project.https://github.com/python-pillow/Pillow/pull/6017
libpng
The host project is still in review at the time this page is last updated, however it’s working for win-arm64 for Pillow, because it builds via nmake, which ignores the Arm related optimization source code. (details: ToDo add link to table: https://linaro.atlassian.net/wiki/spaces/WOAR/pages/28654632982/A+tale+of+a+dependency+chain+Pillow+and+the+crew#Complicated ).
Build tools
...
Meson
https://mesonbuild.com/index.html
...