<feed xmlns='http://www.w3.org/2005/Atom'>
<title>monzero-core.git/src/CMakeLists.txt, branch v0.10.0</title>
<subtitle>Monzero core node, command-line wallet, consensus code, and release tooling.
</subtitle>
<id>https://code.monzero.org/monzero-core.git/atom?h=v0.10.0</id>
<link rel='self' href='https://code.monzero.org/monzero-core.git/atom?h=v0.10.0'/>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/'/>
<updated>2016-09-18T06:56:26Z</updated>
<entry>
<title>cmake: support BUILD_SHARED_LIBS built-in option</title>
<updated>2016-09-18T06:56:26Z</updated>
<author>
<name>redfish</name>
<email>redfish@galactica.pw</email>
</author>
<published>2016-09-17T18:03:51Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=06bb6923c3068637af729dd7e7500ce1a6c888b9'/>
<id>urn:sha1:06bb6923c3068637af729dd7e7500ce1a6c888b9</id>
<content type='text'>
Support building internal libraries as shared. This reduces
development time by eliminating the need to re-link all
binaries every time non-interface code in the library changes.
Instead, can hack on libxyz, then `make libxyz`, and re-run
monerod.

By default BUILD_SHARED_LIBS is OFF in release build type,
and ON in debug build type, but can be overriden with -D.
</content>
</entry>
<entry>
<title>cmake: transitive deps and remove deprecated LINK_*</title>
<updated>2016-09-18T06:56:26Z</updated>
<author>
<name>redfish</name>
<email>redfish@galactica.pw</email>
</author>
<published>2016-09-17T17:59:29Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=e1c7af35d47c6f54628418f67128074c1bcd4858'/>
<id>urn:sha1:e1c7af35d47c6f54628418f67128074c1bcd4858</id>
<content type='text'>
Keep the immediate direct deps at the library that depends on them,
declare deps as PUBLIC so that targets that link against that library
get the library's deps as transitive deps.

Break dep cycle between blockchain_db &lt;-&gt; crytonote_core.
No code refactoring, just hide cycle from cmake so that
it doesn't complain (cycles are allowed only between
static libs, not shared libs).

This is in preparation for supproting BUILD_SHARED_LIBS cmake
built-in option for building internal libs as shared.
</content>
</entry>
<entry>
<title>cmake: fix def propagation, fixes 32-bit build</title>
<updated>2016-09-03T21:44:28Z</updated>
<author>
<name>redfish</name>
<email>redfish@galactica.pw</email>
</author>
<published>2016-09-03T21:39:45Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=b1d5189ae1b2c97f54cf45a021a3777366d3b0f8'/>
<id>urn:sha1:b1d5189ae1b2c97f54cf45a021a3777366d3b0f8</id>
<content type='text'>
32-bit build would fail to link with 'mdb_env_create undefined' (because
for 32-bit build, mdb_env_create_vl32 is defined instead).

This bug was introduced with the recent change to virtual object
libraries. The problem is that the COMPILE_DEFINITIONS property
was not propagated from dependee target (lmdb) to depedent
target's (blockchain_db) virtual object lib (obj_blockchain_db).
This patch makes that happen.

I chose to include INTERFACE_COMPILE_DEFINITIONS because there
should not be a need to propagate private defs, but it doesn't
make a difference in this case.
</content>
</entry>
<entry>
<title>fix leftover add_directory</title>
<updated>2016-09-03T11:51:07Z</updated>
<author>
<name>Riccardo Spagni</name>
<email>ric@spagni.net</email>
</author>
<published>2016-09-03T11:51:07Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=782538646870a2126ecf2396d72f395c53318e20'/>
<id>urn:sha1:782538646870a2126ecf2396d72f395c53318e20</id>
<content type='text'>
</content>
</entry>
<entry>
<title>cmake: merge libs via virtual object libraries</title>
<updated>2016-08-31T03:01:48Z</updated>
<author>
<name>redfish</name>
<email>redfish@galactica.pw</email>
</author>
<published>2016-08-29T14:58:52Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=1de812a92a1f0b6c9080044e04cb77bc34a2ebe7'/>
<id>urn:sha1:1de812a92a1f0b6c9080044e04cb77bc34a2ebe7</id>
<content type='text'>
CMake issued a warming about policy CMP0026: access of LOCATION
target property at config time was disallowed. Offending code
was the code that merged static libraries to generate
libwallet_merged.a.

This patch does that same merge task in a much simpler way. And,
since it doesn't violate the policy, the warning went away.
</content>
</entry>
<entry>
<title>ringct: import of Shen Noether's ring confidential transactions</title>
<updated>2016-08-28T20:26:54Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2016-05-13T19:45:20Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=9b1afe5f2d488c64e3fb5e087055cf66d2165391'/>
<id>urn:sha1:9b1afe5f2d488c64e3fb5e087055cf66d2165391</id>
<content type='text'>
</content>
</entry>
<entry>
<title>cmake: fix typo in handling of STACK_TRACE</title>
<updated>2016-08-20T03:38:44Z</updated>
<author>
<name>redfish</name>
<email>redfish@galactica.pw</email>
</author>
<published>2016-08-20T03:38:44Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=2c5e68fb733290d5ae7d09401874688df38e37eb'/>
<id>urn:sha1:2c5e68fb733290d5ae7d09401874688df38e37eb</id>
<content type='text'>
This fixes the log output not getting redirected to log file.
</content>
</entry>
<entry>
<title>cmake: cleanup logic that sets flags per target/subdir</title>
<updated>2016-07-29T01:20:50Z</updated>
<author>
<name>redfish</name>
<email>redfish@galactica.pw</email>
</author>
<published>2016-07-29T01:19:01Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=042db0bd0f852b5643870588f48643db88b77035'/>
<id>urn:sha1:042db0bd0f852b5643870588f48643db88b77035</id>
<content type='text'>
The previous logic that used a COMMON_*_FLAGS intermediate variable
and then re-assigned CMAKE_*_FLAGS before including each subdirectory
was confusing and ugly. This PR is the right way to do it.

This commit is purely refactoring: built binaries unchanged.
</content>
</entry>
<entry>
<title>remove connectivity tool, comment it out from munin plugins too</title>
<updated>2016-03-25T12:52:19Z</updated>
<author>
<name>Riccardo Spagni</name>
<email>ric@spagni.net</email>
</author>
<published>2016-03-25T12:52:19Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=287e88283cba79cf74b4282c76931713dc0ee9c2'/>
<id>urn:sha1:287e88283cba79cf74b4282c76931713dc0ee9c2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>cmake: Fix overly broad use of dynamic link settings</title>
<updated>2016-02-12T22:49:43Z</updated>
<author>
<name>warptangent</name>
<email>warptangent@tutanota.com</email>
</author>
<published>2016-02-12T19:32:37Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=3e72d97ca7d9fa4d130833d84108d08b92e97467'/>
<id>urn:sha1:3e72d97ca7d9fa4d130833d84108d08b92e97467</id>
<content type='text'>
Remove LINK_SEARCH_START_STATIC and LINK_SEARCH_END_STATIC. This is more
appropriate when the compiler flag -static is used.

This had been causing CMake to omit the linker flags necesssary to
distinguish static and dynamic library linking. CMake had assumed static
linking for the target, causing it to omit explicit static link flags.
That is problematic without the -static compile flag being set.

With a library located in system directories, like libboost_date_time,
the full static path (.a), though found correctly by CMake, was treated
by the linker as a dynamic library. This is because
target_link_libraries() transforms the full path to -l&lt;libname&gt; if it's
in a system directory.  Without -static or explicit linker flags, the
dynamic library (.so) is linked.

Removing the above two properties removes the assumption of static. So
-Wl;-Bstatic is inserted where needed. This causes -l&lt;libname&gt; to
properly refer to the static library instead of dynamic.
</content>
</entry>
</feed>
