forked from Robot/robot-js
-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathbinding.gyp
More file actions
90 lines (88 loc) · 2.83 KB
/
binding.gyp
File metadata and controls
90 lines (88 loc) · 2.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
"configurations": {
"Debug": { "defines": ["DEBUG"] },
"Release": { "defines": ["NDEBUG"] },
},
"defines": [
"NAPI_VERSION=4",
],
"targets": [
{
"target_name": "robot",
"sources": [
"src/robot/Source/Bounds.cc",
"src/robot/Source/Clipboard.cc",
"src/robot/Source/Color.cc",
"src/robot/Source/Hash.cc",
"src/robot/Source/Image.cc",
"src/robot/Source/Keyboard.cc",
"src/robot/Source/Memory.cc",
"src/robot/Source/Module.cc",
"src/robot/Source/Mouse.cc",
"src/robot/Source/Point.cc",
"src/robot/Source/Process.cc",
"src/robot/Source/Range.cc",
"src/robot/Source/Screen.cc",
"src/robot/Source/Size.cc",
"src/robot/Source/Timer.cc",
"src/robot/Source/Window.cc",
"src/BoundsAdapter.cc",
"src/ClipboardAdapter.cc",
"src/ColorAdapter.cc",
"src/HashAdapter.cc",
"src/ImageAdapter.cc",
"src/KeyboardAdapter.cc",
"src/MemoryAdapter.cc",
"src/ModuleAdapter.cc",
"src/MouseAdapter.cc",
"src/PointAdapter.cc",
"src/ProcessAdapter.cc",
"src/RangeAdapter.cc",
"src/ScreenAdapter.cc",
"src/SizeAdapter.cc",
"src/TimerAdapter.cc",
"src/WindowAdapter.cc",
"src/RobotAdapter.cc",
],
"include_dirs": [
"src/",
"src/robot/Source/",
"<!@(node -p \"require('node-addon-api').include\")",
],
"cflags!": ["-fno-exceptions"],
"cflags_cc!": ["-fno-exceptions"],
"conditions": [
[ "OS == 'linux'", {
"libraries": ["-lrt", "-lX11", "-lXtst", "-lXinerama", "-static-libstdc++"],
"cflags+": ["-Wno-missing-field-initializers", "-Wimplicit-fallthrough=0"],
}],
[ "OS == 'mac'", {
"libraries": ["-framework ApplicationServices", "-framework AppKit"],
"cflags+": ["-fvisibility=hidden"],
"xcode_settings": {
"GCC_ENABLE_CPP_EXCEPTIONS": "YES",
"CLANG_CXX_LIBRARY": "libc++",
"MACOSX_DEPLOYMENT_TARGET": "10.7",
"GCC_SYMBOLS_PRIVATE_EXTERN": "YES", # -fvisibility=hidden
"OTHER_CPLUSPLUSFLAGS": [
"-std=c++17",
"-ObjC++", # even though this project itself isn't Obj-C, the frameworks are.
"-Wno-sign-compare",
"-Wno-missing-field-initializers",
],
},
}],
[ "OS == 'win'", {
"libraries": ["-lPsapi"],
"defines!": ["_HAS_EXCEPTIONS=0"],
"defines": ["UNICODE", "_HAS_EXCEPTIONS=1"],
"msvs_settings": {
"VCCLCompilerTool": {"ExceptionHandling": 1},
"VCLinkerTool": {"SubSystem": 2}
},
"msvs_disabled_warnings": [4005, 4661],
}],
],
},
],
}