mirror of
https://github.com/dashpay/dash.git
synced 2024-12-30 22:35:51 +01:00
14ac0adcc7
commit 5a1a3622
effectively enabled these warnings, but they need
to be fixed before being enabled in the general build scripts.
162 lines
3.6 KiB
Makefile
162 lines
3.6 KiB
Makefile
# -*- mode: Makefile; -*-
|
|
# Copyright (c) 2011 Bitcoin Developers
|
|
# Distributed under the MIT/X11 software license, see the accompanying
|
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
# Mac OS X makefile for bitcoin
|
|
# Originally by Laszlo Hanyecz (solar@heliacal.net)
|
|
|
|
CXX=llvm-g++
|
|
DEPSDIR=/opt/local
|
|
|
|
INCLUDEPATHS= \
|
|
-I"$(CURDIR)" \
|
|
-I"$(CURDIR)"/obj \
|
|
-I"$(DEPSDIR)/include" \
|
|
-I"$(DEPSDIR)/include/db48"
|
|
|
|
LIBPATHS= \
|
|
-L"$(DEPSDIR)/lib" \
|
|
-L"$(DEPSDIR)/lib/db48"
|
|
|
|
USE_UPNP:=1
|
|
USE_IPV6:=1
|
|
|
|
LIBS= -dead_strip
|
|
|
|
TESTDEFS = -DTEST_DATA_DIR=$(abspath test/data)
|
|
|
|
ifdef STATIC
|
|
# Build STATIC if you are redistributing the bitcoind binary
|
|
TESTLIBS += \
|
|
$(DEPSDIR)/lib/libboost_unit_test_framework-mt.a
|
|
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 \
|
|
-lz
|
|
else
|
|
TESTLIBS += \
|
|
-lboost_unit_test_framework-mt
|
|
LIBS += \
|
|
-ldb_cxx-4.8 \
|
|
-lboost_system-mt \
|
|
-lboost_filesystem-mt \
|
|
-lboost_program_options-mt \
|
|
-lboost_thread-mt \
|
|
-lssl \
|
|
-lcrypto \
|
|
-lz
|
|
TESTDEFS += -DBOOST_TEST_DYN_LINK
|
|
endif
|
|
|
|
DEFS=-DMAC_OSX -DMSG_NOSIGNAL=0 -DBOOST_SPIRIT_THREADSAFE
|
|
|
|
ifdef RELEASE
|
|
# Compile for maximum compatibility and smallest size.
|
|
# This requires that dependencies are compiled
|
|
# the same way.
|
|
CFLAGS = -mmacosx-version-min=10.5 -arch i386 -O3
|
|
else
|
|
CFLAGS = -g
|
|
endif
|
|
|
|
# ppc doesn't work because we don't support big-endian
|
|
CFLAGS += -Wall -Wextra -Wno-format -Wno-format-security -Wno-unused-parameter \
|
|
$(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS)
|
|
|
|
OBJS= \
|
|
obj/alert.o \
|
|
obj/version.o \
|
|
obj/checkpoints.o \
|
|
obj/netbase.o \
|
|
obj/addrman.o \
|
|
obj/crypter.o \
|
|
obj/key.o \
|
|
obj/db.o \
|
|
obj/init.o \
|
|
obj/irc.o \
|
|
obj/keystore.o \
|
|
obj/main.o \
|
|
obj/net.o \
|
|
obj/protocol.o \
|
|
obj/bitcoinrpc.o \
|
|
obj/rpcdump.o \
|
|
obj/rpcnet.o \
|
|
obj/rpcmining.o \
|
|
obj/rpcwallet.o \
|
|
obj/rpcblockchain.o \
|
|
obj/rpcrawtransaction.o \
|
|
obj/script.o \
|
|
obj/sync.o \
|
|
obj/util.o \
|
|
obj/wallet.o \
|
|
obj/walletdb.o \
|
|
obj/noui.o
|
|
|
|
ifndef USE_UPNP
|
|
override USE_UPNP = -
|
|
endif
|
|
ifneq (${USE_UPNP}, -)
|
|
DEFS += -DUSE_UPNP=$(USE_UPNP)
|
|
ifdef STATIC
|
|
LIBS += $(DEPSDIR)/lib/libminiupnpc.a
|
|
else
|
|
LIBS += -lminiupnpc
|
|
endif
|
|
endif
|
|
|
|
ifneq (${USE_IPV6}, -)
|
|
DEFS += -DUSE_IPV6=$(USE_IPV6)
|
|
endif
|
|
|
|
all: bitcoind
|
|
|
|
test check: test_bitcoin FORCE
|
|
./test_bitcoin
|
|
|
|
# auto-generated dependencies:
|
|
-include obj/*.P
|
|
-include obj-test/*.P
|
|
|
|
obj/build.h: FORCE
|
|
/bin/sh ../share/genbuild.sh obj/build.h
|
|
version.cpp: obj/build.h
|
|
DEFS += -DHAVE_BUILD_INFO
|
|
|
|
obj/%.o: %.cpp
|
|
$(CXX) -c $(CFLAGS) -MMD -MF $(@:%.o=%.d) -o $@ $<
|
|
@cp $(@:%.o=%.d) $(@:%.o=%.P); \
|
|
sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
|
|
-e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \
|
|
rm -f $(@:%.o=%.d)
|
|
|
|
bitcoind: $(OBJS:obj/%=obj/%)
|
|
$(CXX) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS)
|
|
|
|
TESTOBJS := $(patsubst test/%.cpp,obj-test/%.o,$(wildcard test/*.cpp))
|
|
|
|
obj-test/%.o: test/%.cpp
|
|
$(CXX) -c $(TESTDEFS) $(CFLAGS) -MMD -MF $(@:%.o=%.d) -o $@ $<
|
|
@cp $(@:%.o=%.d) $(@:%.o=%.P); \
|
|
sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \
|
|
-e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \
|
|
rm -f $(@:%.o=%.d)
|
|
|
|
test_bitcoin: $(TESTOBJS) $(filter-out obj/init.o,$(OBJS:obj/%=obj/%))
|
|
$(CXX) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS) $(TESTLIBS)
|
|
|
|
clean:
|
|
-rm -f bitcoind test_bitcoin
|
|
-rm -f obj/*.o
|
|
-rm -f obj-test/*.o
|
|
-rm -f obj/*.P
|
|
-rm -f obj-test/*.P
|
|
-rm -f obj/build.h
|
|
|
|
FORCE:
|