ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails
@ 2013-03-18 12:52 vo.x (Vit Ondruch)
  2013-04-10 15:16 ` [ruby-core:54158] [ruby-trunk - Bug #8115][Assigned] " vo.x (Vit Ondruch)
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-03-18 12:52 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been reported by vo.x (Vit Ondruch).

----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115

Author: vo.x (Vit Ondruch)
Status: Open
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: build
Target version: 
ruby -v: ruby 2.0.0p57 (2013-03-12 revision 39728) [x86_64-linux]


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:54158] [ruby-trunk - Bug #8115][Assigned] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
@ 2013-04-10 15:16 ` vo.x (Vit Ondruch)
  2013-05-21 13:00 ` [ruby-core:55095] [ruby-trunk - Bug #8115] " vo.x (Vit Ondruch)
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-04-10 15:16 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by vo.x (Vit Ondruch).

File Makefile added
Status changed from Closed to Assigned

I backported the patch for Ruby 2.0.0-p0, but I can't see any difference. I might be doing something wrong, but I am afraid that the patch does not fixes our issues. Please see the attached Makefile. Thank you.
----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-38418

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: build
Target version: 
ruby -v: ruby 2.0.0p57 (2013-03-12 revision 39728) [x86_64-linux]


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55095] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
  2013-04-10 15:16 ` [ruby-core:54158] [ruby-trunk - Bug #8115][Assigned] " vo.x (Vit Ondruch)
@ 2013-05-21 13:00 ` vo.x (Vit Ondruch)
  2013-06-08 17:41 ` [ruby-core:55381] [Backport 200 - Backport " nagachika (Tomoyuki Chikanaga)
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-05-21 13:00 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by vo.x (Vit Ondruch).


This is still issue for -p195 :/
----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-39465

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: build
Target version: 
ruby -v: ruby 2.0.0p57 (2013-03-12 revision 39728) [x86_64-linux]
Backport: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55381] [Backport 200 - Backport #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
  2013-04-10 15:16 ` [ruby-core:54158] [ruby-trunk - Bug #8115][Assigned] " vo.x (Vit Ondruch)
  2013-05-21 13:00 ` [ruby-core:55095] [ruby-trunk - Bug #8115] " vo.x (Vit Ondruch)
@ 2013-06-08 17:41 ` nagachika (Tomoyuki Chikanaga)
  2013-06-10 11:14 ` [ruby-core:55409] " jstribny (Josef Stribny)
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: nagachika (Tomoyuki Chikanaga) @ 2013-06-08 17:41 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by nagachika (Tomoyuki Chikanaga).


Sorry for late response.

I've merged r39841 to ruby_2_0_0 at r41193.

Vit:
Please check ruby-2.0.0 patchlevel 214 or higher.
If this issue is not fixed, please reopen this ticket or create a new one.

Regards,
----------------------------------------
Backport #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-39807

Author: vo.x (Vit Ondruch)
Status: Closed
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
Category: 
Target version: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55409] [Backport 200 - Backport #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (2 preceding siblings ...)
  2013-06-08 17:41 ` [ruby-core:55381] [Backport 200 - Backport " nagachika (Tomoyuki Chikanaga)
@ 2013-06-10 11:14 ` jstribny (Josef Stribny)
  2013-06-11 15:05 ` [ruby-core:55438] [ruby-trunk - Bug " nobu (Nobuyoshi Nakada)
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jstribny (Josef Stribny) @ 2013-06-10 11:14 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by jstribny (Josef Stribny).



This doesn't seem to help.

I am still getting the following error with the generated Makefile[1]
```
+ ruby extconf.rb --vendor --with-mysql-config
checking for mysql_ssl_set()... yes
checking for rb_str_set_len()... yes
checking for rb_thread_start_timer()... no
checking for mysql.h... yes
extconf.rb:40:in `<main>': Use RbConfig instead of obsolete and deprecated Config.
extconf.rb:40:in `<main>': Use RbConfig instead of obsolete and deprecated Config.
creating Makefile
+ make -j4
gcc -I. -I/usr/include/x86_64-linux -I/usr/include/ruby/backward -I/usr/include -I. -DHAVE_MYSQL_SSL_SET -DHAVE_RB_STR_SET_LEN -DHAVE_MYSQL_H    -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches  -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fPIC  -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1 -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches  -m64 -mtune=generic -m64 -o mysql.o -c mysql.c
rm -f mysql.so
gcc -shared -o mysql.so mysql.o -L. -L/usr/lib64 -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic  -m64  -lruby -L/usr/lib64/mysql -lmysqlclient -lpthread -lz -lm -lssl -lcrypto -ldl  -lpthread -lrt -ldl -lcrypt -lm   -lc
+ exit 0
...
+ make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.x86_64
make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.x86_64/usr/include/ruby.h', needed by `mysql.o'.  Stop.
```

Ruby version:
# ruby -v
ruby 2.0.0p214 (2013-06-09 revision 41193) [x86_64-linux]

[1] https://gist.github.com/strzibny/5748006


----------------------------------------
Backport #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-39833

Author: vo.x (Vit Ondruch)
Status: Closed
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
Category: 
Target version: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55438] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (3 preceding siblings ...)
  2013-06-10 11:14 ` [ruby-core:55409] " jstribny (Josef Stribny)
@ 2013-06-11 15:05 ` nobu (Nobuyoshi Nakada)
  2013-06-12 20:14 ` [ruby-core:55466] " vo.x (Vit Ondruch)
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: nobu (Nobuyoshi Nakada) @ 2013-06-11 15:05 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by nobu (Nobuyoshi Nakada).

Category set to ext
ruby -v set to 2.0.0

@jstribny, how did you configure p214?
----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-39864

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: ext
Target version: 
ruby -v: 2.0.0
Backport: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55466] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (4 preceding siblings ...)
  2013-06-11 15:05 ` [ruby-core:55438] [ruby-trunk - Bug " nobu (Nobuyoshi Nakada)
@ 2013-06-12 20:14 ` vo.x (Vit Ondruch)
  2013-06-25 19:54 ` [ruby-core:55653] " vo.x (Vit Ondruch)
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-06-12 20:14 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by vo.x (Vit Ondruch).


nobu (Nobuyoshi Nakada) wrote:
> @jstribny, how did you configure p214?

Please see Fedora Ruby's build log: http://kojipkgs.fedoraproject.org//packages/ruby/2.0.0.195/8.fc20/data/logs/i686/build.log
----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-39895

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: ext
Target version: 
ruby -v: 2.0.0
Backport: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55653] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (5 preceding siblings ...)
  2013-06-12 20:14 ` [ruby-core:55466] " vo.x (Vit Ondruch)
@ 2013-06-25 19:54 ` vo.x (Vit Ondruch)
  2013-06-26 14:42 ` [ruby-core:55662] [Backport 200 - Backport " vo.x (Vit Ondruch)
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-06-25 19:54 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by vo.x (Vit Ondruch).

File 0001-mkmf-s-system-configuration-should-use-expanded-valu.patch added

This seems to be related to r37015. Prior this commit, there used to be $hdrdir = RbConfig::CONFIG["rubyhdrdir"], i.e. $hdrdir contained expanded path to Ruby's header files, while after the r37015 changes it essentially to use $hdrdir = RbConfig::MAKEFILE_CONFIG["rubyhdrdir"], which contains the additional $(DESTDIR) which is later wrongly evaluated. The attached patch should fix this issue.
----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-40139

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: ext
Target version: 
ruby -v: 2.0.0
Backport: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55662] [Backport 200 - Backport #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (6 preceding siblings ...)
  2013-06-25 19:54 ` [ruby-core:55653] " vo.x (Vit Ondruch)
@ 2013-06-26 14:42 ` vo.x (Vit Ondruch)
  2013-07-02  9:48 ` [ruby-core:55760] [ruby-trunk - Bug " vo.x (Vit Ondruch)
  2015-01-30  7:10 ` [ruby-core:67898] " usa
  9 siblings, 0 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-06-26 14:42 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by vo.x (Vit Ondruch).


Thank you for applying and backporting the patch.
----------------------------------------
Backport #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-40167

Author: vo.x (Vit Ondruch)
Status: Closed
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
Category: 
Target version: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:55760] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (7 preceding siblings ...)
  2013-06-26 14:42 ` [ruby-core:55662] [Backport 200 - Backport " vo.x (Vit Ondruch)
@ 2013-07-02  9:48 ` vo.x (Vit Ondruch)
  2015-01-30  7:10 ` [ruby-core:67898] " usa
  9 siblings, 0 replies; 11+ messages in thread
From: vo.x (Vit Ondruch) @ 2013-07-02  9:48 UTC (permalink / raw
  To: ruby-core


Issue #8115 has been updated by vo.x (Vit Ondruch).

ruby -v set to ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]

usa (Usaku NAKAMURA) wrote:
> On Windows, when making extensions, `nmake install' now causes error because rubylibprefix (and others) has "C:C:" prefix.
> I think we need to split ruby's path and extensions one more strictly.

I would say that r39841 should be reverted, since it never fixed my issues. Moreover, it introduces another issue, e.g. from my makefile:

vendorarchdir = $(DESTDIR)/usr/lib64/ruby/vendor_ruby
RUBYARCHDIR   = $(DESTDIR)$(vendorarchdir)$(target_prefix)

i.e. $(DESTDIR) is applied 2 times.

Not sure how I tested my patch, though. Sorry :/
----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-40255

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: 
Target version: 
ruby -v: ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]
Backport: 


=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end



-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [ruby-core:67898] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails
  2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
                   ` (8 preceding siblings ...)
  2013-07-02  9:48 ` [ruby-core:55760] [ruby-trunk - Bug " vo.x (Vit Ondruch)
@ 2015-01-30  7:10 ` usa
  9 siblings, 0 replies; 11+ messages in thread
From: usa @ 2015-01-30  7:10 UTC (permalink / raw
  To: ruby-core

Issue #8115 has been updated by Usaku NAKAMURA.

Backport changed from 2.0.0: REQUIRED, 2.1: DONE to 2.0.0: DONE, 2.1: DONE

ruby_2_0_0 r49444 merged revision(s) 41756.

----------------------------------------
Bug #8115: make install DESTDIR=/my/install/path fails
https://bugs.ruby-lang.org/issues/8115#change-51296

* Author: Vit Ondruch
* Status: Closed
* Priority: Normal
* Assignee: Nobuyoshi Nakada
* ruby -v: ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]
* Backport: 2.0.0: DONE, 2.1: DONE
----------------------------------------
=begin
In Fedora packaging, we used to use (({make install DESTDIR=/my/install/path})) to install compiled extension into the folder, which RPM used to pick up the extension. However, since Ruby 2.0.0, this approach fails with message such as;

 make install DESTDIR=/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386
 make: *** No rule to make target `/builddir/build/BUILDROOT/ruby-mysql-2.8.2-9.fc20.i386/usr/include/ruby.h', needed by `mysql.o'.  Stop. 
 
Apparently, the mkmf creates Makefile, where everything depends on DESTDIR (see the diff of makefiles here [1]). This is wrong IMO, since obviously Ruby's header files location has nothing to do with location I'd like to install my libraries.

Could you fix this issue? Or if that was always wrong approach, could you provide us better one?

Please note that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=921650

[1] https://gist.github.com/voxik/5186924
=end


---Files--------------------------------
Makefile (7.1 KB)
0001-mkmf-s-system-configuration-should-use-expanded-valu.patch (1 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2015-01-30  7:10 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-18 12:52 [ruby-core:53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails vo.x (Vit Ondruch)
2013-04-10 15:16 ` [ruby-core:54158] [ruby-trunk - Bug #8115][Assigned] " vo.x (Vit Ondruch)
2013-05-21 13:00 ` [ruby-core:55095] [ruby-trunk - Bug #8115] " vo.x (Vit Ondruch)
2013-06-08 17:41 ` [ruby-core:55381] [Backport 200 - Backport " nagachika (Tomoyuki Chikanaga)
2013-06-10 11:14 ` [ruby-core:55409] " jstribny (Josef Stribny)
2013-06-11 15:05 ` [ruby-core:55438] [ruby-trunk - Bug " nobu (Nobuyoshi Nakada)
2013-06-12 20:14 ` [ruby-core:55466] " vo.x (Vit Ondruch)
2013-06-25 19:54 ` [ruby-core:55653] " vo.x (Vit Ondruch)
2013-06-26 14:42 ` [ruby-core:55662] [Backport 200 - Backport " vo.x (Vit Ondruch)
2013-07-02  9:48 ` [ruby-core:55760] [ruby-trunk - Bug " vo.x (Vit Ondruch)
2015-01-30  7:10 ` [ruby-core:67898] " usa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).