aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-01-08mention lack of up-to-date dependencies explicitly [skip ci]Vadim Zhukov1-1/+3
Requested by scivision@
2020-01-08[skip ci] Use more up-to-date wording for package managersVadim Zhukov1-4/+2
Most of the OSes Meson supports actually do have package managers, and at least some of them are not harder to use than Linux ones.
2020-01-08Rename test dirs to sequential order.Jussi Pakkanen37-4/+4
2020-01-07Bump version number for new development.Jussi Pakkanen1-1/+1
2020-01-07Prepare new release.0.53.0Jussi Pakkanen20-172/+196
2020-01-07One more symlink test skip.Jussi Pakkanen1-1/+1
2020-01-07environment: Fix detection of icc on macOSDylan Baker1-6/+3
Which wouldn't call the function to detect c_args and friends.
2020-01-06Updated linker MR (#6407)Jussi Pakkanen3-12/+21
* environment: Fix passing always args to a number of less common linkers These are mostly (oops xilink) proprietary linkers I can't use for various reasons. Fixes: #6332 * Add intelfix from scivision. * Ifort fix from scivision. * PGI fix from scivision. * Cuda fix from scivision. * Fix linker passing for armclang.
2019-12-31Make D template work even if dub is not available.Jussi Pakkanen1-7/+9
2019-12-29Only run symlink test from git checkout.Jussi Pakkanen1-1/+11
2019-12-29cmake: Use trace for missing link flags (fixes #6386)Daniel Mensinger12-8/+152
This is neccessary for static libraries, since the CMake file API does not add link flags here.
2019-12-28bugfix: netcdf pkgconfig stop if foundMichael Hirsch, Ph.D1-0/+2
2019-12-28Merge pull request #6380 from scivision/cuda_qcJussi Pakkanen18-59/+69
refactor/doc: cuda tests
2019-12-24bugfix: check len before indexMichael Hirsch, Ph.D1-2/+2
2019-12-23refactor: cuda no unused argsMichael Hirsch, Ph.D16-25/+25
2019-12-23doc: cuda windows commentMichael Hirsch, Ph.D1-1/+2
2019-12-23doc: examples of run_project_tests.py optionsMichael Hirsch, Ph.D1-33/+42
2019-12-22cmake: Fix obeject librariesDaniel Mensinger16-23/+236
This fixes an issue with generated sources and object libraries, as well as an issue on windows with the `link` linker and the vs backend. The last issue is resolved by building the source files multiple times to avoid extracting object files in meson.
2019-12-21Merge pull request #6355 from scivision/depmethodJussi Pakkanen9-186/+226
dependencies: refactor {coarray,mpi,hdf5,netcdf} to use dependency(.., methods: ...)
2019-12-19summary: Change 'section' to be a kwarg instead of positionalXavier Claessens4-50/+39
Fixes: #6372.
2019-12-19add compiler.get_linker_id() methodMichael Hirsch, Ph.D7-34/+69
this can be useful for if/elif where linker behaviors must be considered. For example, clang with "link" vs gcc with "ld.bfd" etc. ci for compiler.get_linker_id() method doc add @FeatureNew check Co-Authored-By: Daniel Mensinger <daniel@mensinger-ka.de>
2019-12-19ci: improve robustnessMichael Hirsch, Ph.D4-23/+23
* netcf * hdf5 * scalapack * coarray
2019-12-19dependencies: refactor to use methods properlyMichael Hirsch, Ph.D5-163/+203
2019-12-19CI: Skip NetCDF Fortran test on OSXDaniel Mensinger1-1/+1
2019-12-19CI: Skip git tests if g-ir-scanner does not existDaniel Mensinger2-2/+2
2019-12-19CI: Fix C++11 related error on osx for protocol bufferDaniel Mensinger1-1/+1
2019-12-19fs: rename samefile => is_samepathMichael Hirsch, Ph.D3-16/+29
is_samepath better reflects the nature of this function--that files and directories can be compared. Also, instead of raising exceptions, simply return False when one or both .is_samepath(path1, path1) don't exist. This is more intuitive behavior and avoids having an extra if fs.exist() to go with every fs.is_samepath()
2019-12-18linkers: Remove get_allow_undefined_args from link.exeDylan Baker1-2/+1
PE DLLs don't work like elf or mach-o, there's no way to define symbols at run time, they must all be defined as import or export at link time. As such there's no value in being able to have undefined symbols in MSVC, nor does meson expose an option to change them Fixes: #6342
2019-12-18PkgConfigDependency: Sort -L flags according to PKG_CONFIG_PATHTing-Wei Lan2-0/+60
When there is more than one path in PKG_CONFIG_PATH. It is almost always preferred to find things in the order specified by PKG_CONFIG_PATH instead of assuming pkg-config returns flags in a meaningful order. For example: /usr/local/lib/libgtk-3.so.0 /usr/local/lib/pkgconfig/gtk+-3.0.pc /usr/local/lib/libcanberra-gtk3.so /usr/local/lib/pkgconfig/libcanberra-gtk3.pc /home/mesonuser/.local/lib/libgtk-3.so.0 /home/mesonuser/.local/lib/pkgconfig/gtk+-3.0.pc PKG_CONFIG_PATH="/home/mesonuser/.local/lib/pkgconfig:/usr/local/lib/pkgconfig" libcanberra-gtk3 is a library which depends on gtk+-3.0. The dependency is mentioned in the .pc file with 'Requires', so flags from gtk+-3.0 are used in both dynamic and static linking. Assume the user wants to compile an application which needs both libcanberra-gtk3 and gtk+-3.0. The application depends on features added in the latest version of gtk+-3.0, which can be found in the home directory of the user but not in /usr/local. When meson asks pkg-config for linker flags of libcanberra-gtk3, pkg-config picks /usr/local/lib/pkgconfig/libcanberra-gtk3.pc and /home/mesonuser/.local/lib/pkgconfig/gtk+-3.0.pc. Since these two libraries come from different prefixes, there will be two -L arguments in the output of pkg-config. If -L/usr/local/lib is put before -L/home/mesonuser/.local/lib, meson will find both libraries in /usr/local/lib instead of picking libgtk-3.so.0 from the home directory. This can result in linking failure such as undefined references error when meson decides to put linker arguments of libcanberra-gtk3 before linker arguments of gtk+-3.0. When both /usr/local/lib/libgtk-3.so.0 and /home/mesonuser/.local/lib/libgtk-3.so.0 are present on the command line, the linker chooses the first one and ignores the second one. If the application needs new symbols that are only available in the second one, the linker will throw an error because of missing symbols. To resolve the issue, we should reorder -L flags according to PKG_CONFIG_PATH ourselves before using it to find the full path of library files. This makes sure that we always follow the preferences of users, without depending on the unreliable part of pkg-config output. Fixes https://github.com/mesonbuild/meson/issues/4271.
2019-12-18python: add embed to the python dependency functionDaniel Mensinger5-12/+27
2019-12-18Merge pull request #4649 from dcbaker/summary-functionJussi Pakkanen9-6/+265
Add a summary() function for configuration summarization
2019-12-17Merge pull request #6065 from dcbaker/pass-options-to-linker-detectionJussi Pakkanen17-135/+156
Pass options to linker detection
2019-12-17ci cmake: Windows link.exe skip due to symbol issuesMichael Hirsch, Ph.D10-12/+16
2019-12-17Fail gracefully detecting hdf5 if pkg-config is not available.Jussi Pakkanen1-8/+11
2019-12-17Fix macOS library test when using system zlib.Jussi Pakkanen1-1/+2
2019-12-16Clean MSI generator Try 2 [skip ci]Michael Brockus1-28/+85
2019-12-15default inc dirs: Fix warning on MSYS (fixes #6336)Daniel Mensinger1-5/+8
2019-12-14ci: type hint checking for compilers/mixins/intel.pyMichael Hirsch, Ph.D1-1/+1
2019-12-14intel/intel-cl: handle arguments in intel-specific wayMichael Hirsch, Ph.D1-20/+38
intel compiler's defaults are different enough from MSVC and GNU that it's necessary to set specific defaults for Intel compilers. This corrects/improves behaviors initially addressed in b1c8f765fa6e2a
2019-12-13run_tests.py: use mlog.log_once to avoid spamming ninja < 1.9 warningsDylan Baker1-3/+3
2019-12-13compilers: make use of mlog.log_onceDylan Baker2-6/+2
I'm sure there are other places that could use this, but I didn't see any right off that bat.
2019-12-13mlog: Add a log_once functionDylan Baker2-10/+67
There are a number of cases where we end up spamming users with the same message over and over again, which is really annoying. This solves that.
2019-12-13mlog: remove incorrect uses of global keywordDylan Baker1-2/+0
global is only needed to allow replacement of global values, they're always in scope to read.
2019-12-12summary: Add 'Subprojects' section to main projectXavier Claessens1-4/+20
2019-12-12summary: Add bool_yn keyword argumentXavier Claessens4-6/+21
2019-12-12summary: Allow section with no title, and passing key/value separatelyXavier Claessens5-26/+43
2019-12-12Add a summary() function for configuration summarizationXavier Claessens9-2/+213
Based on patch from Dylan Baker. Fixes #757
2019-12-13mintro: include test protocol in introspection dataPaolo Bonzini4-2/+8
2019-12-13ci fortran: add case where buildtype=release and warning_level=3Michael Hirsch, Ph.D2-0/+6
this can find issues with non-default build options
2019-12-12Consider compiler arguments in linker detection logicDylan Baker5-17/+23
If a user passes -fuse-ld=gold to gcc or clang, they expect that they'll get ld.gold, not whatever the default is. Meson currently doesn't do that, because it doesn't pass these arguments to the linker detection logic. This patch fixes that. Another case that this is needed is with clang's --target option This is a bad solution, honestly, and it would be better to use $LD or a cross/native file but this is needed for backwards compatability. Fixes #6057