Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-3576

Audit CMake linking flags

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.5.0
    • cmake

    Description

      If you look at the linking flags for autoconf's stout tests build:

      ```
      ./.libs/libgmock.a glog-0.3.3/.libs/libglog.a -lgflags protobuf-2.5.0/src/.libs/libprotobuf.a -lpthread -ldl -lz /usr/lib/x86_64-linux-gnu/libcurl-nss.so /usr/lib/x86_64-linux-gnu/libsvn_delta-1.so /usr/lib/x86_64-linux-gnu/libsvn_subr-1.so /usr/lib/x86_64-linux-gnu/libapr-1.so -lrt -pthread
      ```

      you'll notice that they are much more concise than our CMake build:

      ```
      -L/usr/lib/x86_64-linux-gnu/libapr-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_client-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_delta-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_diff-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_fs-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_fs_fs-1.a -L/usr/lib/x86_64-linux-gnu/libsvn_fs_util-1.a -L/usr/lib/x86_64-linux-gnu/libsvn_ra-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_ra_local-1.a -L/usr/lib/x86_64-linux-gnu/libsvn_ra_serf-1.a -L/usr/lib/x86_64-linux-gnu/libsvn_ra_svn-1.a -L/usr/lib/x86_64-linux-gnu/libsvn_repos-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_subr-1.so -L/usr/lib/x86_64-linux-gnu/libsvn_wc-1.so -L/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/gmock-1.7.0/src/gmock-1.7.0-lib/lib -L/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/gmock-1.7.0/src/gmock-1.7.0-build/gtest/lib/.libs -L/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/glog-0.3.3/src/glog-0.3.3-lib/lib/lib -L/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/protobuf-2.5.0/src/protobuf-2.5.0-lib/lib/lib -rdynamic -lpthread -lgmock -lsvn_client-1 -lsvn_delta-1 -lsvn_diff-1 -lsvn_fs-1 -Wl,-Bstatic -lsvn_fs_fs-1 -lsvn_fs_util-1 -Wl,-Bdynamic -lsvn_ra-1 -Wl,-Bstatic -lsvn_ra_local-1 -lsvn_ra_serf-1 -lsvn_ra_svn-1 -Wl,-Bdynamic -lsvn_repos-1 -lsvn_subr-1 -lsvn_wc-1 -lglog -lprotobuf -lgtest -ldl -lapr-1 -lrt -Wl,-rpath,/usr/lib/x86_64-linux-gnu/libapr-1.so:/usr/lib/x86_64-linux-gnu/libsvn_client-1.so:/usr/lib/x86_64-linux-gnu/libsvn_delta-1.so:/usr/lib/x86_64-linux-gnu/libsvn_diff-1.so:/usr/lib/x86_64-linux-gnu/libsvn_fs-1.so:/usr/lib/x86_64-linux-gnu/libsvn_fs_fs-1.a:/usr/lib/x86_64-linux-gnu/libsvn_fs_util-1.a:/usr/lib/x86_64-linux-gnu/libsvn_ra-1.so:/usr/lib/x86_64-linux-gnu/libsvn_ra_local-1.a:/usr/lib/x86_64-linux-gnu/libsvn_ra_serf-1.a:/usr/lib/x86_64-linux-gnu/libsvn_ra_svn-1.a:/usr/lib/x86_64-linux-gnu/libsvn_repos-1.so:/usr/lib/x86_64-linux-gnu/libsvn_subr-1.so:/usr/lib/x86_64-linux-gnu/libsvn_wc-1.so:/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/gmock-1.7.0/src/gmock-1.7.0-lib/lib:/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/gmock-1.7.0/src/gmock-1.7.0-build/gtest/lib/.libs:/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/glog-0.3.3/src/glog-0.3.3-lib/lib/lib:/home/joris/projects/mesos/build/3rdparty/libprocess/3rdparty/protobuf-2.5.0/src/protobuf-2.5.0-lib/lib/lib
      ```

      We need to (1) audit this so that we are confident the linking process works like we want it to, and (2) make sure we don't triple link dependencies.

      Attachments

        Issue Links

          Activity

            People

              andschwa Andrew Schwartzmeyer
              hausdorff Alex Clemmer
              Joseph Wu Joseph Wu
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: