{"action":"created","issue":{"url":"https://api.github.com/repos/realm/realm-core/issues/1883","repository_url":"https://api.github.com/repos/realm/realm-core","labels_url":"https://api.github.com/repos/realm/realm-core/issues/1883/labels{/name}","comments_url":"https://api.github.com/repos/realm/realm-core/issues/1883/comments","events_url":"https://api.github.com/repos/realm/realm-core/issues/1883/events","html_url":"https://github.com/realm/realm-core/pull/1883","id":159931947,"number":1883,"title":"Switch to CMake","user":{"login":"danielpovlsen","id":77737,"avatar_url":"https://avatars1.githubusercontent.com/u/77737?v=3","gravatar_id":"","url":"https://api.github.com/users/danielpovlsen","html_url":"https://github.com/danielpovlsen","followers_url":"https://api.github.com/users/danielpovlsen/followers","following_url":"https://api.github.com/users/danielpovlsen/following{/other_user}","gists_url":"https://api.github.com/users/danielpovlsen/gists{/gist_id}","starred_url":"https://api.github.com/users/danielpovlsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielpovlsen/subscriptions","organizations_url":"https://api.github.com/users/danielpovlsen/orgs","repos_url":"https://api.github.com/users/danielpovlsen/repos","events_url":"https://api.github.com/users/danielpovlsen/events{/privacy}","received_events_url":"https://api.github.com/users/danielpovlsen/received_events","type":"User","site_admin":false},"labels":[{"id":320979666,"url":"https://api.github.com/repos/realm/realm-core/labels/S:In%20Progress","name":"S:In Progress","color":"dedede","default":false},{"id":320979145,"url":"https://api.github.com/repos/realm/realm-core/labels/T:Internal","name":"T:Internal","color":"c7def8","default":false}],"state":"open","locked":false,"assignee":{"login":"emanuelez","id":473050,"avatar_url":"https://avatars3.githubusercontent.com/u/473050?v=3","gravatar_id":"","url":"https://api.github.com/users/emanuelez","html_url":"https://github.com/emanuelez","followers_url":"https://api.github.com/users/emanuelez/followers","following_url":"https://api.github.com/users/emanuelez/following{/other_user}","gists_url":"https://api.github.com/users/emanuelez/gists{/gist_id}","starred_url":"https://api.github.com/users/emanuelez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/emanuelez/subscriptions","organizations_url":"https://api.github.com/users/emanuelez/orgs","repos_url":"https://api.github.com/users/emanuelez/repos","events_url":"https://api.github.com/users/emanuelez/events{/privacy}","received_events_url":"https://api.github.com/users/emanuelez/received_events","type":"User","site_admin":false},"assignees":[{"login":"emanuelez","id":473050,"avatar_url":"https://avatars3.githubusercontent.com/u/473050?v=3","gravatar_id":"","url":"https://api.github.com/users/emanuelez","html_url":"https://github.com/emanuelez","followers_url":"https://api.github.com/users/emanuelez/followers","following_url":"https://api.github.com/users/emanuelez/following{/other_user}","gists_url":"https://api.github.com/users/emanuelez/gists{/gist_id}","starred_url":"https://api.github.com/users/emanuelez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/emanuelez/subscriptions","organizations_url":"https://api.github.com/users/emanuelez/orgs","repos_url":"https://api.github.com/users/emanuelez/repos","events_url":"https://api.github.com/users/emanuelez/events{/privacy}","received_events_url":"https://api.github.com/users/emanuelez/received_events","type":"User","site_admin":false}],"milestone":null,"comments":52,"created_at":"2016-06-13T11:48:31Z","updated_at":"2017-04-24T08:17:19Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/realm/realm-core/pulls/1883","html_url":"https://github.com/realm/realm-core/pull/1883","diff_url":"https://github.com/realm/realm-core/pull/1883.diff","patch_url":"https://github.com/realm/realm-core/pull/1883.patch"},"body":"This PR introduces CMake as a meta build system for realm-core. CMake will generate projects upon request in one of many formats. This means that all the makefiles, Xcode, and Visual Studio projects have been removed. This allows to have one source of truth and removes the need to update several projects when changes are made to the build system.\r\n\r\nIt is a custom in CMake to create a build folder from which CMake will be invoked. This folder will contain all the build artifacts, including object files, generated makefiles, static and dynamic libraries and so on. This means that to clean a project all that's needed is to remove the build folder. The source folders will no longer be polluted with build artifacts.\r\n\r\nThe readme and how-to-build files have been updated and provide a cmake primer. Please review such changes with care and let me know if anything can be expressed in a clearer way. Providing a full documentation and description of CMake is of course not the purpose of such documents, and the CMake documentation is of course always available [here](https://cmake.org/cmake/help/v3.7/release/3.7.html).\r\n\r\nThe Jenkinsfile has been heavily modified as well. Now Android and Cocoa builds happen in parallel, which makes the build take around 10 minutes as opposed to the usual 40 minutes.\r\n\r\nThe way the artifacts are packaged is also changed. Now architectures are built and packaged separately and the filename follows the following convention: `realm-core-<build type>-<version>-<operating system>-<arch>-<component>.<extension>`. There are two components available: `release` and `devel`. `release` contains the dynamic library and is what would normally be installed system-wide with rpms, debs and so on. `devel` contains the static libraries and the include files.\r\n\r\nAll static libraries are currently compiled in PIC mode, as they all will be, at some point, be included in a dynamic library.\r\n\r\nFixes #1543 "},"comment":{"url":"https://api.github.com/repos/realm/realm-core/issues/comments/296571113","html_url":"https://github.com/realm/realm-core/pull/1883#issuecomment-296571113","issue_url":"https://api.github.com/repos/realm/realm-core/issues/1883","id":296571113,"user":{"login":"realm-ci","id":7657856,"avatar_url":"https://avatars2.githubusercontent.com/u/7657856?v=3","gravatar_id":"","url":"https://api.github.com/users/realm-ci","html_url":"https://github.com/realm-ci","followers_url":"https://api.github.com/users/realm-ci/followers","following_url":"https://api.github.com/users/realm-ci/following{/other_user}","gists_url":"https://api.github.com/users/realm-ci/gists{/gist_id}","starred_url":"https://api.github.com/users/realm-ci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/realm-ci/subscriptions","organizations_url":"https://api.github.com/users/realm-ci/orgs","repos_url":"https://api.github.com/users/realm-ci/repos","events_url":"https://api.github.com/users/realm-ci/events{/privacy}","received_events_url":"https://api.github.com/users/realm-ci/received_events","type":"User","site_admin":false},"created_at":"2017-04-24T08:17:19Z","updated_at":"2017-04-24T08:17:19Z","body":"Check the performance result here: https://ci.realm.io/job/realm/job/realm-core/job/PR-1883/348/Performance_Report"}}
{"actor":{"display_login":"realm-ci"}}