DEPSDIR=/opt/local
INCLUDEPATHS= \
+ -I"$(CURDIR)" \
-I"$(DEPSDIR)/include" \
-I"$(DEPSDIR)/include/db48"
USE_UPNP:=1
-LIBS= -dead_strip \
+LIBS= -dead_strip
+ifdef STATIC
+# Build STATIC if you are redistributing the bitcoind binary
+LIBS += \
+ $(DEPSDIR)/lib/db48/libdb_cxx-4.8.a \
+ $(DEPSDIR)/lib/libboost_system-mt.a \
+ $(DEPSDIR)/lib/libboost_filesystem-mt.a \
+ $(DEPSDIR)/lib/libboost_program_options-mt.a \
+ $(DEPSDIR)/lib/libboost_thread-mt.a \
+ $(DEPSDIR)/lib/libssl.a \
+ $(DEPSDIR)/lib/libcrypto.a
+else
+LIBS += \
-ldb_cxx-4.8 \
-lboost_system-mt \
-lboost_filesystem-mt \
-lboost_thread-mt \
-lssl \
-lcrypto
+endif
DEFS=-DMAC_OSX -DMSG_NOSIGNAL=0 -DUSE_SSL
HEADERS = \
base58.h \
bignum.h \
+ checkpoints.h \
+ compat.h \
crypter.h \
db.h \
headers.h \
wallet.h
OBJS= \
+ obj/checkpoints.o \
+ obj/netbase.o \
obj/crypter.o \
+ obj/key.o \
obj/db.o \
obj/init.o \
obj/irc.o \
obj/net.o \
obj/protocol.o \
obj/bitcoinrpc.o \
+ obj/rpcdump.o \
obj/script.o \
obj/util.o \
obj/wallet.o
ifdef USE_UPNP
- LIBS += -lminiupnpc
DEFS += -DUSE_UPNP=$(USE_UPNP)
+ifdef STATIC
+ LIBS += $(DEPSDIR)/lib/libminiupnpc.a
+else
+ LIBS += -lminiupnpc
+endif
endif
-
all: bitcoind
bitcoind: $(OBJS:obj/%=obj/nogui/%)
$(CXX) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS)
+TESTOBJS := $(patsubst test/%.cpp,obj/test/%.o,$(wildcard test/*.cpp))
+
obj/test/%.o: test/%.cpp
$(CXX) -c $(CFLAGS) -MMD -o $@ $<
@cp $(@:%.o=%.d) $(@:%.o=%.P); \
-e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \
rm -f $(@:%.o=%.d)
-test_bitcoin: obj/test/test_bitcoin.o $(filter-out obj/nogui/init.o,$(OBJS:obj/%=obj/nogui/%))
+test_bitcoin: $(TESTOBJS) $(filter-out obj/nogui/init.o,$(OBJS:obj/%=obj/nogui/%))
$(CXX) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS) $(DEPSDIR)/lib/libboost_unit_test_framework-mt.a
clean: