diff options
author | Sanjay Ghemawat <sanjay@google.com> | 2012-03-05 10:35:46 -0800 |
---|---|---|
committer | Sanjay Ghemawat <sanjay@google.com> | 2012-03-05 10:35:46 -0800 |
commit | 015d26f8be6e27d96c536eb9f1ef7275898e3603 (patch) | |
tree | f312746957bb3d99fb1c5dd3e79469d80a1e005d | |
parent | 239ac9d2dea0ac1708b7d903a3d80d3883e0781b (diff) | |
download | leveldb-015d26f8be6e27d96c536eb9f1ef7275898e3603.tar.gz |
add .gitignore; support for building on a few BSD variants
-rw-r--r-- | .gitignore | 5 | ||||
-rw-r--r-- | build_detect_platform | 15 | ||||
-rw-r--r-- | port/port_posix.h | 14 |
3 files changed, 31 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..46769e0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +build_config.mk +*.a +*.o +*_test +db_bench diff --git a/build_detect_platform b/build_detect_platform index d8d9ba1..5f9e021 100644 --- a/build_detect_platform +++ b/build_detect_platform @@ -39,6 +39,21 @@ case `uname -s` in echo "PLATFORM_CFLAGS=-D_REENTRANT -DOS_FREEBSD" >> build_config.mk echo "PLATFORM_LDFLAGS=-lpthread" >> build_config.mk ;; + NetBSD) + PLATFORM=OS_NETBSD + echo "PLATFORM_CFLAGS=-D_REENTRANT -DOS_NETBSD" >> build_config.mk + echo "PLATFORM_LDFLAGS=-lpthread -lgcc_s" >> build_config.mk + ;; + OpenBSD) + PLATFORM=OS_OPENBSD + echo "PLATFORM_CFLAGS=-D_REENTRANT -DOS_OPENBSD" >> build_config.mk + echo "PLATFORM_LDFLAGS=-pthread" >> build_config.mk + ;; + DragonFly) + PLATFORM=OS_DRAGONFLYBSD + echo "PLATFORM_CFLAGS=-D_REENTRANT -DOS_DRAGONFLYBSD" >> build_config.mk + echo "PLATFORM_LDFLAGS=-lpthread" >> build_config.mk + ;; *) echo "Unknown platform!" exit 1 diff --git a/port/port_posix.h b/port/port_posix.h index 9666391..485ad10 100644 --- a/port/port_posix.h +++ b/port/port_posix.h @@ -7,7 +7,7 @@ #ifndef STORAGE_LEVELDB_PORT_PORT_POSIX_H_ #define STORAGE_LEVELDB_PORT_PORT_POSIX_H_ -#if defined(OS_MACOSX) || defined(OS_FREEBSD) +#if defined(OS_MACOSX) #include <machine/endian.h> #elif defined(OS_SOLARIS) #include <sys/isa_defs.h> @@ -16,6 +16,10 @@ #else #define BIG_ENDIAN #endif +#elif defined(OS_FREEBSD) || defined(OS_OPENBSD) || defined(OS_NETBSD) ||\ + defined(OS_DRAGONFLYBSD) + #include <sys/types.h> + #include <sys/endian.h> #else #include <endian.h> #endif @@ -33,13 +37,17 @@ #define IS_LITTLE_ENDIAN (__BYTE_ORDER == __LITTLE_ENDIAN) #endif -#if defined(OS_MACOSX) || defined(OS_SOLARIS) || defined(OS_FREEBSD) +#if defined(OS_MACOSX) || defined(OS_SOLARIS) || defined(OS_FREEBSD) ||\ + defined(OS_NETBSD) || defined(OS_OPENBSD) || defined(OS_DRAGONFLYBSD) +// Use fread/fwrite/fflush on platforms without _unlocked variants #define fread_unlocked fread #define fwrite_unlocked fwrite #define fflush_unlocked fflush #endif -#if defined(OS_MACOSX) || defined(OS_FREEBSD) +#if defined(OS_MACOSX) || defined(OS_FREEBSD) ||\ + defined(OS_OPENBSD) || defined(OS_DRAGONFLYBSD) +// Use fsync() on platforms without fdatasync() #define fdatasync fsync #endif |