Dylan Baker
e7e04c814b
Add a rust test for internal c linkage
...
We have code to support this, but no tests. That seems pretty bad.
And better yet, it doesn't work on MSVC in some cases.
4 years ago
Dylan Baker
11d123332d
ninjabackend: fix linking dynamic c libraries with rust
...
The correct name is "dylib" not "shared"
4 years ago
Peter Harris
be015a37d7
Visual Studio Address Sanitizer updates
...
* Allow address sanitizer for Visual Studio 2019 version 16.9
Address Sanitizer was first supported with the current syntax in Visual
Studio 16.9.0 (cl version 19.28.29910).
* VS: Convert /fsanitize=address to project file setting
4 years ago
Marco Trevisan (Treviño)
739e499554
ninjabackend: Add pch includes as early as possible not to be overridden
...
When pch are used for a target meson will make the compiler to include
the pre-compiled header. While this is useful, this needs to happen
before any other header has been included, otherwise:
1) we won't take advantage of pch for anything else previously included
2) gcc will just fail as it won't even try to look for a pre-compiled
header in this case [1]
This case can happen quite a easily when a dependency provides an
included header in its cflags.
As per this, split _generate_single_compile() in two phases, one is
responsible of initializing the compiler data, while the other is
defining commands for the context.
In this way, when pch can be used, we can insert the pch inclusion
earlier than any other provided by the target.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100462
4 years ago
Jussi Pakkanen
53f6ef3b7b
Xcode: fix project cleaning.
4 years ago
Jason Francis
39c751b94c
introspection: export all sources for custom targets
...
Also adds some test cases for source files in target_sources.
4 years ago
Jussi Pakkanen
1a31882f59
Xcode: make Swift projects work.
4 years ago
Jussi Pakkanen
1cd80985b4
Xcode: add objective C++ flags to plain C++ because Xcode requires it.
4 years ago
Jussi Pakkanen
0e4c358f35
Xcode: add objective C flags to plain C because Xcode requires it.
4 years ago
Jussi Pakkanen
aa2a153afb
Xcode: fix linking to customtargetindex objects.
4 years ago
Jussi Pakkanen
22d0e6dd55
Xcode: even more command line argument expansion.
4 years ago
Jussi Pakkanen
0785ec3317
Xcode: Quote McQuoteface.
4 years ago
Jussi Pakkanen
ee2363dbb7
Xcode: handle CustomTargetIndexes.
4 years ago
Jussi Pakkanen
2a341dd4ec
Xcode: ever more quoting.
4 years ago
Jussi Pakkanen
7fba94997f
Xcode: only add source and build dirs if implicit_include_directories is set.
4 years ago
Jussi Pakkanen
bff85e2a6c
Xcode: do not link shared modules against executables.
4 years ago
Jussi Pakkanen
40fb466513
Xcode: add missing quote character.
4 years ago
Jussi Pakkanen
965f7e18fa
Xcode: fix shell quotings.
4 years ago
Jussi Pakkanen
4881c2cf98
Xcode: skip link language override test.
4 years ago
Jussi Pakkanen
674538d8c9
Xcode: put all include dirs via a property rather than a cmd line arg.
4 years ago
Jussi Pakkanen
b42a5e21d0
Xcode: add target private dir to include path.
4 years ago
Jussi Pakkanen
3f99830f74
Xcode: quote some entries as needed.
4 years ago
Jussi Pakkanen
d116d94f92
Xcode: fix file objects in various places.
4 years ago
Jussi Pakkanen
7803405128
Xcode: fix compiling shared modules.
4 years ago
Jussi Pakkanen
6f76fce904
Xcode: regenerato project file when build conf changes.
4 years ago
Jussi Pakkanen
8943945efe
Xcode: replace all backslashes with eight backslashes. Because obviously.
4 years ago
Jussi Pakkanen
68dda2a241
Xcode: fix generators that take custom targets as inputs.
4 years ago
Jussi Pakkanen
e422e9c634
Xcode: add proper target dependencies to custom targets.
4 years ago
Jussi Pakkanen
126db6de12
Xcode: fix running commands that lie in the build root dir.
4 years ago
Jussi Pakkanen
09d89dfaeb
Xcode: fix custom target chaining.
4 years ago
Jussi Pakkanen
fa947e6d75
Xcode: made custom targets into top level AggregateTargets.
4 years ago
Jussi Pakkanen
cc2a2e8492
Xcode: make the test target depend on build_all target.
4 years ago
Jussi Pakkanen
48e38fbaeb
Xcode: fix custom targets that produce objs and libs.
4 years ago
Jussi Pakkanen
aaae1b2a30
Xcode: handle capturing generators.
4 years ago
Jussi Pakkanen
39f963988b
Xcode: this is what happens when you do not treat command lines as arrays.
4 years ago
Jussi Pakkanen
318d50270c
Xcode: remove some unnecessary dict entries.
4 years ago
Jussi Pakkanen
e18b5f091d
Xcode: add functionality for sources created with a generator.
4 years ago
Jussi Pakkanen
e7ceab7510
Xcode: do not process custom target outputs on targets they are not used in.
4 years ago
Jussi Pakkanen
c92a860c8b
Xcode: add sanity check asserts.
4 years ago
Jussi Pakkanen
96d85d601d
Xcode: fix path of extracted objects in subdirs.
4 years ago
Jussi Pakkanen
bb350aaf6f
Xcode: use correct key for file id lookup.
4 years ago
Jussi Pakkanen
50cf8bcaba
Xcode: can generate object files with generators.
4 years ago
Jussi Pakkanen
9dfd53dc40
Xcode: fix setting up inlude args for source and build dirs.
4 years ago
Jussi Pakkanen
be3efaf1d5
Xcode: fix linking of static libs that link to other libs.
4 years ago
Jesse Natalie
e901581ede
VS: Disable MSBuild warnings for always-generated targets
...
Without this, VS will generate
warning MSB8065: Custom build for item "<path>\custom_target.rule" succeeded, but specified output "<path>\outofdate.file" has not been created. This may cause incremental build to work incorrectly.
4 years ago
Jussi Pakkanen
05489616fb
Xcode: use common language options like std version.
4 years ago
Jussi Pakkanen
86fb916d33
Xcode: Fix source generation.
4 years ago
Jussi Pakkanen
c9d98e9a98
Xcode: Fix target prefixes and suffixes and conf-time generated sources.
4 years ago
Jussi Pakkanen
82f5d12a56
Xcode: Fix object extraction.
4 years ago
Jussi Pakkanen
f328632fa5
Write include directory names with the correct amount of quoting.
4 years ago