Scott M Stark created QPID-6493:
-----------------------------------

             Summary: 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


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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to