Nicolas Schneider
fba749fcb7
extract vs2015backend into own file
2016-05-30 22:00:20 +02:00
Nicolas Schneider
d34d85b0f5
vs2015: fix object generators
2016-05-30 21:49:37 +02:00
Nicolas Schneider
3bedca0257
add vs2015 backend
2016-05-30 21:49:35 +02:00
Nicolas Schneider
a29d9c2c33
vs: fix generators that use indexed output replacements (like @OUTPUT0@)
2016-05-26 13:08:33 +02:00
Jussi Pakkanen
2e2df70dd0
Merge branch 'centricular-customtarget-path-windows'
2016-05-01 18:39:45 +03:00
Nicolas Schneider
985ea50944
vs2010: add object files from custom_target to project
...
Object files from a custom_target are like external objects and must be
added to the project.
Object files from a generator are automatically used by MSBuild, since they
are part of the CustomBuildStep and thus part of the same project as the
current build target.
2016-04-19 23:25:45 +02:00
Nicolas Schneider
060f195fe0
vs2010: add generated libs as link dependencies
2016-04-19 23:25:45 +02:00
Nicolas Schneider
1ccb4b3a51
vs2010: add dirs of custom_target generated files to include dirs
2016-04-19 23:25:45 +02:00
Nirbheek Chauhan
86aa51232e
backends: Don't duplicate test setup data file name
...
Instead, return the values of the test and benchmark setup data files so
that the ninja/osx/vs backends can use those filenames instead of
hard-coding them.
2016-04-15 05:49:42 +05:30
Jussi Pakkanen
cab5ce4fc0
Merge pull request #438 from trhd/testing_options
...
New options for controlling test output.
2016-04-06 23:10:20 +03:00
Nicolas Schneider
536edb65d6
vs2010: replace " with \" in /D command line args
...
The /D switch strips any quotes except when they are escaped.
2016-04-06 22:10:29 +03:00
Hemmo Nieminen
336904b553
Move MesonException from coredata to mesonlib.
2016-04-01 00:52:45 +03:00
Jussi Pakkanen
5bb94b901d
Merge pull request #486 from nioncode/vs-transitivedeps
...
vs2010: fix transitive dependencies
2016-03-31 22:20:19 +03:00
Nicolas Schneider
b970ef692f
vs2010: add extra_files to project
2016-03-30 12:38:28 +02:00
Nicolas Schneider
33e842e50a
vs2010: fix transitive dependencies
2016-03-30 00:35:07 +02:00
Jussi Pakkanen
f3386d10c3
Merge branch 'vs-privinc'
2016-03-29 22:50:15 +03:00
Jussi Pakkanen
833520afb5
Merge branch 'vs-fixinclude'
2016-03-29 22:45:45 +03:00
Jussi Pakkanen
1d89d091f8
Merge branch 'vs-extraargs'
2016-03-29 22:32:48 +03:00
Jussi Pakkanen
5ea24bafdd
Merge branch 'samename'
2016-03-29 22:25:16 +03:00
Nicolas Schneider
a33d9d56cf
vs2010: support EXTRA_ARGS for generators
2016-03-29 12:08:34 +02:00
Nicolas Schneider
c2a9f81b68
vs2010: fix generated files' path
...
Generated files should always come with the correct relative path set,
so we don't have to modify it at all.
2016-03-29 12:08:34 +02:00
Nicolas Schneider
ba8b650cda
vs2010: fix relative path to target private dir for generators
...
backend.get_target_private_dir() includes the target directory in the path.
However, we want to treat all paths relative from the target directory,
because that's where our VS project file lives in.
2016-03-29 12:08:34 +02:00
Nicolas Schneider
330be891c1
vs2010: fix generator command
...
A shebang line on Windows will be resolved to [binary, script_path].
Thus, we need to use both instead of just taking the first element of the
command.
2016-03-29 12:08:09 +02:00
Nicolas Schneider
30e2a5feae
vs2010: fix include directories
...
Everything in the VS project file is relative to the project file itself.
The project file gets put in the target.subdir, so to include files from
there we just need to use '.'. To include from the private dir, we
need to use the relative path from the target dir to the target private
dir.
2016-03-29 11:50:50 +02:00
Nicolas Schneider
9c17f0cd93
vs2010: support private include dirs
2016-03-29 11:49:40 +02:00
Nicolas Schneider
fd8180ddcb
move source file conflict detection into Vs2010 backend
2016-03-28 14:42:52 +02:00
Nicolas Schneider
84804fc531
vs2010: use copy of buildtype_args to not change global state
...
We do not want the modifications of general_args to propagate to the
global buildtype_args.
2016-03-25 11:01:07 +01:00
Nicolas Schneider
8787ec3ea2
vs2010: fix object extraction with same source file name
...
This also refactors determine_ext_objs() to use inheritance instead of a
method flag for determining the object output name.
2016-03-25 09:49:30 +01:00
Nicolas Schneider
0c4aab6eed
vs2010: support same source file names in different subdirs
2016-03-24 23:44:44 +01:00
Jussi Pakkanen
9071c8fc45
Merge branch 'Custom target absolute paths'.
2016-03-20 21:39:49 +02:00
Jussi Pakkanen
c1a0bd9a52
Merge pull request #441 from nioncode/vs-compile-args
...
vs2010: fix compile args
2016-03-20 21:24:48 +02:00
Jussi Pakkanen
a3d49ca1ce
Merge pull request #453 from nioncode/vs-customTargetDependencies
...
vs2010: fix dependencies of CustomTarget
2016-03-20 18:49:53 +02:00
Nicolas Schneider
147b7aa356
vs2010: add explicit objects as 'Object' ItemGroup instead of link dependency
...
This has two effects:
1. It makes targets with only object files work (test case 88).
2. It adds the object files to the project in the VS IDE.
2016-03-17 13:13:28 +01:00
Nicolas Schneider
d72cc6e6f8
vs2010: fix object extraction
...
1. Dependencies must be set up with the target's id instead of its
basename.
2. Extracted object output file names must not include the directory
prefix, because MSBuild puts all object files into the same directory
and names them srcfilename.obj instead of dir/filename.obj or
dir_filename.obj.
2016-03-17 12:37:38 +01:00
Nicolas Schneider
4d9db21039
vs2010: fix dependencies of CustomTarget
2016-03-16 00:00:39 +01:00
Nicolas Schneider
3871f22cc3
remove unnecessary os.path.join() calls
...
ofilenames and srcs are already absolute paths.
2016-03-15 23:37:50 +01:00
Nicolas Schneider
2761f96fe9
vs2010: give each target an own temp dir
...
The 'Rebuild' target fails in mysterious ways if multiple targets use
the same directories because of output files being deleted between two
build steps (e.g. test case 78 fails on Rebuild, whereas Clean + Build
work just fine).
2016-03-14 09:56:42 +01:00
Nicolas Schneider
2511ff0970
check is_header() first, since it is a subset of is_source()
2016-03-14 00:03:16 +01:00
Nicolas Schneider
1f907e75da
add everything that is not an object or source file to headers list
2016-03-13 23:08:37 +01:00
Nicolas Schneider
c72cefaac4
only include known source file extensions into sources list
2016-03-13 19:07:44 +01:00
Nicolas Schneider
baa639031b
not all dependencies have a compile_args attribute
2016-03-13 19:01:46 +01:00
Nicolas Schneider
e366631e9e
don't fail if we don't compile anything (we might just bundle object files)
2016-03-13 18:58:41 +01:00
Nicolas Schneider
5503939866
only guess language for source files, not for header or object files
2016-03-13 18:03:14 +01:00
Nicolas Schneider
8eac78b861
vs2010: support language specific extra_args
2016-03-13 17:08:30 +01:00
Jussi Pakkanen
0d5eaa2721
Merge pull request #442 from nioncode/vs-linker-args
...
vs2010: fix linker args
2016-03-12 16:44:33 +02:00
Nicolas Schneider
17f1323aca
vs2010: fix linker args
2016-03-12 14:18:51 +01:00
Nicolas Schneider
49418cfe8a
vs2010: support multiple precompiled headers (one per language)
...
This creates the PrecompiledHeader properties for every source file in the
project if multiple languages are present. Otherwise, the global pch
settings are used.
The pch to use is determined by checking the suffix of the source file.
2016-03-12 02:02:36 +01:00
Nicolas Schneider
5ba7680a0d
vs2010: fail on multiple precompiled headers
2016-03-12 00:41:04 +01:00
Nicolas Schneider
18ae344be4
vs2010: support precompiled headers
2016-03-11 19:33:53 +01:00
Nicolas Schneider
40a7287a59
vs2010: properly check whether solution needs to be regenerated
2016-02-25 23:13:29 +01:00