incubator-mesos-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From " (Commented) (JIRA)" <>
Subject [jira] [Commented] (MESOS-58) Migrate build system to Autotools (Automake and Libtool)
Date Wed, 30 Nov 2011 19:13:41 GMT

] commented on MESOS-58:

This is an automatically generated e-mail. To reply, visit:

Review request for mesos, Benjamin Hindman and Andy Konwinski.


This very large patch changes the build system to use automake, libtool. This patch attempts
to be feature-complete with the existing build system (exception: Solaris support).

Notable changes:
- Builds from source control now require configure, automake, libtool to be installed; added
./bootstrap to create configure, Makefile.ins, etc. (autoreconf  will _not_ work.)
- Install location are no longer under $(prefix)/mesos; instead, we follow the configure-set
directories mostly, so
  * mesos-master, mesos-slave go into $(sbindir) which defaults to $(prefix)/sbin
  * mesos-local, mesos-log, mesos-mesos (framework submission) go into $(bindir) which defaults
to $(prefix)/bin
  * mesos-launcher (utility program for LXC isolation), (utility program) go into
$(pkglibexecdir) which defaults to $(prefix)/libexec/mesos
  * mesos.jar goes into $(libdir)/java which defaults to $(prefix)/lib/java
  * webui python scripts go into $(pkgdatadir) which defaults to $(prefix)/share/mesos
- New configuration options for finding install locations, with defaults compiled in based
on configured install location:
  * webui_dir
  * launcher_dir
- Created wrapper scripts mesos-master-dev and mesos-slave-dev that set configuration environment
variables suitable for running Mesos out of build directory
- Tests find location of external files using MESOS_BUILD_DIR and MESOS_SOURCE_DIR environment
variables set by test harness
- libmesos_exec.a, libmesos_sched.a have been eliminated
- configure autodetects Java by default (it can still be disabled)
- Removes support for building without zookeeper?
- 'make test' changes names to 'make check'.

Notable things not done:
- 'make dist' is broken, primarily because of third_party.
- We make third_party libraries part of; to do this, we link (PIC) .a's and non-convenience
static .la's into This prevents us from building a non-shared libmesos and may
not be portable to some platforms. This is not a change from what the existing build system
- the root directory and src have separate's; this means that dependencies in
src/ won't cause config.status to regenerate files created a configure time from .in files.

This addresses bug MESOS-58.

----- PRE-CREATION e8dec7a 
  bootstrap PRE-CREATION 
  config.guess f32079a 
  config.sub 6759825 
  configure fc6bf00 f6b6a01 
  include/mesos/mesos.hpp PRE-CREATION 
  install-sh 4fbbae7 
  src/ 516f128 
  src/common/process_utils.hpp 8e55d76 
  src/common/webui_utils.hpp PRE-CREATION 
  src/common/webui_utils.cpp PRE-CREATION 
  src/config/ 49f666a 
  src/detector/detector.cpp ef4aff7 
  src/examples/cpp_test_executor.cpp 9dd244e 
  src/examples/cpp_test_framework.cpp ab02805 
  src/examples/java/ 6500ded 
  src/examples/java/ ba39757 
  src/examples/java/ e1b6032 
  src/examples/java/ a49ecbb 
  src/examples/java/test-exception-framework PRE-CREATION 
  src/examples/java/test-executor PRE-CREATION 
  src/examples/java/test-framework PRE-CREATION 
  src/examples/java/test-multiple-executors-framework PRE-CREATION 
  src/examples/java/test_exception_framework be78062 
  src/examples/java/test_executor d2fbb05 
  src/examples/java/test_framework 2713b34 
  src/examples/java/test_multiple_executors_framework 9fad319 
  src/examples/python/test-executor PRE-CREATION 
  src/examples/python/test-framework PRE-CREATION 
  src/examples/python/test_executor 8d6cc64 
  src/examples/python/test_framework 050ab90 
  src/examples/python/ e6893cf 
  src/examples/test_executor.cpp PRE-CREATION 
  src/examples/test_framework.cpp PRE-CREATION 
  src/java/mesos.pom e5b674d 
  src/java/ PRE-CREATION 
  src/java/src/org/apache/mesos/ 04809a6 
  src/jvm/jvm.hpp PRE-CREATION 
  src/jvm/jvm.cpp PRE-CREATION 
  src/log/log.hpp e50969b 
  src/log/network.hpp c88822c 
  src/master/slaves_manager.cpp 3f67aa1 
  src/master/webui.cpp c5a20d1 
  src/python/ 7c1f6e5 
  src/slave/lxc_isolation_module.cpp ab0843a 
  src/slave/webui.cpp bb1c780 
  src/tests/base_zookeeper_test.hpp e7bb7ed 
  src/tests/base_zookeeper_test.cpp 202b66b 
  src/tests/external/LxcIsolation/ 7b87a7b 
  src/tests/external/LxcIsolation/ 09333e2 
  src/tests/external/LxcIsolation/ a2e2883 
  src/tests/external/LxcIsolation/ 9ac7cd5 
  src/tests/external/SampleFrameworks/ 791cbf1 
  src/tests/external/SampleFrameworks/ 3197c81 
  src/tests/external/SampleFrameworks/ 427b33b 
  src/tests/external/SampleFrameworks/ 968d951 
  src/tests/external/SampleFrameworks/ bc4a4e0 
  src/tests/external/SampleFrameworks/ db88d0b 
  src/tests/external/SampleFrameworks/ 80a7e99 
  src/tests/external_tests.cpp 4b08f86 
  src/tests/main.cpp ada489d 
  src/tests/sample_frameworks_tests.cpp 877fdf1 
  src/tests/utils.hpp 65ce4df 
  src/tests/utils.cpp 553ab2d 
  src/tests/zookeeper_server.hpp cac9f0d 
  src/tests/zookeeper_server.cpp 3927785 
  third_party/libprocess/include/process/protobuf.hpp 7636822 





> Migrate build system to Autotools (Automake and Libtool)
> --------------------------------------------------------
>                 Key: MESOS-58
>                 URL:
>             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:!default.jspa
For more information on JIRA, see:


View raw message