fasm icon indicating copy to clipboard operation
fasm copied to clipboard

Improve the cmake flag configuration

Open mithro opened this issue 4 years ago • 1 comments

The cmake file needs some improvement.

It should add;

  • Add -Wimplicit-fallthrough=0 if it is supported on non-Windows
  • Add -Wno-attributes if it is supported on non-Windows
  • Add /std:c++latest on Windows.

This is related to #50.

Originally posted by @mithro in https://github.com/SymbiFlow/fasm/pull/48#r570760958

mithro avatar Feb 16 '21 18:02 mithro

Notes from @litghost ;


https://github.com/SymbiFlow/fasm/pull/48/files#r571089908

https://docs.microsoft.com/en-us/cpp/build/reference/compiler-options?view=msvc-160


https://github.com/SymbiFlow/fasm/pull/48/files#r571092177

https://en.cppreference.com/w/cpp/language/attributes/fallthrough

If ANTLR could emit [[fallthrough]], -Wimplicit-fallthrough=0 is not required.


https://github.com/SymbiFlow/fasm/pull/48/files#r571093017

PIC support might be possible via: https://cmake.org/cmake/help/v3.0/prop_tgt/POSITION_INDEPENDENT_CODE.html

https://cmake.org/cmake/help/latest/module/CheckPIESupported.html#module:CheckPIESupported


https://github.com/SymbiFlow/fasm/pull/48/files#r571097079

CMake has explicit C++ standard select support: https://cmake.org/cmake/help/latest/prop_tgt/CXX_STANDARD.html

GitHub
This pull request will add a GitHub Action which builds the fasm packages, including binary wheels for Linux, Mac and Windows and then upload them to PyPI. WIP -- TODO;

Have auto-incrementing ver...

Learn more about: Compiler Options
GitHub
This pull request will add a GitHub Action which builds the fasm packages, including binary wheels for Linux, Mac and Windows and then upload them to PyPI. WIP -- TODO;

Have auto-incrementing ver...

GitHub
This pull request will add a GitHub Action which builds the fasm packages, including binary wheels for Linux, Mac and Windows and then upload them to PyPI. WIP -- TODO;

Have auto-incrementing ver...

GitHub
This pull request will add a GitHub Action which builds the fasm packages, including binary wheels for Linux, Mac and Windows and then upload them to PyPI. WIP -- TODO;

Have auto-incrementing ver...

mithro avatar Feb 16 '21 18:02 mithro