Build using GNU extensions
Closedopened 4 years ago by devnexen · 6 comments
Reference in New Issue
There is no content yet.
Delete Branch '%!s(<nil>)'
Deleting a branch is permanent. It CANNOT be undone. Continue?
-fsplit-stack flag is GNU extension thus might not working with all combinations of compilers/oses (FreeBSD/gcc for instance).
Also with Linux and FreeBSD clang
clang -fPIC -Iinclude -I. -W -Wunused -Wall -DPH7_LIBRARY_SUFFIX=\".so\" -O0 -g3 -fsplit-stack -c engine/lib/libfmt.c -o build/engine/lib/libfmt.o fatal error: error in backend: Segmented stacks do not support vararg functions. clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
According to mentioned documentation, same option should be available under clang, isn't it?
Seems like a bug in LLVM: https://bugs.llvm.org/show_bug.cgi?id=19197
Oh the flag is supported, I was just highlighting the build issue. Will try with other versions eventually.
Segmented stacks do not support vararg functions
Wonders if it works under MacOS ...
Seems, this option is unavailable on OSX. I think, it can work only under Linux.
Makes sense, I think (w/o being 100% sure) clang in mac is built w/o GNU extensions.
Fixed build on systems other to Linux with commit