You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Charles Reiss (Commented) (JIRA)" <ji...@apache.org> on 2011/11/17 22:28:51 UTC
[jira] [Commented] (MESOS-58) Migrate build system to Autotools
(Automake and Libtool)
[ https://issues.apache.org/jira/browse/MESOS-58?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13152344#comment-13152344 ]
Charles Reiss commented on MESOS-58:
------------------------------------
A first step here is to get feature-equivalence using libtool/automake; this will still build a shared libmesos (_only_) and rely on linking that libmesos against .a's in third_party (which must be built with -fPIC). (Simply linking against .la's for the libtoolized parts of third_party won't work because libtool assumes they are going to be installed when anything that depends on them is installed, and we do not want to install third_party libraries at all. But not using the .la's means we are not taking advantage of libtool's portability support (e.g. specifying -fPIC or equivalent, handling library extensions, etc.) and can't build a static libmesos.)
A bunch of progress has been made towards this first step. The largest part of the remaining work is getting external tests and python working under automake/libtool.
A second step will be to get 'make dist' working so we can distribute packages easily (e.g. from the continuous build). third_party is a problem because we would need to have a Makefile.am list all the files to include in an archive; ideally, to avoid requiring such a huge list and to simply upgrading third_party, we should provide third_party packages as tarballs and create make rules to configure and build them from the tarballs. Some parts of third_party probably need special treatment: libprocess -- which we need to decide whether to make a formal part of Mesos (e.g. move it out of third_party) -- and leveldb -- whose Makefiles don't handle CC/CXX settings, dependency tracking, etc.
A third step is to support building against system libraries, so we can build a static libmesos and so we can use a system-provided libglog, etc. so developers using libraries in frameworks that link against libmesos do not have dependency problems.
> Migrate build system to Autotools (Automake and Libtool)
> --------------------------------------------------------
>
> Key: MESOS-58
> URL: https://issues.apache.org/jira/browse/MESOS-58
> Project: Mesos
> Issue Type: Improvement
> Components: build
> Reporter: Andy Konwinski
> Assignee: Benjamin Hindman
>
> Ben has been leading the effort to move the build system to Autotools. This should lead to better dependency management, cleaner and easier to understand human written build input, and a faster build.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira