MantisBT - CMake
View Issue Details
0013056CMakeCMakepublic2012-03-20 18:302012-09-07 16:16
Eric NOULARD 
Eric NOULARD 
normalfeaturehave not tried
closedfixed 
CMake 2.8.7 
CMake 2.8.9CMake 2.8.9 
0013056: Enhance bash completion support
Igor Murzov did enhance bash completion support for
cmake, cpack, ctest.

We should import those enhancement into CMake.

see:
https://alioth.debian.org/tracker/?func=detail&atid=413095&aid=312632&group_id=100114 [^]
and
https://github.com/GArik/CMake/commit/7d63fbe952f9c4d88c44c556e03f0920fa2e6afe [^]
No tags attached.
Issue History
2012-03-20 18:30Eric NOULARDNew Issue
2012-03-20 18:30Eric NOULARDStatusnew => assigned
2012-03-20 18:30Eric NOULARDAssigned To => Eric NOULARD
2012-04-22 13:28Eric NOULARDNote Added: 0029300
2012-04-23 10:32Brad KingNote Added: 0029312
2012-04-23 10:49Eric NOULARDNote Added: 0029313
2012-04-23 10:49Eric NOULARDDescription Updatedbug_revision_view_page.php?rev_id=627#r627
2012-04-23 11:14Brad KingNote Added: 0029315
2012-04-23 14:54Eric NOULARDNote Added: 0029317
2012-04-23 14:54Eric NOULARDStatusassigned => resolved
2012-04-23 14:54Eric NOULARDFixed in Version => CMake 2.8.9
2012-04-23 14:54Eric NOULARDResolutionopen => fixed
2012-08-09 19:52David ColeTarget Version => CMake 2.8.9
2012-09-07 16:16Eric NOULARDNote Added: 0030956
2012-09-07 16:16Eric NOULARDStatusresolved => closed

Notes
(0029300)
Eric NOULARD   
2012-04-22 13:28   
I just pushed a modified version of the patch provided by Igor on
stage/EnhanceBash-completion-part1

Starting with bash completion 2.0 the completion files should be installed
in /usr/share/<package>/completions
in fact DATADIR/completions.
This is ok since it is a relative install path.

Before that completion files should be put in /etc/bash_completion.d/
directory. This is an ABSOLUTE path.

I decided to go for a relative path install whatever the bash completion
version found because no ABSOLUTE install destination is currently used
in CMake source. Moreover this would break CPack Archive generators.

Distros packager may then decide to create some links from
DATADIR/completions to /etc/bash_completion.d/ but at least they
will have completion files at hand.

Could some CMake developer review the branch and tell me if
the modification seems acceptable.

Currently none of the files located in Docs/ (vim or emacs file) installed
why is it so?
(0029312)
Brad King   
2012-04-23 10:32   
How is

 find_package (Bash-Completion 2.0 QUIET)

expected to succeed? Does that package install a CMake package configuration file?

Even if it is found the reported location may require admin access to install even if the CMAKE_INSTALL_PREFIX points to the user home directory. This would break the easy installation in user home directories we have now.

The simplest solution is to install all the Docs/ helper files to the CMake documentation directory. Then packagers can install symlinks in the appropriate places that point over to the installed location.
(0029313)
Eric NOULARD   
2012-04-23 10:49   
> find_package (Bash-Completion 2.0 QUIET)
> Does that package install a CMake package configuration file?

Yes, at least this is the objective of a second patch
(for bash-completion not CMake):
https://github.com/GArik/bash-completion/commit/f523a45d6992347554e8e52dbb4d11df90c34bff [^]

> This would break the easy installation in user home directories we have now.

That's what I thought in the first place.

> install all the Docs/ helper files to the CMake documentation directory

You mean to CMAKE_DOC_DIR ?

I'll do that.

By the way shall we keep obsolete INSTALL_FILES (instead of INSTALL(FILES )) in CMake source in order to keep backward compatibility in order to compile new CMake with an old one?
(0029315)
Brad King   
2012-04-23 11:14   
Re 0013056:0029313: Either CMAKE_DOC_DIR or another place you think is appropriate.

install(FILES) can be used now instead of the old install_files() command. CMake now either bootstraps or requires at least CMake 2.6.3 to build.
(0029317)
Eric NOULARD   
2012-04-23 14:54   
OK I did delete the old branch on stage,
rewrite a proper history log
and repush to stage and merge to next.

Merge topic 'EnhanceBash-completion-part1' into next

83729f9 Install editors helper files
5b97942 Enhancement of bash completion scripts given by Igor Murzov.

Removing Docs/cmake-completion
Pushing upstream next
To git@cmake.org:cmake.git
(0030956)
Eric NOULARD   
2012-09-07 16:16   
This one is closed.
The sibbling bug is closed as well.