You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Till Toenshoff <to...@me.com> on 2014/03/23 22:28:14 UTC

Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 23, 2014, 9:28 p.m.)


Review request for mesos and Benjamin Hindman.


Changes
-------

Addressed all comments.


Summary (updated)
-----------------

Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description (updated)
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries. For this specific flag, the configuration phase will attempt to locate a preinstalled dependency. If that was not found, we show a warning and fall back to using the bundled version.
If --disable-bundled is supplied and --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb=DIR was given, the bundled library is built and used.

NOTE: This review only implements this preinstalled library usage on LevelDB. For using the preinstalled LevelDB from a location that is not part of the standard include and linker paths, you may specify --with-leveldb=PREFIX_PATH. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs (updated)
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 0775a0d 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing
-------

../configure
make check

installed leveldb in custom location
../configure --enable-proper --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --enable-proper
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38608
-----------------------------------------------------------


Bad patch!

Reviews applied: [18957]

Failed command: ./configure

Error:
 checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking how to print strings... printf
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
configure: creating ./config.lt
config.lt: creating libtool
configure: Setting up build environment for x86_64 linux-gnu
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking dependency style of g++... (cached) gcc3
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking leveldb/db.h usability... no
checking leveldb/db.h presence... no
checking for leveldb/db.h... no
configure: error: cannot find LevelDB
-------------------------------------------------------------------
LevelDB is required for Mesos to build.

You may want specify the location of LevelDB by providing a prefix
path via --with-leveldb=DIR.
-------------------------------------------------------------------



- Mesos ReviewBot


On March 26, 2014, 1:58 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 1:58 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by "Timothy St. Clair" <ts...@redhat.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38611
-----------------------------------------------------------



configure.ac
<https://reviews.apache.org/r/18957/#comment70866>

    Looks like there are some hard-tabs here.


- Timothy St. Clair


On March 26, 2014, 3:26 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 3:26 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Adam B <ad...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38665
-----------------------------------------------------------


A couple of potential bugs and a couple of renaming/logic changes


configure.ac
<https://reviews.apache.org/r/18957/#comment70925>

    shouldn't the default be with_bundled_leveldb=yes for now?



configure.ac
<https://reviews.apache.org/r/18957/#comment70926>

    Remove the 'x' so it's just test -n "$with_leveldb"



configure.ac
<https://reviews.apache.org/r/18957/#comment70931>

    test "x$with_included_leveldb" != "xyes" || test "x$enable_bundled" != "xyes"
    so they both have the same logic. Or use disable_bundled and without_included.



configure.ac
<https://reviews.apache.org/r/18957/#comment70932>

    s/==/=/



configure.ac
<https://reviews.apache.org/r/18957/#comment70933>

    WITH_BUNDLED_LEVELDB?


- Adam B


On March 26, 2014, 8:50 a.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 8:50 a.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Vinod Kone <vi...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38624
-----------------------------------------------------------


I'm still a bit confused about the preference order here. I'm assuming the description on this review is out of date after the latest changes. Can you update it?

Talking with BenH, he suggested getting rid of --with-foo="/path" in favor of explicitly setting CPP and LD flags. That would definitely make it simpler to reason about the preferences.

Ultimately the most flexible would be having the ability to specify these preferences both globally (default) and per package (overrides default):
--> system-only
--> bundled-only
--> prefer system over bundled
--> prefer bundled over system

Is this easy to accomplish?







configure.ac
<https://reviews.apache.org/r/18957/#comment70878>

    looking at how zookeeper is setup above shouldn't this be
    
    s/without/with/ ?



configure.ac
<https://reviews.apache.org/r/18957/#comment70879>

    is this correct?



configure.ac
<https://reviews.apache.org/r/18957/#comment70882>

    s/attempt/to attempt/



configure.ac
<https://reviews.apache.org/r/18957/#comment70892>

    Instead of saving and restoring, can you just use INSTALLED_{CPP|LD}FLAGS here?
    
    INSTALLED_CPPFLAGS=$CPPFLAGS
    INSTALLED_LDFLAGS=$LDFLAGS
    
    Or do you need to use CPPFLAGS and LDFLAGS because AC_CHECK_* uses them?



configure.ac
<https://reviews.apache.org/r/18957/#comment70888>

    s/us/us to/


- Vinod Kone


On March 26, 2014, 3:50 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 3:50 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38705
-----------------------------------------------------------


Bad patch!

Reviews applied: [18957]

Failed command: make -j3 check GTEST_FILTER='' >/dev/null

Error:
 ev.c:1531:31: warning: 'ev_default_loop_ptr' initialized and declared 'extern' [enabled by default]
ev.c: In function 'evpipe_write':
ev.c:2160:17: warning: ignoring return value of 'write', declared with attribute warn_unused_result [-Wunused-result]
ev.c:2172:17: warning: ignoring return value of 'write', declared with attribute warn_unused_result [-Wunused-result]
ev.c: In function 'pipecb':
ev.c:2193:16: warning: ignoring return value of 'read', declared with attribute warn_unused_result [-Wunused-result]
ev.c:2207:16: warning: ignoring return value of 'read', declared with attribute warn_unused_result [-Wunused-result]
In file included from /usr/include/c++/4.6/ext/hash_set:61:0,
                 from src/glog/stl_logging.h:54,
                 from src/stl_logging_unittest.cc:34:
/usr/include/c++/4.6/backward/backward_warning.h:33:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
In file included from src/utilities.h:73:0,
                 from src/googletest.h:38,
                 from src/stl_logging_unittest.cc:48:
src/base/mutex.h:137:0: warning: "_XOPEN_SOURCE" redefined [enabled by default]
/usr/include/features.h:166:0: note: this is the location of the previous definition
warning: no files found matching 'Makefile' under directory 'docs'
warning: no files found matching 'indexsidebar.html' under directory 'docs'
zip_safe flag not set; analyzing archive contents...
log/leveldb.cpp:23:32: fatal error: leveldb/comparator.h: No such file or directory
compilation terminated.
make[2]: *** [log/liblog_la-leveldb.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [check] Error 2
make: *** [check-recursive] Error 1


- Mesos ReviewBot


On March 26, 2014, 3:50 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 3:50 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Benjamin Hindman <be...@berkeley.edu>.

> On March 26, 2014, 5:34 p.m., Benjamin Hindman wrote:
> > Sorry I haven't been able to get to this sooner! I'm fine with --disable-bundled not falling back on bundled dependencies since there is an escape hatch where someone can explicitly specify which bundled dependencies _to not_ use (and thus, which ones _to_ use).

To be clear about this escape hatch, this is what I had in mind:

configure --without-bundled-zookeeper # builds with bundled leveldb
configure --without-bundled-leveldb # builds with bundled zookeeper

Alternatively, we could support:

configure --disable-bundled --with-bundled-leveldb # builds with bundled leveldb
configure --disable-bundled --with-bundled-zookeeper # builds with bundled zookeeper

To Tim's point, if someone specifies --disable-bundled and there aren't appropriate system dependencies then failing sounds fine, but it could make sense to be able to 'override' the --disable-bundled explicitly (not automagically as had been proposed via "fallback").


- Benjamin


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38626
-----------------------------------------------------------


On March 26, 2014, 3:50 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 3:50 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Benjamin Hindman <be...@berkeley.edu>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38626
-----------------------------------------------------------


Sorry I haven't been able to get to this sooner! I'm fine with --disable-bundled not falling back on bundled dependencies since there is an escape hatch where someone can explicitly specify which bundled dependencies _to not_ use (and thus, which ones _to_ use).


configure.ac
<https://reviews.apache.org/r/18957/#comment70890>

    As long as we're going with the word 'bundled' how about s/included-leveldb/bundled-leveldb/. And let's also change this for 'included-zookeeper'.



configure.ac
<https://reviews.apache.org/r/18957/#comment70886>

    ... or asked us to disable the bundled dependencies (--disable-bundled).



configure.ac
<https://reviews.apache.org/r/18957/#comment70889>

    It seems like we're giving people two different ways to specify where leveldb is (and by extension, other dependencies in the future):
    
    (1) Use --with-leveldb=prefix.
    (2) Set CPPFLAGS and LDFLAGS and use --disable-bundled or --without-included-zookeeper.
    
    In either case, we know we need to include '-lleveldb'. But why can't we simplify and just have one way? I'd prefer (2) because then we don't have to have both a --without-included-dependency and --with-dependency=prefix for every single system installed dependency, especially if they're all installed at the same non-standard prefix.



configure.ac
<https://reviews.apache.org/r/18957/#comment70885>

    Why can't we just update CPPFLAGS and LDFLAGS?


- Benjamin Hindman


On March 26, 2014, 3:50 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 3:50 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by "Timothy St. Clair" <ts...@redhat.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38618
-----------------------------------------------------------

Ship it!


Ship It!

- Timothy St. Clair


On March 26, 2014, 3:50 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 26, 2014, 3:50 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries.
> 
> If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.
> 
> --without-included-leveldb and --with-leveldb without a path are semantically equal.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 47d03b3 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --with-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --without-included-leveldb
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 26, 2014, 3:50 p.m.)


Review request for mesos and Benjamin Hindman.


Changes
-------

fixed hard tabs in configure.ac


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries.

If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.

--without-included-leveldb and --with-leveldb without a path are semantically equal.

NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs (updated)
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 47d03b3 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing
-------

../configure
make check

installed leveldb in custom location
../configure --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --with-leveldb
make check

installed leveldb in common location
../configure --without-included-leveldb
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 26, 2014, 3:26 p.m.)


Review request for mesos and Benjamin Hindman.


Changes
-------

fixed last minute bug.


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries.

If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.

--without-included-leveldb and --with-leveldb without a path are semantically equal.

NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs (updated)
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 47d03b3 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing
-------

../configure
make check

installed leveldb in custom location
../configure --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --with-leveldb
make check

installed leveldb in common location
../configure --without-included-leveldb
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 26, 2014, 1:58 p.m.)


Review request for mesos and Benjamin Hindman.


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description (updated)
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries.

If --disable-bundled is supplied or --with-leveldb[=DIR] or --without-included-leveldb was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.

--without-included-leveldb and --with-leveldb without a path are semantically equal.

NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 47d03b3 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing
-------

../configure
make check

installed leveldb in custom location
../configure --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --with-leveldb
make check

installed leveldb in common location
../configure --without-included-leveldb
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 26, 2014, 1:57 p.m.)


Review request for mesos and Benjamin Hindman.


Changes
-------

Adapted towards latest discussion results.


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description (updated)
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries.

If --disable-bundled is supplied or --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
If --without-included-leveldb was given, but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb[=DIR] or --without-included-leveldb was given, the bundled library is built and used.

--without-included-leveldb and --with-leveldb without a path are semantically equal.

NOTE: This review only implements this preinstalled library usage on LevelDB. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs (updated)
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 47d03b3 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing (updated)
-------

../configure
make check

installed leveldb in custom location
../configure --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --with-leveldb
make check

installed leveldb in common location
../configure --without-included-leveldb
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38265
-----------------------------------------------------------


Patch looks great!

Reviews applied: [18957]

All tests passed.

- Mesos ReviewBot


On March 23, 2014, 11:18 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 23, 2014, 11:18 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries. For this specific flag, the configuration phase will attempt to locate a preinstalled dependency. If that was not found, we show a warning and fall back to using the bundled version.
> If --disable-bundled is supplied or --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb=DIR was given, the bundled library is built and used.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. For using the preinstalled LevelDB from a location that is not part of the standard include and linker paths, you may specify --with-leveldb=PREFIX_PATH. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 0775a0d 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 23, 2014, 11:18 p.m.)


Review request for mesos and Benjamin Hindman.


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description (updated)
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries. For this specific flag, the configuration phase will attempt to locate a preinstalled dependency. If that was not found, we show a warning and fall back to using the bundled version.
If --disable-bundled is supplied or --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb=DIR was given, the bundled library is built and used.

NOTE: This review only implements this preinstalled library usage on LevelDB. For using the preinstalled LevelDB from a location that is not part of the standard include and linker paths, you may specify --with-leveldb=PREFIX_PATH. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 0775a0d 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing
-------

../configure
make check

installed leveldb in custom location
../configure --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 23, 2014, 11:17 p.m.)


Review request for mesos and Benjamin Hindman.


Changes
-------

oopsi fixed.


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries. For this specific flag, the configuration phase will attempt to locate a preinstalled dependency. If that was not found, we show a warning and fall back to using the bundled version.
If --disable-bundled is supplied and --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb=DIR was given, the bundled library is built and used.

NOTE: This review only implements this preinstalled library usage on LevelDB. For using the preinstalled LevelDB from a location that is not part of the standard include and linker paths, you may specify --with-leveldb=PREFIX_PATH. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs (updated)
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 0775a0d 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing (updated)
-------

../configure
make check

installed leveldb in custom location
../configure --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/#review38260
-----------------------------------------------------------


Bad patch!

Reviews applied: [18957]

Failed command: ./configure

Error:
 checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking how to print strings... printf
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
configure: creating ./config.lt
config.lt: creating libtool
configure: Setting up build environment for x86_64 linux-gnu
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking dependency style of g++... (cached) gcc3
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
level db prefix: 
checking leveldb/db.h usability... no
checking leveldb/db.h presence... no
checking for leveldb/db.h... no
configure: error: cannot find libleveldb
-------------------------------------------------------------------
libleveldb is required for mesos to build.
-------------------------------------------------------------------



- Mesos ReviewBot


On March 23, 2014, 9:29 p.m., Till Toenshoff wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18957/
> -----------------------------------------------------------
> 
> (Updated March 23, 2014, 9:29 p.m.)
> 
> 
> Review request for mesos and Benjamin Hindman.
> 
> 
> Bugs: MESOS-1071
>     https://issues.apache.org/jira/browse/MESOS-1071
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.
> 
> --disable-bundled generally switches from bundled to preinstalled libraries. For this specific flag, the configuration phase will attempt to locate a preinstalled dependency. If that was not found, we show a warning and fall back to using the bundled version.
> If --disable-bundled is supplied and --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
> If --disable-bundled is not supplied and no --with-leveldb=DIR was given, the bundled library is built and used.
> 
> NOTE: This review only implements this preinstalled library usage on LevelDB. For using the preinstalled LevelDB from a location that is not part of the standard include and linker paths, you may specify --with-leveldb=PREFIX_PATH. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.
> 
> 
> Diffs
> -----
> 
>   3rdparty/Makefile.am 23ff1fa 
>   configure.ac 5404dc2 
>   src/Makefile.am 0775a0d 
>   src/python/setup.py.in 02f00ef 
> 
> Diff: https://reviews.apache.org/r/18957/diff/
> 
> 
> Testing
> -------
> 
> ../configure
> make check
> 
> installed leveldb in custom location
> ../configure --disable-bundled --with-leveldb=/CUSTOM_LOCATION
> make check
> 
> installed leveldb in common location
> ../configure --disable-bundled
> make check
> 
> 
> Thanks,
> 
> Till Toenshoff
> 
>


Re: Review Request 18957: Added --disable-bundled flag as well as the first override implementation --with-leveldb[=DIR]

Posted by Till Toenshoff <to...@me.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18957/
-----------------------------------------------------------

(Updated March 23, 2014, 9:29 p.m.)


Review request for mesos and Benjamin Hindman.


Bugs: MESOS-1071
    https://issues.apache.org/jira/browse/MESOS-1071


Repository: mesos-git


Description
-------

Allows preventing the use of bundled libraries in favor of preinstalled versions, where possible.

--disable-bundled generally switches from bundled to preinstalled libraries. For this specific flag, the configuration phase will attempt to locate a preinstalled dependency. If that was not found, we show a warning and fall back to using the bundled version.
If --disable-bundled is supplied and --with-leveldb=DIR was given but the configuration phase could not locate the dependency, it stops with an error.
If --disable-bundled is not supplied and no --with-leveldb=DIR was given, the bundled library is built and used.

NOTE: This review only implements this preinstalled library usage on LevelDB. For using the preinstalled LevelDB from a location that is not part of the standard include and linker paths, you may specify --with-leveldb=PREFIX_PATH. Subsequent review requests for other bundled libraries will follow as soon as this implementation has been accepted.


Diffs
-----

  3rdparty/Makefile.am 23ff1fa 
  configure.ac 5404dc2 
  src/Makefile.am 0775a0d 
  src/python/setup.py.in 02f00ef 

Diff: https://reviews.apache.org/r/18957/diff/


Testing (updated)
-------

../configure
make check

installed leveldb in custom location
../configure --disable-bundled --with-leveldb=/CUSTOM_LOCATION
make check

installed leveldb in common location
../configure --disable-bundled
make check


Thanks,

Till Toenshoff