From: "vo.x (Vit Ondruch)" Date: 2013-06-26T04:54:18+09:00 Subject: [ruby-core:55653] [ruby-trunk - Bug #8115] make install DESTDIR=/my/install/path fails 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/