summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/c_function_attributes.py
Commit message (Collapse)AuthorAgeFilesLines
* Split attribute visibilityDylan Baker2019-06-251-2/+9
| | | | | | | | | | | | | | | * c_function_attributes: remove 'protected' from 'visibility' This doesn't exist on macos with the apple compiler, which always causes failures. Fixes #5530 * compilers: Add split visibility checks to has_function_attribute These check for a single visibility at a time, rather than all four at once. This allows for finer grained searches, and should make using these checks safer across operating systems.
* compilers/c_function_attributes: fix for ICCDylan Baker2018-11-151-4/+4
| | | | | ICC doesn't like the extra set of parens, GCC 8.2.1 and Clang 6.0.1 don't have a problem with this.
* Add method to check for C/C++ function attributesDylan Baker2018-09-071-0/+123
It's fairly common on Linux and *BSD platforms to check for these attributes existence, so it makes sense to me to have this checking build into meson itself. Autotools also has a builtin for handling these, and by building them in we can short circuit cases that we know that these don't exist (MSVC). Additionally this adds support for two common MSVC __declspec attributes, dllimport and dllexport. This implements the declspec version (even though GCC has an __attribute__ version that both it and clang support), since GCC and Clang support the MSVC version as well. Thus it seems reasonable to assume that most projects will use the __declspec version over teh __attribute__ version.