Gav Wood
11 years ago
48 changed files with 2448 additions and 330 deletions
@ -1,68 +0,0 @@ |
|||
|
|||
Microsoft Visual Studio Solution File, Format Version 12.00 |
|||
# Visual Studio Express 2013 for Windows Desktop |
|||
VisualStudioVersion = 12.0.21005.1 |
|||
MinimumVisualStudioVersion = 10.0.40219.1 |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibEthereum", "libethereum\LibEthereum.vcxproj", "{7050C7CF-7551-48BE-8E57-92235906C13A}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestMining", "test\TestMining.vcxproj", "{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Test", "test\Test.vcxproj", "{3F3E389B-88DE-41D5-A73B-4F6036E18B36}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cryptlib", "..\cryptopp562\cryptlib.vcxproj", "{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Ethereum", "eth\Ethereum.vcxproj", "{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}" |
|||
EndProject |
|||
Global |
|||
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
|||
Debug|Win32 = Debug|Win32 |
|||
Debug|x64 = Debug|x64 |
|||
Release|Win32 = Release|Win32 |
|||
Release|x64 = Release|x64 |
|||
EndGlobalSection |
|||
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Debug|x64.Build.0 = Debug|x64 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Release|Win32.Build.0 = Release|Win32 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Release|x64.ActiveCfg = Release|x64 |
|||
{7050C7CF-7551-48BE-8E57-92235906C13A}.Release|x64.Build.0 = Release|x64 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Debug|x64.Build.0 = Debug|x64 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Release|Win32.Build.0 = Release|Win32 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Release|x64.ActiveCfg = Release|x64 |
|||
{02DC8A9B-DEF7-403B-8AE3-EF9680937D96}.Release|x64.Build.0 = Release|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|x64.Build.0 = Debug|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|Win32.Build.0 = Release|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|x64.ActiveCfg = Release|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|x64.Build.0 = Release|x64 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Debug|x64.Build.0 = Debug|x64 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Release|Win32.Build.0 = Release|Win32 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Release|x64.ActiveCfg = Release|x64 |
|||
{3423EC9A-52E4-4A4D-9753-EDEBC38785EF}.Release|x64.Build.0 = Release|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|x64.Build.0 = Debug|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|Win32.Build.0 = Release|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|x64.ActiveCfg = Release|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|x64.Build.0 = Release|x64 |
|||
EndGlobalSection |
|||
GlobalSection(SolutionProperties) = preSolution |
|||
HideSolutionNode = FALSE |
|||
EndGlobalSection |
|||
EndGlobal |
@ -1,19 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ImportGroup Label="PropertySheets" /> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup> |
|||
<IncludePath>$(IncludePath);../../boost_1_55_0;../../leveldb-1.15.0/include;../../cryptopp562;../../secp256k1/include</IncludePath> |
|||
<OutDir>..\build\$(ProjectName)\$(Platform)_$(Configuration)\</OutDir> |
|||
<IntDir>..\build\$(ProjectName)\$(Platform)_$(Configuration)\</IntDir> |
|||
</PropertyGroup> |
|||
<ItemDefinitionGroup> |
|||
<ClCompile> |
|||
<DisableSpecificWarnings>4100;4127;4505;4512;</DisableSpecificWarnings> |
|||
<WarningLevel>Level4</WarningLevel> |
|||
<TreatWarningAsError>true</TreatWarningAsError> |
|||
<MinimalRebuild>false</MinimalRebuild> |
|||
</ClCompile> |
|||
</ItemDefinitionGroup> |
|||
<ItemGroup /> |
|||
</Project> |
@ -1,32 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup> |
|||
<ClInclude Include="TransactionQueue.h" /> |
|||
<ClInclude Include="Trie.h" /> |
|||
<ClInclude Include="vector_ref.h" /> |
|||
<ClInclude Include="AddressState.h" /> |
|||
<ClInclude Include="BlockChain.h" /> |
|||
<ClInclude Include="BlockInfo.h" /> |
|||
<ClInclude Include="Common.h" /> |
|||
<ClInclude Include="Dagger.h" /> |
|||
<ClInclude Include="Exceptions.h" /> |
|||
<ClInclude Include="Instruction.h" /> |
|||
<ClInclude Include="PeerNetwork.h" /> |
|||
<ClInclude Include="RLP.h" /> |
|||
<ClInclude Include="State.h" /> |
|||
<ClInclude Include="Transaction.h" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="Trie.cpp" /> |
|||
<ClCompile Include="AddressState.cpp" /> |
|||
<ClCompile Include="BlockChain.cpp" /> |
|||
<ClCompile Include="BlockInfo.cpp" /> |
|||
<ClCompile Include="Common.cpp" /> |
|||
<ClCompile Include="Dagger.cpp" /> |
|||
<ClCompile Include="PeerNetwork.cpp" /> |
|||
<ClCompile Include="RLP.cpp" /> |
|||
<ClCompile Include="State.cpp" /> |
|||
<ClCompile Include="Transaction.cpp" /> |
|||
<ClCompile Include="TransactionQueue.cpp" /> |
|||
</ItemGroup> |
|||
</Project> |
@ -0,0 +1,212 @@ |
|||
// Copyright (c) 2014 Tim Hughes
|
|||
// Distributed under the MIT/X11 software license, see the accompanying
|
|||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|||
|
|||
#ifndef _SECP256K1_NUM_REPR_IMPL_H_ |
|||
#define _SECP256K1_NUM_REPR_IMPL_H_ |
|||
#include <assert.h> |
|||
#include <boost/math/common_factor.hpp> |
|||
|
|||
void static secp256k1_num_init(secp256k1_num_t *r) |
|||
{ |
|||
*r = 0; |
|||
} |
|||
|
|||
void static secp256k1_num_free(secp256k1_num_t*) |
|||
{ |
|||
} |
|||
|
|||
void static secp256k1_num_copy(secp256k1_num_t *r, const secp256k1_num_t *a) |
|||
{ |
|||
*r = *a; |
|||
} |
|||
|
|||
int static secp256k1_num_bits(const secp256k1_num_t *a) |
|||
{ |
|||
int numLimbs = a->backend().size(); |
|||
int ret = (numLimbs - 1) * a->backend().limb_bits; |
|||
for (auto x = a->backend().limbs()[numLimbs - 1]; x; x >>= 1, ++ret); |
|||
return ret; |
|||
} |
|||
|
|||
void static secp256k1_num_get_bin(unsigned char *r, unsigned int rlen, const secp256k1_num_t *a) |
|||
{ |
|||
for (auto n = abs(*a); n; n >>= 8) |
|||
{ |
|||
assert(rlen > 0); // out of space?
|
|||
r[--rlen] = n.convert_to<unsigned char>(); |
|||
} |
|||
memset(r, 0, rlen); |
|||
} |
|||
|
|||
void static secp256k1_num_set_bin(secp256k1_num_t *r, const unsigned char *a, unsigned int alen) |
|||
{ |
|||
*r = 0; |
|||
for (unsigned int i = 0; i != alen; ++i) |
|||
{ |
|||
*r <<= 8; |
|||
*r |= a[i]; |
|||
} |
|||
} |
|||
|
|||
void static secp256k1_num_set_int(secp256k1_num_t *r, int a) |
|||
{ |
|||
*r = a; |
|||
} |
|||
|
|||
void static secp256k1_num_mod(secp256k1_num_t *r, const secp256k1_num_t *m) |
|||
{ |
|||
*r %= *m; |
|||
} |
|||
|
|||
void static secp256k1_num_mod_inverse(secp256k1_num_t *r, const secp256k1_num_t *n, const secp256k1_num_t *m) |
|||
{ |
|||
// http://rosettacode.org/wiki/Modular_inverse
|
|||
secp256k1_num_t a = *n; |
|||
secp256k1_num_t b = *m; |
|||
secp256k1_num_t x0 = 0; |
|||
secp256k1_num_t x1 = 1; |
|||
assert(*n > 0); |
|||
assert(*m > 0); |
|||
if (b != 1) |
|||
{ |
|||
secp256k1_num_t q, t; |
|||
while (a > 1) |
|||
{ |
|||
boost::multiprecision::divide_qr(a, b, q, t); |
|||
a = b; b = t; |
|||
|
|||
t = x1 - q * x0; |
|||
x1 = x0; x0 = t; |
|||
} |
|||
if (x1 < 0) |
|||
{ |
|||
x1 += *m; |
|||
} |
|||
} |
|||
*r = x1; |
|||
|
|||
// check result
|
|||
#ifdef _DEBUG |
|||
{ |
|||
typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<512, 512, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void>> bignum; |
|||
bignum br = *r, bn = *n, bm = *m; |
|||
assert((((bn) * (br)) % bm) == 1); |
|||
} |
|||
#endif |
|||
} |
|||
|
|||
int static secp256k1_num_is_zero(const secp256k1_num_t *a) |
|||
{ |
|||
return a->is_zero(); |
|||
} |
|||
|
|||
int static secp256k1_num_is_odd(const secp256k1_num_t *a) |
|||
{ |
|||
return boost::multiprecision::bit_test(*a, 0); |
|||
} |
|||
|
|||
int static secp256k1_num_is_neg(const secp256k1_num_t *a) |
|||
{ |
|||
return a->backend().isneg(); |
|||
} |
|||
|
|||
int static secp256k1_num_cmp(const secp256k1_num_t *a, const secp256k1_num_t *b) |
|||
{ |
|||
return a->backend().compare_unsigned(b->backend()); |
|||
} |
|||
|
|||
void static secp256k1_num_add(secp256k1_num_t *r, const secp256k1_num_t *a, const secp256k1_num_t *b) |
|||
{ |
|||
*r = (*a) + (*b); |
|||
} |
|||
|
|||
void static secp256k1_num_sub(secp256k1_num_t *r, const secp256k1_num_t *a, const secp256k1_num_t *b) |
|||
{ |
|||
*r = (*a) - (*b); |
|||
} |
|||
|
|||
void static secp256k1_num_mul(secp256k1_num_t *r, const secp256k1_num_t *a, const secp256k1_num_t *b) |
|||
{ |
|||
*r = (*a) * (*b); |
|||
} |
|||
|
|||
void static secp256k1_num_div(secp256k1_num_t *r, const secp256k1_num_t *a, const secp256k1_num_t *b) |
|||
{ |
|||
*r = (*a) / (*b); |
|||
} |
|||
|
|||
void static secp256k1_num_mod_mul(secp256k1_num_t *r, const secp256k1_num_t *a, const secp256k1_num_t *b, const secp256k1_num_t *m) |
|||
{ |
|||
secp256k1_num_mul(r, a, b); |
|||
secp256k1_num_mod(r, m); |
|||
} |
|||
|
|||
int static secp256k1_num_shift(secp256k1_num_t *r, int bits) |
|||
{ |
|||
unsigned ret = r->convert_to<unsigned>() & ((1 << bits) - 1); |
|||
*r >>= bits; |
|||
return ret; |
|||
} |
|||
|
|||
int static secp256k1_num_get_bit(const secp256k1_num_t *a, int pos) |
|||
{ |
|||
return boost::multiprecision::bit_test(*a, pos); |
|||
} |
|||
|
|||
void static secp256k1_num_inc(secp256k1_num_t *r) |
|||
{ |
|||
++*r; |
|||
} |
|||
|
|||
void static secp256k1_num_set_hex(secp256k1_num_t *r, const char *a, int alen) |
|||
{ |
|||
static const unsigned char cvt[256] = { |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 1, 2, 3, 4, 5, 6,7,8,9,0,0,0,0,0,0, |
|||
0,10,11,12,13,14,15,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0,10,11,12,13,14,15,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0, |
|||
0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,0 |
|||
}; |
|||
*r = 0; |
|||
for (int i = 0; i != alen; ++i) |
|||
{ |
|||
*r <<= 4; |
|||
*r |= cvt[a[i]]; |
|||
} |
|||
} |
|||
|
|||
void static secp256k1_num_get_hex(char *r, int rlen, const secp256k1_num_t *a) |
|||
{ |
|||
static const unsigned char cvt[16] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}; |
|||
for (auto n = *a; n; n >>= 4) |
|||
{ |
|||
assert(rlen > 0); // out of space?
|
|||
r[--rlen] = cvt[n.convert_to<unsigned char>() & 15]; |
|||
} |
|||
memset(r, '0', rlen); |
|||
} |
|||
|
|||
void static secp256k1_num_split(secp256k1_num_t *rl, secp256k1_num_t *rh, const secp256k1_num_t *a, int bits) |
|||
{ |
|||
*rl = *a & ((secp256k1_num_t(1) << bits) - 1); |
|||
*rh = *a >> bits; |
|||
} |
|||
|
|||
void static secp256k1_num_negate(secp256k1_num_t *r) |
|||
{ |
|||
r->backend().negate(); |
|||
} |
|||
|
|||
#endif |
@ -0,0 +1,12 @@ |
|||
// Copyright (c) 2013 Pieter Wuille
|
|||
// Distributed under the MIT/X11 software license, see the accompanying
|
|||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|||
|
|||
#ifndef _SECP256K1_NUM_REPR_ |
|||
#define _SECP256K1_NUM_REPR_ |
|||
|
|||
#include <boost/multiprecision/cpp_int.hpp> |
|||
|
|||
typedef boost::multiprecision::number<boost::multiprecision::cpp_int_backend<512, 512, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void>> secp256k1_num_t ; |
|||
|
|||
#endif |
@ -0,0 +1,470 @@ |
|||
// Copyright (c) 2013 Pieter Wuille
|
|||
// Distributed under the MIT/X11 software license, see the accompanying
|
|||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|||
|
|||
#if defined HAVE_CONFIG_H |
|||
#include "libsecp256k1-config.h" |
|||
#endif |
|||
|
|||
#include <assert.h> |
|||
#include <stdio.h> |
|||
|
|||
#include "impl/num.h" |
|||
#include "impl/field.h" |
|||
#include "impl/group.h" |
|||
#include "impl/ecmult.h" |
|||
#include "impl/ecdsa.h" |
|||
#include "impl/util.h" |
|||
|
|||
#ifdef ENABLE_OPENSSL_TESTS |
|||
#include "openssl/bn.h" |
|||
#include "openssl/ec.h" |
|||
#include "openssl/ecdsa.h" |
|||
#include "openssl/obj_mac.h" |
|||
#endif |
|||
|
|||
static int count = 100; |
|||
|
|||
/***** NUM TESTS *****/ |
|||
|
|||
void random_num_negate(secp256k1_num_t *num) { |
|||
if (secp256k1_rand32() & 1) |
|||
secp256k1_num_negate(num); |
|||
} |
|||
|
|||
void random_num_order_test(secp256k1_num_t *num) { |
|||
do { |
|||
unsigned char b32[32]; |
|||
secp256k1_rand256_test(b32); |
|||
secp256k1_num_set_bin(num, b32, 32); |
|||
if (secp256k1_num_is_zero(num)) |
|||
continue; |
|||
if (secp256k1_num_cmp(num, &secp256k1_ge_consts->order) >= 0) |
|||
continue; |
|||
break; |
|||
} while(1); |
|||
} |
|||
|
|||
void random_num_order(secp256k1_num_t *num) { |
|||
do { |
|||
unsigned char b32[32]; |
|||
secp256k1_rand256(b32); |
|||
secp256k1_num_set_bin(num, b32, 32); |
|||
if (secp256k1_num_is_zero(num)) |
|||
continue; |
|||
if (secp256k1_num_cmp(num, &secp256k1_ge_consts->order) >= 0) |
|||
continue; |
|||
break; |
|||
} while(1); |
|||
} |
|||
|
|||
void test_num_copy_inc_cmp() { |
|||
secp256k1_num_t n1,n2; |
|||
secp256k1_num_init(&n1); |
|||
secp256k1_num_init(&n2); |
|||
random_num_order(&n1); |
|||
secp256k1_num_copy(&n2, &n1); |
|||
assert(secp256k1_num_cmp(&n1, &n2) == 0); |
|||
assert(secp256k1_num_cmp(&n2, &n1) == 0); |
|||
secp256k1_num_inc(&n2); |
|||
assert(secp256k1_num_cmp(&n1, &n2) != 0); |
|||
assert(secp256k1_num_cmp(&n2, &n1) != 0); |
|||
secp256k1_num_free(&n1); |
|||
secp256k1_num_free(&n2); |
|||
} |
|||
|
|||
|
|||
void test_num_get_set_hex() { |
|||
secp256k1_num_t n1,n2; |
|||
secp256k1_num_init(&n1); |
|||
secp256k1_num_init(&n2); |
|||
random_num_order_test(&n1); |
|||
char c[64]; |
|||
secp256k1_num_get_hex(c, 64, &n1); |
|||
secp256k1_num_set_hex(&n2, c, 64); |
|||
assert(secp256k1_num_cmp(&n1, &n2) == 0); |
|||
for (int i=0; i<64; i++) { |
|||
// check whether the lower 4 bits correspond to the last hex character
|
|||
int low1 = secp256k1_num_shift(&n1, 4); |
|||
int lowh = c[63]; |
|||
int low2 = (lowh>>6)*9+(lowh-'0')&15; |
|||
assert(low1 == low2); |
|||
// shift bits off the hex representation, and compare
|
|||
memmove(c+1, c, 63); |
|||
c[0] = '0'; |
|||
secp256k1_num_set_hex(&n2, c, 64); |
|||
assert(secp256k1_num_cmp(&n1, &n2) == 0); |
|||
} |
|||
secp256k1_num_free(&n2); |
|||
secp256k1_num_free(&n1); |
|||
} |
|||
|
|||
void test_num_get_set_bin() { |
|||
secp256k1_num_t n1,n2; |
|||
secp256k1_num_init(&n1); |
|||
secp256k1_num_init(&n2); |
|||
random_num_order_test(&n1); |
|||
unsigned char c[32]; |
|||
secp256k1_num_get_bin(c, 32, &n1); |
|||
secp256k1_num_set_bin(&n2, c, 32); |
|||
assert(secp256k1_num_cmp(&n1, &n2) == 0); |
|||
for (int i=0; i<32; i++) { |
|||
// check whether the lower 8 bits correspond to the last byte
|
|||
int low1 = secp256k1_num_shift(&n1, 8); |
|||
int low2 = c[31]; |
|||
assert(low1 == low2); |
|||
// shift bits off the byte representation, and compare
|
|||
memmove(c+1, c, 31); |
|||
c[0] = 0; |
|||
secp256k1_num_set_bin(&n2, c, 32); |
|||
assert(secp256k1_num_cmp(&n1, &n2) == 0); |
|||
} |
|||
secp256k1_num_free(&n2); |
|||
secp256k1_num_free(&n1); |
|||
} |
|||
|
|||
void run_num_int() { |
|||
secp256k1_num_t n1; |
|||
secp256k1_num_init(&n1); |
|||
for (int i=-255; i<256; i++) { |
|||
unsigned char c1[3] = {}; |
|||
c1[2] = abs(i); |
|||
unsigned char c2[3] = {0x11,0x22,0x33}; |
|||
secp256k1_num_set_int(&n1, i); |
|||
secp256k1_num_get_bin(c2, 3, &n1); |
|||
assert(memcmp(c1, c2, 3) == 0); |
|||
} |
|||
secp256k1_num_free(&n1); |
|||
} |
|||
|
|||
void test_num_negate() { |
|||
secp256k1_num_t n1; |
|||
secp256k1_num_t n2; |
|||
secp256k1_num_init(&n1); |
|||
secp256k1_num_init(&n2); |
|||
random_num_order_test(&n1); // n1 = R
|
|||
random_num_negate(&n1); |
|||
secp256k1_num_copy(&n2, &n1); // n2 = R
|
|||
secp256k1_num_sub(&n1, &n2, &n1); // n1 = n2-n1 = 0
|
|||
assert(secp256k1_num_is_zero(&n1)); |
|||
secp256k1_num_copy(&n1, &n2); // n1 = R
|
|||
secp256k1_num_negate(&n1); // n1 = -R
|
|||
assert(!secp256k1_num_is_zero(&n1)); |
|||
secp256k1_num_add(&n1, &n2, &n1); // n1 = n2+n1 = 0
|
|||
assert(secp256k1_num_is_zero(&n1)); |
|||
secp256k1_num_copy(&n1, &n2); // n1 = R
|
|||
secp256k1_num_negate(&n1); // n1 = -R
|
|||
assert(secp256k1_num_is_neg(&n1) != secp256k1_num_is_neg(&n2)); |
|||
secp256k1_num_negate(&n1); // n1 = R
|
|||
assert(secp256k1_num_cmp(&n1, &n2) == 0); |
|||
assert(secp256k1_num_is_neg(&n1) == secp256k1_num_is_neg(&n2)); |
|||
secp256k1_num_free(&n2); |
|||
secp256k1_num_free(&n1); |
|||
} |
|||
|
|||
void test_num_add_sub() { |
|||
secp256k1_num_t n1; |
|||
secp256k1_num_t n2; |
|||
secp256k1_num_init(&n1); |
|||
secp256k1_num_init(&n2); |
|||
random_num_order_test(&n1); // n1 = R1
|
|||
random_num_negate(&n1); |
|||
random_num_order_test(&n2); // n2 = R2
|
|||
random_num_negate(&n2); |
|||
secp256k1_num_t n1p2, n2p1, n1m2, n2m1; |
|||
secp256k1_num_init(&n1p2); |
|||
secp256k1_num_init(&n2p1); |
|||
secp256k1_num_init(&n1m2); |
|||
secp256k1_num_init(&n2m1); |
|||
secp256k1_num_add(&n1p2, &n1, &n2); // n1p2 = R1 + R2
|
|||
secp256k1_num_add(&n2p1, &n2, &n1); // n2p1 = R2 + R1
|
|||
secp256k1_num_sub(&n1m2, &n1, &n2); // n1m2 = R1 - R2
|
|||
secp256k1_num_sub(&n2m1, &n2, &n1); // n2m1 = R2 - R1
|
|||
assert(secp256k1_num_cmp(&n1p2, &n2p1) == 0); |
|||
assert(secp256k1_num_cmp(&n1p2, &n1m2) != 0); |
|||
secp256k1_num_negate(&n2m1); // n2m1 = -R2 + R1
|
|||
assert(secp256k1_num_cmp(&n2m1, &n1m2) == 0); |
|||
assert(secp256k1_num_cmp(&n2m1, &n1) != 0); |
|||
secp256k1_num_add(&n2m1, &n2m1, &n2); // n2m1 = -R2 + R1 + R2 = R1
|
|||
assert(secp256k1_num_cmp(&n2m1, &n1) == 0); |
|||
assert(secp256k1_num_cmp(&n2p1, &n1) != 0); |
|||
secp256k1_num_sub(&n2p1, &n2p1, &n2); // n2p1 = R2 + R1 - R2 = R1
|
|||
assert(secp256k1_num_cmp(&n2p1, &n1) == 0); |
|||
secp256k1_num_free(&n2m1); |
|||
secp256k1_num_free(&n1m2); |
|||
secp256k1_num_free(&n2p1); |
|||
secp256k1_num_free(&n1p2); |
|||
secp256k1_num_free(&n2); |
|||
secp256k1_num_free(&n1); |
|||
} |
|||
|
|||
void run_num_smalltests() { |
|||
for (int i=0; i<100*count; i++) { |
|||
test_num_copy_inc_cmp(); |
|||
test_num_get_set_hex(); |
|||
test_num_get_set_bin(); |
|||
test_num_negate(); |
|||
test_num_add_sub(); |
|||
} |
|||
run_num_int(); |
|||
} |
|||
|
|||
void run_ecmult_chain() { |
|||
// random starting point A (on the curve)
|
|||
secp256k1_fe_t ax; secp256k1_fe_set_hex(&ax, "8b30bbe9ae2a990696b22f670709dff3727fd8bc04d3362c6c7bf458e2846004", 64); |
|||
secp256k1_fe_t ay; secp256k1_fe_set_hex(&ay, "a357ae915c4a65281309edf20504740f0eb3343990216b4f81063cb65f2f7e0f", 64); |
|||
secp256k1_gej_t a; secp256k1_gej_set_xy(&a, &ax, &ay); |
|||
// two random initial factors xn and gn
|
|||
secp256k1_num_t xn; |
|||
secp256k1_num_init(&xn); |
|||
secp256k1_num_set_hex(&xn, "84cc5452f7fde1edb4d38a8ce9b1b84ccef31f146e569be9705d357a42985407", 64); |
|||
secp256k1_num_t gn; |
|||
secp256k1_num_init(&gn); |
|||
secp256k1_num_set_hex(&gn, "a1e58d22553dcd42b23980625d4c57a96e9323d42b3152e5ca2c3990edc7c9de", 64); |
|||
// two small multipliers to be applied to xn and gn in every iteration:
|
|||
secp256k1_num_t xf; |
|||
secp256k1_num_init(&xf); |
|||
secp256k1_num_set_hex(&xf, "1337", 4); |
|||
secp256k1_num_t gf; |
|||
secp256k1_num_init(&gf); |
|||
secp256k1_num_set_hex(&gf, "7113", 4); |
|||
// accumulators with the resulting coefficients to A and G
|
|||
secp256k1_num_t ae; |
|||
secp256k1_num_init(&ae); |
|||
secp256k1_num_set_int(&ae, 1); |
|||
secp256k1_num_t ge; |
|||
secp256k1_num_init(&ge); |
|||
secp256k1_num_set_int(&ge, 0); |
|||
// the point being computed
|
|||
secp256k1_gej_t x = a; |
|||
const secp256k1_num_t *order = &secp256k1_ge_consts->order; |
|||
for (int i=0; i<200*count; i++) { |
|||
// in each iteration, compute X = xn*X + gn*G;
|
|||
secp256k1_ecmult(&x, &x, &xn, &gn); |
|||
// also compute ae and ge: the actual accumulated factors for A and G
|
|||
// if X was (ae*A+ge*G), xn*X + gn*G results in (xn*ae*A + (xn*ge+gn)*G)
|
|||
secp256k1_num_mod_mul(&ae, &ae, &xn, order); |
|||
secp256k1_num_mod_mul(&ge, &ge, &xn, order); |
|||
secp256k1_num_add(&ge, &ge, &gn); |
|||
secp256k1_num_mod(&ge, order); |
|||
// modify xn and gn
|
|||
secp256k1_num_mod_mul(&xn, &xn, &xf, order); |
|||
secp256k1_num_mod_mul(&gn, &gn, &gf, order); |
|||
|
|||
// verify
|
|||
if (i == 19999) { |
|||
char res[132]; int resl = 132; |
|||
secp256k1_gej_get_hex(res, &resl, &x); |
|||
assert(strcmp(res, "(D6E96687F9B10D092A6F35439D86CEBEA4535D0D409F53586440BD74B933E830,B95CBCA2C77DA786539BE8FD53354D2D3B4F566AE658045407ED6015EE1B2A88)") == 0); |
|||
} |
|||
} |
|||
// redo the computation, but directly with the resulting ae and ge coefficients:
|
|||
secp256k1_gej_t x2; secp256k1_ecmult(&x2, &a, &ae, &ge); |
|||
char res[132]; int resl = 132; |
|||
char res2[132]; int resl2 = 132; |
|||
secp256k1_gej_get_hex(res, &resl, &x); |
|||
secp256k1_gej_get_hex(res2, &resl2, &x2); |
|||
assert(strcmp(res, res2) == 0); |
|||
assert(strlen(res) == 131); |
|||
secp256k1_num_free(&xn); |
|||
secp256k1_num_free(&gn); |
|||
secp256k1_num_free(&xf); |
|||
secp256k1_num_free(&gf); |
|||
secp256k1_num_free(&ae); |
|||
secp256k1_num_free(&ge); |
|||
} |
|||
|
|||
void test_point_times_order(const secp256k1_gej_t *point) { |
|||
// either the point is not on the curve, or multiplying it by the order results in O
|
|||
if (!secp256k1_gej_is_valid(point)) |
|||
return; |
|||
|
|||
const secp256k1_num_t *order = &secp256k1_ge_consts->order; |
|||
secp256k1_num_t zero; |
|||
secp256k1_num_init(&zero); |
|||
secp256k1_num_set_int(&zero, 0); |
|||
secp256k1_gej_t res; |
|||
secp256k1_ecmult(&res, point, order, order); // calc res = order * point + order * G;
|
|||
assert(secp256k1_gej_is_infinity(&res)); |
|||
secp256k1_num_free(&zero); |
|||
} |
|||
|
|||
void run_point_times_order() { |
|||
secp256k1_fe_t x; secp256k1_fe_set_hex(&x, "02", 2); |
|||
for (int i=0; i<500; i++) { |
|||
secp256k1_ge_t p; secp256k1_ge_set_xo(&p, &x, 1); |
|||
secp256k1_gej_t j; secp256k1_gej_set_ge(&j, &p); |
|||
test_point_times_order(&j); |
|||
secp256k1_fe_sqr(&x, &x); |
|||
} |
|||
char c[65]; int cl=65; |
|||
secp256k1_fe_get_hex(c, &cl, &x); |
|||
assert(strcmp(c, "7603CB59B0EF6C63FE6084792A0C378CDB3233A80F8A9A09A877DEAD31B38C45") == 0); |
|||
} |
|||
|
|||
void test_wnaf(const secp256k1_num_t *number, int w) { |
|||
secp256k1_num_t x, two, t; |
|||
secp256k1_num_init(&x); |
|||
secp256k1_num_init(&two); |
|||
secp256k1_num_init(&t); |
|||
secp256k1_num_set_int(&x, 0); |
|||
secp256k1_num_set_int(&two, 2); |
|||
int wnaf[257]; |
|||
int bits = secp256k1_ecmult_wnaf(wnaf, number, w); |
|||
int zeroes = -1; |
|||
for (int i=bits-1; i>=0; i--) { |
|||
secp256k1_num_mul(&x, &x, &two); |
|||
int v = wnaf[i]; |
|||
if (v) { |
|||
assert(zeroes == -1 || zeroes >= w-1); // check that distance between non-zero elements is at least w-1
|
|||
zeroes=0; |
|||
assert((v & 1) == 1); // check non-zero elements are odd
|
|||
assert(v <= (1 << (w-1)) - 1); // check range below
|
|||
assert(v >= -(1 << (w-1)) - 1); // check range above
|
|||
} else { |
|||
assert(zeroes != -1); // check that no unnecessary zero padding exists
|
|||
zeroes++; |
|||
} |
|||
secp256k1_num_set_int(&t, v); |
|||
secp256k1_num_add(&x, &x, &t); |
|||
} |
|||
assert(secp256k1_num_cmp(&x, number) == 0); // check that wnaf represents number
|
|||
secp256k1_num_free(&x); |
|||
secp256k1_num_free(&two); |
|||
secp256k1_num_free(&t); |
|||
} |
|||
|
|||
void run_wnaf() { |
|||
secp256k1_num_t n; |
|||
secp256k1_num_init(&n); |
|||
for (int i=0; i<count; i++) { |
|||
random_num_order(&n); |
|||
if (i % 1) |
|||
secp256k1_num_negate(&n); |
|||
test_wnaf(&n, 4+(i%10)); |
|||
} |
|||
secp256k1_num_free(&n); |
|||
} |
|||
|
|||
void random_sign(secp256k1_ecdsa_sig_t *sig, const secp256k1_num_t *key, const secp256k1_num_t *msg, int *recid) { |
|||
secp256k1_num_t nonce; |
|||
secp256k1_num_init(&nonce); |
|||
do { |
|||
random_num_order_test(&nonce); |
|||
} while(!secp256k1_ecdsa_sig_sign(sig, key, msg, &nonce, recid)); |
|||
secp256k1_num_free(&nonce); |
|||
} |
|||
|
|||
void test_ecdsa_sign_verify() { |
|||
const secp256k1_ge_consts_t *c = secp256k1_ge_consts; |
|||
secp256k1_num_t msg, key; |
|||
secp256k1_num_init(&msg); |
|||
random_num_order_test(&msg); |
|||
secp256k1_num_init(&key); |
|||
random_num_order_test(&key); |
|||
secp256k1_gej_t pubj; secp256k1_ecmult_gen(&pubj, &key); |
|||
secp256k1_ge_t pub; secp256k1_ge_set_gej(&pub, &pubj); |
|||
secp256k1_ecdsa_sig_t sig; |
|||
secp256k1_ecdsa_sig_init(&sig); |
|||
random_sign(&sig, &key, &msg, NULL); |
|||
assert(secp256k1_ecdsa_sig_verify(&sig, &pub, &msg)); |
|||
secp256k1_num_inc(&msg); |
|||
assert(!secp256k1_ecdsa_sig_verify(&sig, &pub, &msg)); |
|||
secp256k1_ecdsa_sig_free(&sig); |
|||
secp256k1_num_free(&msg); |
|||
secp256k1_num_free(&key); |
|||
} |
|||
|
|||
void run_ecdsa_sign_verify() { |
|||
for (int i=0; i<10*count; i++) { |
|||
test_ecdsa_sign_verify(); |
|||
} |
|||
} |
|||
|
|||
#ifdef ENABLE_OPENSSL_TESTS |
|||
EC_KEY *get_openssl_key(const secp256k1_num_t *key) { |
|||
unsigned char privkey[300]; |
|||
int privkeylen; |
|||
int compr = secp256k1_rand32() & 1; |
|||
const unsigned char* pbegin = privkey; |
|||
EC_KEY *ec_key = EC_KEY_new_by_curve_name(NID_secp256k1); |
|||
assert(secp256k1_ecdsa_privkey_serialize(privkey, &privkeylen, key, compr)); |
|||
assert(d2i_ECPrivateKey(&ec_key, &pbegin, privkeylen)); |
|||
assert(EC_KEY_check_key(ec_key)); |
|||
return ec_key; |
|||
} |
|||
|
|||
void test_ecdsa_openssl() { |
|||
const secp256k1_ge_consts_t *c = secp256k1_ge_consts; |
|||
secp256k1_num_t key, msg; |
|||
secp256k1_num_init(&msg); |
|||
unsigned char message[32]; |
|||
secp256k1_rand256_test(message); |
|||
secp256k1_num_set_bin(&msg, message, 32); |
|||
secp256k1_num_init(&key); |
|||
random_num_order_test(&key); |
|||
secp256k1_gej_t qj; |
|||
secp256k1_ecmult_gen(&qj, &key); |
|||
secp256k1_ge_t q; |
|||
secp256k1_ge_set_gej(&q, &qj); |
|||
EC_KEY *ec_key = get_openssl_key(&key); |
|||
assert(ec_key); |
|||
unsigned char signature[80]; |
|||
int sigsize = 80; |
|||
assert(ECDSA_sign(0, message, sizeof(message), signature, &sigsize, ec_key)); |
|||
secp256k1_ecdsa_sig_t sig; |
|||
secp256k1_ecdsa_sig_init(&sig); |
|||
assert(secp256k1_ecdsa_sig_parse(&sig, signature, sigsize)); |
|||
assert(secp256k1_ecdsa_sig_verify(&sig, &q, &msg)); |
|||
secp256k1_num_inc(&sig.r); |
|||
assert(!secp256k1_ecdsa_sig_verify(&sig, &q, &msg)); |
|||
|
|||
random_sign(&sig, &key, &msg, NULL); |
|||
sigsize = 80; |
|||
assert(secp256k1_ecdsa_sig_serialize(signature, &sigsize, &sig)); |
|||
assert(ECDSA_verify(0, message, sizeof(message), signature, sigsize, ec_key) == 1); |
|||
|
|||
secp256k1_ecdsa_sig_free(&sig); |
|||
EC_KEY_free(ec_key); |
|||
secp256k1_num_free(&key); |
|||
secp256k1_num_free(&msg); |
|||
} |
|||
|
|||
void run_ecdsa_openssl() { |
|||
for (int i=0; i<10*count; i++) { |
|||
test_ecdsa_openssl(); |
|||
} |
|||
} |
|||
#endif |
|||
|
|||
int main(int argc, char **argv) { |
|||
if (argc > 1) |
|||
count = strtol(argv[1], NULL, 0)*47; |
|||
|
|||
printf("test count = %i\n", count); |
|||
|
|||
// initialize
|
|||
secp256k1_fe_start(); |
|||
secp256k1_ge_start(); |
|||
secp256k1_ecmult_start(); |
|||
|
|||
// num tests
|
|||
run_num_smalltests(); |
|||
|
|||
// ecmult tests
|
|||
run_wnaf(); |
|||
run_point_times_order(); |
|||
run_ecmult_chain(); |
|||
|
|||
// ecdsa tests
|
|||
run_ecdsa_sign_verify(); |
|||
#ifdef ENABLE_OPENSSL_TESTS |
|||
run_ecdsa_openssl(); |
|||
#endif |
|||
|
|||
// shutdown
|
|||
secp256k1_ecmult_stop(); |
|||
secp256k1_ge_stop(); |
|||
secp256k1_fe_stop(); |
|||
return 0; |
|||
} |
@ -0,0 +1,111 @@ |
|||
|
|||
Microsoft Visual Studio Solution File, Format Version 12.00 |
|||
# Visual Studio Express 2013 for Windows Desktop |
|||
VisualStudioVersion = 12.0.21005.1 |
|||
MinimumVisualStudioVersion = 10.0.40219.1 |
|||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libs", "Libs", "{988F2383-FA1D-408B-BCF6-C0EE7AB0A560}" |
|||
EndProject |
|||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{6838FA95-01BF-4FF7-914C-FC209B81406E}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibEthereum", "LibEthereum.vcxproj", "{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibLevelDB", "LibLevelDB.vcxproj", "{27014763-955D-486B-9BA7-69872192E6F4}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibSecp256k1", "LibSecp256k1.vcxproj", "{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Ethereum", "Ethereum.vcxproj", "{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestSecp256k1", "TestSecp256k1.vcxproj", "{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestEthereum", "TestEthereum.vcxproj", "{3F3E389B-88DE-41D5-A73B-4F6036E18B36}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibCryptoPP", "LibCryptoPP.vcxproj", "{1CC213A4-3482-4211-B47B-172E90DAC7DE}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibMiniUPnPc", "LibMiniUPnPc.vcxproj", "{1B1CA20E-39C3-4D9B-AC37-3783048E6672}" |
|||
EndProject |
|||
Global |
|||
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
|||
Debug|Win32 = Debug|Win32 |
|||
Debug|x64 = Debug|x64 |
|||
Release|Win32 = Release|Win32 |
|||
Release|x64 = Release|x64 |
|||
EndGlobalSection |
|||
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Debug|x64.Build.0 = Debug|x64 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Release|Win32.Build.0 = Release|Win32 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Release|x64.ActiveCfg = Release|x64 |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}.Release|x64.Build.0 = Release|x64 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Debug|x64.Build.0 = Debug|x64 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Release|Win32.Build.0 = Release|Win32 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Release|x64.ActiveCfg = Release|x64 |
|||
{27014763-955D-486B-9BA7-69872192E6F4}.Release|x64.Build.0 = Release|x64 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Debug|x64.Build.0 = Debug|x64 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Release|Win32.Build.0 = Release|Win32 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Release|x64.ActiveCfg = Release|x64 |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA}.Release|x64.Build.0 = Release|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Debug|x64.Build.0 = Debug|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|Win32.Build.0 = Release|Win32 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|x64.ActiveCfg = Release|x64 |
|||
{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}.Release|x64.Build.0 = Release|x64 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Debug|x64.Build.0 = Debug|x64 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Release|Win32.Build.0 = Release|Win32 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Release|x64.ActiveCfg = Release|x64 |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24}.Release|x64.Build.0 = Release|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Debug|x64.Build.0 = Debug|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|Win32.Build.0 = Release|Win32 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|x64.ActiveCfg = Release|x64 |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36}.Release|x64.Build.0 = Release|x64 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Debug|x64.Build.0 = Debug|x64 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Release|Win32.Build.0 = Release|Win32 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Release|x64.ActiveCfg = Release|x64 |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE}.Release|x64.Build.0 = Release|x64 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Debug|x64.Build.0 = Debug|x64 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Release|Win32.Build.0 = Release|Win32 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Release|x64.ActiveCfg = Release|x64 |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672}.Release|x64.Build.0 = Release|x64 |
|||
EndGlobalSection |
|||
GlobalSection(SolutionProperties) = preSolution |
|||
HideSolutionNode = FALSE |
|||
EndGlobalSection |
|||
GlobalSection(NestedProjects) = preSolution |
|||
{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F} = {988F2383-FA1D-408B-BCF6-C0EE7AB0A560} |
|||
{27014763-955D-486B-9BA7-69872192E6F4} = {988F2383-FA1D-408B-BCF6-C0EE7AB0A560} |
|||
{1E1175BB-C4A9-41D8-B2D1-9022F71D3CEA} = {988F2383-FA1D-408B-BCF6-C0EE7AB0A560} |
|||
{1CC213A4-3482-4211-B47B-172E90DAC7DE} = {988F2383-FA1D-408B-BCF6-C0EE7AB0A560} |
|||
{1B1CA20E-39C3-4D9B-AC37-3783048E6672} = {988F2383-FA1D-408B-BCF6-C0EE7AB0A560} |
|||
{3BF049F8-AF7E-4E1C-9627-3E94C887AF24} = {6838FA95-01BF-4FF7-914C-FC209B81406E} |
|||
{3F3E389B-88DE-41D5-A73B-4F6036E18B36} = {6838FA95-01BF-4FF7-914C-FC209B81406E} |
|||
EndGlobalSection |
|||
EndGlobal |
@ -0,0 +1,159 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup Label="ProjectConfigurations"> |
|||
<ProjectConfiguration Include="Debug|Win32"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Debug|x64"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|Win32"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|x64"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
</ItemGroup> |
|||
<PropertyGroup Label="Globals"> |
|||
<Keyword>Win32Proj</Keyword> |
|||
<RootNamespace>Ethereum</RootNamespace> |
|||
<ProjectName>Ethereum</ProjectName> |
|||
<ProjectGuid>{C60C065C-2135-4B2B-AFD4-35FD7AC56B40}</ProjectGuid> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> |
|||
<ConfigurationType>Application</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> |
|||
<ConfigurationType>Application</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> |
|||
<ConfigurationType>Application</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> |
|||
<ConfigurationType>Application</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
|||
<ImportGroup Label="ExtensionSettings"> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<LinkIncremental>true</LinkIncremental> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<LinkIncremental>false</LinkIncremental> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
|||
<LinkIncremental>false</LinkIncremental> |
|||
</PropertyGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Console</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<LargeAddressAware>true</LargeAddressAware> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Console</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<StringPooling>true</StringPooling> |
|||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Console</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
<LargeAddressAware>true</LargeAddressAware> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<StringPooling>true</StringPooling> |
|||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Console</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemGroup> |
|||
<ProjectReference Include="..\windows\LibEthereum.vcxproj"> |
|||
<Project>{826e68cb-d3ee-4a8a-b540-59a8c3f38d4f}</Project> |
|||
</ProjectReference> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\eth\main.cpp" /> |
|||
</ItemGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
|||
<ImportGroup Label="ExtensionTargets"> |
|||
</ImportGroup> |
|||
</Project> |
@ -0,0 +1,176 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup Label="ProjectConfigurations"> |
|||
<ProjectConfiguration Include="Debug|Win32"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Debug|x64"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|Win32"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|x64"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\..\cryptopp\algparam.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\cpu.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\cryptlib.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\filters.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\fips140.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\iterhash.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\misc.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\mqueue.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\queue.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\rdtables.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\rijndael.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\ripemd.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\sha.cpp" /> |
|||
<ClCompile Include="..\..\cryptopp\sha3.cpp" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\..\cryptopp\algparam.h" /> |
|||
<ClInclude Include="..\..\cryptopp\cpu.h" /> |
|||
<ClInclude Include="..\..\cryptopp\cryptlib.h" /> |
|||
<ClInclude Include="..\..\cryptopp\filters.h" /> |
|||
<ClInclude Include="..\..\cryptopp\fips140.h" /> |
|||
<ClInclude Include="..\..\cryptopp\iterhash.h" /> |
|||
<ClInclude Include="..\..\cryptopp\misc.h" /> |
|||
<ClInclude Include="..\..\cryptopp\mqueue.h" /> |
|||
<ClInclude Include="..\..\cryptopp\queue.h" /> |
|||
<ClInclude Include="..\..\cryptopp\rijndael.h" /> |
|||
<ClInclude Include="..\..\cryptopp\ripemd.h" /> |
|||
<ClInclude Include="..\..\cryptopp\sha.h" /> |
|||
<ClInclude Include="..\..\cryptopp\sha3.h" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<CustomBuild Include="..\..\cryptopp\x64dll.asm"> |
|||
<FileType>Document</FileType> |
|||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ml64.exe /c /nologo /Fo"$(IntDir)x64dll.obj" /Zi "%(FullPath)"</Command> |
|||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ml64.exe /c /nologo /Fo"$(IntDir)x64dll.obj" /Zi "%(FullPath)"</Command> |
|||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)x64dll.obj</Outputs> |
|||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)x64dll.obj</Outputs> |
|||
</CustomBuild> |
|||
</ItemGroup> |
|||
<PropertyGroup Label="Globals"> |
|||
<Keyword>Win32Proj</Keyword> |
|||
<RootNamespace>LibCryptoPP</RootNamespace> |
|||
<ProjectGuid>{1CC213A4-3482-4211-B47B-172E90DAC7DE}</ProjectGuid> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
|||
<ImportGroup Label="ExtensionSettings"> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<DisableSpecificWarnings>4189;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<DisableSpecificWarnings>4189;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<DisableSpecificWarnings>4189;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<DisableSpecificWarnings>4189;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
|||
<ImportGroup Label="ExtensionTargets"> |
|||
</ImportGroup> |
|||
</Project> |
@ -0,0 +1,24 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ImportGroup Label="PropertySheets" /> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup> |
|||
<OutDir>..\..\build\$(ProjectName)\$(Platform)_$(Configuration)\</OutDir> |
|||
<IntDir>..\..\build\$(ProjectName)\$(Platform)_$(Configuration)\</IntDir> |
|||
</PropertyGroup> |
|||
<ItemDefinitionGroup> |
|||
<ClCompile> |
|||
<DisableSpecificWarnings>4100;4127;4505;4512;4706</DisableSpecificWarnings> |
|||
<WarningLevel>Level4</WarningLevel> |
|||
<TreatWarningAsError>true</TreatWarningAsError> |
|||
<MinimalRebuild>false</MinimalRebuild> |
|||
<AdditionalIncludeDirectories>include/$(ProjectName);../libethereum;../../boost;../../leveldb/include;../../cryptopp;../secp256k1;../../miniupnp</AdditionalIncludeDirectories> |
|||
<PreprocessorDefinitions>STATICLIB;LEVELDB_PLATFORM_WINDOWS;USE_NUM_BOOST;USE_FIELD_10X26;USE_FIELD_INV_BUILTIN;_WIN32_WINNT=0x0501;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<RuntimeTypeInfo>true</RuntimeTypeInfo> |
|||
</ClCompile> |
|||
<Link> |
|||
<AdditionalLibraryDirectories>../../boost/stage/$(Platform)</AdditionalLibraryDirectories> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemGroup /> |
|||
</Project> |
@ -0,0 +1,197 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup Label="ProjectConfigurations"> |
|||
<ProjectConfiguration Include="Debug|Win32"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Debug|x64"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|Win32"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|x64"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\libethereum\AddressState.cpp"> |
|||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
|||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
|||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> |
|||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild> |
|||
</ClCompile> |
|||
<ClCompile Include="..\libethereum\BlockChain.cpp" /> |
|||
<ClCompile Include="..\libethereum\BlockInfo.cpp" /> |
|||
<ClCompile Include="..\libethereum\Client.cpp" /> |
|||
<ClCompile Include="..\libethereum\Common.cpp" /> |
|||
<ClCompile Include="..\libethereum\Dagger.cpp" /> |
|||
<ClCompile Include="..\libethereum\Defaults.cpp" /> |
|||
<ClCompile Include="..\libethereum\FileSystem.cpp" /> |
|||
<ClCompile Include="..\libethereum\Instruction.cpp" /> |
|||
<ClCompile Include="..\libethereum\MemTrie.cpp" /> |
|||
<ClCompile Include="..\libethereum\PeerNetwork.cpp" /> |
|||
<ClCompile Include="..\libethereum\RLP.cpp" /> |
|||
<ClCompile Include="..\libethereum\State.cpp" /> |
|||
<ClCompile Include="..\libethereum\Transaction.cpp" /> |
|||
<ClCompile Include="..\libethereum\TransactionQueue.cpp" /> |
|||
<ClCompile Include="..\libethereum\TrieCommon.cpp" /> |
|||
<ClCompile Include="..\libethereum\TrieDB.cpp" /> |
|||
<ClCompile Include="..\libethereum\TrieHash.cpp" /> |
|||
<ClCompile Include="..\libethereum\UPnP.cpp" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\libethereum\AddressState.h" /> |
|||
<ClInclude Include="..\libethereum\BlockChain.h" /> |
|||
<ClInclude Include="..\libethereum\BlockInfo.h" /> |
|||
<ClInclude Include="..\libethereum\Client.h" /> |
|||
<ClInclude Include="..\libethereum\Common.h" /> |
|||
<ClInclude Include="..\libethereum\Dagger.h" /> |
|||
<ClInclude Include="..\libethereum\Defaults.h" /> |
|||
<ClInclude Include="..\libethereum\Exceptions.h" /> |
|||
<ClInclude Include="..\libethereum\FileSystem.h" /> |
|||
<ClInclude Include="..\libethereum\Instruction.h" /> |
|||
<ClInclude Include="..\libethereum\MemTrie.h" /> |
|||
<ClInclude Include="..\libethereum\PeerNetwork.h" /> |
|||
<ClInclude Include="..\libethereum\RLP.h" /> |
|||
<ClInclude Include="..\libethereum\State.h" /> |
|||
<ClInclude Include="..\libethereum\Transaction.h" /> |
|||
<ClInclude Include="..\libethereum\TransactionQueue.h" /> |
|||
<ClInclude Include="..\libethereum\TrieCommon.h" /> |
|||
<ClInclude Include="..\libethereum\TrieDB.h" /> |
|||
<ClInclude Include="..\libethereum\TrieHash.h" /> |
|||
<ClInclude Include="..\libethereum\UPnP.h" /> |
|||
<ClInclude Include="..\libethereum\vector_ref.h" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ProjectReference Include="LibCryptoPP.vcxproj"> |
|||
<Project>{1cc213a4-3482-4211-b47b-172e90dac7de}</Project> |
|||
</ProjectReference> |
|||
<ProjectReference Include="LibLevelDB.vcxproj"> |
|||
<Project>{27014763-955d-486b-9ba7-69872192e6f4}</Project> |
|||
</ProjectReference> |
|||
<ProjectReference Include="LibMiniUPnPc.vcxproj"> |
|||
<Project>{1b1ca20e-39c3-4d9b-ac37-3783048e6672}</Project> |
|||
</ProjectReference> |
|||
<ProjectReference Include="LibSecp256k1.vcxproj"> |
|||
<Project>{1e1175bb-c4a9-41d8-b2d1-9022f71d3cea}</Project> |
|||
</ProjectReference> |
|||
</ItemGroup> |
|||
<PropertyGroup Label="Globals"> |
|||
<ProjectGuid>{826E68CB-D3EE-4A8A-B540-59A8C3F38D4F}</ProjectGuid> |
|||
<Keyword>Win32Proj</Keyword> |
|||
<RootNamespace>LibEthereum</RootNamespace> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
|||
<ImportGroup Label="ExtensionSettings"> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<ClCompile> |
|||
<Optimization>Disabled</Optimization> |
|||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<MinimalRebuild>false</MinimalRebuild> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
|||
<ClCompile> |
|||
<Optimization>Disabled</Optimization> |
|||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<MinimalRebuild>false</MinimalRebuild> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
<Lib /> |
|||
<ProjectReference /> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<ClCompile> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<TreatWarningAsError>true</TreatWarningAsError> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
|||
<ClCompile> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<TreatWarningAsError>true</TreatWarningAsError> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
|||
<ImportGroup Label="ExtensionTargets"> |
|||
</ImportGroup> |
|||
</Project> |
@ -0,0 +1,47 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\libethereum\BlockInfo.cpp" /> |
|||
<ClCompile Include="..\libethereum\Client.cpp" /> |
|||
<ClCompile Include="..\libethereum\Common.cpp" /> |
|||
<ClCompile Include="..\libethereum\Dagger.cpp" /> |
|||
<ClCompile Include="..\libethereum\Defaults.cpp" /> |
|||
<ClCompile Include="..\libethereum\FileSystem.cpp" /> |
|||
<ClCompile Include="..\libethereum\MemTrie.cpp" /> |
|||
<ClCompile Include="..\libethereum\PeerNetwork.cpp" /> |
|||
<ClCompile Include="..\libethereum\RLP.cpp" /> |
|||
<ClCompile Include="..\libethereum\State.cpp" /> |
|||
<ClCompile Include="..\libethereum\Transaction.cpp" /> |
|||
<ClCompile Include="..\libethereum\TransactionQueue.cpp" /> |
|||
<ClCompile Include="..\libethereum\TrieCommon.cpp" /> |
|||
<ClCompile Include="..\libethereum\TrieDB.cpp" /> |
|||
<ClCompile Include="..\libethereum\TrieHash.cpp" /> |
|||
<ClCompile Include="..\libethereum\UPnP.cpp" /> |
|||
<ClCompile Include="..\libethereum\AddressState.cpp" /> |
|||
<ClCompile Include="..\libethereum\BlockChain.cpp" /> |
|||
<ClCompile Include="..\libethereum\Instruction.cpp" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\libethereum\BlockInfo.h" /> |
|||
<ClInclude Include="..\libethereum\Client.h" /> |
|||
<ClInclude Include="..\libethereum\Common.h" /> |
|||
<ClInclude Include="..\libethereum\Dagger.h" /> |
|||
<ClInclude Include="..\libethereum\Defaults.h" /> |
|||
<ClInclude Include="..\libethereum\Exceptions.h" /> |
|||
<ClInclude Include="..\libethereum\FileSystem.h" /> |
|||
<ClInclude Include="..\libethereum\Instruction.h" /> |
|||
<ClInclude Include="..\libethereum\MemTrie.h" /> |
|||
<ClInclude Include="..\libethereum\PeerNetwork.h" /> |
|||
<ClInclude Include="..\libethereum\RLP.h" /> |
|||
<ClInclude Include="..\libethereum\State.h" /> |
|||
<ClInclude Include="..\libethereum\Transaction.h" /> |
|||
<ClInclude Include="..\libethereum\TransactionQueue.h" /> |
|||
<ClInclude Include="..\libethereum\TrieCommon.h" /> |
|||
<ClInclude Include="..\libethereum\TrieDB.h" /> |
|||
<ClInclude Include="..\libethereum\TrieHash.h" /> |
|||
<ClInclude Include="..\libethereum\UPnP.h" /> |
|||
<ClInclude Include="..\libethereum\vector_ref.h" /> |
|||
<ClInclude Include="..\libethereum\AddressState.h" /> |
|||
<ClInclude Include="..\libethereum\BlockChain.h" /> |
|||
</ItemGroup> |
|||
</Project> |
@ -0,0 +1,223 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup Label="ProjectConfigurations"> |
|||
<ProjectConfiguration Include="Debug|Win32"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Debug|x64"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|Win32"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|x64"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\..\leveldb\db\builder.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\dbformat.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\db_impl.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\db_iter.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\filename.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\log_format.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\log_reader.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\log_writer.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\memtable.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\skiplist.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\snapshot.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\table_cache.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\version_edit.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\version_set.h" /> |
|||
<ClInclude Include="..\..\leveldb\db\write_batch_internal.h" /> |
|||
<ClInclude Include="..\..\leveldb\port\atomic_pointer.h" /> |
|||
<ClInclude Include="..\..\leveldb\port\port.h" /> |
|||
<ClInclude Include="..\..\leveldb\port\port_win.h" /> |
|||
<ClInclude Include="..\..\leveldb\table\block.h" /> |
|||
<ClInclude Include="..\..\leveldb\table\block_builder.h" /> |
|||
<ClInclude Include="..\..\leveldb\table\format.h" /> |
|||
<ClInclude Include="..\..\leveldb\table\iterator_wrapper.h" /> |
|||
<ClInclude Include="..\..\leveldb\table\merger.h" /> |
|||
<ClInclude Include="..\..\leveldb\table\two_level_iterator.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\arena.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\coding.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\crc32c.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\hash.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\histogram.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\logging.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\mutexlock.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\posix_logger.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\random.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\testharness.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\testutil.h" /> |
|||
<ClInclude Include="..\..\leveldb\util\win_logger.h" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\..\leveldb\db\builder.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\c.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\dbformat.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\db_bench.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\db_impl.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\db_iter.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\filename.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\log_reader.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\log_writer.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\memtable.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\repair.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\table_cache.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\version_edit.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\version_set.cc" /> |
|||
<ClCompile Include="..\..\leveldb\db\write_batch.cc" /> |
|||
<ClCompile Include="..\..\leveldb\port\port_win.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\block.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\block_builder.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\format.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\iterator.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\merger.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\table.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\table_builder.cc" /> |
|||
<ClCompile Include="..\..\leveldb\table\two_level_iterator.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\arena.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\cache.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\coding.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\comparator.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\crc32c.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\env.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\env_boost.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\hash.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\histogram.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\logging.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\options.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\status.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\testharness.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\testutil.cc" /> |
|||
<ClCompile Include="..\..\leveldb\util\win_logger.cc" /> |
|||
</ItemGroup> |
|||
<PropertyGroup Label="Globals"> |
|||
<ProjectGuid>{27014763-955D-486B-9BA7-69872192E6F4}</ProjectGuid> |
|||
<Keyword>Win32Proj</Keyword> |
|||
<RootNamespace>LibLevelDB</RootNamespace> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
|||
<ImportGroup Label="ExtensionSettings"> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);../../leveldb</AdditionalIncludeDirectories> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4018;4244;4267;4389;4702;4722;4800;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);../../leveldb</AdditionalIncludeDirectories> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4018;4244;4267;4389;4702;4722;4800;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);../../leveldb</AdditionalIncludeDirectories> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4018;4244;4267;4389;4702;4722;4800;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);../../leveldb</AdditionalIncludeDirectories> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4018;4244;4267;4389;4702;4722;4800;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
</ItemDefinitionGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
|||
<ImportGroup Label="ExtensionTargets"> |
|||
</ImportGroup> |
|||
</Project> |
@ -0,0 +1,246 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup> |
|||
<Filter Include="db"> |
|||
<UniqueIdentifier>{d83904b1-b5d1-4c5b-b476-96f08300d103}</UniqueIdentifier> |
|||
</Filter> |
|||
<Filter Include="util"> |
|||
<UniqueIdentifier>{72573022-b7fd-4b7a-a92e-a68c06bd6366}</UniqueIdentifier> |
|||
</Filter> |
|||
<Filter Include="table"> |
|||
<UniqueIdentifier>{7f821e9e-4ebf-4d18-8fb4-898bd3d81376}</UniqueIdentifier> |
|||
</Filter> |
|||
<Filter Include="port"> |
|||
<UniqueIdentifier>{f285a595-6c39-4350-8d30-6f696a3a7c4c}</UniqueIdentifier> |
|||
</Filter> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\..\leveldb\db\table_cache.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\version_edit.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\version_set.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\write_batch_internal.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\builder.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\db_impl.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\db_iter.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\dbformat.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\filename.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\log_format.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\log_reader.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\log_writer.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\memtable.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\skiplist.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\db\snapshot.h"> |
|||
<Filter>db</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\table\merger.h"> |
|||
<Filter>table</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\table\two_level_iterator.h"> |
|||
<Filter>table</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\table\block.h"> |
|||
<Filter>table</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\table\block_builder.h"> |
|||
<Filter>table</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\table\format.h"> |
|||
<Filter>table</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\table\iterator_wrapper.h"> |
|||
<Filter>table</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\posix_logger.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\random.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\testharness.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\testutil.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\win_logger.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\arena.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\coding.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\crc32c.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\hash.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\histogram.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\logging.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\util\mutexlock.h"> |
|||
<Filter>util</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\port\port_win.h"> |
|||
<Filter>port</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\port\atomic_pointer.h"> |
|||
<Filter>port</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\..\leveldb\port\port.h"> |
|||
<Filter>port</Filter> |
|||
</ClInclude> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\..\leveldb\db\version_edit.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\version_set.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\write_batch.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\builder.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\c.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\db_bench.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\db_impl.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\db_iter.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\dbformat.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\filename.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\log_reader.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\log_writer.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\memtable.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\repair.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\db\table_cache.cc"> |
|||
<Filter>db</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\merger.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\table.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\table_builder.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\two_level_iterator.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\block.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\block_builder.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\format.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\table\iterator.cc"> |
|||
<Filter>table</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\status.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\testharness.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\testutil.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\win_logger.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\arena.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\cache.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\coding.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\comparator.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\crc32c.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\env.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\env_boost.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\hash.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\histogram.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\logging.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\util\options.cc"> |
|||
<Filter>util</Filter> |
|||
</ClCompile> |
|||
<ClCompile Include="..\..\leveldb\port\port_win.cc"> |
|||
<Filter>port</Filter> |
|||
</ClCompile> |
|||
</ItemGroup> |
|||
</Project> |
@ -0,0 +1,184 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup Label="ProjectConfigurations"> |
|||
<ProjectConfiguration Include="Debug|Win32"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Debug|x64"> |
|||
<Configuration>Debug</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|Win32"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>Win32</Platform> |
|||
</ProjectConfiguration> |
|||
<ProjectConfiguration Include="Release|x64"> |
|||
<Configuration>Release</Configuration> |
|||
<Platform>x64</Platform> |
|||
</ProjectConfiguration> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\bsdqueue.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\codelength.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\connecthostport.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\declspec.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\igd_desc_parse.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\minisoap.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\minissdpc.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\miniupnpc.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\miniupnpctypes.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\miniwget.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\minixml.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\portlistingparse.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\receivedata.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\upnpcommands.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\upnperrors.h" /> |
|||
<ClInclude Include="..\..\miniupnp\miniupnpc\upnpreplyparse.h" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\connecthostport.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\igd_desc_parse.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\minisoap.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\miniupnpc.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\miniwget.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\minixml.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\portlistingparse.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\receivedata.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\upnpcommands.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\upnperrors.c" /> |
|||
<ClCompile Include="..\..\miniupnp\miniupnpc\upnpreplyparse.c" /> |
|||
</ItemGroup> |
|||
<PropertyGroup Label="Globals"> |
|||
<Keyword>Win32Proj</Keyword> |
|||
<RootNamespace>LibMiniUPnPc</RootNamespace> |
|||
<ProjectGuid>{1B1CA20E-39C3-4D9B-AC37-3783048E6672}</ProjectGuid> |
|||
<ProjectName>LibMiniUPnPc</ProjectName> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>true</UseDebugLibraries> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> |
|||
<ConfigurationType>StaticLibrary</ConfigurationType> |
|||
<UseDebugLibraries>false</UseDebugLibraries> |
|||
<WholeProgramOptimization>true</WholeProgramOptimization> |
|||
<PlatformToolset>v120</PlatformToolset> |
|||
</PropertyGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> |
|||
<ImportGroup Label="ExtensionSettings"> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> |
|||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> |
|||
<Import Project="LibEthereum.props" /> |
|||
</ImportGroup> |
|||
<PropertyGroup Label="UserMacros" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> |
|||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4244;4245;4267;4389;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
<Lib> |
|||
<AdditionalDependencies>Iphlpapi.lib</AdditionalDependencies> |
|||
</Lib> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>Disabled</Optimization> |
|||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4244;4245;4267;4389;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
</Link> |
|||
<Lib> |
|||
<AdditionalDependencies>Iphlpapi.lib</AdditionalDependencies> |
|||
</Lib> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4244;4245;4267;4389;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
<Lib> |
|||
<AdditionalDependencies>Iphlpapi.lib</AdditionalDependencies> |
|||
</Lib> |
|||
</ItemDefinitionGroup> |
|||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
|||
<ClCompile> |
|||
<PrecompiledHeader> |
|||
</PrecompiledHeader> |
|||
<Optimization>MaxSpeed</Optimization> |
|||
<FunctionLevelLinking>true</FunctionLevelLinking> |
|||
<IntrinsicFunctions>true</IntrinsicFunctions> |
|||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
|||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
|||
<DisableSpecificWarnings>4244;4245;4267;4389;%(DisableSpecificWarnings)</DisableSpecificWarnings> |
|||
</ClCompile> |
|||
<Link> |
|||
<SubSystem>Windows</SubSystem> |
|||
<GenerateDebugInformation>true</GenerateDebugInformation> |
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding> |
|||
<OptimizeReferences>true</OptimizeReferences> |
|||
</Link> |
|||
<Lib> |
|||
<AdditionalDependencies>Iphlpapi.lib</AdditionalDependencies> |
|||
</Lib> |
|||
</ItemDefinitionGroup> |
|||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
|||
<ImportGroup Label="ExtensionTargets"> |
|||
</ImportGroup> |
|||
</Project> |
@ -0,0 +1,71 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
|||
<ItemGroup> |
|||
<Filter Include="impl"> |
|||
<UniqueIdentifier>{7d4db365-bce7-45c1-861c-f5f86beca992}</UniqueIdentifier> |
|||
</Filter> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClInclude Include="..\secp256k1\impl\group.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\num.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\num_boost.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\num_gmp.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\num_openssl.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\util.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\ecdsa.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\ecmult.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\field.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\field_5x52.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\field_5x52_asm.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\field_5x52_int128.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\field_10x26.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\impl\field_gmp.h"> |
|||
<Filter>impl</Filter> |
|||
</ClInclude> |
|||
<ClInclude Include="..\secp256k1\group.h" /> |
|||
<ClInclude Include="..\secp256k1\num.h" /> |
|||
<ClInclude Include="..\secp256k1\num_boost.h" /> |
|||
<ClInclude Include="..\secp256k1\num_gmp.h" /> |
|||
<ClInclude Include="..\secp256k1\num_openssl.h" /> |
|||
<ClInclude Include="..\secp256k1\secp256k1.h" /> |
|||
<ClInclude Include="..\secp256k1\util.h" /> |
|||
<ClInclude Include="..\secp256k1\ecdsa.h" /> |
|||
<ClInclude Include="..\secp256k1\ecmult.h" /> |
|||
<ClInclude Include="..\secp256k1\field.h" /> |
|||
<ClInclude Include="..\secp256k1\field_5x52.h" /> |
|||
<ClInclude Include="..\secp256k1\field_10x26.h" /> |
|||
<ClInclude Include="..\secp256k1\field_gmp.h" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<ClCompile Include="..\secp256k1\secp256k1.c" /> |
|||
</ItemGroup> |
|||
<ItemGroup> |
|||
<None Include="..\secp256k1\field_5x52_asm.asm" /> |
|||
</ItemGroup> |
|||
</Project> |
@ -0,0 +1,39 @@ |
|||
#!/bin/bash |
|||
|
|||
# Setup script for building Ethereum using Visual Studio Express 2013. |
|||
# Execute once in directory only containing cpp-ethereum |
|||
# Prerequisites: |
|||
# - Visual Studio Express 2013 for Desktop |
|||
# - On PATH: git, git-svn, wget, 7z |
|||
|
|||
# stop on errors |
|||
set -e |
|||
|
|||
# fetch CryptoPP-5.6.2 |
|||
git svn clone -r 541:541 svn://svn.code.sf.net/p/cryptopp/code/trunk/c5 cryptopp |
|||
|
|||
# fetch MiniUPnP-1.8 |
|||
git clone git@github.com:miniupnp/miniupnp.git |
|||
cd miniupnp |
|||
git checkout tags/miniupnpd_1_8 |
|||
cd .. |
|||
|
|||
# fetch LevelDB (windows branch) |
|||
git clone https://code.google.com/p/leveldb/ |
|||
cd leveldb |
|||
git checkout origin/windows |
|||
cd .. |
|||
|
|||
# fetch and unpack boost-1.55 |
|||
wget -O boost_1_55_0.7z http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.7z/download |
|||
7z x boost_1_55_0.7z |
|||
mv boost_1_55_0 boost |
|||
|
|||
# compile boost for x86 and x64 |
|||
cd boost |
|||
cmd /c bootstrap.bat |
|||
./b2 --build-type=complete link=static runtime-link=static variant=debug,release threading=multi stage |
|||
mv stage/lib stage/Win32 |
|||
./b2 --build-type=complete link=static runtime-link=static variant=debug,release threading=multi address-model=64 stage |
|||
mv stage/lib stage/x64 |
|||
cd .. |
@ -0,0 +1,23 @@ |
|||
// Copyright (c) 2011 The LevelDB Authors. All rights reserved.
|
|||
// Use of this source code is governed by a BSD-style license that can be
|
|||
// found in the LICENSE file. See the AUTHORS file for names of contributors.
|
|||
|
|||
#ifndef STORAGE_LEVELDB_PORT_PORT_H_ |
|||
#define STORAGE_LEVELDB_PORT_PORT_H_ |
|||
|
|||
#include <string.h> |
|||
|
|||
// Include the appropriate platform specific file below. If you are
|
|||
// porting to a new platform, see "port_example.h" for documentation
|
|||
// of what the new port_<platform>.h file must provide.
|
|||
#if defined(LEVELDB_PLATFORM_POSIX) |
|||
# include "port/port_posix.h" |
|||
#elif defined(LEVELDB_PLATFORM_CHROMIUM) |
|||
# include "port/port_chromium.h" |
|||
#elif defined(LEVELDB_PLATFORM_ANDROID) |
|||
# include "port/port_android.h" |
|||
#elif defined(LEVELDB_PLATFORM_WINDOWS) |
|||
# include "port/port_win.h" |
|||
#endif |
|||
|
|||
#endif // STORAGE_LEVELDB_PORT_PORT_H_
|
@ -0,0 +1,14 @@ |
|||
/* $Id: miniupnpcstrings.h.in,v 1.4 2011/01/04 11:41:53 nanard Exp $ */ |
|||
/* Project: miniupnp
|
|||
* http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
|
|||
* Author: Thomas Bernard |
|||
* Copyright (c) 2005-2011 Thomas Bernard |
|||
* This software is subjects to the conditions detailed |
|||
* in the LICENCE file provided within this distribution */ |
|||
#ifndef MINIUPNPCSTRINGS_H_INCLUDED |
|||
#define MINIUPNPCSTRINGS_H_INCLUDED |
|||
|
|||
#define OS_STRING "Windows" |
|||
#define MINIUPNPC_VERSION_STRING "1.9" |
|||
|
|||
#endif |
Loading…
Reference in new issue