File suse.patch of Package rubygem-passenger

commit 715d7cc7781264c27b7294b35f1647f5b648e783
Author: Marcus Rückert <darix@nordisch.org>
Date:   Wed Sep 30 17:39:13 2015 +0200

    suse patch

Index: passenger-5.2.2/src/cxx_supportlib/ResourceLocator.h
===================================================================
--- passenger-5.2.2.orig/src/cxx_supportlib/ResourceLocator.h
+++ passenger-5.2.2/src/cxx_supportlib/ResourceLocator.h
@@ -105,12 +105,12 @@
 			originallyPackaged  = true;
-			packagingMethod     = "unknown";
+			packagingMethod     = "rpm";
 			binDir              = root + "/bin";
-			supportBinariesDir  = root + "/buildout/support-binaries";
-			helperScriptsDir    = root + "/src/helper-scripts";
+			supportBinariesDir  = root + "/support-binaries";
+			helperScriptsDir    = root + "/helper-scripts";
 			resourcesDir        = root + "/resources";
 			docDir              = root + "/doc";
 			rubyLibDir          = root + "/src/ruby_supportlib";
-			nodeLibDir          = root + "/src/nodejs_supportlib";
+			nodeLibDir          = root + "/nodejs_supportlib";
 			buildSystemDir      = root;
 		}
 	}
Index: passenger-5.0.26/src/cxx_supportlib/Utils.cpp
===================================================================
--- passenger-5.0.26.orig/src/cxx_supportlib/Utils.cpp
+++ passenger-5.0.26/src/cxx_supportlib/Utils.cpp
@@ -636,7 +636,7 @@ const char *
 getSystemTempDir() {
 	const char *temp_dir = getenv("TMPDIR");
 	if (temp_dir == NULL || *temp_dir == '\0') {
-		temp_dir = "/tmp";
+		temp_dir = "/var/run/passenger";
 	}
 	return temp_dir;
 }
Index: passenger-5.0.26/src/helper-scripts/meteor-loader.rb
===================================================================
--- passenger-5.0.26.orig/src/helper-scripts/meteor-loader.rb
+++ passenger-5.0.26/src/helper-scripts/meteor-loader.rb
@@ -107,9 +107,8 @@
         abort "This program may only be invoked from Passenger (error: $PASSENGER_SPAWN_WORK_DIR not set)."
       end
 
-      ruby_libdir = File.read("#{work_dir}/args/ruby_libdir").strip
       passenger_root = File.read("#{work_dir}/args/passenger_root").strip
-      require "#{ruby_libdir}/phusion_passenger"
+      require "phusion_passenger"
       PhusionPassenger.locate_directories(passenger_root)
 
       PhusionPassenger.require_passenger_lib 'loader_shared_helpers'
Index: passenger-5.0.26/src/helper-scripts/rack-loader.rb
===================================================================
--- passenger-5.0.26.orig/src/helper-scripts/rack-loader.rb
+++ passenger-5.0.26/src/helper-scripts/rack-loader.rb
@@ -46,9 +46,8 @@
       record_journey_step_end('SUBPROCESS_EXEC_WRAPPER', 'STEP_PERFORMED')
       record_journey_step_begin('SUBPROCESS_WRAPPER_PREPARATION', 'STEP_IN_PROGRESS')
 
-      ruby_libdir = File.read("#{work_dir}/args/ruby_libdir").strip
       passenger_root = File.read("#{work_dir}/args/passenger_root").strip
-      require "#{ruby_libdir}/phusion_passenger"
+      require "phusion_passenger"
       PhusionPassenger.locate_directories(passenger_root)
 
       PhusionPassenger.require_passenger_lib 'loader_shared_helpers'
Index: passenger-5.0.26/src/helper-scripts/rack-preloader.rb
===================================================================
--- passenger-5.0.26.orig/src/helper-scripts/rack-preloader.rb
+++ passenger-5.0.26/src/helper-scripts/rack-preloader.rb
@@ -48,9 +48,8 @@
       record_journey_step_end('SUBPROCESS_EXEC_WRAPPER', 'STEP_PERFORMED')
       record_journey_step_begin('SUBPROCESS_WRAPPER_PREPARATION', 'STEP_IN_PROGRESS')
 
-      ruby_libdir = File.read("#{work_dir}/args/ruby_libdir").strip
       passenger_root = File.read("#{work_dir}/args/passenger_root").strip
-      require "#{ruby_libdir}/phusion_passenger"
+      require "phusion_passenger"
       PhusionPassenger.locate_directories(passenger_root)
 
       PhusionPassenger.require_passenger_lib 'loader_shared_helpers'
Index: passenger-5.0.26/src/ruby_supportlib/phusion_passenger.rb
===================================================================
--- passenger-5.0.26.orig/src/ruby_supportlib/phusion_passenger.rb
+++ passenger-5.0.26/src/ruby_supportlib/phusion_passenger.rb
@@ -111,18 +111,20 @@ module PhusionPassenger
         instance_variable_set("@#{field}", value)
       end
     else
+      require 'rbconfig'
+      shared_basedir         = File.join(RbConfig::CONFIG['libdir'], 'passenger', VERSION_STRING)
       source_root            = File.dirname(File.dirname(File.dirname(FILE_LOCATION)))
       @install_spec          = source_root
       @custom_packaged       = false
-      @bin_dir               = "#{source_root}/bin".freeze
-      @support_binaries_dir  = "#{source_root}/buildout/support-binaries".freeze
-      @lib_dir               = "#{source_root}/buildout".freeze
-      @helper_scripts_dir    = "#{source_root}/src/helper-scripts".freeze
-      @resources_dir         = "#{source_root}/resources".freeze
-      @include_dir           = "#{source_root}/src".freeze
+      @bin_dir               = "#{shared_basedir}/bin".freeze
+      @support_binaries_dir  = "#{shared_basedir}/support-binaries".freeze
+      @lib_dir               = "#{shared_basedir}".freeze
+      @helper_scripts_dir    = "#{shared_basedir}/helper-scripts".freeze
+      @resources_dir         = "#{shared_basedir}/resources".freeze
+      @include_dir           = "#{shared_basedir}".freeze
       @doc_dir               = "#{source_root}/doc".freeze
       @ruby_libdir           = File.dirname(FILE_LOCATION).freeze
-      @node_libdir           = "#{source_root}/src/nodejs_supportlib".freeze
+      @node_libdir           = "#{shared_basedir}/nodejs_supportlib".freeze
       @apache2_module_path   = "#{source_root}/buildout/apache2/mod_passenger.so".freeze
       @ruby_extension_source_dir = "#{source_root}/src/ruby_native_extension".freeze
       @nginx_module_source_dir   = "#{source_root}/src/nginx_module".freeze
@@ -232,7 +234,7 @@ module PhusionPassenger
   #  2. It is faster than plan require() because it doesn't need to
   #     scan the entire load path.
   def self.require_passenger_lib(name)
-    require("#{ruby_libdir}/phusion_passenger/#{name}")
+    require("phusion_passenger/#{name}")
   end
 
   # Forward define public_api.rb methods for code that tries to hook

Index: passenger-5.0.26/src/ruby_supportlib/phusion_passenger/admin_tools.rb
===================================================================
--- passenger-5.0.26.orig/src/ruby_supportlib/phusion_passenger/admin_tools.rb
+++ passenger-5.0.26/src/ruby_supportlib/phusion_passenger/admin_tools.rb
@@ -31,7 +31,7 @@ module PhusionPassenger
           return ENV[name]
         end
       end
-      return "/tmp"
+      return "/var/run/passenger"
     end
 
     def self.process_is_alive?(pid)
Index: passenger-5.0.26/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb
===================================================================
--- passenger-5.0.26.orig/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb
+++ passenger-5.0.26/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb
@@ -94,7 +94,7 @@ module PhusionPassenger
         #
         # The RPM packages configure Apache and Nginx to use /var/run/passenger-instreg
         # as the instance registry dir. See https://github.com/phusion/passenger/issues/1475
-        [string_env("TMPDIR"), "/tmp", "/var/run/passenger-instreg"].compact
+        [string_env("TMPDIR"), "/var/run/passenger", "/var/run/passenger-instreg"].compact
       end
 
       def string_env(name)
openSUSE Build Service is sponsored by