Giter VIP home page Giter VIP logo

gyp's People

Watchers

James Cloos avatar

gyp's Issues

msvs_precompiled_source doesn't play well with msvs_settings

In the case where msvs_precompiled_source is used simultaneously with 
msvs_settings, the two can clash because msvs_precompiled_source assumes that 
only a single source file will be listed. In general there should only be a 
single one, but failing with a mysterious string collision error is not a 
good failure mode. We should either support multiple, or complain more 
coherently.

Original issue reported on code.google.com by [email protected] on 26 Apr 2009 at 10:11

handle setup_mount.bat

Currently gyp on windows assumes that the semi-hermetic version of cygwin 
used in chromium has been configured in the registry with the setup_mount.bat 
present in the source tree. Ideally this would either not be required, or 
alternatively their should be a way to properly express this dependency.

Original issue reported on code.google.com by [email protected] on 26 Apr 2009 at 9:50

variable set in condition is undefined when used by a target defined in another condition (BRANDING)

In the self-contained example below, "gyp -f gypd" generates an error:

KeyError: 'Undefined variable BRANDING in <(BRANDING)'

As described in the comments below, the variable *is* defined if the target 
is itself outside of a condition.  It also doesn't matter if the two 
condition blocks are swapped in the 'conditions' list (i.e., you try to put 
the condition that defines the BRANDING variable "before" the target 
condition), you get the undefined variable error regardless of the order.


{
  'variables': {
    'OS': 'win',
    'branding': 'Chrome',
    # 'BRANDING' is set in the 'conditions' section at the bottom.
  },
  # BRANDING *is* defined for this target outside of the condition:
  #'targets': [
  #  {
  #    'target_name': 'mini_installer',
  #    'type': 'none',
  #    'sources': [
  #      '<(BRANDING)',
  #    ],
  #  },
  #],
  'conditions': [
    ['OS=="win"', {
      # BRANDING is undefined for this conditional target
      'targets': [
        {
          'target_name': 'setup',
          'type': 'none',
          'sources': [
            '<(BRANDING)',
          ],
        },
      ],
    }],
    [ 'branding == "Chrome"', {
      'variables': {
         'BRANDING': '../../chrome/app/theme/google_chrome/BRANDING',
      },
    }, { # else branding!="Chrome"
      'variables': {
         'BRANDING': '../../chrome/app/theme/chromium/BRANDING',
      },
    }],
  ],
}




Original issue reported on code.google.com by [email protected] on 29 May 2009 at 5:46

lib suffix

There should be a standard library suffix type variable.

Original issue reported on code.google.com by [email protected] on 17 Jun 2009 at 5:27

mium/

What steps will reproduce the problem?
1.
2.
3.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 8 Jun 2009 at 12:38

msvs generator does not rebuild when command lines have changed

Visual Studio normally only keeps track of changes to project properties 
(including those that affect the command-lines run) for the duration of one 
session. Nothing is kept on disk.

So for instance if you add a command line flag to a particular project. 
Visual studio will correctly understand that this project needs to be 
rebuild if you do it right away. If you exit and restart visual studio 
after having changed and saved the project, it will not detect that a 
rebuild is needed.

We can use gyp to compensate for this behavior using the following trick: 
Store a file containing the complete set of information known at gyp time 
related to each configuration of a target. Then add a dependency on that 
file to its related target. Only touch the file if the settings have 
changed.

Original issue reported on code.google.com by [email protected] on 26 Apr 2009 at 9:56

fix @cmd syntax on windows

What steps will reproduce the problem?
1.
2.
3.

What is the expected output? What do you see instead?


Please use labels and text to provide additional information.



Original issue reported on code.google.com by [email protected] on 12 Jun 2009 at 9:33

Allow variables overriding from the command line

What steps will reproduce the problem?
1. Try gyp -f make -DOS=freebsd
2. See that gyp file will be parsed with OS=linux
3. Cry to sleep

I'm using gyp on FreeBSD 7.2-RELEASE.

The attached patch uses the generator default variables first then the
command line variables.

Original issue reported on code.google.com by [email protected] on 5 Jun 2009 at 9:49

Attachments:

gyp seems to improperly handle variables with underscores in them

On windows if an include_dir uses a variable whose name has underscores, the 
contents of the 
variable do not seem to be escaped correctly with regard to backslashes. The 
path is interpreted as 
single \path which causes stray control characters to appear in the generated 
vcproj files.


Original issue reported on code.google.com by [email protected] on 4 Jun 2009 at 11:40

Incompatible with Python 3

When does the problem occur?
The problem occurs when a user attempts to compile GYP with Python 3.0.x.

What is the expected output? What do you see instead?
Rather than a properly compiled GYP, Python outputs a plethora of errors, 
mostly syntactical.

What version of the product are you using? On what operating system?
GYP: Revision 520
OS: Windows 7 Ultimate RC1 x64
Python: Python 3.0.1 AMD64

Please provide any additional information below.
I am almost done updating the source for Python 3.

Original issue reported on code.google.com by techsoftadvanced on 17 Jun 2009 at 8:52

msvs generator may emit lf instead of crlf in headers for some python versions

The msvs generator uses the built-in xml module. This module accepts an eol 
parameter which can 
be used to specify an alternate line ending. This is used for the msvs 
generator since visual studio 
and incredibuild expect crlf. Unfortunately some versions of python2.4 
(including unfortunately the 
one chromium has checked in) ignore this parameter when emitting the xml 
header. Fortunately, 
visual studio and incredibuild will accept either variant for the header. But 
it would be nice to be 
consistent. We should find an alternative that works on all python versions.

Original issue reported on code.google.com by [email protected] on 27 Apr 2009 at 7:34

Add support for vs2008

Apparently visual studio 2008 can be supported with a simple version change 
to the emitted projects/solutions. We should support this, possibly auto-
detecting which version to emit.

Original issue reported on code.google.com by [email protected] on 26 Apr 2009 at 10:13

msvs_precompiled_* should pull things out of excluded on windows

A syntax like the following should work, but currently you need to 
explicitly gate precompiled headers from windows out on other platforms, 
but not on windows.
{
   'sources': [
         .....
       'bob_precompiled.cc',
       'bob_precompiled.h',
    }
    'sources!': [
       'bob_precompiled.cc',
       'bob_precompiled.h',
    ],
    'configurations': {
        'Debug': {
             'msvs_precompiled_header': 'bob_precompiled.h',
             'msvs_precompiled_source': 'bob_precompiled.cc',
         },
     },  
}

Original issue reported on code.google.com by [email protected] on 27 Apr 2009 at 6:28

FASTBUILD is not working

Due to the migration of settings out of vsprops in the debug configuration in 
gyp, FASTBUILD does not work correctly. We should figure out how to duplicate 
this correctly using gyp generation.

Original issue reported on code.google.com by [email protected] on 5 May 2009 at 6:10

linux emitter acts weird if two targets in different gyps have the same name

beng was trying to have app.gyp:app and chrome.gyp:app, one was a library, 
one an executable that used the library. This caused inconsistent behavior 
on some machines and some builds. Also it is not clear how you would build 
only one module at the command line.

We should either fix this, or detect it and complain on all the generators.


Original issue reported on code.google.com by [email protected] on 17 May 2009 at 5:46

Add support for FreeBSD 7.x and 8.x

The attached patch defines a default generator for FreeBSD 7.x and 8.x.

It also changes the shebang line in gyp from /usr/bin/python to
/usr/bin/env python, as python doesn't live in /usr/bin on FreeBSD. The
same change could be done to all python sources but gyp is the only one
being called directly.

Original issue reported on code.google.com by [email protected] on 5 Jun 2009 at 9:52

Attachments:

Add more clear groupings to solutions generated for msvs

Currently, sln files are generated which list all targets in the current 
directory at the top level, and all others under a folder called 
'dependencies'. This is okay for smaller modules, but webkit and chromium 
would benefit from more specific grouping.

There are two options:
1. Support an extended syntax which would allow category groupings like 
'tools', 'tests', 'submodules' similar to the pre-gyp sln files.
2. Do something intelligent with actual target dependencies. For instance 
list only direct dependencies in the main 'dependencies' folder and have 
subdependencies list down a layer deeper.

There is no direct equivalent of this problem for xcode, since targets 
outside the current gyp file are external project references. This 
unfortunately doesn't work in visual studio, which needs fully populated 
sln files.

Original issue reported on code.google.com by [email protected] on 26 Apr 2009 at 10:19

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.