Gem install extension in sub-directory under lib?


#1

I am in the process of setting up the Gem install packages for Ruby WMQ.

The challenge is that I need to put the extension library wmq.so into a
sub-directory under lib. E.g.
lib/wmq/wmq.so

The Gem spec is complete and includes all the required .rb files. The
gem successfully builds and creates the necessary documentation. The
other Ruby files are all copied across correctly into the Gem cache.
E.g. lib/wmq/wmq_const.rb

After building the extension through extconf.rb, the Gem install process
moves the wmq.so file under the lib directory.

Is there some way to tell the Gem installer to put the file wmq.so into
lib/wmq rather than just under lib?

Thank you
Reid


#2

Reid Morrison wrote:

I am in the process of setting up the Gem install packages for Ruby WMQ.

The challenge is that I need to put the extension library wmq.so into a
sub-directory under lib. E.g.
lib/wmq/wmq.so

The Gem spec is complete and includes all the required .rb files. The
gem successfully builds and creates the necessary documentation. The
other Ruby files are all copied across correctly into the Gem cache.
E.g. lib/wmq/wmq_const.rb

After building the extension through extconf.rb, the Gem install process
moves the wmq.so file under the lib directory.

Is there some way to tell the Gem installer to put the file wmq.so into
lib/wmq rather than just under lib?

Thank you
Reid

Finally found the solution by digging through other projects on
RubyForge.

Turns out it was not Gem, but extconf.rb that needed to be modified.

I.e. The following line in extconf.rb:
create_makefile(‘wmq’)
Needed to be modified to:
create_makefile(‘wmq/wmq’)