Removes automatic symbol check
This commit is contained in:
parent
3a30543705
commit
0371a85616
12
README.md
12
README.md
|
@ -6,6 +6,8 @@ Original nim LevelDB wrapper: [HERE](https://github.com/zielmicha/leveldb.nim)
|
||||||
|
|
||||||
Replacing of system library dependency with self-contained C/CPP interoperability by (Codex.Storage)[https://codex.storage]
|
Replacing of system library dependency with self-contained C/CPP interoperability by (Codex.Storage)[https://codex.storage]
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
Create a database:
|
Create a database:
|
||||||
```Nim
|
```Nim
|
||||||
import leveldbstatic
|
import leveldbstatic
|
||||||
|
@ -49,3 +51,13 @@ Iterate over subset of database content:
|
||||||
|
|
||||||
db.close()
|
db.close()
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Compiling with optimizations
|
||||||
|
|
||||||
|
This library can be compiled with the following optimization options. By default these are disabled. Provide the following nim compiler flags to enable them:
|
||||||
|
- fdatasync from <unistd.h> `--passC:-DHAVE_FDATASYNC=1`
|
||||||
|
- F_FULLSYNC from <fcntl.h> `--passC:-DHAVE_FULLFSYNC=1`
|
||||||
|
- O_CLOEXEC from <fcntl.h> `--passC:-DHAVE_O_CLOEXEC=1`
|
||||||
|
- crc32c from <crc32c/crc32c.h> `--passC:-DHAVE_CRC32C=1`
|
||||||
|
- snappy from <snappy.h> `--passC:-DHAVE_SNAPPY=1`
|
||||||
|
- zstd from <zstd.h> `--passC:-DHAVE_ZSTD=1`
|
||||||
|
|
3
build.sh
3
build.sh
|
@ -47,10 +47,9 @@ toast \
|
||||||
--includeDirs="${sourceDir}/helpers/memenv" \
|
--includeDirs="${sourceDir}/helpers/memenv" \
|
||||||
--includeDirs="${sourceDir}/port" \
|
--includeDirs="${sourceDir}/port" \
|
||||||
--includeDirs="${sourceDir}/include" \
|
--includeDirs="${sourceDir}/include" \
|
||||||
--includeDirs="${buildDir}/include" \
|
--includeDirs="${root}/leveldbstatic/include" \
|
||||||
"${sourceDir}/include/leveldb/c.h" >> "${output}"
|
"${sourceDir}/include/leveldb/c.h" >> "${output}"
|
||||||
|
|
||||||
sed -i 's/\bpassC\b/passc/g' "${output}"
|
sed -i 's/\bpassC\b/passc/g' "${output}"
|
||||||
sed -i 's/{\.compile\:\ \"\./{\.compile\:\ root\ \&\ \"/g' "${output}"
|
sed -i 's/{\.compile\:\ \"\./{\.compile\:\ root\ \&\ \"/g' "${output}"
|
||||||
sed -i 's/{\.passc\:\ \"-I\./{\.passc\:\ \"-I\"\ \&\ root\ \&\ \"/g' "${output}"
|
sed -i 's/{\.passc\:\ \"-I\./{\.passc\:\ \"-I\"\ \&\ root\ \&\ \"/g' "${output}"
|
||||||
|
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
#include <crc32c/crc32c.h>
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
char* buffer;
|
|
||||||
size_t size;
|
|
||||||
::crc32c::Extend(0, buffer, size);
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
#include <unistd.h>
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
fdatasync(-1);
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
#include <fcntl.h>
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
int i = F_FULLSYNC;
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
#include <fcntl.h>
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
int i = O_CLOEXEC;
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
#include <snappy.h>
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
char* input;
|
|
||||||
size_t length;
|
|
||||||
size_t result;
|
|
||||||
snappy::GetUncompressedLength(input, length, &result);
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
#include <zstd.h>
|
|
||||||
|
|
||||||
int main(int argc, char** argv)
|
|
||||||
{
|
|
||||||
size_t length;
|
|
||||||
ZSTD_compressBound(length);
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
// Define to 1 if you have a definition for fdatasync() in <unistd.h>.
|
// Define to 1 if you have a definition for fdatasync() in <unistd.h>.
|
||||||
#if !defined(HAVE_FDATASYNC)
|
#if !defined(HAVE_FDATASYNC)
|
||||||
#define HAVE_FDATASYNC 1
|
#define HAVE_FDATASYNC 0
|
||||||
#endif // !defined(HAVE_FDATASYNC)
|
#endif // !defined(HAVE_FDATASYNC)
|
||||||
|
|
||||||
// Define to 1 if you have a definition for F_FULLFSYNC in <fcntl.h>.
|
// Define to 1 if you have a definition for F_FULLFSYNC in <fcntl.h>.
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
// Define to 1 if you have a definition for O_CLOEXEC in <fcntl.h>.
|
// Define to 1 if you have a definition for O_CLOEXEC in <fcntl.h>.
|
||||||
#if !defined(HAVE_O_CLOEXEC)
|
#if !defined(HAVE_O_CLOEXEC)
|
||||||
#define HAVE_O_CLOEXEC 1
|
#define HAVE_O_CLOEXEC 0
|
||||||
#endif // !defined(HAVE_O_CLOEXEC)
|
#endif // !defined(HAVE_O_CLOEXEC)
|
||||||
|
|
||||||
// Define to 1 if you have Google CRC32C.
|
// Define to 1 if you have Google CRC32C.
|
||||||
|
@ -31,7 +31,7 @@
|
||||||
#endif // !defined(HAVE_SNAPPY)
|
#endif // !defined(HAVE_SNAPPY)
|
||||||
|
|
||||||
// Define to 1 if you have Zstd.
|
// Define to 1 if you have Zstd.
|
||||||
#if !defined(HAVE_Zstd)
|
#if !defined(HAVE_ZSTD)
|
||||||
#define HAVE_ZSTD 0
|
#define HAVE_ZSTD 0
|
||||||
#endif // !defined(HAVE_ZSTD)
|
#endif // !defined(HAVE_ZSTD)
|
||||||
|
|
|
@ -3,7 +3,6 @@ import os
|
||||||
const root = currentSourcePath.parentDir.parentDir
|
const root = currentSourcePath.parentDir.parentDir
|
||||||
const envWindows = root/"vendor"/"util"/"env_windows.cc"
|
const envWindows = root/"vendor"/"util"/"env_windows.cc"
|
||||||
const envPosix = root/"vendor"/"util"/"env_posix.cc"
|
const envPosix = root/"vendor"/"util"/"env_posix.cc"
|
||||||
const checkers = root/"checkers"
|
|
||||||
|
|
||||||
when defined(windows):
|
when defined(windows):
|
||||||
{.compile: envWindows.}
|
{.compile: envWindows.}
|
||||||
|
@ -14,20 +13,3 @@ when defined(windows):
|
||||||
when defined(posix):
|
when defined(posix):
|
||||||
{.compile: envPosix.}
|
{.compile: envPosix.}
|
||||||
{.passc: "-DLEVELDB_PLATFORM_POSIX".}
|
{.passc: "-DLEVELDB_PLATFORM_POSIX".}
|
||||||
|
|
||||||
|
|
||||||
static:
|
|
||||||
proc doesCompile(cfile: string): int =
|
|
||||||
let rv = gorgeEx("gcc " & cfile)
|
|
||||||
if rv[1] == 0:
|
|
||||||
return 1
|
|
||||||
return 0
|
|
||||||
|
|
||||||
{.passc: "-DHAVE_FDATASYNC=" & $doesCompile(checkers/"check_fdatasync.c").}
|
|
||||||
{.passc: "-DHAVE_FULLFSYNC=" & $doesCompile(checkers/"check_fullfsync.c").}
|
|
||||||
{.passc: "-DHAVE_O_CLOEXEC=" & $doesCompile(checkers/"check_ocloexec.c").}
|
|
||||||
{.passc: "-DHAVE_CRC32C=" & $doesCompile(checkers/"check_crc32c.c").}
|
|
||||||
{.passc: "-DHAVE_SNAPPY=" & $doesCompile(checkers/"check_snappy.c").}
|
|
||||||
{.passc: "-DHAVE_ZSTD=" & $doesCompile(checkers/"check_zstd.c").}
|
|
||||||
{.passc: "-DHAVE_Zstd=" & $doesCompile(checkers/"check_zstd.c").}
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue