Hi Eric,
Thanks for the response. I should clarify that the application we're
building is ParaView.
On Fri, Jan 13, 2012 at 5:13 PM, Eric Noulard eric.noul...@gmail.com wrote:
2012/1/13 Patrick Ryan pr...@objectivity.ca:
Hi,
I'm using CMake 2.8.6 to generate an NSIS installer. We have two
separate projects; an application and a set of plugins to be used by
the application. The plugins are composed of four separate components
that can be selected during the installation (Filters, NonBSDPlugins,
Readers, Writers). When built on its own, the plugins installer
includes the 'Select Components' page as expected. When building the
application, which also includes the plugins project, no components
page appears.
How does the application includes the plugins project?
We have the following line including our Plugins directory:
ADD_SUBDIRECTORY(PVGPlugins)
My CPackConfig.cmake file has the following:
SET(CPACK_COMPONENTS_ALL
BrandedRuntime;Development;Filters;NonBSDPlugins;Readers;Writers;Runtime;RuntimeLibraries;Unspecified)
SET(CPACK_COMPONENT_UNSPECIFIED_HIDDEN TRUE)
SET(CPACK_COMPONENT_UNSPECIFIED_REQUIRED TRUE)
Am I missing anything blatantly obvious? I'm quite stuck and haven't
been able to find anyone who's had a similar problem.
CPack does not work that well for
multiple project in one package installer.
see discussion here
http://public.kitware.com/Bug/view.php?id=11808
I can provide more details if necessary...apologies if I haven't
included enough.
Was your CPackConfig.cmake written by hand or generated
with include(CPack) ?
It was generated.
Did you include(CPack) twice?
Like one time in the application project and one time in the plugins project?
If yes tries to include it only once.
We include it in the Plugins project CMakeList but it is only called
if we are building the Plugins project. That said, we haven't been
able to find the 'other' include(CPack) in any of ParaView's
cmakelists.
see related bugs with multiple CPack inclusion:
http://public.kitware.com/Bug/view.php?id=10751
--
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
Our Plugins project's CMakeList has a conditional to look for
ParaView's source directory. If it's found (building the entire
application) this is all that's being called:
ADD_SUBDIRECTORY(Filters)
ADD_SUBDIRECTORY(Readers)
ADD_SUBDIRECTORY(Writers)
ADD_SUBDIRECTORY(NonBSDPlugins)
set(CPACK_COMPONENTS_ALL PVGFilters PVGReaders PVGWriters PVGNonBSDPlugins)
This is what's not working for us. Below is what is called when we
aren't building the entire application. This is working as we expect.
PROJECT(PVGPlugins)
FIND_PACKAGE(ParaView REQUIRED)
INCLUDE(${PARAVIEW_USE_FILE})
SET (PVGPlugins_VERSION_MAJOR 1)
SET (PVGPlugins_VERSION_MINOR 0)
SET (PVGPlugins_VERSION_PATCH 0)
SET(PVGPlugins_VERSION
${PVGPlugins_VERSION_MAJOR}.${PVGPlugins_VERSION_MINOR})
SET(PVGPlugins_VERSION_FULL ${PVGPlugins_VERSION}.${PVGPlugins_VERSION_PATCH})
SET(PVGPlugins_INSTALL_BIN_DIR bin)
SET(QT_USE_QTUITOOLS TRUE)
SET(QT_USE_QTXML TRUE) # uitools depends on xml
SET(QT_USE_QTSQL TRUE) # we need sql drivers
INCLUDE(${QT_USE_FILE})
INCLUDE_DIRECTORIES(${QT_QTSQL_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${QT_QTXML_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${QT_QTUITOOLS_INCLUDE_DIR})
OPTION(ParaViewGeo_Filters Build ParaViewGeo Filters ON)
OPTION(ParaViewGeo_Readers Build ParaViewGeo Readers ON)
OPTION(ParaViewGeo_Writers Build ParaViewGeo Writers ON)
OPTION(ParaViewGeo_NonBSDPlugins Build ParaViewGeo Non-BSD Licensed
Plugins OFF)
IF (ParaViewGeo_Filters)
ADD_SUBDIRECTORY(Filters)
ENDIF(ParaViewGeo_Filters)
IF (ParaViewGeo_Readers)
ADD_SUBDIRECTORY(Readers)
ENDIF(ParaViewGeo_Readers)
IF(ParaViewGeo_Writers)
ADD_SUBDIRECTORY(Writers)
ENDIF(ParaViewGeo_Writers)
IF(ParaViewGeo_NonBSDPlugins)
ADD_SUBDIRECTORY(NonBSDPlugins)
ENDIF(ParaViewGeo_NonBSDPlugins)
set(CPACK_COMPONENTS_ALL PVGFilters PVGReaders PVGWriters PVGNonBSDPlugins)
set(CPACK_PACKAGE_NAME ParaViewGeo Plugins)
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY ParaViewGeo Plugins)
set(CPACK_PACKAGE_VERSION ${PVGPlugins_VERSION_FULL})
SET(CPACK_RESOURCE_FILE_LICENSE
${PVGPlugins_SOURCE_DIR}/PVG_PLUGINS_LICENSE.txt)
include (CPack)
Thanks,
--
Patrick Ryan
--
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake