New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve CMake project #180
Conversation
I can't pull that as is, because it #defines strcase?cmp as str?cmp on non-windows machines. Surely cmake has a way to test for the existance of strcasecmp and strncasecmp? |
And, also,
There's no way for me to test cmake environments, because I don't have cmake installed on any of my build & test machines. cmake, like plan9 & other windows-specific build configurations, are taken on faith after checking for unpleasant surprises. |
What OS on your build & test machines? |
Darwin, FreeBSD, Debian, and Centos. Cmake free by preference. |
CMake can check the existance of strcasecmp and strncasecmp. I work on this now. |
On my server with Debian to install
|
If I wanted cmake I'm sure I could install it on everything (except maybe the FreeBSD machine.) |
@Orc, I add more system checks. Please review again. |
One thing I noticed in the latest patch; you're #define'ing HAVE_{symbol} to 0 for a handful of things if they don't exist; you shouldn't do that -- I try to use #if for all of the HAVE_{symbol} checks, but there are a handful of places where it's still a #ifdef & even when I fix them I want to reserve any symbol definition for symbols that exist just in case I run into a cpp somewhere that pukes on either #if with a nonexistant symbol or even #if all by itself. |
Added more system checks to build on different platforms.
Ok. Fixed. Please review. |
Funny bonus. With these changes I was able to build and test the
|
It's amusing that the js crosscompiler works as well. I'll have to spin up a vm and take a look at it. |
I think that vm it's not necessary. This is a cross-platform project. Installation instructions for all supported platforms are available on the site. |
It's a lot easier to spin up a vm than to install an OS onto physical hardware; most (maybe all?) of the vm supervisors out there implement machines with middle of the road (and well-supported) hardware, plus there's no need to mess around with physical install media. |
Of course, do as you please. I spoke more about the operating system. |
The goal can be not only a clean JavaScript script, but also a WebAssembly module. |
Try it: