CGLM uses anonymous structs, which is a C11 feature. When trying to
build the tests in C99 mode, you get warnings to that effect. Switching
to C11 fixes this.
By default, it adds something like `-O2 -g` to the cflags. That
conflicts with the flags in Makefile.am, which specifies -O3. This
commit removes the default flags so we only get what we actually
specify.
There's a vec2 type, so there should probably be a struct version of it
too. Even if no functions use it right now, if a library user (like me)
needs a 2-element vector, they don't need to roll their own.
Lowercased Makefiles don't get picked up by the .gitignore for example,
which always looks odd after configuring. This commit just puts a
capital 'M' in front, like it's common.
You can make configure build in a different directory than the current
one when you give it a `--prefix` option. When doing that, the current
directy will be the build directory, not the source directory. This
breaks running `./post-build.sh`.
This commit fixes it by replacing the invocation with something that
takes into account `$VPATH` which properly references the source
directory. The `post-build.sh` still works properly because it
references the current directory to do its thing, which will (correctly)
be the build directory.
GLM_PI* is now used for the double versions, GLM_PI*f for the float
versions. The CGLM_ prefixed versions are now deprecated, since that
prefix is kinda only used for constants.
See https://github.com/recp/cglm/pull/61#issuecomment-423069770
M_PI, M_PI_2 and M_PI_4 aren't part of the C standard. If you put your
gcc into strict standards mode, like `-std=c11`, you won't get these
constants and including cglm.h will fail.
This commit replaces those constants with their literal values. The cast
to a float remains, to keep exactly the same behavior as before.