IoLanguage / io

Io programming language. Inspired by Self, Smalltalk and LISP.
http://iolanguage.org
Other
2.67k stars 299 forks source link

Intel SIMD flags should not be used on other archs #474

Open barracuda156 opened 9 months ago

barracuda156 commented 9 months ago

The build is broken now on PowerPC, since Intel flags are passed:

[  0%] Building C object libs/iovm/tools/CMakeFiles/io2c.dir/io2c.c.o
cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/iovm/tools && /opt/local/bin/gcc-mp-13 -DBUILDING_IOVMALL_DLL -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/iovm/source -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/basekit/source -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/basekit/source/simd_cph/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/coroutine/source -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/garbagecollector/source -msse2 -DNDEBUG -arch ppc -mmacosx-version-min=10.6 -MD -MT libs/iovm/tools/CMakeFiles/io2c.dir/io2c.c.o -MF CMakeFiles/io2c.dir/io2c.c.o.d -o CMakeFiles/io2c.dir/io2c.c.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_Io/Io/work/io-2017.09.06/libs/iovm/tools/io2c.c
gcc-mp-13: error: unrecognized command-line option '-msse2'
make[2]: *** [libs/iovm/tools/CMakeFiles/io2c.dir/io2c.c.o] Error 1
barracuda156 commented 9 months ago

Apparently not only macOS faced this issue, FreeBSD has a patch: https://github.com/freebsd/freebsd-ports/blob/main/lang/io/files/extra-patch-CMakeLists.txt

barracuda156 commented 9 months ago

Also fails from the master branch:

[  0%] Building C object libs/iovm/tools/CMakeFiles/io2c.dir/io2c.c.o
cd /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/build/libs/iovm/tools && /opt/local/bin/gcc-mp-13 -DBUILDING_IOVMALL_DLL -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/iovm/source -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/../deps/parson -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/basekit/source -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/basekit/source/simd_cph/include -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/coroutine/source -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/garbagecollector/source -msse2 -arch ppc -mmacosx-version-min=10.6 -MD -MT libs/iovm/tools/CMakeFiles/io2c.dir/io2c.c.o -MF CMakeFiles/io2c.dir/io2c.c.o.d -o CMakeFiles/io2c.dir/io2c.c.o -c /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lang_Io/Io/work/io-7113659c4342e98e9a86482b25441775fa066a96/libs/iovm/tools/io2c.c
gcc-mp-13: error: unrecognized command-line option '-msse2'
make[2]: *** [libs/iovm/tools/CMakeFiles/io2c.dir/io2c.c.o] Error 1