Closed dsm closed 1 week ago
Yes, I was considering to remove the check for functions. But the removing theses checks from CMake is not sufficient. The HAVE_COMPLEX_XXX
definitions are used in src/math/complex.cpp
and src/math/real.cpp
If these macros are not defined the qucsator implies the complex funcitons are missing and emulates it by software means. Please check carefully if these macros are in use. The same concerns SIZEOF_DOUBLE
etc.
It makes sense to disable software emulation of the complex functions, because it is part of C++ standard in the modern C++.
We use gcc 12 or later or clang so this checks not meaning for modern compiler, so maybe we check compiler version or we target above c++11 but yes code base needs some modernization and we should remove this macros in code.
I will try to remove function wrappers in complex.cpp
and real.cpp
and then merge this PR.
I have added #18 removing HAVE_CXX
and HAVE_STD
definitions usage. Now real.cpp and complex.cpp switched to C++11 implementation. Software emulation of the math functions disabled. Merging this PR become possible.
Hi, this PR refactor cmake file to build with same flag for qucs-s and remove unnecessary checks so time consuming.