| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
That is, isinstance(x, y) or isinstance(x, z) can be flattened with a
tuple to isinstance(x, (y, z)).
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
This patch adds support for the D programming language[1] to Meson.
The following compilers are supported:
* LDC
* GDC
* DMD
[1]: http://dlang.org/
|
| |
|
|
|
| |
We should only append the compiler flags to the link flags when the
compiler is used as a wrapper around the linker during the link process
|
| |
|
|
|
| |
People can forget it and then wonder what's wrong. Just explicitly print
it.
|
| |\
| |
| | |
Fix library directory handling
|
| | |
| |
| |
| | |
during build file parsing.
|
| |/
|
|
|
|
|
|
| |
After c01b183e5, the mtime of coredata.dat is always newer than all the
other build files, which made regen_checker think that they always had
to be regenerated. Now we set the mtime of the file to a value before
the build files are generated and that makes everything behave as it did
earlier.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Meson script is not always in $scriptdir/../../ -- for instance if
installed with pip on Windows, the scriptdir is in:
C:/Python35/Lib/site-packages/meson-0.33.0.dev1-py3.5.egg/mesonbuild/scripts
and the meson.py script is in:
C:/Python35/Scripts
So, let's save the path available as Environment().meson_script_file
into the coredata.dat private file and use that to invoke Meson when
doing regen.
Also, let's fetch the backend that was used from the coredata too
instead of hard-coding vs2010.
Both these were causing a hard failure while doing regen with msbuild or
visual studio.
|
| |\
| |
| | |
Fix filenames and paths used in DLL shared library generation
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit contains several changes to the naming and versioning of
shared and static libraries. The details are documented at:
https://github.com/mesonbuild/meson/pull/417
Here's a brief summary:
* The results of binary and compiler detection via environment functions
are now cached so that they can be called repeatedly without
performance penalty. This is necessary because every
build.SharedLibrary object has to know whether the compiler is MSVC or
not (output filenames depend on that), and so the compiler detection
has to be called for each object instantiation.
* Linux shared libraries don't always have a library version. Sometimes
only soversions are specified (and vice-versa), so support both.
* Don't use versioned filenames when generating DLLs, DLLs are never
versioned using the suffix in the way that .so libraries are. Hence,
they don't use "aliases". Only Linux shared libraries use those.
* OS X dylibs do not use filename aliases at all. They only use the
soversion in the dylib name (libfoo.X.dylib), and that's it. If
there's no soversion specified, the dylib is called libfoo.dylib.
Further versioning in dylibs is supposed to be done with the
-current_version argument to clang, but this is TBD.
https://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/DynamicLibraryDesignGuidelines.html#//apple_ref/doc/uid/TP40002013-SW23
* Install DLLs into bindir and import libraries into libdir
* Static libraries are now always called libfoo.a, even with MSVC
* .lib import libraries are always generated when building with MSVC
* .dll.a import libraries are always generated when building with
MinGW/GCC or MinGW/clang
* TODO: Use dlltool if available to generate .dll.a when .lib is
generated and vice-versa.
* Library and executable suffix/prefixes are now always correctly
overriden by the values of the 'name_prefix' and 'name_suffix' keyword
arguments.
|
| |/ |
|
| | |
|
| | |
|
| |\
| |
| | |
Build transparently with a custom standard library
|
| | |
| |
| |
| | |
said language.
|
| |\ \
| | |
| | |
| | |
| | | |
centricular/cross-compile_32bit-x86_on_64bit-x86_exe-wrapper
Special-case the 32-bit executable on 64-bit x86 case while cross-compiling
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
Almost all 64-bit x86 OSes can run 32-bit x86 binaries natively. Detect
that case and don't require an exe wrapper.
|
| | |/
|/| |
|
| |/ |
|
| |\
| |
| | |
New options for controlling test output.
|
| | | |
|
| | |
| |
| |
| | |
This reverts commit e522a9f2684e38955aefda3b4413a78997ccdbc9.
|
| |\ \
| | |
| | | |
Run tests in parallel
|
| | |/ |
|
| | | |
|
| | | |
|
| |/ |
|
| |\ |
|
| | | |
|
| |/ |
|
| |
|
|
|
|
| |
This ensures that all build files always have a later timestamp than
coredata.dat, which is used to check if the build files must be
regenerated.
|
| | |
|
| | |
|
|
|
in the same toplevel dir.
|