aboutsummaryrefslogtreecommitdiff
path: root/test cases/osx
AgeCommit message (Collapse)AuthorFilesLines
2022-10-31Revert "tests: Test extern'd globals on MacOS with the Apple Archiver"Eli Schwartz5-31/+0
This reverts commit d285be763f193606b078f218fdedc58679dfe037. This is part of #10628 and needs to be reverted, as it breaks other things. See https://github.com/mesonbuild/meson/pull/10628#issuecomment-1230560772
2022-07-25tests: Test extern'd globals on MacOS with the Apple ArchiverAilin Nemui5-0/+31
This forces the use of the Apple archiver, since that archiver doesn't add extern'd variables to the symbol table automatically, and instead requires that ranlib be used. A native file is used to ensure that Apple's ar is used even in the presence of llvm or gcc in the path with their superior archivers. Co-authored-by: Dylan Baker <dylan@pnwbakers.com>
2022-03-08tests: bitcode: add missing b_bitcode optionMarvin Scholz1-1/+2
The bitcode test did not actually have bitcode enabled, making it not really useful.
2021-11-18tests: remove extraframework test for pythonDylan Baker1-3/+0
This tries to link the system provided python, which is deprecated and will result in an ambiguous error like "your binary is not an allowed client of .../Library/Frameworks/python.framework/python.tbd for architecture x86_64".
2021-08-15editorconfig: add setting to trim trailing whitespaceEli Schwartz3-3/+1
and clean up all outstanding issues Skip 'test cases/common/141 special characters/meson.build' since it intentionally uses trailing newlines.
2021-08-12Fix building framework test.Jussi Pakkanen1-0/+2
2021-08-08Update iphone cross building.Jussi Pakkanen1-10/+17
2020-02-25test: merge installed_files.txt into test.jsonDaniel Mensinger6-12/+24
2019-12-17Fix macOS library test when using system zlib.Jussi Pakkanen1-1/+2
2019-12-04ci/test: unused args for WindowsMichael Hirsch, Ph.D11-13/+11
2019-11-29tests: add osx test case for PIE builds.Mihai Moldovan2-0/+8
2019-06-23compilers: Fix bitcode and other options for objc codeNirbheek Chauhan5-0/+35
We were setting the base options for the Objective-C compiler manually, due to which options such as b_bitcode and b_ndebug were not getting set at all. The base options here are the same as for C code with the Clang compiler, so just use the same inherited list. Also expand the bitcode test to ObjC and ObjC++ so this doesn't happen again.
2019-03-10Fix appleframeworks with multiple modules.Jussi Pakkanen2-0/+18
2019-02-01Rewrite appleframework and extraframework dependency classesNirbheek Chauhan4-0/+19
Instead of only doing a naive filesystem search, also run the linker so that it can tell us whether the -F path specified actually contains the framework we're looking for. Unfortunately, `extraframework` searching is still not 100% correct in the case when since we want to search in either /Library/Frameworks or in /System/Library/Frameworks but not in both. The -Z flag disables searching in those prefixes and would in theory allow this, but then you cannot force the linker to look in those by manually adding -F args, so that doesn't work.
2019-01-31tests: Don't require pkg-config for macOS testsNirbheek Chauhan2-10/+31
Only require it on the CI or if pkg-config is found.
2018-09-14test cases: add missing files to installed_files.txtMarco Trevisan (Treviño)1-0/+2
All these are marked as files to be installed, so we need list them.
2018-08-29Improve support for macOS dylib versioningNirbheek Chauhan2-2/+17
We now use the soversion to set compatibility_version and current_version by default. This is the only sane thing we can do by default because of the restrictions on the values that can be used for compatibility and current version. Users can override this value with the `darwin_versions:` kwarg, which can be a single value or a two-element list of values. The first one is the compatibility version and the second is the current version. Fixes https://github.com/mesonbuild/meson/issues/3555 Fixes https://github.com/mesonbuild/meson/issues/1451
2018-08-28Deduplicate build-tree RPATHs on macOSDavid Seifert1-0/+6
* Currently, RPATHs coming from dependencies and `build_rpath` provided by the user might contain the same path. Apple's `install_name` tool is allergic to providing the same argument twice when removing RPATHs: error: install_name_tool: "-delete_rpath /usr/lib" specified more than once
2017-12-03Merge pull request #2618 from mesonbuild/osxlinkerfixesJussi Pakkanen2-10/+17
Fix many things have have been slightly broken in OSX
2017-12-03Fix OSX CI. This is a bit of a hack but needs to be done. :(Jussi Pakkanen1-1/+1
2017-11-30Merge pull request #2668 from dcbaker/wip/macos-10.13-fixesJussi Pakkanen1-2/+6
macos 10.13 fixes
2017-11-26Specify build_rpath manually to targets linked by hand.Jussi Pakkanen1-4/+8
2017-11-26Update CMake reference file.Jussi Pakkanen1-6/+9
2017-11-26spelling: targetingJosh Soref1-4/+4
2017-11-21tests: Don't run xcode 8 tests on xcode 9Dylan Baker1-2/+6
It lacks the necessary SDKs to run the tests.
2017-06-09dependencies: Add a new class ExternalDependencyNirbheek Chauhan1-2/+7
This class now consolidates a lot of the logic that each external dependency was duplicating in its class definition. All external dependencies now set: * self.version * self.compile_args and self.link_args * self.is_found (if found) * self.sources * etc And the abstract ExternalDependency class defines the methods that will fetch those properties. Some classes still override that for various reasons, but those should also be migrated to properties as far as possible. Next step is to consolidate and standardize the way in which we call 'configuration binaries' such as sdl2-config, llvm-config, pkg-config, etc. Currently each class has to duplicate code involved with that even though the format is very similar. Currently only pkg-config supports multiple version requirements, and some classes don't even properly check the version requirement. That will also become easier now.
2017-05-23unit-test for testing xcode frameworksblackbox4-0/+22
2017-04-04Don't generate import library for shared modulesNirbheek Chauhan2-0/+3
Also add a test for this on all platforms.
2017-03-05tests: Minor fixes to the library-usage testsNirbheek Chauhan2-8/+13
Actually use the myFunc() symbol from the library, and actually run the built executable on macOS.
2017-03-04Add a cmake file for manual comparisonNirbheek Chauhan1-0/+26
We differ from cmake in the following manner: * We only set the major version (SOVERSION) in the dylib * If SOVERSION is not specified, we deduce it from version (VERSION) See installed_files.txt for a list of output dylib names.
2017-03-04darwin: Also add the major version in the dylibNirbheek Chauhan1-0/+3
And symlink to the unversioned library for build-time linking. https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/DynamicLibraryDesignGuidelines.html#//apple_ref/doc/uid/TP40002013-SW2 Unlike Autotools, we do not add the minor or micro version in the filename because the Apple documentation says you must embed that inside the library with -current_version.
2016-10-26Add osx test for the XCode 8 fixes to has_functionNirbheek Chauhan1-0/+26
2016-08-16Add a test to find libfoo.X.dylib via -lfooNirbheek Chauhan3-7/+34
Alex Băluț reported that on OS X libfoo.0.dylib cannot be found as -lfoo by the linker, and you must use -lfoo.0 instead. Add a test for this so the CI can catch such problems. The next commit will contain the fix.
2016-07-01Fix tests for the new library/executable naming schemeNirbheek Chauhan3-0/+25
Also add new tests for the platform-specific and compiler-specific versioning scheme. A rough summary is: 1. A bug in how run_tests.py:validate_install checked for files has been fixed. Earlier it wasn't checking the install directory properly. 2. Shared libraries are no longer installed in common tests, and the library name/path testing is now done in platform-specific tests. 3. Executables are now always called something?exe in the installed_files.txt file, and the suffix automatically corrected depending on the platform. 4. If a test installs a file called 'no-installed-files', the installed files for that test are not validated. This is required to implement compiler-specific tests for library names/paths such as MSVC vs MinGW 5. The platform-specific file renaming in run_tests.py has been mostly removed since it is broken for shared libraries and isn't needed for static libraries. 6. run_tests.py now reports all missing and extra files. The logic for finding these has been reworked.
2013-06-02Renamed add_test to test.Jussi Pakkanen1-1/+1
2013-03-03Simple test for OSX.Jussi Pakkanen2-0/+8