Reviewers: Jakob,

Message:
On 2013/07/09 07:44:43, Jakob wrote:
I disagree with this change.

standalone.gypi should be used for things specific to standalone builds.

common.gypi should be used for definitions shared by all targets, and should
be
completely agnostic of whether we're doing a standalone or an embedded build.
That means targets depending on it should include it explicitly (as we
currently
do in v8.gyp, d8.gyp, and various samples' *.gyp files).

the problem I'm trying to solve is that third_party sources can't directly
include v8 specific gypi files.

An alternative is duplicating the entire toolset-specific compiler flags in
standalone.gypi in a conditional block with v8_code == 0. Or maybe moving that
into another gypi file that is included by common.gypi and standalone.gypi

wdyt?

Description:
Always include common.gypi in standalone mode

That way, third-party libraries use the correct toolset settings. Also, add
missing defines and dependencies for windows build.

BUG=v8:2745
[email protected]

Please review this at https://codereview.chromium.org/18846002/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M Makefile
  M build/gyp_v8
  M build/standalone.gypi


Index: Makefile
diff --git a/Makefile b/Makefile
index 16c004f32d00d11ec16008323034f4baf4ada80c..6803c4e537a7ed40a367609852896012dccddc56 100644
--- a/Makefile
+++ b/Makefile
@@ -354,14 +354,15 @@ OUT_MAKEFILES = $(addprefix $(OUTDIR)/Makefile.,$(ARCHES))
 $(OUT_MAKEFILES): $(GYPFILES) $(ENVFILE)
        GYP_GENERATORS=make \
        build/gyp/gyp --generator-output="$(OUTDIR)" build/all.gyp \
-                     -Ibuild/standalone.gypi --depth=. \
+                     -Ibuild/common.gypi -Ibuild/standalone.gypi --depth=. \
                      -Dv8_target_arch=$(subst .,,$(suffix $@)) \
                      -S.$(subst .,,$(suffix $@)) $(GYPFLAGS)

 $(OUTDIR)/Makefile.native: $(GYPFILES) $(ENVFILE)
        GYP_GENERATORS=make \
        build/gyp/gyp --generator-output="$(OUTDIR)" build/all.gyp \
-                     -Ibuild/standalone.gypi --depth=. -S.native $(GYPFLAGS)
+                     -I build/common.gypi -Ibuild/standalone.gypi --depth=. \
+                     -S.native $(GYPFLAGS)

 must-set-ANDROID_NDK_ROOT_OR_TOOLCHAIN:
 ifndef ANDROID_NDK_ROOT
Index: build/gyp_v8
diff --git a/build/gyp_v8 b/build/gyp_v8
index 73a66a72fd5c0736c399a255aa2d1be281c13373..2eececdf5984e28324436adea848ca9886a0157a 100755
--- a/build/gyp_v8
+++ b/build/gyp_v8
@@ -95,7 +95,8 @@ def additional_include_files(args=[]):
     if os.path.realpath(path) not in specified_includes:
       result.append(path)

-  # Always include standalone.gypi
+  # Always include standalone.gypi and common.gypi
+  AddInclude(os.path.join(v8_root, 'build', 'common.gypi'))
   AddInclude(os.path.join(v8_root, 'build', 'standalone.gypi'))

   # Optionally add supplemental .gypi files if present.
Index: build/standalone.gypi
diff --git a/build/standalone.gypi b/build/standalone.gypi
index b1303c81220c88783612b9b4b8293239f168fed8..59b289e6e5f76422726871a709a224e08df780f6 100644
--- a/build/standalone.gypi
+++ b/build/standalone.gypi
@@ -128,6 +128,9 @@
             },
           }],
           ['OS == "win"', {
+            'defines!': [
+              'DEBUG',
+            ],
             'msvs_settings': {
               'VCCLCompilerTool': {
                 'WarnAsError': 'false',
@@ -218,6 +221,14 @@
             #   1 == /SUBSYSTEM:CONSOLE
             #   2 == /SUBSYSTEM:WINDOWS
             'SubSystem': '1',
+
+            'conditions': [
+              ['v8_enable_i18n_support==1', {
+                'AdditionalDependencies': [
+                  'advapi32.dll',
+                ],
+              }],
+            ],
           },
         },
       },


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to