View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000149CMakepublic2003-08-15 15:342004-03-29 11:11
ReporterAnton Deguet 
Assigned ToSystem Admin 
PriorityurgentSeverityfeatureReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0000149: Installing multiple "unknown" files or custom install target
DescriptionI need to install multiple files which are not yet created and pretty much unknown. The best exemple is Doxygen or latex2html which generate some .html and .png amongst others. I tried to have a INSTALL_FILES(/doc *.html) and succeded with the right quotes to get a Makefile with "install-sh *.html doc". Unfortunately, install-sh can only install one file. Would it be possible to modify install-sh so that it would install multiple files? (the default "install" on Linux supports multiple files installation).

If this is not possible, how can I add a "custom command" for the install target in the generated Makefile?
TagsNo tags attached.
Attached Files

 Relationships

  Notes
(0000107)
Brad King (manager)
2003-08-19 09:55

It's too late to add this feature to CMake 1.8. The install support is being re-written for the next version and will solve this problem.

For now, one can probably use ADD_CUSTOM_TARGET to add a "my_install" target that runs one's own shell-script to install the extra files.
(0000276)
Anton Deguet (reporter)
2003-11-17 15:58

Hello,

I've used ADD_CUSTOM_TARGET for a while and I recently bought the Mastering CMake book. In there I found something that I believed could be useful: ADD_CUSTOM_CONMAND with POST_BUILD.

I currently have:
ADD_CUSTOM_TARGET(install_html
                  ${BASH} ${cisstDoc_BINARY_DIR}/install-files.sh
                  ${cisstDocLatex_BINARY_DIR}/*.png
                {CMAKE_INSTALL_PREFIX}/share/cisst/doc/latex)

which works. Now, instead of having to type make; make install; make install_html, I am trying to do:

ADD_CUSTOM_COMMAND(
  TARGET install
  POST_BUILD
  COMMAND ${BASH}
  ARGS ${cisstDoc_BINARY_DIR}/install-files.sh
        ${cisstDocLatex_BINARY_DIR}/*.png
        ${CMAKE_INSTALL_PREFIX}/share/cisst/doc/latex)

The idea is that the make install should trigger my custom command. Unfortunately, it doesn't add anything to the Makefile. I wonder if this is because the target "install" is not user defined. Is it possible to added tie a custom command to a non "user" defined?

Anton
(0000823)
System Admin (reporter)
2004-03-29 11:11

This should be done with the new install framework, using PRE_INSTALL_SCRIPT and POST_INSTALL_SCRIPT target properties. Look at SimpleInstall test.

 Issue History
Date Modified Username Field Change


Copyright © 2000 - 2018 MantisBT Team