Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(215)

Side by Side Diff: ports/leveldb/nacl.patch

Issue 1596603003: leveldb: update upstream verison 1.17 -> 1.18 (Closed) Base URL: https://chromium.googlesource.com/webports.git@update_leveldb
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ports/leveldb/build.sh ('k') | ports/leveldb/pkg_info » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 diff --git a/Makefile b/Makefile 1 diff --git a/Makefile b/Makefile
2 --- a/Makefile 2 --- a/Makefile
3 +++ b/Makefile 3 +++ b/Makefile
4 @@ -90,7 +90,11 @@ endif # PLATFORM_SHARED_EXT 4 @@ -99,7 +99,11 @@ endif # PLATFORM_SHARED_EXT
5 5
6 all: $(SHARED) $(LIBRARY) 6 all: $(SHARED) $(LIBRARY)
7 7
8 -check: all $(PROGRAMS) $(TESTS) 8 -check: all $(PROGRAMS) $(TESTS)
9 +tests: $(TESTS) 9 +tests: $(TESTS)
10 + 10 +
11 +programs: $(PROGRAMS) 11 +programs: $(PROGRAMS)
12 + 12 +
13 +check: all programs tests 13 +check: all programs tests
14 for t in $(TESTS); do echo "***** Running $$t"; ./$$t || exit 1; done 14 for t in $(TESTS); do echo "***** Running $$t"; ./$$t || exit 1; done
15 15
16 clean: 16 clean:
17 diff --git a/build_detect_platform b/build_detect_platform 17 diff --git a/build_detect_platform b/build_detect_platform
18 --- a/build_detect_platform 18 --- a/build_detect_platform
19 +++ b/build_detect_platform 19 +++ b/build_detect_platform
20 @@ -98,6 +98,22 @@ case "$TARGET_OS" in 20 @@ -104,6 +104,31 @@ case "$TARGET_OS" in
21 PLATFORM_LIBS="-lpthread" 21 PLATFORM_LIBS="-lpthread"
22 PORT_FILE=port/port_posix.cc 22 PORT_FILE=port/port_posix.cc
23 ;; 23 ;;
24 + NaCl) 24 + NaCl)
25 + PLATFORM=OS_NACL 25 + PLATFORM=OS_NACL
26 + COMMON_FLAGS="$MEMCMP_FLAG -D_REENTRANT -DOS_NACL -DLEVELDB_PLATFORM_PO SIX" 26 + COMMON_FLAGS="$MEMCMP_FLAG -D_REENTRANT -DOS_NACL -DLEVELDB_PLATFORM_PO SIX"
27 + PLATFORM_LDFLAGS="-pthread" 27 + PLATFORM_LDFLAGS="-pthread"
28 + PORT_FILE=port/port_posix.cc 28 + PORT_FILE=port/port_posix.cc
29 + CROSS_COMPILE=true 29 + CROSS_COMPILE=true
30 + if [ "$NACL_ARCH" = arm -o "$NACL_ARCH" = pnacl ]; then 30 + if [ "$TOOLCHAIN" = "pnacl" -o "$TOOLCHAIN" = "clang-newlib" ]; then
31 + COMMON_FLAGS="$COMMON_FLAGS -DLEVELDB_ATOMIC_PRESENT" 31 + COMMON_FLAGS="$COMMON_FLAGS -DLEVELDB_ATOMIC_PRESENT"
32 + # Would use -std=c++11 here but its broken on PNaCl: 32 + # Would use -std=c++11 here but its broken on PNaCl:
33 + # http://crbug.com/314944 33 + # http://crbug.com/314944
34 + PLATFORM_CXXFLAGS="-std=gnu++11" 34 + PLATFORM_CXXFLAGS="-std=gnu++11"
35 + fi 35 + fi
36 + if [ "$TOOLCHAIN" = "glibc" ]; then
37 + if [ "$NACL_ARCH" = "arm" ]; then
38 + COMMON_FLAGS="$COMMON_FLAGS -DLEVELDB_ATOMIC_PRESENT"
39 + PLATFORM_CXXFLAGS="-std=c++11"
40 + else
41 + COMMON_FLAGS="$COMMON_FLAGS -D__STDC_LIMIT_MACROS"
42 + PLATFORM_CXXFLAGS="-std=c++0x"
43 + fi
44 + fi
36 + if [ "$NACL_SHARED" != 1 ]; then 45 + if [ "$NACL_SHARED" != 1 ]; then
37 + PLATFORM_SHARED_EXT="" 46 + PLATFORM_SHARED_EXT=""
38 + fi 47 + fi
39 + ;; 48 + ;;
40 NetBSD) 49 NetBSD)
41 PLATFORM=OS_NETBSD 50 PLATFORM=OS_NETBSD
42 COMMON_FLAGS="$MEMCMP_FLAG -D_REENTRANT -DOS_NETBSD" 51 COMMON_FLAGS="$MEMCMP_FLAG -D_REENTRANT -DOS_NETBSD"
43 diff --git a/port/atomic_pointer.h b/port/atomic_pointer.h
44 --- a/port/atomic_pointer.h
45 +++ b/port/atomic_pointer.h
46 @@ -20,6 +20,9 @@
47 #define PORT_ATOMIC_POINTER_H_
48
49 #include <stdint.h>
50 +#ifdef LEVELDB_ATOMIC_PRESENT
51 +#include <atomic>
52 +#endif
53 #ifdef LEVELDB_CSTDATOMIC_PRESENT
54 #include <cstdatomic>
55 #endif
56 @@ -125,8 +128,8 @@ class AtomicPointer {
57 }
58 };
59
60 -// AtomicPointer based on <cstdatomic>
61 -#elif defined(LEVELDB_CSTDATOMIC_PRESENT)
62 +// AtomicPointer based on <cstdatomic> or <atomic>
63 +#elif defined(LEVELDB_CSTDATOMIC_PRESENT) || defined(LEVELDB_ATOMIC_PRESENT)
64 class AtomicPointer {
65 private:
66 std::atomic<void*> rep_;
67 diff --git a/port/port_posix.h b/port/port_posix.h 52 diff --git a/port/port_posix.h b/port/port_posix.h
68 --- a/port/port_posix.h 53 --- a/port/port_posix.h
69 +++ b/port/port_posix.h 54 +++ b/port/port_posix.h
70 @@ -37,6 +37,14 @@ 55 @@ -34,6 +34,14 @@
71 // See http://code.google.com/p/android/issues/detail?id=39824 56 // See http://code.google.com/p/android/issues/detail?id=39824
72 #include <endian.h> 57 #include <endian.h>
73 #define PLATFORM_IS_LITTLE_ENDIAN (_BYTE_ORDER == _LITTLE_ENDIAN) 58 #define PLATFORM_IS_LITTLE_ENDIAN (_BYTE_ORDER == _LITTLE_ENDIAN)
74 +#elif defined(OS_NACL) 59 +#elif defined(OS_NACL)
75 + #include <sys/types.h> 60 + #include <sys/types.h>
76 + #if defined(_NEWLIB_VERSION) 61 + #if defined(_NEWLIB_VERSION)
77 + #include <machine/endian.h> 62 + #include <machine/endian.h>
78 + #define PLATFORM_IS_LITTLE_ENDIAN (BYTE_ORDER == LITTLE_ENDIAN) 63 + #define PLATFORM_IS_LITTLE_ENDIAN (BYTE_ORDER == LITTLE_ENDIAN)
79 + #else 64 + #else
80 + #include <endian.h> 65 + #include <endian.h>
81 + #endif 66 + #endif
82 #else 67 #else
83 #include <endian.h> 68 #include <endian.h>
84 #endif 69 #endif
85 @@ -55,7 +63,7 @@ 70 @@ -52,7 +60,7 @@
86 71
87 #if defined(OS_MACOSX) || defined(OS_SOLARIS) || defined(OS_FREEBSD) ||\ 72 #if defined(OS_MACOSX) || defined(OS_SOLARIS) || defined(OS_FREEBSD) ||\
88 defined(OS_NETBSD) || defined(OS_OPENBSD) || defined(OS_DRAGONFLYBSD) ||\ 73 defined(OS_NETBSD) || defined(OS_OPENBSD) || defined(OS_DRAGONFLYBSD) ||\
89 - defined(OS_ANDROID) || defined(OS_HPUX) 74 - defined(OS_ANDROID) || defined(OS_HPUX) || defined(CYGWIN)
90 + defined(OS_ANDROID) || defined(OS_HPUX) || (defined(OS_NACL) && (defined(_N EWLIB_VERSION) || defined(__BIONIC__))) 75 + defined(OS_ANDROID) || defined(OS_HPUX) || defined(CYGWIN) || (defined(OS_N ACL) && (defined(_NEWLIB_VERSION) || defined(__BIONIC__)))
91 // Use fread/fwrite/fflush on platforms without _unlocked variants 76 // Use fread/fwrite/fflush on platforms without _unlocked variants
92 #define fread_unlocked fread 77 #define fread_unlocked fread
93 #define fwrite_unlocked fwrite 78 #define fwrite_unlocked fwrite
94 diff --git a/util/env_posix.cc b/util/env_posix.cc 79 diff --git a/util/env_posix.cc b/util/env_posix.cc
95 --- a/util/env_posix.cc 80 --- a/util/env_posix.cc
96 +++ b/util/env_posix.cc 81 +++ b/util/env_posix.cc
97 @@ -27,6 +27,32 @@ 82 @@ -24,6 +24,32 @@
98 #include "util/mutexlock.h" 83 #include "util/mutexlock.h"
99 #include "util/posix_logger.h" 84 #include "util/posix_logger.h"
100 85
101 +#ifdef __native_client__ 86 +#ifdef __native_client__
102 +// TODO(sbc): remove once fsync/fdatasync get implemented in sel_ldr. 87 +// TODO(sbc): remove once fsync/fdatasync get implemented in sel_ldr.
103 +#define fsync(X) 0 88 +#define fsync(X) 0
104 +#define fdatasync(X) 0 89 +#define fdatasync(X) 0
105 +#ifdef __GLIBC__ 90 +#ifdef __GLIBC__
106 +#define geteuid(X) 0 91 +#define geteuid(X) 0
107 +ssize_t pread(int fd, char* buf, size_t n, off_t off) { 92 +ssize_t pread(int fd, char* buf, size_t n, off_t off) {
(...skipping 12 matching lines...) Expand all
120 + return -1; 105 + return -1;
121 + 106 +
122 + return num_read; 107 + return num_read;
123 +} 108 +}
124 +#endif 109 +#endif
125 +#endif 110 +#endif
126 + 111 +
127 namespace leveldb { 112 namespace leveldb {
128 113
129 namespace { 114 namespace {
130 @@ -257,6 +283,9 @@ class PosixWritableFile : public WritableFile { 115 @@ -254,6 +280,9 @@ class PosixWritableFile : public WritableFile {
131 }; 116 };
132 117
133 static int LockOrUnlock(int fd, bool lock) { 118 static int LockOrUnlock(int fd, bool lock) {
134 +#ifdef __native_client__ 119 +#ifdef __native_client__
135 + return 0; 120 + return 0;
136 +#else 121 +#else
137 errno = 0; 122 errno = 0;
138 struct flock f; 123 struct flock f;
139 memset(&f, 0, sizeof(f)); 124 memset(&f, 0, sizeof(f));
140 @@ -265,6 +294,7 @@ static int LockOrUnlock(int fd, bool lock) { 125 @@ -262,6 +291,7 @@ static int LockOrUnlock(int fd, bool lock) {
141 f.l_start = 0; 126 f.l_start = 0;
142 f.l_len = 0; // Lock/unlock entire file 127 f.l_len = 0; // Lock/unlock entire file
143 return fcntl(fd, F_SETLK, &f); 128 return fcntl(fd, F_SETLK, &f);
144 +#endif 129 +#endif
145 } 130 }
146 131
147 class PosixFileLock : public FileLock { 132 class PosixFileLock : public FileLock {
OLDNEW
« no previous file with comments | « ports/leveldb/build.sh ('k') | ports/leveldb/pkg_info » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698