Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 43 additions & 8 deletions binding.gyp
Original file line numberDiff line numberDiff line change
Expand Up@@ -67,7 +67,9 @@
],

"variables": {
"tests": 0
"tests": 0,
"STANDARD": 17,
"MACOSX_DEPLOYMENT_TARGET": "10.15"
},

"conditions": [
Expand DownExpand Up@@ -100,25 +102,24 @@
"conditions": [
['OS=="mac"', {
'cflags': [
'-mmacosx-version-min=10.8'
"-mmacosx-version-min=<(MACOSX_DEPLOYMENT_TARGET)"
],
"xcode_settings": {
"GCC_ENABLE_CPP_EXCEPTIONS": "YES",
'MACOSX_DEPLOYMENT_TARGET': '10.8',
'MACOSX_DEPLOYMENT_TARGET': '<(MACOSX_DEPLOYMENT_TARGET)',
}
}]
]
}]
}]
],

"target_defaults": {
"cflags_cc": ["-std=c++11"],
"cflags_cc": ["-std=c++<(STANDARD)" ],
"conditions": [
['OS=="mac"', {
"xcode_settings": {
'CLANG_CXX_LIBRARY': 'libc++',
'CLANG_CXX_LANGUAGE_STANDARD':'c++11',
'CLANG_CXX_LANGUAGE_STANDARD':'c++(STANDARD)',
}
}],
['OS=="win"', {
Expand All@@ -129,6 +130,40 @@
"NOMINMAX"
],
}]
]
}
],
'default_configuration': 'Release',
'configurations': {
# Release Settings
'Release': {
'defines': [ 'NDEBUG' ],
"cflags": [ "-fno-exceptions", "-O3" ],
"cflags_cc": [ "-fno-exceptions", "-O3", "-std=c++<(STANDARD)" ],
"xcode_settings": {
'GCC_OPTIMIZATION_LEVEL': '3', # stop gyp from defaulting to -Os
"CLANG_CXX_LIBRARY": "libc++",
"CLANG_CXX_LANGUAGE_STANDARD": "c++<(STANDARD)",
'MACOSX_DEPLOYMENT_TARGET': "<(MACOSX_DEPLOYMENT_TARGET)"
}, # XCODE
"msvs_settings": {
"VCCLCompilerTool": {
'ExceptionHandling': 0, # /EHsc
'MultiProcessorCompilation': 'true',
'RuntimeTypeInfo': 'false',
'Optimization': 3, # full optimizations /O2 == /Og /Oi /Ot /Oy /Ob2 /GF /Gy
'StringPooling': 'true', # pool string literals
"AdditionalOptions": [
# C++ standard
"/std:c++<(STANDARD)",

# Optimizations
"/O2",
# "/Ob3", # aggressive inline
"/GL", # whole Program Optimization # /LTCG is implied with /GL.
"/DNDEBUG" # turn off asserts
],
}
} # MSVC
}, # Release
}, # configurations
} # target-defaults
}
7 changes: 4 additions & 3 deletions package.json
Original file line numberDiff line numberDiff line change
Expand Up@@ -6,12 +6,12 @@
"browser": "./browser",
"scripts": {
"build:node": "node-gyp rebuild",
"build:browser": "script/build-browser-version.sh",
"build:browser": "bash -c script/build-browser-version.sh || echo 'the browser build is unsupported'",
"build": "npm run build:node && npm run build:browser",
"test:native": "node ./script/test-native.js",
"test:node": "mocha test/js/*.js",
"test:browser": "SUPERSTRING_USE_BROWSER_VERSION=1 mocha test/js/*.js",
"test": "npm run test:node && npm run test:browser",
"test:browser": "cross-env SUPERSTRING_USE_BROWSER_VERSION=1 mocha test/js/*.js || echo 'the browser tests are unsupported'",
"test": "npm run test:node && npm run test:native && npm run test:browser",
"benchmark": "node benchmark/marker-index.benchmark.js",
"prepublishOnly": "git submodule update --init --recursive && npm run build:browser",
"standard": "standard --recursive src test"
Expand All@@ -35,6 +35,7 @@
},
"devDependencies": {
"chai": "^2.0.0",
"cross-env": "^7.0.3",
"mocha": "^2.3.4",
"random-seed": "^0.2.0",
"standard": "^4.5.4",
Expand Down