-
Notifications
You must be signed in to change notification settings - Fork 0
/
binding.gyp
122 lines (121 loc) · 3.3 KB
/
binding.gyp
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
{
"targets": [
{
"target_name": "civetkern",
"sources": [
"src/util/util.cpp",
"src/util/pinyin.cpp",
"src/interface.cpp",
"src/db_manager.cpp",
"src/log.cpp",
"src/upgrader.cpp",
"src/FileLink.cpp",
"src/civetkern.cpp" ],
"include_dirs": [
"include",
"src",
"gqlite/include",
# "<!(node -e \"require('nan')\")",
'<!@(node -p "require(\'node-addon-api\').include")',
],
'cflags_c': [],
'cflags_cc': [
'-std=c++17',
'-frtti',
'-Wno-pessimizing-move'
],
"cflags!": [
'-fno-exceptions'
],
"cflags_cc!": [
'-fno-exceptions',
'-std=gnu++1y',
'-std=gnu++0x'
],
'xcode_settings': {
'CLANG_CXX_LANGUAGE_STANDARD': 'c++17',
'MACOSX_DEPLOYMENT_TARGET': '10.9',
'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
'GCC_ENABLE_CPP_RTTI': 'YES',
'OTHER_CPLUSPLUSFLAGS': [
'-fexceptions',
'-Wall',
'-mmacosx-version-min=10.15',
'-O3'
]
},
'conditions':[
['OS=="win"', {
'configurations':{
'Release': {
'msvs_settings': {
'VCCLCompilerTool': {
"ExceptionHandling": 1,
'AdditionalOptions': [ '-std:c++17'],
'WholeProgramOptimization': 'true',
'RuntimeTypeInfo': 'true'
},
'VCLibrarianTool': {
'AdditionalOptions': [
'/LTCG:INCREMENTAL'
]
},
'VCLinkerTool': {
'ImageHasSafeExceptionHandlers': 'false',
'OptimizeReferences': 2,
'EnableCOMDATFolding': 2,
'LinkIncremental': 1,
'AdditionalOptions': [
'/LTCG:INCREMENTAL'
]
}
}
},
'Debug': {
'msvs_settings': {
'VCCLCompilerTool': {
"ExceptionHandling": 1,
'AdditionalOptions': [ '-std:c++17' ],
'RuntimeTypeInfo': 'true'
}
}
}
},
"libraries": [
"<!(echo %cd%)/gqlite/build/Release/gqlite.lib",
"Ole32.lib"
]
}],
['OS=="linux"', {
"link_settings": {
'library_dirs': ['<!(pwd)/gqlite/build'],
'libraries': [
'-lgqlite'
],
'ldflags': [
# Ensure runtime linking is relative to civetkern.node
'-Wl,-s -Wl,--disable-new-dtags -Wl,-rpath=\'<!(pwd)/gqlite/build\''
]
}
}],
['OS=="mac"', {
"link_settings": {
'library_dirs': ['<!(pwd)/gqlite/build'],
'libraries': [
'libgqlite.dylib'
],
'xcode_settings': {
'OTHER_LDFLAGS': [
# Ensure runtime linking is relative to civetkern.node
'-Wl,-rpath,\'@loader_path\''
]
}
}
}]
]
}
],
"scripts": {
# "prebuild": ["<!(node ./prebuild.js)"]
}
}