Skip to content

Commit 8f10870

Browse files
authored
Added missing Makefile
Resolves issue #30 Downloaded from: https://github.com/google/leveldb/archive/v1.18.tar.gz SHA256 of Makefile- 7000dc88fca4b2769853f68b8996ad7c5910cf49
1 parent 51bee73 commit 8f10870

1 file changed

Lines changed: 227 additions & 0 deletions

File tree

seckcoin/src/leveldb/Makefile

Lines changed: 227 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,227 @@
1+
# Copyright (c) 2011 The LevelDB Authors. All rights reserved.
2+
# Use of this source code is governed by a BSD-style license that can be
3+
# found in the LICENSE file. See the AUTHORS file for names of contributors.
4+
5+
#-----------------------------------------------
6+
# Uncomment exactly one of the lines labelled (A), (B), and (C) below
7+
# to switch between compilation modes.
8+
9+
# (A) Production use (optimized mode)
10+
OPT ?= -O2 -DNDEBUG
11+
# (B) Debug mode, w/ full line-level debugging symbols
12+
# OPT ?= -g2
13+
# (C) Profiling mode: opt, but w/debugging symbols
14+
# OPT ?= -O2 -g2 -DNDEBUG
15+
#-----------------------------------------------
16+
17+
# detect what platform we're building on
18+
$(shell CC="$(CC)" CXX="$(CXX)" TARGET_OS="$(TARGET_OS)" \
19+
./build_detect_platform build_config.mk ./)
20+
# this file is generated by the previous line to set build flags and sources
21+
include build_config.mk
22+
23+
CFLAGS += -I. -I./include $(PLATFORM_CCFLAGS) $(OPT)
24+
CXXFLAGS += -I. -I./include $(PLATFORM_CXXFLAGS) $(OPT)
25+
26+
LDFLAGS += $(PLATFORM_LDFLAGS)
27+
LIBS += $(PLATFORM_LIBS)
28+
29+
LIBOBJECTS = $(SOURCES:.cc=.o)
30+
MEMENVOBJECTS = $(MEMENV_SOURCES:.cc=.o)
31+
32+
TESTUTIL = ./util/testutil.o
33+
TESTHARNESS = ./util/testharness.o $(TESTUTIL)
34+
35+
# Note: iOS should probably be using libtool, not ar.
36+
ifeq ($(PLATFORM), IOS)
37+
AR=xcrun ar
38+
endif
39+
40+
TESTS = \
41+
arena_test \
42+
autocompact_test \
43+
bloom_test \
44+
c_test \
45+
cache_test \
46+
coding_test \
47+
corruption_test \
48+
crc32c_test \
49+
db_test \
50+
dbformat_test \
51+
env_test \
52+
filename_test \
53+
filter_block_test \
54+
hash_test \
55+
issue178_test \
56+
issue200_test \
57+
log_test \
58+
memenv_test \
59+
skiplist_test \
60+
table_test \
61+
version_edit_test \
62+
version_set_test \
63+
write_batch_test
64+
65+
PROGRAMS = db_bench leveldbutil $(TESTS)
66+
BENCHMARKS = db_bench_sqlite3 db_bench_tree_db
67+
68+
LIBRARY = libleveldb.a
69+
MEMENVLIBRARY = libmemenv.a
70+
71+
default: all
72+
73+
# Should we build shared libraries?
74+
ifneq ($(PLATFORM_SHARED_EXT),)
75+
76+
ifneq ($(PLATFORM_SHARED_VERSIONED),true)
77+
SHARED1 = libleveldb.$(PLATFORM_SHARED_EXT)
78+
SHARED2 = $(SHARED1)
79+
SHARED3 = $(SHARED1)
80+
SHARED = $(SHARED1)
81+
else
82+
# Update db.h if you change these.
83+
SHARED_MAJOR = 1
84+
SHARED_MINOR = 18
85+
SHARED1 = libleveldb.$(PLATFORM_SHARED_EXT)
86+
SHARED2 = $(SHARED1).$(SHARED_MAJOR)
87+
SHARED3 = $(SHARED1).$(SHARED_MAJOR).$(SHARED_MINOR)
88+
SHARED = $(SHARED1) $(SHARED2) $(SHARED3)
89+
$(SHARED1): $(SHARED3)
90+
ln -fs $(SHARED3) $(SHARED1)
91+
$(SHARED2): $(SHARED3)
92+
ln -fs $(SHARED3) $(SHARED2)
93+
endif
94+
95+
$(SHARED3):
96+
$(CXX) $(LDFLAGS) $(PLATFORM_SHARED_LDFLAGS)$(SHARED2) $(CXXFLAGS) $(PLATFORM_SHARED_CFLAGS) $(SOURCES) -o $(SHARED3) $(LIBS)
97+
98+
endif # PLATFORM_SHARED_EXT
99+
100+
all: $(SHARED) $(LIBRARY)
101+
102+
check: all $(PROGRAMS) $(TESTS)
103+
for t in $(TESTS); do echo "***** Running $$t"; ./$$t || exit 1; done
104+
105+
clean:
106+
-rm -f $(PROGRAMS) $(BENCHMARKS) $(LIBRARY) $(SHARED) $(MEMENVLIBRARY) */*.o */*/*.o ios-x86/*/*.o ios-arm/*/*.o build_config.mk
107+
-rm -rf ios-x86/* ios-arm/*
108+
109+
$(LIBRARY): $(LIBOBJECTS)
110+
rm -f $@
111+
$(AR) -rs $@ $(LIBOBJECTS)
112+
113+
db_bench: db/db_bench.o $(LIBOBJECTS) $(TESTUTIL)
114+
$(CXX) $(LDFLAGS) db/db_bench.o $(LIBOBJECTS) $(TESTUTIL) -o $@ $(LIBS)
115+
116+
db_bench_sqlite3: doc/bench/db_bench_sqlite3.o $(LIBOBJECTS) $(TESTUTIL)
117+
$(CXX) $(LDFLAGS) doc/bench/db_bench_sqlite3.o $(LIBOBJECTS) $(TESTUTIL) -o $@ -lsqlite3 $(LIBS)
118+
119+
db_bench_tree_db: doc/bench/db_bench_tree_db.o $(LIBOBJECTS) $(TESTUTIL)
120+
$(CXX) $(LDFLAGS) doc/bench/db_bench_tree_db.o $(LIBOBJECTS) $(TESTUTIL) -o $@ -lkyotocabinet $(LIBS)
121+
122+
leveldbutil: db/leveldb_main.o $(LIBOBJECTS)
123+
$(CXX) $(LDFLAGS) db/leveldb_main.o $(LIBOBJECTS) -o $@ $(LIBS)
124+
125+
arena_test: util/arena_test.o $(LIBOBJECTS) $(TESTHARNESS)
126+
$(CXX) $(LDFLAGS) util/arena_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
127+
128+
autocompact_test: db/autocompact_test.o $(LIBOBJECTS) $(TESTHARNESS)
129+
$(CXX) $(LDFLAGS) db/autocompact_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
130+
131+
bloom_test: util/bloom_test.o $(LIBOBJECTS) $(TESTHARNESS)
132+
$(CXX) $(LDFLAGS) util/bloom_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
133+
134+
c_test: db/c_test.o $(LIBOBJECTS) $(TESTHARNESS)
135+
$(CXX) $(LDFLAGS) db/c_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
136+
137+
cache_test: util/cache_test.o $(LIBOBJECTS) $(TESTHARNESS)
138+
$(CXX) $(LDFLAGS) util/cache_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
139+
140+
coding_test: util/coding_test.o $(LIBOBJECTS) $(TESTHARNESS)
141+
$(CXX) $(LDFLAGS) util/coding_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
142+
143+
corruption_test: db/corruption_test.o $(LIBOBJECTS) $(TESTHARNESS)
144+
$(CXX) $(LDFLAGS) db/corruption_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
145+
146+
crc32c_test: util/crc32c_test.o $(LIBOBJECTS) $(TESTHARNESS)
147+
$(CXX) $(LDFLAGS) util/crc32c_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
148+
149+
db_test: db/db_test.o $(LIBOBJECTS) $(TESTHARNESS)
150+
$(CXX) $(LDFLAGS) db/db_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
151+
152+
dbformat_test: db/dbformat_test.o $(LIBOBJECTS) $(TESTHARNESS)
153+
$(CXX) $(LDFLAGS) db/dbformat_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
154+
155+
env_test: util/env_test.o $(LIBOBJECTS) $(TESTHARNESS)
156+
$(CXX) $(LDFLAGS) util/env_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
157+
158+
filename_test: db/filename_test.o $(LIBOBJECTS) $(TESTHARNESS)
159+
$(CXX) $(LDFLAGS) db/filename_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
160+
161+
filter_block_test: table/filter_block_test.o $(LIBOBJECTS) $(TESTHARNESS)
162+
$(CXX) $(LDFLAGS) table/filter_block_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
163+
164+
hash_test: util/hash_test.o $(LIBOBJECTS) $(TESTHARNESS)
165+
$(CXX) $(LDFLAGS) util/hash_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
166+
167+
issue178_test: issues/issue178_test.o $(LIBOBJECTS) $(TESTHARNESS)
168+
$(CXX) $(LDFLAGS) issues/issue178_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
169+
170+
issue200_test: issues/issue200_test.o $(LIBOBJECTS) $(TESTHARNESS)
171+
$(CXX) $(LDFLAGS) issues/issue200_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
172+
173+
log_test: db/log_test.o $(LIBOBJECTS) $(TESTHARNESS)
174+
$(CXX) $(LDFLAGS) db/log_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
175+
176+
table_test: table/table_test.o $(LIBOBJECTS) $(TESTHARNESS)
177+
$(CXX) $(LDFLAGS) table/table_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
178+
179+
skiplist_test: db/skiplist_test.o $(LIBOBJECTS) $(TESTHARNESS)
180+
$(CXX) $(LDFLAGS) db/skiplist_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
181+
182+
version_edit_test: db/version_edit_test.o $(LIBOBJECTS) $(TESTHARNESS)
183+
$(CXX) $(LDFLAGS) db/version_edit_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
184+
185+
version_set_test: db/version_set_test.o $(LIBOBJECTS) $(TESTHARNESS)
186+
$(CXX) $(LDFLAGS) db/version_set_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
187+
188+
write_batch_test: db/write_batch_test.o $(LIBOBJECTS) $(TESTHARNESS)
189+
$(CXX) $(LDFLAGS) db/write_batch_test.o $(LIBOBJECTS) $(TESTHARNESS) -o $@ $(LIBS)
190+
191+
$(MEMENVLIBRARY) : $(MEMENVOBJECTS)
192+
rm -f $@
193+
$(AR) -rs $@ $(MEMENVOBJECTS)
194+
195+
memenv_test : helpers/memenv/memenv_test.o $(MEMENVLIBRARY) $(LIBRARY) $(TESTHARNESS)
196+
$(CXX) $(LDFLAGS) helpers/memenv/memenv_test.o $(MEMENVLIBRARY) $(LIBRARY) $(TESTHARNESS) -o $@ $(LIBS)
197+
198+
ifeq ($(PLATFORM), IOS)
199+
# For iOS, create universal object files to be used on both the simulator and
200+
# a device.
201+
PLATFORMSROOT=/Applications/Xcode.app/Contents/Developer/Platforms
202+
SIMULATORROOT=$(PLATFORMSROOT)/iPhoneSimulator.platform/Developer
203+
DEVICEROOT=$(PLATFORMSROOT)/iPhoneOS.platform/Developer
204+
IOSVERSION=$(shell defaults read $(PLATFORMSROOT)/iPhoneOS.platform/version CFBundleShortVersionString)
205+
IOSARCH=-arch armv6 -arch armv7 -arch armv7s -arch arm64
206+
207+
.cc.o:
208+
mkdir -p ios-x86/$(dir $@)
209+
xcrun -sdk iphonesimulator $(CXX) $(CXXFLAGS) -isysroot $(SIMULATORROOT)/SDKs/iPhoneSimulator$(IOSVERSION).sdk -arch i686 -arch x86_64 -c $< -o ios-x86/$@
210+
mkdir -p ios-arm/$(dir $@)
211+
xcrun -sdk iphoneos $(CXX) $(CXXFLAGS) -isysroot $(DEVICEROOT)/SDKs/iPhoneOS$(IOSVERSION).sdk $(IOSARCH) -c $< -o ios-arm/$@
212+
xcrun lipo ios-x86/$@ ios-arm/$@ -create -output $@
213+
214+
.c.o:
215+
mkdir -p ios-x86/$(dir $@)
216+
xcrun -sdk iphonesimulator $(CC) $(CFLAGS) -isysroot $(SIMULATORROOT)/SDKs/iPhoneSimulator$(IOSVERSION).sdk -arch i686 -arch x86_64 -c $< -o ios-x86/$@
217+
mkdir -p ios-arm/$(dir $@)
218+
xcrun -sdk iphoneos $(CC) $(CFLAGS) -isysroot $(DEVICEROOT)/SDKs/iPhoneOS$(IOSVERSION).sdk $(IOSARCH) -c $< -o ios-arm/$@
219+
xcrun lipo ios-x86/$@ ios-arm/$@ -create -output $@
220+
221+
else
222+
.cc.o:
223+
$(CXX) $(CXXFLAGS) -c $< -o $@
224+
225+
.c.o:
226+
$(CC) $(CFLAGS) -c $< -o $@
227+
endif

0 commit comments

Comments
 (0)