obj/noui.o \
obj/kernel.o \
obj/pbkdf2.o \
- obj/scrypt.o \
- obj/scrypt-x86.o \
- obj/scrypt-x86_64.o \
- obj/zerocoin/Accumulator.o \
- obj/zerocoin/AccumulatorProofOfKnowledge.o \
- obj/zerocoin/Coin.o \
- obj/zerocoin/CoinSpend.o \
- obj/zerocoin/Commitment.o \
- obj/zerocoin/ParamGeneration.o \
- obj/zerocoin/Params.o \
- obj/zerocoin/SerialNumberSignatureOfKnowledge.o \
- obj/zerocoin/SpendMetaData.o \
- obj/zerocoin/ZeroTest.o
+ obj/scrypt.o
all: novacoind.exe
+#
+# LevelDB support
+#
+ifdef USE_LEVELDB
LIBS += $(CURDIR)/leveldb/libleveldb.a $(CURDIR)/leveldb/libmemenv.a
-DEFS += $(addprefix -I,$(CURDIR)/leveldb/include)
+DEFS += $(addprefix -I,$(CURDIR)/leveldb/include) -DUSE_LEVELDB
DEFS += $(addprefix -I,$(CURDIR)/leveldb/helpers)
OBJS += obj/txdb-leveldb.o
leveldb/libleveldb.a:
cd leveldb; make; cd ..
-obj/txdb-leveldb.o: leveldb/libleveldb.a
-
-obj/%.o: %.cpp $(HEADERS)
- g++ -c $(CFLAGS) -o $@ $<
+obj/txdb-leveldb.o: leveldb/libleveldb.lib
+else
+OBJS += obj/txdb-bdb.o
+endif
-obj/zerocoin/%.o: zerocoin/%.cpp
- g++ -c $(CFLAGS) -o $@ $<
+ifdef USE_ASM
+OBJS += obj/scrypt-arm.o obj/scrypt-x86.o obj/scrypt-x86_64.o
obj/scrypt-x86.o: scrypt-x86.S
$(CXX) -c $(xCXXFLAGS) -MMD -o $@ $<
obj/scrypt-x86_64.o: scrypt-x86_64.S
$(CXX) -c $(xCXXFLAGS) -MMD -o $@ $<
+else
+OBJS += obj/scrypt-generic.o
+
+obj/scrypt-generic.o: scrypt-generic.c
+ $(CC) -c $(xCXXFLAGS) -MMD -o $@ $<
+endif
+
+obj/%.o: %.cpp $(HEADERS)
+ g++ -c $(CFLAGS) -o $@ $<
novacoind.exe: $(OBJS:obj/%=obj/%)
g++ $(CFLAGS) $(LDFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS)
clean:
-del /Q novacoind
-del /Q obj\*
- -del /Q obj\zerocoin\*
FORCE: