aboutsummaryrefslogtreecommitdiff
path: root/src/makefile.osx
AgeCommit message (Collapse)Author
2012-05-21Define BOOST_SPIRIT_THREADSAFE in all makefilesJeff Garzik
rather than at each include site. Fixes #1371
2012-05-17Add /bin/sh to bitcoin-qt.pro - as some filesystems don't have the execute flag.R E Broadley
2012-05-11Merge pull request #1021 from sipa/ipv6Pieter Wuille
IPv6 node support
2012-05-11Split synchronization mechanisms from util.{h,cpp}Pieter Wuille
2012-05-11IPv6 node supportPieter Wuille
This will make bitcoin relay valid routable IPv6 addresses, and when USE_IPV6 is enabled, listen on IPv6 interfaces and attempt connections to IPv6 addresses.
2012-05-09Fix osx buildGavin Andresen
2012-05-09Clean up warningsPieter Wuille
* Use -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameters * Remove xCXXFLAGS usage in makefile.unix * Fix several recent and older sign-compare warnings
2012-04-26Define TEST_DATA_DIR so unit tests can be run from any current working directoryGavin Andresen
2012-04-17Move CWalletDB code to new walletdb module.Jeff Garzik
In addition to standard code separation, this change opens the door to fixing several include inter-dependencies.
2012-04-15enable all warnings except invalid-offsetof, sign-compare, unused-parameterWladimir J. van der Laan
2012-04-11Fix build.h dependenciesPieter Wuille
For Qt builds, the build.h file is moved to build/build.h. For regular builds, it is moved to obj/build.h. This allows the Qt build to be done in a different directory than the source, and without interfering with other builds.
2012-04-10Build identification stringsPieter Wuille
All client version information is moved to version.cpp, which optionally (-DHAVE_BUILD_INFO) includes build.h. build.h is automatically generated on supporting platforms via contrib/genbuild.sh, using git describe. The git export-subst attribute is used to put the commit id statically in version.cpp inside generated archives, and this value is used if no build.h is present. The gitian descriptors are modified to use git archive instead of a copy, to create the src/ directory in the output. This way, src/src/version.cpp will contain the static commit id. To prevent gitian builds from getting the "-dirty" marker in their git-describe generated identifiers, no touching of files or running sed on the makefile is performed anymore. This does not seem to influence determinism.
2012-04-05Merge pull request #1042 from gavinandresen/use_ssl_cleanupGavin Andresen
Remove USE_SSL #define
2012-04-04Remove USE_SSL #defineGavin Andresen
2012-04-04Add ifdef RELEASE to makefile.osx as the compile-for-older-macs flagsGavin Andresen
2012-04-04Move from noui.h / ui.h to one ui_interface.h with dummy implementation for ↵Wladimir J. van der Laan
the daemon.
2012-02-24CAddrMan: stochastic address managerPieter Wuille
Design goals: * Only keep a limited number of addresses around, so that addr.dat does not grow without bound. * Keep the address tables in-memory, and occasionally write the table to addr.dat. * Make sure no (localized) attacker can fill the entire table with his nodes/addresses. See comments in addrman.h for more detailed information.
2012-01-23Support makefile.osx building test_bitcoin with dynamic boostGavin Andresen
2012-01-12Compile with extra warnings turned on. And more makefile/code tidying up.Gavin Andresen
This turns on most gcc warnings, and removes some unused variables and other code that triggers warnings. Exceptions are: -Wno-sign-compare : triggered by lots of comparisons of signed integer to foo.size(), which is unsigned. -Wno-char-subscripts : triggered by the convert-to-hex functions (I may fix this in a future commit).
2012-01-12Remove broken Visual C++ makefile.vc, and removed annoying HEADERS= list ↵Gavin Andresen
from other makefiles
2012-01-06Network stack refactorPieter Wuille
This introduces CNetAddr and CService, respectively wrapping an (IPv6) IP address and an IP+port combination. This functionality used to be part of CAddress, which also contains network flags and connection attempt information. These extra fields are however not always necessary. These classes, along with logic for creating connections and doing name lookups, are moved to netbase.{h,cpp}, which does not depend on headers.h. Furthermore, CNetAddr is mostly IPv6-ready, though IPv6 functionality is not yet enabled for the application itself.
2011-12-23No reason to have any qrcode stuff in the bitcoind osx makefile.Matt Corallo
2011-12-23Merge pull request #629 from sje397/masterWladimir J. van der Laan
QR Code generation via libqrencode
2011-12-20Added QRCode generation functions via libqrencode. Switch on with ↵sje397
USE_QRENCODE=1. Amended build docs for Linux and OSX, and OSX makefile. Added package 'qrencode' to gitian.yml
2011-12-19Rework unit tests so test_bitcoin.cpp does not #include them allGavin Andresen
2011-12-17Key import and exportPieter Wuille
Introduces two new RPC calls: * dumpprivkey: retrieve the private key corresponding to an address * importprivkey: add a private key to your wallet The private key format is analoguous to the address format. It is a 51-character base58-encoded string, that includes a version number and a checksum. Includes patch by mhanne: * add optional account parameter for importprivkey, if omitted use default
2011-12-17Add GetSecret() and GetKeys() to CKeyStorePieter Wuille
2011-12-01Moved checkpoints out of main, to prep for using them to help prevent DoS ↵Gavin Andresen
attacks
2011-10-10Mac OSX release process changesGavin Andresen
Rename App Bundle "Bitcoin-Qt.app" instead of "Bitcoin Qt" for consistency with Windows/Linux. Update create_osx_dmg.sh script to use macdeployqt tool. Add ifdef STATIC to makefile.osx to build bitcoind static or dynamic.
2011-10-07Fix build on windows and macGavin Andresen
Replaced all occurrences of #if* __WXMSW__ with WIN32, and all occurrences of __WXMAC_OSX__ with MAC_OSX, and made sure those are defined appropriately in the makefile and bitcoin-qt.pro.
2011-10-05Update mac Makefile and build instructions to use MacPortsGavin Andresen
2011-09-30remove cryptopp dependency, add simple unittest for SHA256Transform()Nils Schneider
2011-09-26Fix build: put back rules to build cryptopp filesGavin Andresen
2011-09-26Remove wxWidgetsGavin Andresen
Makefiles now build bitcoind only. qmake/make in top-level directory is used to build Bitcoin QT Deleted almost all #ifdef GUI from the code (left one possibly controversial one) Deleted xpm/ files.
2011-09-18assure that base bitcoind and bitcoin still buildWladimir J. van der Laan
2011-09-01Merge branch 'code-cleanup' of git://github.com/muggenhor/bitcoinGavin Andresen
2011-08-26CHECKMULTISIG unit tests.Gavin Andresen
2011-08-19Start moving protocol-specific code to protocol.[ch]ppGiel van Schijndel
Move CMessageHeader from net.h to protocol.[ch]pp, with the implementation in the .cpp compilation unit (compiling once is enough). This commit does *not* and should not modify *any* code, it only moves it from net.h and splits it across protocol.cpp and protocol.hpp. Indentation changes aside the closest thing to a modification of code is the addition of the 'TODO' comment (the execution of which requires code modifications and thus doesn't belong in this commit). Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19Cleanup makefiles such that diffs to them are smallerGiel van Schijndel
Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-08Fix testing setupVegard Nossum
There were some problems with the existing testing setup: - Makefile rules for test-file compilation used CFLAGS instead of CXXFLAGS in makefile.unix
2011-07-13Add wallet privkey encryption.Matt Corallo
This commit adds support for ckeys, or enCrypted private keys, to the wallet. All keys are stored in memory in their encrypted form and thus the passphrase is required from the user to spend coins, or to create new addresses. Keys are encrypted with AES-256-CBC using OpenSSL's EVP library. The key is calculated via EVP_BytesToKey using SHA512 with (by default) 25000 rounds and a random salt. By default, the user's wallet remains unencrypted until they call the RPC command encryptwallet <passphrase> or, from the GUI menu, Options-> Encrypt Wallet. When the user is attempting to call RPC functions which require the password to unlock the wallet, an error will be returned unless they call walletpassphrase <passphrase> <time to keep key in memory> first. A keypoolrefill command has been added which tops up the users keypool (requiring the passphrase via walletpassphrase first). keypoolsize has been added to the output of getinfo to show the user the number of keys left before they need to specify their passphrase (and call keypoolrefill). Note that walletpassphrase will automatically fill keypool in a separate thread which it spawns when the passphrase is set. This could cause some delays in other threads waiting for locks on the wallet passphrase, including one which could cause the passphrase to be stored longer than expected, however it will not allow the passphrase to be used longer than expected as ThreadCleanWalletPassphrase will attempt to get a lock on the key as soon as the specified lock time has arrived. When the keypool runs out (and wallet is locked) GetOrReuseKeyFromPool returns vchDefaultKey, meaning miners may start to generate many blocks to vchDefaultKey instead of a new key each time. A walletpassphrasechange <oldpassphrase> <newpassphrase> has been added to allow the user to change their password via RPC. Whenever keying material (unencrypted private keys, the user's passphrase, the wallet's AES key) is stored unencrypted in memory, any reasonable attempt is made to mlock/VirtualLock that memory before storing the keying material. This is not true in several (commented) cases where mlock/VirtualLocking the memory is not possible. Although encryption of private keys in memory can be very useful on desktop systems (as some small amount of protection against stupid viruses), on an RPC server, the password is entered fairly insecurely. Thus, the only main advantage encryption has for RPC servers is for RPC servers that do not spend coins, except in rare cases, eg. a webserver of a merchant which only receives payment except for cases of manual intervention. Thanks to jgarzik for the original patch and sipa, gmaxwell and many others for all their input. Conflicts: src/wallet.cpp
2011-07-05Revert "Make UPnP default on Bitcoin but not on Bitcoind."Matt Corallo
This reverts commit ee1f884229736da6f5443157ccba97f4e8f50f82. Stupid, stupid me...there is exactly 0 way to convince make to execute a conditional based on a target-specific variable.
2011-07-02Make UPnP default on Bitcoin but not on Bitcoind.Matt Corallo
This is a bit of an ugly hack, but its the only way to do it.
2011-06-27Boost unit-testing framework.Gavin Andresen
make -f makefile.{unix,osx,mingw} test_bitcoin to compile dumb, do-almost-nothing placeholder unit tests.
2011-06-15move wallet code to separate filePieter Wuille
This introduces two new source files, keystore.cpp and wallet.cpp with corresponding headers. Code is moved from main and db, in a preparation for a follow-up commit which introduces the classes CWallet and CKeyStore.
2011-05-21Revert "OSX build tweaks (laszlo)"Matt Corallo
This reverts commit 69ae372b51cd589a3ac0b1ad09b0ebb90c1b6861 which removes support for building the Mac version of Bitcoin with UPnP support and UPnP disabled by default (which should be the default, according to the community vote and as its the default on all other platforms).
2011-05-20OSX build tweaks (laszlo)Jeff Garzik
2011-04-23directory re-organization (keeps the old build system)Jaromil
there is no internal modification of any file in this commit files are moved into directories according to established standards in sourcecode distribution; these directories contain: src - Files that are used in constructing the executable binaries, but are not installed. doc - Files in HTML and text format that document usage, quirks of the implementation, and contributor checklists. locale - Files that contain human language translation of strings used in the program contrib - Files contributed from distributions or other third party implementing scripts and auxiliary programs