Commit Graph

164 Commits

Author SHA1 Message Date
Guido Vranken
730a444226 Do not ignore CMAKE_CXX_FLAGS defined on the command line 2018-07-17 00:58:32 +02:00
Cryptomental
140dbfdbd8 Code, Changelog, ReleaseChecklist: Fix typos.
Refs: #4442
2018-07-11 00:26:23 +02:00
Christian Parpart
230317e9ff Visual Studio 2017 build-time (linking) fix and improvements 2018-07-10 19:10:29 +02:00
mingchuan
a104e5fb03
Fix cmake when custom CMAKE_INSTALL_LIBDIR is given
According to cmake documents, we cannot assume CMAKE_INSTALL_LIBDIR is a
relative path. This commit fixes the "no rule to make libjsoncpp.a"
error by passing -DCMAKE_INSTALL_LIBDIR=lib to jsoncpp external project.
2018-06-06 14:29:48 +08:00
Lefteris Karapetsas
7ca98d4a19
Fix a typo in Buildinfo.cmake
The file should be prelease.txt and not preleases.txt
2018-05-22 17:28:17 +02:00
Paweł Bylica
7db058074b
CMake: Fix libdir for jsoncpp external project in special case
When building on Debian/Ubuntu with install prefix /usr (e.g. in PPA builds) the CMAKE_INSTALL_LIBDIR is resolved to lib/x86_64-linux-gnu. For jsoncpp external project this is never the case because the install prefix is not /usr. Remove multiarch part from libdir if there.
2018-05-17 14:44:09 +02:00
Alexander Arlt
4aed41d9b6 cmake/EthCompilerSettings.cmake: increase stacksize for apple clang
- normally 16MB is enough to run all tests, but it will exceed the stack, if -DSANITIZE=address is used.
2018-05-15 15:11:38 +02:00
Alex Beregszaszi
fa2a28abc2 CMake: enable C++11 for jsoncpp 2018-04-23 13:37:37 +01:00
Alexander Arlt
0b49fd3493 CMake: Update jsoncpp to v1.8.4 2018-04-23 11:10:39 +01:00
Alex Beregszaszi
bff741b42f Remove obsolete warning supressions for clang 2018-04-18 23:15:16 +01:00
Alex Beregszaszi
b53156b039 Remove -fpermissive 2018-04-18 23:14:38 +01:00
Leonardo Alt
ae3350ae03 [SMTChecker] Integration with CVC4 2018-04-17 12:26:58 +01:00
Paweł Bylica
cdb0bbb5ec
CMake: Do no search for ctest 2018-04-16 12:02:38 +02:00
Alex Beregszaszi
c43953f9fe CMake: abort if linking results in undefined symbols with emscripten 2018-02-20 23:28:43 +01:00
Alex Beregszaszi
b4f99312e6 Disable greedy exception catcher in Emscripten build 2018-02-12 22:44:51 +00:00
Alexander Arlt
d9c51f9ca1 Set stack-size to 16MB for darwin clang.
By default Apple's clang defines a stack size of 8MB, some tests require
more.
2018-02-05 22:15:05 +01:00
Paweł Bylica
ffd440ccff
CMake: Cleanup include paths 2017-09-26 22:44:57 +02:00
Paweł Bylica
5722f3083c
CMake: Add compiler warning about implicit fallthough 2017-09-26 14:21:01 +02:00
Paweł Bylica
ab8b1bcc72 Merge pull request #2938 from ethereum/cmake-ccache
CMake: Better ccache configuration
2017-09-21 10:52:41 +02:00
Paweł Bylica
49c98bbc34
CMake: Better ccache configuration
EthCcache module taken from cpp-ethereum.
2017-09-20 16:39:41 +02:00
Paweł Bylica
4a499a38ea
jsoncpp: Restore download dir in source tree 2017-09-19 20:41:28 +02:00
Paweł Bylica
5706508332
deps: Move and fix jsoncpp.cmake from deps submodule
This copies jsoncpp.cmake from ethereum/cpp-dependencies repo and adds BUILD_BYPRODUCT information to ExternalProject configuration (required by Ninja).
2017-09-19 11:55:55 +02:00
Paweł Bylica
d223b1361b
CMake: Better handle -fstack-protector flag support 2017-08-24 12:26:37 +02:00
Paweł Bylica
5831b048c0
CMake: Fix FindZ3 2017-08-24 08:31:51 +02:00
Alex Beregszaszi
957f23a9f4 Merge pull request #2538 from ethereum/z3Conditions
z3 conditions
2017-08-24 00:27:09 +01:00
Alex Beregszaszi
e7832eccf4 Merge pull request #2783 from ethereum/cmake-dead-code
CMake: Remove unused scripts
2017-08-23 21:10:21 +01:00
Paweł Bylica
d57e3d7f72
CMake: Explicitly ask for Boost.System library 2017-08-23 17:59:48 +02:00
chriseth
c9cf24458b Prepare build system for Z3. 2017-08-23 17:37:35 +02:00
Paweł Bylica
b9015f0fb6
CMake: Remove unused scripts 2017-08-23 17:25:29 +02:00
chriseth
b3f8ed457a Cleanup. 2017-08-23 14:24:30 +02:00
chriseth
1ece7bf443 z3 conditions 2017-08-23 14:24:04 +02:00
Paweł Bylica
0dc73913e1
CMake: Allow linking Boost dynamically
Make Boost_USE_STATIC_LIBS an CMake option, ON by default.
2017-08-21 20:42:06 +02:00
Paweł Bylica
0712e6302e
Boost: Use static libs 2017-08-18 13:32:36 +02:00
Paweł Bylica
d1f4d110fb
CMake: Build static libs by default 2017-08-18 13:32:35 +02:00
Alex Beregszaszi
872e25413e Remove LINKABLE from Emscripten 2017-07-19 12:38:16 +01:00
Alex Beregszaszi
5050164d9e Add comments to Emscripten flags 2017-07-18 21:59:32 +01:00
chriseth
c78a3a0b01 Add other licenses. 2017-07-01 22:59:08 +01:00
Lefteris Karapetsas
735c977db1 Silence implicit fallthrough warning for gcc > 7
In my system I have gcc 7.1.1 and there I get a lot of warnings which
fail the build due to implicit fallthroughs in switch statements.

Some examples can be seen here:
https://gist.github.com/LefterisJP/388c3ba5ad356f92a3b44e7efed89f9f

This PR proposes a simple solution, which is to ignore the warning for
both gcc and clang.
2017-06-29 16:46:55 +02:00
chriseth
cb7021881a Whiskers template system 2017-06-22 16:56:57 +02:00
Alex Beregszaszi
e6a36e0121 Include trailing zero in license 2017-06-14 14:14:52 +01:00
chriseth
1ce949519d Move 0x to cmake file. 2017-06-14 14:17:53 +02:00
chriseth
1d79059897 Convert license to character array. 2017-06-14 12:42:48 +02:00
chriseth
9d0691b47a Include license and warranty statement with solc. 2017-06-09 13:11:15 +02:00
Alex Beregszaszi
9cffa9a92e Do not use -Og for debug mode (won't work on Mac/clang) 2017-02-09 14:56:18 +00:00
Alex Beregszaszi
4675599170 Include SOL_VERSION_COMMIT/SOL_VERSION_PLATFORM in buildinfo.h 2017-01-17 12:54:58 +00:00
chriseth
9c2ed33e9a Merge pull request #1342 from ethereum/emscripten-codesize
Emscripten code size improvements [WIP TEST]
2016-11-25 18:07:10 +01:00
Alex Beregszaszi
35def4735e Compile with -Og in debug mode (by @chfast) 2016-11-14 21:43:28 +00:00
Alex Beregszaszi
7bbaeedc31 Add optimisation flags for Emscripten 2016-11-09 02:46:47 +00:00
chriseth
7a30e8cf6e Merge pull request #1252 from ethereum/jsoncpp-from-source
Build jsoncpp from source using jsoncpp.cmake script
2016-11-08 13:47:52 +01:00
chriseth
81254e0eb7 Fix cmake empty string replace. 2016-10-27 16:30:11 +02:00
Paweł Bylica
4bde0a2d36 Build jsoncpp from source using jsoncpp.cmake script 2016-10-20 22:18:13 +01:00
chriseth
3b6e131d85 Fix hex check. 2016-09-15 17:34:12 +02:00
chriseth
af86bfb07d Force commit hash to 8 digits. 2016-09-15 01:47:37 +02:00
chriseth
6c757ce4b8 Style. 2016-09-09 17:43:36 +02:00
chriseth
29ecc6fe31 Remove leading zeroes in prerelease components. 2016-09-09 14:23:33 +02:00
chriseth
4bc0a2d00c Suffix the "mod" version modifier using a dot. 2016-09-09 10:37:12 +02:00
chriseth
1ccc5f6f5b Set version to 0.4.0. 2016-09-08 14:36:31 +02:00
chriseth
4588eda622 Store commit hash and handle prerelease vor all automation tools. 2016-08-26 10:14:44 +02:00
chriseth
54ab787b83 Make versioning semver compatible and force commit hash availability. 2016-08-26 10:14:44 +02:00
chriseth
4c54834908 Rename libevmasm. 2016-08-10 13:52:24 +02:00
chriseth
15d732b030 Correctly require jsoncpp 2016-08-10 13:38:15 +02:00
chriseth
ccd78d05d6 Correct library usage. 2016-08-08 12:26:07 +02:00
Bob Summerwill
8c715b7f97 Remove unused jsonrpcstub code in cmake/
Fixes https://github.com/ethereum/solidity/issues/779
2016-08-01 03:54:34 -07:00
Bob Summerwill
4ee2114127 Make the Solidity repository standalone.
This commit is the culmination of several months of work to decouple Solidity from the webthree-umbrella so that it can be developed in parallel with cpp-ethereum (the Ethereum C++ runtime) and so that even for the Solidity unit-tests there is no hard-dependency onto the C++ runtime.

The Tests-over-IPC refactoring was a major step in the same process which was already committed.

This commit contains the following changes:

- A subset of the CMake functionality in webthree-helpers was extracted and tailored for Solidity into ./cmake.   Further cleanup is certainly possible.
- A subset of the libdevcore functionality in libweb3core was extracted and tailored for Solidity into ./libdevcore.   Further cleanup is certainly possible
- The gas price constants in EVMSchedule were orphaned into libevmasm.
- Some other refactorings and cleanups were made to sever unnecessary EVM dependencies in the Solidity unit-tests.
- TravisCI and Appveyor support was added, covering builds and running of the unit-tests (Linux and macOS only for now)
- A bug-fix was made to get the Tests-over-IPC running on macOS.
- There are still reliability issues in the unit-tests, which need immediate attention.    The Travis build has been flipped to run the unit-tests 5 times, to try to flush these out.
- The Emscripten automation which was previously in webthree-umbrella was merged into the TravisCI automation here.
- The development ZIP deployment step has been commented out, but we will want to read that ONLY for release branch.

Further iteration on these changes will definitely be needed, but I feel these have got to sufficient maturity than holding them back further isn't winning us anything.    It is go time :-)
2016-08-01 01:45:11 -07:00