> set(CPACK_GENERATOR "RPM")
> set(CPACK_RPM_BLAH1_USER_BINARY_SPECFILE
> "${CMAKE_CURRENT_SOURCE_DIR}/install/SPECS/blah1.spec.in")
> set(CPACK_RPM_BLAH1_PACKAGE_PREFIX "${CMAKE_INSTALL_PREFIX}/blah1")
> set(CPACK_RPM_BLAH2_PACKAGE_PREFIX "${CMAKE_INSTALL_PREFIX}/blah2")
> set(CPACK_RPM_COMPONENT_INSTALL ON)
> set(CPACK_COMPONENTS_ALL blah1 blah2)
> include(CPack)
>
> What I want this to do is install blah1 in something like /opt/blah1 and
> install blah2 in /opt/blah2 and use a custom binary spec for component
> blah1. It does none of these things and instead puts both blah1 and blah2 in
> CPACK_PACKAGING_INSTALL_PREFIX and uses a GENERATED binary spec file for
> both blah1 and blah2.

This can be done but not all of those features came in at the same
time so you should check the documentation for the version of
CMake/CPack you are using.

Also for historical reasons there is a difference between CPack
variables and CPackRPM specific variables: with CPACK_* variables the
component part should be in upper case as in your example while with
CPACK_RPM_* variables the component part should be the same as the
name of the component (for e.g. in your case
CPACK_RPM_blah1_PACKAGE_PREFIX).

Also instead of using CPACK_RPM_*_PACKAGE_PREFIX variables you might
also want to take a look at CPACK_RPM_RELOCATION_PATHS that can be
used in combination with GNUInstallDirs.cmake script that comes with
CMake.

e.g.
include(GNUInstallDirs)
set(CPACK_RPM_RELOCATION_PATHS "${CMAKE_INSTALL_INCLUDEDIR}"
  "${CMAKE_INSTALL_LIBDIR}" "${CMAKE_INSTALL_BINDIR}")

This way each rpm package can have more than one install prefix location.

Regards,
Domen
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake

Reply via email to