You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2015/04/15 19:52:59 UTC

[jira] [Commented] (QPID-6493) cmake install (TARGET ...) component syntax is incorrect in the src/CMakeLists.txt

    [ https://issues.apache.org/jira/browse/QPID-6493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14496593#comment-14496593 ] 

ASF subversion and git services commented on QPID-6493:
-------------------------------------------------------

Commit 1673897 from chug@apache.org in branch 'qpid/trunk'
[ https://svn.apache.org/r1673897 ]

QPID-6493: cmake install TARGET component syntax error.
Patch from Scott M Stark.
Reviewed at https://reviews.apache.org/r/33195

This patch worked fine in my tests with the exception that using the install
command 'cmake -DCOMPONENT=development -P src/cmake_install.cmake' executes
the install but does not produce an install_manifest.txt file. While not 
essential the install_manifest.txt files are part of my routine housekeeping.

> cmake install (TARGET ...) component syntax is incorrect in the src/CMakeLists.txt
> ----------------------------------------------------------------------------------
>
>                 Key: QPID-6493
>                 URL: https://issues.apache.org/jira/browse/QPID-6493
>             Project: Qpid
>          Issue Type: Bug
>          Components: Build Tools
>    Affects Versions: 0.32
>         Environment: fedora 20
>            Reporter: Scott M Stark
>            Assignee: Chuck Rolke
>              Labels: cmake, component
>         Attachments: BuildInstallSettings.cmake.patch, CMakeLists.txt.patch
>
>   Original Estimate: 5m
>  Remaining Estimate: 5m
>
> The cmake build uses a development component that should allow one to build the libraries/headers needed for a client to build against by running:
> mkdir build
> cd build
> cmake ..
> make qpidmessaging
> cmake -DCOMPONENT=development -P src/cmake_install.cmake
> cmake -DCOMPONENT=runtime -P src/cmake_install.cmake
> However, this only installs the header files and then fails due to missing broker related target not existing. None of the libraries are installed.
> One problem is that the cmake install command requires the component to be specified after each of the RUNTIME, LIBRARY and ARCHIVE specifications. Because the component specification is missing in all of the RUNTIME and LIBRARY elements, they end up being associated with the "Unspecified" component, and therefore, can only be installed when a component is not specified. This is seen in the generated build/src/cmake_install.cmake file.
> The correct syntax for the install statement for a target is as shown for this updated qpidcommon target:
> install (TARGETS qpidcommon
>          RUNTIME DESTINATION ${QPID_INSTALL_BINDIR} COMPONENT ${QPID_COMPONENT_COMMON}
>          LIBRARY DESTINATION ${QPID_INSTALL_LIBDIR} COMPONENT ${QPID_COMPONENT_COMMON}
>          ARCHIVE DESTINATION ${QPID_INSTALL_LIBDIR} COMPONENT ${QPID_COMPONENT_COMMON})
> Another issue is that the broker targets are grouped together with the runtime component. It should have a separate broker component in order to allow one to build just the client libraries and headers.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org