Я хочу установить флаг #define HAVE_USLEEP 1
в файле sqlite3.c, который компилируется node-gyp.Простое решение состоит в том, чтобы установить это значение в bindings.gyp
{
'targets': [
{
'target_name': 'sqlite3',
'defines': ['HAVE_USLEEP=1']
}
]
}
, но мне нужно включить флаг только , если в операционной системе доступно usleep .
sqlite3 уже делает это в своем собственном файле . / Configure sh
, но node-gyp не может воспользоваться этим, поэтому я немного растерялся.
Я не смог найти никаких репозиториев , использующих node-gyp , которые делали бы условия более сложными, чем основанные на операционной системе, но если node-gyp является заменой ./configure
и make
, тогда он долженесть способ проверить сложные вещи, подобные этому.
Для некоторого фона цель всего этого - запросить изменение в 'better-sqlite3, которое включит флаг HAVE_USLEEP условно https://github.com/JoshuaWise/better-sqlite3/blob/master/deps/sqlite3.gyp.