1{
2 lib,
3 stdenv,
4 buildPythonPackage,
5 fetchFromGitiles,
6 setuptools,
7 six,
8 python,
9}:
10
11buildPythonPackage {
12 pname = "gyp";
13 version = "unstable-2024-02-07";
14 pyproject = true;
15
16 src = fetchFromGitiles {
17 url = "https://chromium.googlesource.com/external/gyp";
18 rev = "1615ec326858f8c2bd8f30b3a86ea71830409ce4";
19 hash = "sha256-E+JF4uJBRka6vtjxyoMGE4IT5kSrl7Vs6WNkMQ+vNgs=";
20 };
21
22 patches = lib.optionals stdenv.hostPlatform.isDarwin [
23 ./no-darwin-cflags.patch
24 ./no-xcode.patch
25 ];
26
27 build-system = [ setuptools ];
28
29 dependencies = [ six ];
30
31 pythonImportsCheck = [
32 "gyp"
33 "gyp.generator"
34 ];
35
36 # Make mac_tool.py executable so that patchShebangs hook processes it. This
37 # file is copied and run by builds using gyp on macOS
38 preFixup = ''
39 chmod +x "$out/${python.sitePackages}/gyp/mac_tool.py"
40 '';
41
42 meta = with lib; {
43 description = "Tool to generate native build files";
44 mainProgram = "gyp";
45 homepage = "https://gyp.gsrc.io";
46 license = licenses.bsd3;
47 maintainers = with maintainers; [ ];
48 };
49}