Skip to content

Commit

Permalink
typelib: also install ext/typelib.hh header
Browse files Browse the repository at this point in the history
These headers are installed to the RUBY_EXTENSIONS_INSTALL_DIR (e.g. lib/ruby/1.9.1/x86_64-linux)
instead of include/. Are these headers actually required by other packages or are they internal?

Signed-off-by: Johannes Meyer <[email protected]>
  • Loading branch information
meyerj committed Nov 4, 2014
1 parent 7d28003 commit 598eed9
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion bindings/ruby/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ CONFIGURE_FILE(typelib_ruby.pc.in ${CMAKE_CURRENT_BINARY_DIR}/typelib_ruby.pc @O

INSTALL(TARGETS typelib_ruby
LIBRARY DESTINATION ${RUBY_EXTENSIONS_INSTALL_DIR})
INSTALL(FILES ext/typelib_ruby.hh
INSTALL(FILES ext/typelib.hh ext/typelib_ruby.hh
DESTINATION ${RUBY_EXTENSIONS_INSTALL_DIR})
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/typelib_ruby.pc DESTINATION lib/pkgconfig)
INSTALL(FILES lib/typelib.rb
Expand Down

4 comments on commit 598eed9

@doudou
Copy link
Contributor

@doudou doudou commented on 598eed9 Dec 3, 2014

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... Why did you install it ? typelib.hh is private. typelib_ruby.hh is public.

@meyerj
Copy link
Member Author

@meyerj meyerj commented on 598eed9 Dec 3, 2014

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know why I added it, probably only because I thought it might have been forgotten. Reverted in e6a4902.

Is there any reason to install the header to ${RUBY_EXTENSIONS_INSTALL_DIR} (which translates to lib/ruby/1.9.1/x86_64-linux/ on my Ubuntu Trusty system) instead of somewhere below include/? Will it ever be found there? The typelib.pc.in only exposes ${prefix}/include as includedir.

@doudou
Copy link
Contributor

@doudou doudou commented on 598eed9 Dec 3, 2014

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typelib_ruby.pc.in exposes the other one. This header is only used to expose the functionality of the ruby bindings (i.e. in another ruby extension).

Installing the headers with the ruby extension was the convention for sure, and seem to still be the convention as far as I can see (see for instance the ruby-narray package)

@meyerj
Copy link
Member Author

@meyerj meyerj commented on 598eed9 Dec 3, 2014

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, yes, you're right. I must have overlooked the additional pc file for the ruby bindings.
Thanks for clarification.

Please sign in to comment.