Commit Graph

280 Commits

Author SHA1 Message Date
warptangent 84fe5fbd65
Add compile-time support for both db implementations: in-memory and LMDB
Usage:

default is lmdb for blockchain branch:
$ make release

same as:
$ DATABASE=lmdb make release

for original in-memory implementation:
$ DATABASE=memory make release
2015-02-02 11:53:09 -08:00
warptangent 79ea1f6ff0
Merge upstream
Merge branch 'monero-project/master' into blockchain
2015-01-30 16:19:22 -08:00
Riccardo Spagni 2b3b70a261
remove aes flag, detect no sse2 2015-01-27 09:05:47 +02:00
Riccardo Spagni bb85fea35a
fixed AES support flag 2015-01-27 07:45:21 +02:00
Riccardo Spagni 615079e2f4
allow for explicitly disabling AES-NI 2015-01-26 23:19:53 +02:00
Thomas Winget 34883599bc
Add in-source lmdb to build process
Working on Linux, needs verified for other platforms but should be fine.
2015-01-18 18:30:31 -05:00
moneromooo-monero 0886183568 build: add liblmdb to the cmake autodetection system
update for rebase (warptangent 2015-01-04)
  src/cryptonote_core/CMakeLists.txt (edit)
  - replace LMDB_LIBRARIES with LMDB_LIBRARY set from autodetection
2015-01-04 19:39:40 -08:00
Thomas Winget 1240cf805b
BlockchainDB unit tests, lmdb linker flag
Some BlockchainDB unit testing fleshed out (and working), rudimentary
linker flag for lmdb in CMakeLists, but should probably be done
"correctly" at some point (find it on whatever system you're building on
and all that jazz).

update for rebase (warptangent 2015-01-04)
  fix conflicts with upstream CMakeLists.txt files

  tests/CMakeLists.txt (remove edits from original commit)
2015-01-04 19:00:31 -08:00
Riccardo Spagni f4b69d553a
year updated in license 2015-01-02 18:52:46 +02:00
Riccardo Spagni affde29754
moved rapidjson to external folder, fixed CMake 2014-12-01 21:15:50 +02:00
Riccardo Spagni 4cd15cdde5
Merge pull request #1
f1eaf88 Prints seed after wallet upgrade. Removed iostream include. (Oran Juice)
70971be Doxygen comments (Oran Juice)
031ca23 Rewrites to old wallet file correctly (Oran Juice)
1f833dc Doxygen comments in (Oran Juice)
0bd88ff Writes seed language while generating wallet. Wallet open fix. (Oran Juice)
09a659e Stores seed language in wallet file. added rapidjson. Yet to test backward compatibility (Oran Juice)
2014-12-01 20:15:06 +02:00
Riccardo Spagni 685dd4a5d3
don't build tests unless we're building all-* or *-test builds 2014-12-01 20:00:22 +02:00
Ben Boeckel ce71c01f11 cmake: work around a bug with implicit link directories
Unfortunately, this is necessary because CMake doesn't detect whether
mingw libraries are static or shared and doesn't put a -static flag around
the -lfoo argument which then makes the shared library be linked to.
2014-11-18 17:04:47 -05:00
Ben Boeckel 18c56abe4b msys: don't use LTO
This causes duplicate symbol errors on msys' mingw install.
2014-11-17 18:19:54 -05:00
Ben Boeckel 5680c9cac7 msys: factor out -Werror on msys
There are Windows-related warnings turned into errors here.
2014-11-17 18:19:54 -05:00
Ben Boeckel 475154255a msys: look in msys' directory for files
This tells find_path and find_library to look under this directory first
which is what we want on msys2.
2014-11-17 18:19:53 -05:00
Ben Boeckel 7d708e4223 cmake: support 2.8.7
Older versions of CMake support LINK_{PUBLIC,PRIVATE} while newer
versions prefer PUBLIC and PRIVATE instead, but still support the LINK_
prefix.
2014-10-24 15:29:51 -04:00
Ben Boeckel 9689df925c cmake: clean up EXTRA_LIBRARIES
pthread is handled by CMAKE_THREAD_LIBS_INIT while libdl isn't needed.
2014-10-23 16:42:35 -04:00
Ben Boeckel 3b7bdcb790 cmake: set the project name 2014-10-23 16:42:35 -04:00
Ben Boeckel 0f0efc4af2 cmake: prepend to CMAKE_MODULE_PATH 2014-10-23 16:42:35 -04:00
Ben Boeckel abbd5c0bdb unbound: import cmake build system 2014-10-23 16:42:35 -04:00
Ben Boeckel 475fe209a8 cmake: minor cleanups (indentation and typos) 2014-10-23 16:42:35 -04:00
Ben Boeckel 799e8b241f cmake: use option() for STATIC 2014-10-23 16:42:35 -04:00
Ben Boeckel c24d22b44e cmake: clean up if auto-dereferencing
CMake will auto-dereference variable names in if statements, so there's
no need to dereference them manually.
2014-10-23 16:42:35 -04:00
Ben Boeckel eba180a1c7 cmake: support git info in released tarballs 2014-10-23 16:42:34 -04:00
Ben Boeckel eeffac6839 cmake: fix up BOOST_IGNORE_SYSTEM_PATHS
The option was set twice when it only needs to be set once. Also fix a
bogus dereference and spurious whitespace.
2014-10-23 16:42:34 -04:00
Ben Boeckel a43f1a88d8 cmake: remove configuration variables
CMAKE_BUILD_TYPE is meant for single-config build tools (e.g., make and
ninja) while CMAKE_CONFIGURATION_TYPES is meant for multi-config build
tools (e.g., Xcode and Visual Studio). They should not be mixed or
manually set.
2014-10-23 16:42:34 -04:00
Ben Boeckel a87ce09461 cmake: factor out error messages
Instead of using BoldRed and ColourReset everywhere, wrap it up in a
function.
2014-10-23 16:42:34 -04:00
Oran Juice 09a659edb5
Stores seed language in wallet file. added rapidjson. Yet to test backward compatibility 2014-10-18 02:21:37 +05:30
Riccardo Spagni 26728d94fe
mingw library tweaks 2014-10-06 22:34:44 +02:00
Riccardo Spagni 2cf94c1321
fix for mingw not playing nicely with libunbound configure, fix for correctly finding static libs on various operating systems 2014-10-06 22:29:07 +02:00
Riccardo Spagni b05e27f8b1
need to link with -ldl on Linux when building statically 2014-10-06 21:17:31 +02:00
Riccardo Spagni 1afba7311e
quieten CMake when it can't find packages 2014-10-06 18:56:59 +02:00
Riccardo Spagni 6b7ac4b37f
enforce static libraries when building statically 2014-10-06 18:46:18 +02:00
Riccardo Spagni cee87473ad build libunbound from external if no local libunbound or for static builds 2014-10-06 18:08:32 +02:00
Riccardo Spagni 99945a5c47
dependencies enforced, send que error message log level moved 2014-09-29 20:13:15 +02:00
Riccardo Spagni 524eae58cc
never use the baked-in miniupnpc on FreeBSD because explosions 2014-09-24 20:57:09 +02:00
Riccardo Spagni bff1f9d4c4
redo FindUnbound.cmake 2014-09-24 20:38:24 +02:00
Thomas Winget 24f325a33d
Fixed artifacts from cherry-picking devel->master 2014-09-23 22:59:47 +02:00
Thomas Winget 5bd343778f Fixed CMake search for libunbound
As it turns out, some of CMake's built-in modules for detecting headers
and libraries don't work if you have certain compiler flags set, such as
-Werror=old-style-definition, as they do "int main()" rather than
"int main(void)".  Having CMake search for libs before compiler flags
are set alleviates this issue, and I believe the underlying issue will
be fixed in future releases of CMake.
2014-09-23 22:58:31 +02:00
Thomas Winget dea98df6b1 Updated CMake files -- added libunbound linker flag
CMake config file written, but was unable to test/get it working
properly because of a bug in CMake with functions related to
find_package.  Simple "-lunbound" flag used in its stead for now.  May
not build on non-Linux systems, not sure yet.
2014-09-23 22:58:02 +02:00
Riccardo Spagni b5d51e30d9
moved msys2 toolchain, boost libs fix 2014-09-22 12:30:53 +02:00
Riccardo Spagni ca569549ec
added mikezackles' missing boost function in CMakeLists 2014-09-22 12:09:46 +02:00
Riccardo Spagni 0e21944b97
turns out we do need -static-libgcc etc. on Linux 2014-09-15 23:17:24 +02:00
Riccardo Spagni d8257fb67b
explicitly disable LTO for Clang 2014-09-15 22:47:26 +02:00
Zachary Michaels ed41ee4c26 Use LTO by default
The mingw toolchains override this for now.
2014-09-15 22:36:58 +02:00
Zachary Michaels 729d4bb91d User setting to turn LTO on and off
This isn't currently working on mingw
2014-09-15 22:29:39 +02:00
Zachary Michaels e1dfd58bdb Remove unnecessary else 2014-09-15 22:29:39 +02:00
Zachary Michaels 1b90c6f3d5
Hack to add pthread to link libraries on mingw
This should link winpthreads.  We really shouldn't be passing these this
way, but that seems to be the existing solution, and it works for now.
2014-09-15 22:29:27 +02:00
Zachary Michaels f9f4fc1b00
Change to -static gcc flag 2014-09-15 22:28:35 +02:00
Zachary Michaels 44f920b0fd Set the boost thread api for mingw 2014-09-15 22:27:16 +02:00
Zachary Michaels a31d6bb9fb Hack to allow toolchains to pass flags to mingw 2014-09-15 22:27:16 +02:00
Zachary Michaels 9c848ceae7 Ignore another warning to make mingw happy 2014-09-15 22:27:16 +02:00
Zachary Michaels 0fe311b2f0
Remove unused CMake function 2014-09-15 22:25:04 +02:00
Zachary Michaels 8d6a04a9f0 Default to static linking on both MSVC and MINGW 2014-09-15 22:22:31 +02:00
Riccardo Spagni 5a3ce8a7dc FreeBSD static linking fixes 2014-09-15 08:08:03 +02:00
Riccardo Spagni 8334ce0b24 versioning now includes the commit hash, or -final for tagged releases 2014-09-12 13:12:43 +02:00
Riccardo Spagni 446a7ddc49 always check git diff 2014-09-12 13:12:43 +02:00
fluffypony d21cf293e1 added license to CMake 2014-09-11 08:25:07 +02:00
fluffypony 36c7ea9f77 more CMake tweaks to allow detection on OS X 2014-09-11 08:22:49 +02:00
fluffypony 8d8b47e69f more dynamic miniupnp fixes 2014-09-10 20:01:30 +02:00
fluffypony 7d01dad8f4 use external miniupnpc if available 2014-09-10 18:14:57 +02:00
fluffypony 81490d2aea miniupnpc changes for freebsd 2014-09-10 14:19:42 +02:00
fluffypony a8d043b6dd replace ftime with gettimeofday on FreeBSD because lcompat is stupid 2014-09-10 13:55:39 +02:00
fluffypony 0e343ecfdf make FreeBSD use -lcompat till we can fix ftime() 2014-09-10 13:25:34 +02:00
fluffypony 5a65991480 exclude local miniupnpc for FreeBSD, install from ports instead 2014-09-09 14:03:42 +02:00
Thomas Winget 45bd182363 needed to remove REQUIRED from find_package(Threads) 2014-06-30 07:23:49 -04:00
Zachary Michaels 6bee34e4a6 Fix to disable LTO for Clang
The previous code was assuming Apple == Clang.  This change should both
enable LTO when using gcc on Apple and fix Clang when using it on other
platforms.
2014-06-12 15:38:28 -04:00
Zachary Michaels e84f39ae54 Link to pthreads on non-apple unix 2014-06-11 13:15:23 -04:00
Zachary Michaels c8626dff3f Gcc 4.9 LTO fix
The new lto format requires use of the gcc-provided gcc-ar and
gcc-ranlib binaries.
2014-06-11 13:13:43 -04:00
mydesktop 3a3a817678 0.8.8update 2014-05-25 13:06:40 -04:00
OracionSeis 9f1ffe0473 OS X compilation fixed 2014-05-22 17:12:33 +04:00
NoodleDoodleNoodleDoodleNoodleDoodleNoo 3c5d7468d7 Update CMakeLists.txt
1. Fixed build error on machines not supporting aes-ni.
2014-05-21 13:02:46 -07:00
vertoe 41533168a9 fix CMakeLists.txt to add -lpthread, did not compile boost 1.55 2014-05-05 19:59:21 +02:00
mydesktop 79a4bedc36 mac osx building fixes 2014-04-30 16:50:06 -04:00
mydesktop 67df296650 various fixes to allow mac osx compilation 2014-04-30 13:52:21 -04:00
Antonio Juarez 9682a15400 Port mapping with UPnP 2014-04-09 13:14:35 +01:00
Antonio Juarez a401a02ddb Improvements in JSON RPC 2014-04-07 16:02:15 +01:00
Antonio Juarez 8efa1313f3 some fixes 2014-03-20 11:46:11 +00:00
Antonio Juarez 296ae46ed8 moved all stuff to github 2014-03-03 22:07:58 +00:00