Starting with additional includes, defines, and some basic cflags and ldflags.

Review URL: https://chromiumcodereview.appspot.com/9443044

git-svn-id: http://gyp.googlecode.com/svn/trunk@1243 78cadc50-ecff-11dd-a971-7dbc132099af
Fix CharacterSet map for VS 2010

Figures: the first test I add for ninja on Windows wasn't even supported on
2010 yet.

R=thakis

Review URL: https://chromiumcodereview.appspot.com/9704007

git-svn-id: http://gyp.googlecode.com/svn/trunk@1244 78cadc50-ecff-11dd-a971-7dbc132099af
mac make: Don't put host shared libraries into the product directory.

With the components build, but host and target create a libbase.dylib.
With the old code, both would end up directly in out/Release, creating
conflicting build rules for out/Release/libbase.dylib.

Instead, let the host version go into
out/Release/obj.host/base/libbase.dylib

BUG=chromium:90078
Review URL: https://chromiumcodereview.appspot.com/9700021

git-svn-id: http://gyp.googlecode.com/svn/trunk@1245 78cadc50-ecff-11dd-a971-7dbc132099af
Unbreak gyptest-toolsets.py on linux.
Review URL: https://chromiumcodereview.appspot.com/9699041

git-svn-id: http://gyp.googlecode.com/svn/trunk@1246 78cadc50-ecff-11dd-a971-7dbc132099af
Explicit paths to tools for ninja, rather than relying on environment

Previously, relying on 'cl', 'link', etc. to be in the path, so generating and
building required same environment, and setting GYP_MSVS_VERSION didn't work.

Now, get explicit paths to tools during generation so we're sure to be running
the right ones. Also fixes a problem with stupid cygwin having a 'link.exe'
that isn't the linker, in case that happens to be in the path.

Also, always ignore linker warning 4221 (no public symbols) because it's never useful.

Review URL: https://chromiumcodereview.appspot.com/9704066

git-svn-id: http://gyp.googlecode.com/svn/trunk@1247 78cadc50-ecff-11dd-a971-7dbc132099af
Unbreak Windows build

Unbreak VS 2005 support
Don't use flock on Windows ninja (apparently ld_target is used generally)

R=thakis

Review URL: https://chromiumcodereview.appspot.com/9701078

git-svn-id: http://gyp.googlecode.com/svn/trunk@1248 78cadc50-ecff-11dd-a971-7dbc132099af
Unbreak Mac and vs2005

- Don't run tests on OS where they're not applicable.
- Another attempt at fixing 2005

Review URL: https://chromiumcodereview.appspot.com/9701080

git-svn-id: http://gyp.googlecode.com/svn/trunk@1249 78cadc50-ecff-11dd-a971-7dbc132099af
Fallback behaviour was broken for forcing express version

(sorry for all the noise, this one has green tries now)

Review URL: https://chromiumcodereview.appspot.com/9703101

git-svn-id: http://gyp.googlecode.com/svn/trunk@1250 78cadc50-ecff-11dd-a971-7dbc132099af
MSBuild: TargetPath should match Lib.OutputFile or Link.OutputFile to avoid the MSB8012 warning.

TEST=built all.sln successfully.


git-svn-id: http://gyp.googlecode.com/svn/trunk@1251 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test for additional link dependencies

R=thakis

Review URL: https://chromiumcodereview.appspot.com/9808084

git-svn-id: http://gyp.googlecode.com/svn/trunk@1252 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test for runtime library settings

R=thakis

Review URL: https://chromiumcodereview.appspot.com/9836055

git-svn-id: http://gyp.googlecode.com/svn/trunk@1253 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test RTTI flag

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9835073

git-svn-id: http://gyp.googlecode.com/svn/trunk@1254 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test for function level linking

Use dumpbin on obj file to make sure free function appears as separate COMDAT
entry.

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9834078

git-svn-id: http://gyp.googlecode.com/svn/trunk@1255 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test ASLR (aka DYNAMICBASE) flag

Verify that the final executable has the correct flags specified.

Yay! Actually found a sorta-bug, the unset case was wrong.

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9836075

git-svn-id: http://gyp.googlecode.com/svn/trunk@1256 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test for additional linker options

Specify /dynamicbase:no as an additional option and use 'pefile' to verify that the flag made it through to the final binary.

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9839086

git-svn-id: http://gyp.googlecode.com/svn/trunk@1257 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test exception handling flags

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9837064

git-svn-id: http://gyp.googlecode.com/svn/trunk@1258 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test for additional compiler options

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9852014

git-svn-id: http://gyp.googlecode.com/svn/trunk@1259 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test linker subsystem flag

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9837084

git-svn-id: http://gyp.googlecode.com/svn/trunk@1260 78cadc50-ecff-11dd-a971-7dbc132099af
Add run_dumpbin as test function for VS-based testers

(Fixes buildbot not having dumpbin in path, currently erroring out on r1225-1257)

R=rsleevi@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9834085

git-svn-id: http://gyp.googlecode.com/svn/trunk@1261 78cadc50-ecff-11dd-a971-7dbc132099af
ninja windows: test for warning level

R=thakis@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9834095

git-svn-id: http://gyp.googlecode.com/svn/trunk@1262 78cadc50-ecff-11dd-a971-7dbc132099af