This commit is contained in:
parent
05c75e143e
commit
6b0ead7dbc
@ -2,7 +2,7 @@ Index: auto/cc/gcc
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- auto/cc/gcc.orig
|
--- auto/cc/gcc.orig
|
||||||
+++ auto/cc/gcc
|
+++ auto/cc/gcc
|
||||||
@@ -171,7 +171,7 @@
|
@@ -168,7 +168,7 @@ esac
|
||||||
|
|
||||||
|
|
||||||
# stop on warning
|
# stop on warning
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
--- auto/install
|
Index: auto/install
|
||||||
|
===================================================================
|
||||||
|
--- auto/install.orig
|
||||||
+++ auto/install
|
+++ auto/install
|
||||||
@@ -146,8 +146,7 @@
|
@@ -147,8 +147,7 @@ install: $NGX_OBJS${ngx_dirsep}nginx${ng
|
||||||
test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' || \
|
test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' || \
|
||||||
mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`'
|
mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`'
|
||||||
|
|
||||||
|
@ -9,14 +9,3 @@
|
|||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
--- auto/install.orig
|
|
||||||
+++ auto/install.orig
|
|
||||||
@@ -147,7 +147,7 @@
|
|
||||||
test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' || \
|
|
||||||
mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`'
|
|
||||||
|
|
||||||
- test -d '\$(DESTDIR)/srv/www/htdocs' || install -d '\$(DESTDIR)/srv/www/' && cp -r docs/html '\$(DESTDIR)/srv/www/htdocs'
|
|
||||||
+ test -d '\$(DESTDIR)/srv/www/htdocs' || install -d '\$(DESTDIR)/srv/www/' && cp -r html '\$(DESTDIR)/srv/www/htdocs'
|
|
||||||
END
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ Index: auto/install
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- auto/install.orig
|
--- auto/install.orig
|
||||||
+++ auto/install
|
+++ auto/install
|
||||||
@@ -7,7 +7,7 @@
|
@@ -8,7 +8,7 @@ if [ $USE_PERL = YES ]; then
|
||||||
cat << END >> $NGX_MAKEFILE
|
cat << END >> $NGX_MAKEFILE
|
||||||
|
|
||||||
install_perl_modules:
|
install_perl_modules:
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:c587c25f2fa9c9dde6a58cbaf7bf2c808ee360cfa3cdaf00a13a33f728d96c43
|
|
||||||
size 724309
|
|
58
nginx-1.4.2-passenger_fix.patch
Normal file
58
nginx-1.4.2-passenger_fix.patch
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
--- passenger/build/common_library.rb
|
||||||
|
+++ passenger/build/common_library.rb
|
||||||
|
@@ -34,7 +34,7 @@
|
||||||
|
# Defines tasks for compiling a static library containing Boost and OXT.
|
||||||
|
def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
||||||
|
output_file = "#{output_dir}.a"
|
||||||
|
- flags = "-Iext #{extra_compiler_flags} #{PlatformInfo.portability_cflags} #{EXTRA_CXXFLAGS}"
|
||||||
|
+ flags = "-Iext #{extra_compiler_flags} #{PlatformInfo.portability_cflags} #{EXTRA_CXXFLAGS} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
|
||||||
|
if false && boolean_option('RELEASE')
|
||||||
|
# Disable RELEASE support. Passenger Standalone wants to link to the
|
||||||
|
@@ -126,7 +126,7 @@
|
||||||
|
]
|
||||||
|
file LIBEV_OUTPUT_DIR + "Makefile" => dependencies do
|
||||||
|
# Disable all warnings: http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#COMPILER_WARNINGS
|
||||||
|
- cflags = "#{EXTRA_CXXFLAGS} -w"
|
||||||
|
+ cflags = "#{EXTRA_CXXFLAGS} #{ENV['RPM_OPT_FLAGS']} -w"
|
||||||
|
sh "mkdir -p #{LIBEV_OUTPUT_DIR}" if !File.directory?(LIBEV_OUTPUT_DIR)
|
||||||
|
sh "cd #{LIBEV_OUTPUT_DIR} && sh #{LIBEV_SOURCE_DIR}configure " +
|
||||||
|
"--disable-shared --enable-static CFLAGS='#{cflags}' orig_CFLAGS=1"
|
||||||
|
@@ -174,7 +174,7 @@
|
||||||
|
file LIBEIO_OUTPUT_DIR + "Makefile" => dependencies do
|
||||||
|
# Disable all warnings. The author has a clear standpoint on that:
|
||||||
|
# http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#COMPILER_WARNINGS
|
||||||
|
- cflags = "#{EXTRA_CXXFLAGS} -w"
|
||||||
|
+ cflags = "#{EXTRA_CXXFLAGS} #{ENV['RPM_OPT_FLAGS']} -w"
|
||||||
|
sh "mkdir -p #{LIBEIO_OUTPUT_DIR}" if !File.directory?(LIBEIO_OUTPUT_DIR)
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && sh #{LIBEIO_SOURCE_DIR}configure " +
|
||||||
|
"--disable-shared --enable-static CFLAGS='#{cflags}'"
|
||||||
|
@@ -183,6 +183,7 @@
|
||||||
|
libeio_sources = Dir["ext/libeio/{*.c,*.h}"]
|
||||||
|
file LIBEIO_OUTPUT_DIR + ".libs/libeio.a" => [LIBEIO_OUTPUT_DIR + "Makefile"] + libeio_sources do
|
||||||
|
sh "rm -f #{LIBEIO_OUTPUT_DIR}/libeio.la"
|
||||||
|
+ sh "cd #{LIBEIO_OUTPUT_DIR} && make eio.o"
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && make libeio.la"
|
||||||
|
end
|
||||||
|
|
||||||
|
--- passenger/ext/boost/libs/thread/src/pthread/thread.cpp
|
||||||
|
+++ passenger/ext/boost/libs/thread/src/pthread/thread.cpp
|
||||||
|
@@ -376,6 +376,7 @@
|
||||||
|
boost::throw_exception(thread_resource_error(system::errc::invalid_argument, "boost thread: thread not joinable"));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
+ return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool thread::joinable() const BOOST_NOEXCEPT
|
||||||
|
--- passenger/lib/phusion_passenger/common_library.rb
|
||||||
|
+++ passenger/lib/phusion_passenger/common_library.rb
|
||||||
|
@@ -101,7 +101,7 @@
|
||||||
|
end
|
||||||
|
|
||||||
|
def define_tasks(extra_compiler_flags = nil)
|
||||||
|
- flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} "
|
||||||
|
+ flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
flags << "#{PlatformInfo.portability_cflags} #{EXTRA_CXXFLAGS}"
|
||||||
|
flags.strip!
|
||||||
|
|
21
nginx-1.4.4-passenger-3.0.12_fix.patch
Normal file
21
nginx-1.4.4-passenger-3.0.12_fix.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
diff -Ppru passenger/build/common_library.rb passenger/build/common_library.rb
|
||||||
|
--- passenger/build/common_library.rb 2012-07-16 21:23:58.000000000 +0200
|
||||||
|
+++ passenger/build/common_library.rb 2014-01-17 13:44:58.830352986 +0100
|
||||||
|
@@ -94,7 +94,7 @@ def define_common_library_task(namespace
|
||||||
|
static_library = "#{output_dir}.a"
|
||||||
|
|
||||||
|
# Define compilation targets for the object files in libpassenger_common.
|
||||||
|
- flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} "
|
||||||
|
+ flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
flags << "#{PlatformInfo.portability_cflags} #{EXTRA_CXXFLAGS}"
|
||||||
|
flags.strip!
|
||||||
|
|
||||||
|
@@ -162,7 +162,7 @@ end
|
||||||
|
# Defines tasks for compiling a static library containing Boost and OXT.
|
||||||
|
def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
||||||
|
output_file = "#{output_dir}.a"
|
||||||
|
- flags = "-Iext #{extra_compiler_flags} #{PlatformInfo.portability_cflags} #{EXTRA_CXXFLAGS}"
|
||||||
|
+ flags = "-Iext #{extra_compiler_flags} #{PlatformInfo.portability_cflags} #{EXTRA_CXXFLAGS} -fPIC #{ENV['RPM_OPT_FLAGS']}"
|
||||||
|
|
||||||
|
if boolean_option('RELEASE')
|
||||||
|
sources = Dir['ext/boost/src/pthread/*.cpp'] + Dir['ext/oxt/*.cpp']
|
173
nginx-1.4.4-passenger-4.0.33_fix.patch
Normal file
173
nginx-1.4.4-passenger-4.0.33_fix.patch
Normal file
@ -0,0 +1,173 @@
|
|||||||
|
--- passenger/build/common_library.rb
|
||||||
|
+++ passenger/build/common_library.rb
|
||||||
|
@@ -34,19 +34,19 @@
|
||||||
|
# Defines tasks for compiling a static library containing Boost and OXT.
|
||||||
|
def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
||||||
|
output_file = "#{output_dir}.a"
|
||||||
|
- flags = "-Iext #{extra_compiler_flags} #{EXTRA_CXXFLAGS}"
|
||||||
|
-
|
||||||
|
+ flags = "-Iext #{extra_compiler_flags} #{EXTRA_CXXFLAGS} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
+
|
||||||
|
if false && boolean_option('RELEASE')
|
||||||
|
# Disable RELEASE support. Passenger Standalone wants to link to the
|
||||||
|
# common library but does not know whether it was compiled with RELEASE
|
||||||
|
# or not. See http://code.google.com/p/phusion-passenger/issues/detail?id=808
|
||||||
|
sources = Dir['ext/boost/libs/**/*.cpp'] + Dir['ext/oxt/*.cpp']
|
||||||
|
sources.sort!
|
||||||
|
-
|
||||||
|
+
|
||||||
|
aggregate_source = "#{output_dir}/aggregate.cpp"
|
||||||
|
aggregate_object = "#{output_dir}/aggregate.o"
|
||||||
|
object_files = [aggregate_object]
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file(aggregate_object => sources) do
|
||||||
|
sh "mkdir -p #{output_dir}" if !File.directory?(output_dir)
|
||||||
|
aggregate_content = %Q{
|
||||||
|
@@ -71,13 +71,13 @@
|
||||||
|
boost_output_dir = "#{output_dir}/boost"
|
||||||
|
object_file = "#{boost_output_dir}/#{object_name}"
|
||||||
|
boost_object_files << object_file
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file object_file => source_file do
|
||||||
|
sh "mkdir -p #{boost_output_dir}" if !File.directory?(boost_output_dir)
|
||||||
|
compile_cxx(source_file, "#{flags} -o #{object_file}")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
# Define compilation targets for .cpp files in ext/oxt.
|
||||||
|
oxt_object_files = []
|
||||||
|
oxt_dependency_files = Dir["ext/oxt/*.hpp"] + Dir["ext/oxt/detail/*.hpp"]
|
||||||
|
@@ -92,19 +92,19 @@
|
||||||
|
compile_cxx(source_file, "#{flags} -o #{object_file}")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
object_files = boost_object_files + oxt_object_files
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file(output_file => object_files) do
|
||||||
|
sh "mkdir -p #{output_dir}"
|
||||||
|
create_static_library(output_file, object_files.join(' '))
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task "#{namespace}:clean" do
|
||||||
|
sh "rm -rf #{output_file} #{output_dir}"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
return output_file
|
||||||
|
end
|
||||||
|
|
||||||
|
@@ -116,9 +116,9 @@
|
||||||
|
LIBEV_CFLAGS = "-Iext/libev"
|
||||||
|
LIBEV_LIBS = LIBEV_OUTPUT_DIR + ".libs/libev.a"
|
||||||
|
LIBEV_TARGET = LIBEV_LIBS
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :libev => LIBEV_TARGET
|
||||||
|
-
|
||||||
|
+
|
||||||
|
dependencies = [
|
||||||
|
"ext/libev/configure",
|
||||||
|
"ext/libev/config.h.in",
|
||||||
|
@@ -128,7 +128,7 @@
|
||||||
|
cc = PlatformInfo.cc
|
||||||
|
cxx = PlatformInfo.cxx
|
||||||
|
# Disable all warnings: http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#COMPILER_WARNINGS
|
||||||
|
- cflags = "#{EXTRA_CFLAGS} -w"
|
||||||
|
+ cflags = "#{EXTRA_CFLAGS} #{ENV['RPM_OPT_FLAGS']} -w"
|
||||||
|
sh "mkdir -p #{LIBEV_OUTPUT_DIR}" if !File.directory?(LIBEV_OUTPUT_DIR)
|
||||||
|
sh "cd #{LIBEV_OUTPUT_DIR} && sh #{LIBEV_SOURCE_DIR}configure " +
|
||||||
|
"--disable-shared --enable-static " +
|
||||||
|
@@ -136,7 +136,7 @@
|
||||||
|
# do, so we force our compiler choice.
|
||||||
|
"CC='#{cc}' CXX='#{cxx}' CFLAGS='#{cflags}' orig_CFLAGS=1"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
libev_sources = Dir["ext/libev/{*.c,*.h}"]
|
||||||
|
file LIBEV_OUTPUT_DIR + ".libs/libev.a" => [LIBEV_OUTPUT_DIR + "Makefile"] + libev_sources do
|
||||||
|
sh "rm -f #{LIBEV_OUTPUT_DIR}/libev.la"
|
||||||
|
@@ -148,7 +148,7 @@
|
||||||
|
sh "cd #{LIBEV_OUTPUT_DIR} && make maintainer-clean"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :clean => 'libev:clean'
|
||||||
|
else
|
||||||
|
LIBEV_CFLAGS = string_option('LIBEV_CFLAGS', '-I/usr/include/libev')
|
||||||
|
@@ -168,9 +168,9 @@
|
||||||
|
LIBEIO_CFLAGS = "-Iext/libeio"
|
||||||
|
LIBEIO_LIBS = LIBEIO_OUTPUT_DIR + ".libs/libeio.a"
|
||||||
|
LIBEIO_TARGET = LIBEIO_LIBS
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :libeio => LIBEIO_TARGET
|
||||||
|
-
|
||||||
|
+
|
||||||
|
dependencies = [
|
||||||
|
"ext/libeio/configure",
|
||||||
|
"ext/libeio/config.h.in",
|
||||||
|
@@ -181,7 +181,7 @@
|
||||||
|
cxx = PlatformInfo.cxx
|
||||||
|
# Disable all warnings. The author has a clear standpoint on that:
|
||||||
|
# http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#COMPILER_WARNINGS
|
||||||
|
- cflags = "#{EXTRA_CFLAGS} -w"
|
||||||
|
+ cflags = "#{EXTRA_CFLAGS} #{ENV['RPM_OPT_FLAGS']} -w"
|
||||||
|
sh "mkdir -p #{LIBEIO_OUTPUT_DIR}" if !File.directory?(LIBEIO_OUTPUT_DIR)
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && sh #{LIBEIO_SOURCE_DIR}configure " +
|
||||||
|
"--disable-shared --enable-static " +
|
||||||
|
@@ -189,13 +189,14 @@
|
||||||
|
# do, so we force our compiler choice.
|
||||||
|
"CC='#{cc}' CXX='#{cxx}' CFLAGS='#{cflags}'"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
libeio_sources = Dir["ext/libeio/{*.c,*.h}"]
|
||||||
|
file LIBEIO_OUTPUT_DIR + ".libs/libeio.a" => [LIBEIO_OUTPUT_DIR + "Makefile"] + libeio_sources do
|
||||||
|
sh "rm -f #{LIBEIO_OUTPUT_DIR}/libeio.la"
|
||||||
|
+ sh "cd #{LIBEIO_OUTPUT_DIR} && make eio.o"
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && make libeio.la"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :clean do
|
||||||
|
if File.exist?(LIBEIO_OUTPUT_DIR + "Makefile")
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && make maintainer-clean"
|
||||||
|
--- passenger/ext/boost/libs/thread/src/pthread/thread.cpp
|
||||||
|
+++ passenger/ext/boost/libs/thread/src/pthread/thread.cpp
|
||||||
|
@@ -390,6 +390,7 @@
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
+ return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool thread::joinable() const BOOST_NOEXCEPT
|
||||||
|
--- passenger/lib/phusion_passenger/common_library.rb
|
||||||
|
+++ passenger/lib/phusion_passenger/common_library.rb
|
||||||
|
@@ -101,7 +101,7 @@
|
||||||
|
end
|
||||||
|
|
||||||
|
def define_tasks(extra_compiler_flags = nil)
|
||||||
|
- flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} "
|
||||||
|
+ flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
cflags = (flags + EXTRA_CFLAGS).strip
|
||||||
|
cxxflags = (flags + EXTRA_CXXFLAGS).strip
|
||||||
|
|
||||||
|
@@ -171,7 +171,7 @@
|
||||||
|
# packaging the runtime ('passenger package-runtime') so we
|
||||||
|
# never generate static libraries.
|
||||||
|
library = "#{@output_dir}/#{category}.a"
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file(library => object_filenames) do
|
||||||
|
create_static_library(library, object_filenames.join(' '))
|
||||||
|
end
|
173
nginx-1.4.4-passenger_fix.patch
Normal file
173
nginx-1.4.4-passenger_fix.patch
Normal file
@ -0,0 +1,173 @@
|
|||||||
|
--- passenger/build/common_library.rb
|
||||||
|
+++ passenger/build/common_library.rb
|
||||||
|
@@ -34,19 +34,19 @@
|
||||||
|
# Defines tasks for compiling a static library containing Boost and OXT.
|
||||||
|
def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
||||||
|
output_file = "#{output_dir}.a"
|
||||||
|
- flags = "-Iext #{extra_compiler_flags} #{EXTRA_CXXFLAGS}"
|
||||||
|
-
|
||||||
|
+ flags = "-Iext #{extra_compiler_flags} #{EXTRA_CXXFLAGS} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
+
|
||||||
|
if false && boolean_option('RELEASE')
|
||||||
|
# Disable RELEASE support. Passenger Standalone wants to link to the
|
||||||
|
# common library but does not know whether it was compiled with RELEASE
|
||||||
|
# or not. See http://code.google.com/p/phusion-passenger/issues/detail?id=808
|
||||||
|
sources = Dir['ext/boost/libs/**/*.cpp'] + Dir['ext/oxt/*.cpp']
|
||||||
|
sources.sort!
|
||||||
|
-
|
||||||
|
+
|
||||||
|
aggregate_source = "#{output_dir}/aggregate.cpp"
|
||||||
|
aggregate_object = "#{output_dir}/aggregate.o"
|
||||||
|
object_files = [aggregate_object]
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file(aggregate_object => sources) do
|
||||||
|
sh "mkdir -p #{output_dir}" if !File.directory?(output_dir)
|
||||||
|
aggregate_content = %Q{
|
||||||
|
@@ -71,13 +71,13 @@
|
||||||
|
boost_output_dir = "#{output_dir}/boost"
|
||||||
|
object_file = "#{boost_output_dir}/#{object_name}"
|
||||||
|
boost_object_files << object_file
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file object_file => source_file do
|
||||||
|
sh "mkdir -p #{boost_output_dir}" if !File.directory?(boost_output_dir)
|
||||||
|
compile_cxx(source_file, "#{flags} -o #{object_file}")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
# Define compilation targets for .cpp files in ext/oxt.
|
||||||
|
oxt_object_files = []
|
||||||
|
oxt_dependency_files = Dir["ext/oxt/*.hpp"] + Dir["ext/oxt/detail/*.hpp"]
|
||||||
|
@@ -92,19 +92,19 @@
|
||||||
|
compile_cxx(source_file, "#{flags} -o #{object_file}")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
object_files = boost_object_files + oxt_object_files
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file(output_file => object_files) do
|
||||||
|
sh "mkdir -p #{output_dir}"
|
||||||
|
create_static_library(output_file, object_files.join(' '))
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task "#{namespace}:clean" do
|
||||||
|
sh "rm -rf #{output_file} #{output_dir}"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
return output_file
|
||||||
|
end
|
||||||
|
|
||||||
|
@@ -116,9 +116,9 @@
|
||||||
|
LIBEV_CFLAGS = "-Iext/libev"
|
||||||
|
LIBEV_LIBS = LIBEV_OUTPUT_DIR + ".libs/libev.a"
|
||||||
|
LIBEV_TARGET = LIBEV_LIBS
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :libev => LIBEV_TARGET
|
||||||
|
-
|
||||||
|
+
|
||||||
|
dependencies = [
|
||||||
|
"ext/libev/configure",
|
||||||
|
"ext/libev/config.h.in",
|
||||||
|
@@ -128,7 +128,7 @@
|
||||||
|
cc = PlatformInfo.cc
|
||||||
|
cxx = PlatformInfo.cxx
|
||||||
|
# Disable all warnings: http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#COMPILER_WARNINGS
|
||||||
|
- cflags = "#{EXTRA_CFLAGS} -w"
|
||||||
|
+ cflags = "#{EXTRA_CFLAGS} #{ENV['RPM_OPT_FLAGS']} -w"
|
||||||
|
sh "mkdir -p #{LIBEV_OUTPUT_DIR}" if !File.directory?(LIBEV_OUTPUT_DIR)
|
||||||
|
sh "cd #{LIBEV_OUTPUT_DIR} && sh #{LIBEV_SOURCE_DIR}configure " +
|
||||||
|
"--disable-shared --enable-static " +
|
||||||
|
@@ -136,7 +136,7 @@
|
||||||
|
# do, so we force our compiler choice.
|
||||||
|
"CC='#{cc}' CXX='#{cxx}' CFLAGS='#{cflags}' orig_CFLAGS=1"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
libev_sources = Dir["ext/libev/{*.c,*.h}"]
|
||||||
|
file LIBEV_OUTPUT_DIR + ".libs/libev.a" => [LIBEV_OUTPUT_DIR + "Makefile"] + libev_sources do
|
||||||
|
sh "rm -f #{LIBEV_OUTPUT_DIR}/libev.la"
|
||||||
|
@@ -148,7 +148,7 @@
|
||||||
|
sh "cd #{LIBEV_OUTPUT_DIR} && make maintainer-clean"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :clean => 'libev:clean'
|
||||||
|
else
|
||||||
|
LIBEV_CFLAGS = string_option('LIBEV_CFLAGS', '-I/usr/include/libev')
|
||||||
|
@@ -168,9 +168,9 @@
|
||||||
|
LIBEIO_CFLAGS = "-Iext/libeio"
|
||||||
|
LIBEIO_LIBS = LIBEIO_OUTPUT_DIR + ".libs/libeio.a"
|
||||||
|
LIBEIO_TARGET = LIBEIO_LIBS
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :libeio => LIBEIO_TARGET
|
||||||
|
-
|
||||||
|
+
|
||||||
|
dependencies = [
|
||||||
|
"ext/libeio/configure",
|
||||||
|
"ext/libeio/config.h.in",
|
||||||
|
@@ -181,7 +181,7 @@
|
||||||
|
cxx = PlatformInfo.cxx
|
||||||
|
# Disable all warnings. The author has a clear standpoint on that:
|
||||||
|
# http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#COMPILER_WARNINGS
|
||||||
|
- cflags = "#{EXTRA_CFLAGS} -w"
|
||||||
|
+ cflags = "#{EXTRA_CFLAGS} #{ENV['RPM_OPT_FLAGS']} -w"
|
||||||
|
sh "mkdir -p #{LIBEIO_OUTPUT_DIR}" if !File.directory?(LIBEIO_OUTPUT_DIR)
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && sh #{LIBEIO_SOURCE_DIR}configure " +
|
||||||
|
"--disable-shared --enable-static " +
|
||||||
|
@@ -189,13 +189,14 @@
|
||||||
|
# do, so we force our compiler choice.
|
||||||
|
"CC='#{cc}' CXX='#{cxx}' CFLAGS='#{cflags}'"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
libeio_sources = Dir["ext/libeio/{*.c,*.h}"]
|
||||||
|
file LIBEIO_OUTPUT_DIR + ".libs/libeio.a" => [LIBEIO_OUTPUT_DIR + "Makefile"] + libeio_sources do
|
||||||
|
sh "rm -f #{LIBEIO_OUTPUT_DIR}/libeio.la"
|
||||||
|
+ sh "cd #{LIBEIO_OUTPUT_DIR} && make eio.o"
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && make libeio.la"
|
||||||
|
end
|
||||||
|
-
|
||||||
|
+
|
||||||
|
task :clean do
|
||||||
|
if File.exist?(LIBEIO_OUTPUT_DIR + "Makefile")
|
||||||
|
sh "cd #{LIBEIO_OUTPUT_DIR} && make maintainer-clean"
|
||||||
|
--- passenger/ext/boost/libs/thread/src/pthread/thread.cpp
|
||||||
|
+++ passenger/ext/boost/libs/thread/src/pthread/thread.cpp
|
||||||
|
@@ -390,6 +390,7 @@
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
+ return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool thread::joinable() const BOOST_NOEXCEPT
|
||||||
|
--- passenger/lib/phusion_passenger/common_library.rb
|
||||||
|
+++ passenger/lib/phusion_passenger/common_library.rb
|
||||||
|
@@ -101,7 +101,7 @@
|
||||||
|
end
|
||||||
|
|
||||||
|
def define_tasks(extra_compiler_flags = nil)
|
||||||
|
- flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} "
|
||||||
|
+ flags = "-Iext -Iext/common #{LIBEV_CFLAGS} #{extra_compiler_flags} -fPIC #{ENV['RPM_OPT_FLAGS']} "
|
||||||
|
flags << EXTRA_CXXFLAGS
|
||||||
|
flags.strip!
|
||||||
|
|
||||||
|
@@ -171,7 +171,7 @@
|
||||||
|
# packaging the runtime ('passenger package-runtime') so we
|
||||||
|
# never generate static libraries.
|
||||||
|
library = "#{@output_dir}/#{category}.a"
|
||||||
|
-
|
||||||
|
+
|
||||||
|
file(library => object_filenames) do
|
||||||
|
create_static_library(library, object_filenames.join(' '))
|
||||||
|
end
|
3
nginx-1.4.4.tar.gz
Normal file
3
nginx-1.4.4.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7c989a58e5408c9593da0bebcd0e4ffc3d892d1316ba5042ddb0be5b0b4102b9
|
||||||
|
size 768217
|
45
nginx-aio.patch
Normal file
45
nginx-aio.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
Index: nginx-1.2.9/auto/unix
|
||||||
|
===================================================================
|
||||||
|
--- nginx-1.2.9.orig/auto/unix
|
||||||
|
+++ nginx-1.2.9/auto/unix
|
||||||
|
@@ -396,7 +396,11 @@ if [ $NGX_FILE_AIO = YES ]; then
|
||||||
|
#include <sys/syscall.h>"
|
||||||
|
ngx_feature_path=
|
||||||
|
ngx_feature_libs=
|
||||||
|
- ngx_feature_test="int n = SYS_eventfd;
|
||||||
|
+ ngx_feature_test="#ifdef SYS_eventfd
|
||||||
|
+ int n = SYS_eventfd;
|
||||||
|
+ #else
|
||||||
|
+ int n = SYS_eventfd2;
|
||||||
|
+ #endif
|
||||||
|
struct iocb iocb;
|
||||||
|
iocb.aio_lio_opcode = IOCB_CMD_PREAD;
|
||||||
|
iocb.aio_flags = IOCB_FLAG_RESFD;
|
||||||
|
Index: nginx-1.2.9/src/event/modules/ngx_epoll_module.c
|
||||||
|
===================================================================
|
||||||
|
--- nginx-1.2.9.orig/src/event/modules/ngx_epoll_module.c
|
||||||
|
+++ nginx-1.2.9/src/event/modules/ngx_epoll_module.c
|
||||||
|
@@ -70,10 +70,7 @@ int epoll_wait(int epfd, struct epoll_ev
|
||||||
|
|
||||||
|
#if (NGX_HAVE_FILE_AIO)
|
||||||
|
|
||||||
|
-#define SYS_io_setup 245
|
||||||
|
-#define SYS_io_destroy 246
|
||||||
|
-#define SYS_io_getevents 247
|
||||||
|
-#define SYS_eventfd 323
|
||||||
|
+#include <sys/syscall.h>
|
||||||
|
|
||||||
|
typedef u_int aio_context_t;
|
||||||
|
|
||||||
|
@@ -225,7 +222,11 @@ ngx_epoll_aio_init(ngx_cycle_t *cycle, n
|
||||||
|
int n;
|
||||||
|
struct epoll_event ee;
|
||||||
|
|
||||||
|
+#ifdef SYS_eventfd
|
||||||
|
ngx_eventfd = syscall(SYS_eventfd, 0);
|
||||||
|
+#else
|
||||||
|
+ ngx_eventfd = syscall(SYS_eventfd2, 0, 0);
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
if (ngx_eventfd == -1) {
|
||||||
|
ngx_log_error(NGX_LOG_EMERG, cycle->log, ngx_errno,
|
164
nginx.changes
164
nginx.changes
@ -1,3 +1,167 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 17 11:03:29 UTC 2014 - aj@ajaissle.de
|
||||||
|
|
||||||
|
- Rebased passenger_fix.patch
|
||||||
|
+ nginx-1.4.4-passenger-3.0.12_fix.patch for openSUSE 12.2 and 12.3
|
||||||
|
+ nginx-1.4.2-passenger_fix.patch for openSUSE 13.1 and Tumbleweed
|
||||||
|
+ nginx-1.4.4-passenger-4.0.33_fix.patch for openSUSE Factory
|
||||||
|
- Always rebuild libpassenger_common on openSUSE < 1310 with -fPIC
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 3 10:36:06 UTC 2014 - dmueller@suse.com
|
||||||
|
|
||||||
|
- update to 1.4.4:
|
||||||
|
*) Security: a character following an unescaped space in a request line
|
||||||
|
was handled incorrectly (CVE-2013-4547); the bug had appeared in
|
||||||
|
0.8.41.
|
||||||
|
*) Bugfix: a segmentation fault might occur in a worker process if the
|
||||||
|
ngx_http_spdy_module was used with the "client_body_in_file_only"
|
||||||
|
directive.
|
||||||
|
*) Bugfix: a segmentation fault might occur on start or during
|
||||||
|
reconfiguration if the "try_files" directive was used with an empty
|
||||||
|
parameter.
|
||||||
|
*) Bugfix: the $request_time variable did not work in nginx/Windows.
|
||||||
|
*) Bugfix: in the ngx_http_auth_basic_module when using "$apr1$"
|
||||||
|
*) Bugfix: in the ngx_http_autoindex_module.
|
||||||
|
*) Bugfix: in the mail proxy server.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 17 17:45:54 UTC 2013 - alarrosa@suse.com
|
||||||
|
|
||||||
|
- Updated passenger patch to apply correctly, also added rubygem-passenger
|
||||||
|
as BuildRequires
|
||||||
|
|
||||||
|
- modified patches:
|
||||||
|
* nginx-1.4.2-passenger_fix.patch
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 7 10:20:49 UTC 2013 - lslezak@suse.cz
|
||||||
|
|
||||||
|
- updated passenger patch to apply (Utils/MD5.h patch is not needed
|
||||||
|
anymore, fixed upstream)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 14 08:09:51 UTC 2013 - lslezak@suse.cz
|
||||||
|
|
||||||
|
- enable back passenger support (needed by WebYast)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 22 20:27:56 UTC 2013 - crrodriguez@opensuse.org
|
||||||
|
|
||||||
|
- Fix PIE build and linkage, must use --with-ld-opt
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 22 19:56:44 UTC 2013 - crrodriguez@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 1.4.2 stable
|
||||||
|
|
||||||
|
* The list of changes is massive and it wont fit here see
|
||||||
|
http://nginx.org/en/CHANGES-1.4. packaging changes follow.
|
||||||
|
|
||||||
|
- Enable the SPDY module on distributions that ship openssl >= 1.0.1
|
||||||
|
- Build with full RELRO and PIE.
|
||||||
|
- systemd unit:
|
||||||
|
* remove syslog.target that no longer exists
|
||||||
|
* set PrivateTmp to true
|
||||||
|
* Make it a non-forking service.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 1 13:46:16 UTC 2013 - schwab@suse.de
|
||||||
|
|
||||||
|
- nginx-aio.patch: fix AIO support for asm-generic platforms
|
||||||
|
- Fix quilt setup
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 26 12:37:22 UTC 2013 - coolo@suse.com
|
||||||
|
|
||||||
|
- since passenger 4.0 the nginx extensions does not build, so disable
|
||||||
|
it
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 24 12:24:35 UTC 2013 - suse@ammler.ch
|
||||||
|
|
||||||
|
- update to 1.2.9
|
||||||
|
*) Security: contents of worker process memory might be sent to a client
|
||||||
|
if HTTP backend returned specially crafted response (CVE-2013-2070);
|
||||||
|
the bug had appeared in 1.1.4. (bnc#821184)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 16 12:04:35 UTC 2013 - suse@ammler.ch
|
||||||
|
|
||||||
|
- update to 1.2.8
|
||||||
|
*) Bugfix: new sessions were not always stored if the "ssl_session_cache
|
||||||
|
shared" directive was used and there was no free space in shared
|
||||||
|
memory.
|
||||||
|
*) Bugfix: responses might hang if subrequests were used and a DNS error
|
||||||
|
happened during subrequest processing.
|
||||||
|
*) Bugfix: in the ngx_http_mp4_module.
|
||||||
|
*) Bugfix: in backend usage accounting.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 9 08:45:55 UTC 2013 - coolo@suse.com
|
||||||
|
|
||||||
|
- remove workaround breaking things
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 21 06:50:21 UTC 2013 - e.istomin@edss.ee
|
||||||
|
|
||||||
|
- updated to 1.2.7
|
||||||
|
*) Bugfix: a segmentation fault might occur in a worker process if the
|
||||||
|
"if" directive was used.
|
||||||
|
Thanks to Piotr Sikora.
|
||||||
|
*) Bugfix: a "100 Continue" response was issued with "413 Request Entity
|
||||||
|
Too Large" responses.
|
||||||
|
*) Bugfix: the "[crit] SSL_write() failed (SSL:)" error.
|
||||||
|
|
||||||
|
- added mp4 module (--with-http_mp4_module)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 7 20:24:52 UTC 2013 - jengelh@inai.de
|
||||||
|
|
||||||
|
- Parallel building with %_smp_mflags; remove redundant %clean section
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 17 10:32:12 UTC 2012 - suse@ammler.ch
|
||||||
|
|
||||||
|
- update to 1.2.6
|
||||||
|
*) Feature: the $request_time and $msec variables can now be used not
|
||||||
|
only in the "log_format" directive.
|
||||||
|
*) Bugfix: cache manager and cache loader processes might not be able to
|
||||||
|
start if more than 512 listen sockets were used.
|
||||||
|
*) Bugfix: in the ngx_http_dav_module.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 5 12:09:58 UTC 2012 - opensuse@dschung.de
|
||||||
|
|
||||||
|
- add Provides: httpd and http_daemon, so a "Requires: httpd"
|
||||||
|
or "Suggests: httpd" doesn't only resolve to apache2
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 21 18:07:33 UTC 2012 - suse@ammler.ch
|
||||||
|
|
||||||
|
- revert permission for /var/log/nginx so reopen is possible (bnc#790726)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 14 14:47:52 UTC 2012 - suse@ammler.ch
|
||||||
|
|
||||||
|
- update to 1.2.5
|
||||||
|
*) Feature: the "optional_no_ca" parameter of the "ssl_verify_client"
|
||||||
|
directive.
|
||||||
|
*) Feature: the $bytes_sent, $connection, and $connection_requests
|
||||||
|
variables can now be used not only in the "log_format" directive.
|
||||||
|
*) Feature: resolver now randomly rotates addresses returned from cache.
|
||||||
|
*) Feature: the "auto" parameter of the "worker_processes" directive.
|
||||||
|
*) Bugfix: "cache file ... has md5 collision" alert.
|
||||||
|
*) Bugfix: OpenSSL 0.9.7 compatibility.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 24 08:14:06 UTC 2012 - suse@ammler.ch
|
||||||
|
|
||||||
|
- reenable passenger (required by webyast, was silently disabled)
|
||||||
|
- /var/log/nginx/ should belong to root (rpmlint issue)
|
||||||
|
- Recommends: logrotate (rpmlint issue)
|
||||||
|
- no need to keep default configs
|
||||||
|
- change FSF from postal to url address (rpmlint issue)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Oct 11 14:53:37 UTC 2012 - suse@ammler.ch
|
Thu Oct 11 14:53:37 UTC 2012 - suse@ammler.ch
|
||||||
|
|
||||||
|
@ -13,9 +13,7 @@
|
|||||||
# Lesser General Public License for more details.
|
# Lesser General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Lesser General Public
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# License along with this library; if not, write to the Free Software
|
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307,
|
|
||||||
# USA.
|
|
||||||
#
|
#
|
||||||
# /etc/init.d/nginx
|
# /etc/init.d/nginx
|
||||||
# and its symbolic link
|
# and its symbolic link
|
||||||
|
3
nginx.rpmlintrc
Normal file
3
nginx.rpmlintrc
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# user nginx needs write permissions to /var/log/nginx so nginx is able to reopen the logs
|
||||||
|
addFilter("nginx.*: W: suse-logrotate-user-writable-log-dir /var/log/nginx nginx:nginx 0750")
|
||||||
|
|
@ -1,14 +1,13 @@
|
|||||||
[Unit]
|
[Unit]
|
||||||
Description=The nginx HTTP and reverse proxy server
|
Description=The nginx HTTP and reverse proxy server
|
||||||
After=syslog.target network.target remote-fs.target nss-lookup.target
|
After=network.target remote-fs.target nss-lookup.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=forking
|
|
||||||
PIDFile=/run/nginx.pid
|
|
||||||
ExecStartPre=/usr/sbin/nginx -t
|
ExecStartPre=/usr/sbin/nginx -t
|
||||||
ExecStart=/usr/sbin/nginx
|
ExecStart=/usr/sbin/nginx -g "daemon off;"
|
||||||
ExecReload=/bin/kill -s HUP $MAINPID
|
ExecReload=/bin/kill -s HUP $MAINPID
|
||||||
ExecStop=/bin/kill -s QUIT $MAINPID
|
ExecStop=/bin/kill -s QUIT $MAINPID
|
||||||
|
PrivateTmp=true
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
99
nginx.spec
99
nginx.spec
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package nginx-1.0
|
# spec file for package nginx
|
||||||
#
|
#
|
||||||
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -15,14 +15,15 @@
|
|||||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
Name: nginx
|
Name: nginx
|
||||||
Version: 1.2.4
|
Version: 1.4.4
|
||||||
Release: 0
|
Release: 0
|
||||||
#
|
#
|
||||||
%define pkg_name nginx
|
%define pkg_name nginx
|
||||||
#
|
#
|
||||||
%define ngx_prefix %{_prefix}
|
%define ngx_prefix %{_prefix}
|
||||||
%define ngx_sbindir %{_sbindir}/nginx
|
%define ngx_sbin_path %{_sbindir}/nginx
|
||||||
%define ngx_conf_dir %{_sysconfdir}/nginx
|
%define ngx_conf_dir %{_sysconfdir}/nginx
|
||||||
%define ngx_conf_path %{ngx_conf_dir}/nginx.conf
|
%define ngx_conf_path %{ngx_conf_dir}/nginx.conf
|
||||||
%define ngx_log_dir /var/log/nginx
|
%define ngx_log_dir /var/log/nginx
|
||||||
@ -37,22 +38,21 @@ Release: 0
|
|||||||
%define ngx_tmp_scgi %{ngx_home}/scgi/
|
%define ngx_tmp_scgi %{ngx_home}/scgi/
|
||||||
%define ngx_tmp_uwsgi %{ngx_home}/uwsgi/
|
%define ngx_tmp_uwsgi %{ngx_home}/uwsgi/
|
||||||
%define ngx_user_group nginx
|
%define ngx_user_group nginx
|
||||||
%define with_cpp_test 0
|
%define with_cpp_test 0
|
||||||
%define with_google_perftools 0
|
%define with_google_perftools 0
|
||||||
%if 0%{?suse_version} >= 1110
|
%if 0%{?suse_version} >= 1110
|
||||||
%define with_passenger 0
|
|
||||||
%define with_libatomic 1
|
%define with_libatomic 1
|
||||||
%endif
|
%endif
|
||||||
|
%if 0%{?suse_version} >= 1220
|
||||||
|
# passenger is required by webyast
|
||||||
|
%define with_passenger 1
|
||||||
|
%endif
|
||||||
#
|
#
|
||||||
Group: Productivity/Networking/Web/Proxy
|
|
||||||
License: BSD-2-Clause
|
|
||||||
#
|
#
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
%if 0%{?with_cpp_test}
|
|
||||||
BuildRequires: gcc-c++
|
|
||||||
%endif
|
|
||||||
BuildRequires: gd-devel
|
|
||||||
BuildRequires: GeoIP-devel
|
BuildRequires: GeoIP-devel
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: gd-devel
|
||||||
%if 0%{?with_google_perftools}
|
%if 0%{?with_google_perftools}
|
||||||
BuildRequires: google-perftools-devel
|
BuildRequires: google-perftools-devel
|
||||||
%endif
|
%endif
|
||||||
@ -65,23 +65,23 @@ BuildRequires: pcre-devel
|
|||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
BuildRequires: zlib-devel
|
BuildRequires: zlib-devel
|
||||||
%if 0%{?with_passenger}
|
%if 0%{?with_passenger}
|
||||||
BuildRequires: ruby
|
BuildRequires: curl-devel
|
||||||
|
BuildRequires: ruby-devel
|
||||||
|
BuildRequires: rubygem-passenger
|
||||||
BuildRequires: rubygem-passenger-devel-static
|
BuildRequires: rubygem-passenger-devel-static
|
||||||
# workaround for obs scheduler:
|
|
||||||
BuildRequires: rubygem-rack-1_1
|
|
||||||
Recommends: packageand(rubygem-passenger:rubygem-passenger-nginx)
|
Recommends: packageand(rubygem-passenger:rubygem-passenger-nginx)
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?suse_version} >= 1210
|
%if 0%{?suse_version} >= 1210
|
||||||
BuildRequires: systemd
|
BuildRequires: systemd
|
||||||
%{?systemd_requires}
|
%{?systemd_requires}
|
||||||
%define has_systemd 1
|
%define has_systemd 1
|
||||||
%endif
|
%endif
|
||||||
|
Recommends: logrotate
|
||||||
PreReq: %fillup_prereq
|
PreReq: %fillup_prereq
|
||||||
PreReq: %insserv_prereq
|
PreReq: %insserv_prereq
|
||||||
PreReq: pwdutils
|
PreReq: pwdutils
|
||||||
Provides: nginx = %{version}
|
|
||||||
#
|
#
|
||||||
Conflicts: nginx-0.5 nginx-0.6 nginx-0.7 nginx-0.8 nginx-0.9 nginx-1.0 nginx-1.2 nginx-1.3 nginx-dev
|
Conflicts: nginx-0.5 nginx-0.6 nginx-0.7 nginx-0.8 nginx-0.9 nginx-1.0 nginx-1.2 nginx-1.3
|
||||||
%requires_eq perl
|
%requires_eq perl
|
||||||
#
|
#
|
||||||
Url: http://nginx.net/
|
Url: http://nginx.net/
|
||||||
@ -99,7 +99,23 @@ Patch3: nginx-1.2.4-perl_vendor_install.patch
|
|||||||
Patch4: nginx-1.0.4_default_config.patch
|
Patch4: nginx-1.0.4_default_config.patch
|
||||||
# PATCH for fixing docs/html path
|
# PATCH for fixing docs/html path
|
||||||
Patch5: nginx-1.0.15_docs.patch
|
Patch5: nginx-1.0.15_docs.patch
|
||||||
|
# PATCH-FIX-UPSTREAM nginx-aio.patch fix support for Linux AIO
|
||||||
|
Patch6: nginx-aio.patch
|
||||||
|
%if 0%{?suse_version} > 1310
|
||||||
|
Patch7: nginx-1.4.4-passenger-4.0.33_fix.patch
|
||||||
|
%else
|
||||||
|
%if 0%{?suse_version} == 1310
|
||||||
|
Patch7: nginx-1.4.2-passenger_fix.patch
|
||||||
|
%else
|
||||||
|
Patch7: nginx-1.4.4-passenger-3.0.12_fix.patch
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
Summary: A HTTP server and IMAP/POP3 proxy server
|
Summary: A HTTP server and IMAP/POP3 proxy server
|
||||||
|
License: BSD-2-Clause
|
||||||
|
Group: Productivity/Networking/Web/Proxy
|
||||||
|
Provides: http_daemon
|
||||||
|
Provides: httpd
|
||||||
|
|
||||||
%description
|
%description
|
||||||
nginx [engine x] is a HTTP server and IMAP/POP3 proxy server written by Igor Sysoev.
|
nginx [engine x] is a HTTP server and IMAP/POP3 proxy server written by Igor Sysoev.
|
||||||
It has been running on many heavily loaded Russian sites for more than two years.
|
It has been running on many heavily loaded Russian sites for more than two years.
|
||||||
@ -115,16 +131,25 @@ Author:
|
|||||||
%patch3
|
%patch3
|
||||||
%patch4
|
%patch4
|
||||||
%patch5
|
%patch5
|
||||||
|
%patch6 -p1
|
||||||
|
|
||||||
perl -pi -e 's|\r\n|\n|g' contrib/geo2nginx.pl
|
perl -pi -e 's|\r\n|\n|g' contrib/geo2nginx.pl
|
||||||
|
|
||||||
%build
|
|
||||||
%if 0%{?with_passenger}
|
%if 0%{?with_passenger}
|
||||||
ln -s %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
cp -a %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
||||||
|
%if 0%{suse_version} < 1310
|
||||||
|
if [[ -f "passenger/ext/common/libpassenger_common.a" ]] || \
|
||||||
|
[[ -f "passenger/ext/common/libboost_oxt.a" ]]; then
|
||||||
|
rm -r passenger/ext/common/libboost_oxt* passenger/ext/common/libpassenger_common*
|
||||||
|
fi
|
||||||
%endif
|
%endif
|
||||||
|
%patch7
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%build
|
||||||
./configure \
|
./configure \
|
||||||
--prefix=%{ngx_prefix}/ \
|
--prefix=%{ngx_prefix}/ \
|
||||||
--sbin-path=%{ngx_sbindir} \
|
--sbin-path=%{ngx_sbin_path} \
|
||||||
--conf-path=%{ngx_conf_path} \
|
--conf-path=%{ngx_conf_path} \
|
||||||
--error-log-path=%{ngx_error_log} \
|
--error-log-path=%{ngx_error_log} \
|
||||||
--http-log-path=%{ngx_access_log} \
|
--http-log-path=%{ngx_access_log} \
|
||||||
@ -136,13 +161,16 @@ ln -s %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
|||||||
--http-uwsgi-temp-path=%{ngx_tmp_uwsgi} \
|
--http-uwsgi-temp-path=%{ngx_tmp_uwsgi} \
|
||||||
--http-scgi-temp-path=%{ngx_tmp_scgi} \
|
--http-scgi-temp-path=%{ngx_tmp_scgi} \
|
||||||
--user=nginx --group=nginx \
|
--user=nginx --group=nginx \
|
||||||
--without-select_module \
|
--without-select_module \
|
||||||
--without-poll_module \
|
--without-poll_module \
|
||||||
--with-ipv6 \
|
--with-ipv6 \
|
||||||
%if 0%{?suse_version} > 1110
|
%if 0%{?suse_version} > 1110
|
||||||
--with-file-aio \
|
--with-file-aio \
|
||||||
%endif
|
%endif
|
||||||
--with-http_ssl_module \
|
--with-http_ssl_module \
|
||||||
|
%if 0%{suse_version} > 1220
|
||||||
|
--with-http_spdy_module \
|
||||||
|
%endif
|
||||||
--with-http_realip_module \
|
--with-http_realip_module \
|
||||||
--with-http_addition_module \
|
--with-http_addition_module \
|
||||||
--with-http_xslt_module \
|
--with-http_xslt_module \
|
||||||
@ -151,6 +179,7 @@ ln -s %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
|||||||
--with-http_sub_module \
|
--with-http_sub_module \
|
||||||
--with-http_dav_module \
|
--with-http_dav_module \
|
||||||
--with-http_flv_module \
|
--with-http_flv_module \
|
||||||
|
--with-http_mp4_module \
|
||||||
--with-http_gzip_static_module \
|
--with-http_gzip_static_module \
|
||||||
--with-http_random_index_module \
|
--with-http_random_index_module \
|
||||||
--with-http_secure_link_module \
|
--with-http_secure_link_module \
|
||||||
@ -176,14 +205,15 @@ ln -s %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
|||||||
--with-md5=/usr \
|
--with-md5=/usr \
|
||||||
--with-sha1=/usr \
|
--with-sha1=/usr \
|
||||||
%if 0%{?suse_version} > 1000 || 0%{?fedora_version} > 4 || 0%{?mandriva_version} > 2006
|
%if 0%{?suse_version} > 1000 || 0%{?fedora_version} > 4 || 0%{?mandriva_version} > 2006
|
||||||
--with-cc-opt="%{optflags} -D_GNU_SOURCE -std=gnu99 -fstack-protector"
|
--with-cc-opt="%{optflags} -fPIE -D_GNU_SOURCE -std=gnu99 -fstack-protector" \
|
||||||
|
--with-ld-opt="-Wl,-z,relro,-z,now -pie"
|
||||||
%else
|
%else
|
||||||
--with-cc-opt="%{optflags}"
|
--with-cc-opt="%{optflags}"
|
||||||
%endif
|
%endif
|
||||||
%{__make}
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%makeinstall
|
make install DESTDIR="%buildroot"
|
||||||
%perl_process_packlist
|
%perl_process_packlist
|
||||||
#
|
#
|
||||||
%{__install} -d -m 0750 %{buildroot}%{ngx_home}/{,tmp,proxy,fastcgi,scgi,uwsgi}
|
%{__install} -d -m 0750 %{buildroot}%{ngx_home}/{,tmp,proxy,fastcgi,scgi,uwsgi}
|
||||||
@ -221,9 +251,6 @@ ln -s %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
|||||||
%service_del_postun nginx.service
|
%service_del_postun nginx.service
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%clean
|
|
||||||
%{__rm} -rf %{buildroot}
|
|
||||||
|
|
||||||
%pre
|
%pre
|
||||||
/usr/sbin/groupadd -r %{ngx_user_group} &>/dev/null ||:
|
/usr/sbin/groupadd -r %{ngx_user_group} &>/dev/null ||:
|
||||||
/usr/sbin/useradd -g %{ngx_user_group} -s /bin/false -r -c "user for %{ngx_user_group}" -d %{ngx_home} %{ngx_user_group} &>/dev/null ||:
|
/usr/sbin/useradd -g %{ngx_user_group} -s /bin/false -r -c "user for %{ngx_user_group}" -d %{ngx_home} %{ngx_user_group} &>/dev/null ||:
|
||||||
@ -238,21 +265,21 @@ ln -s %{_libdir}/ruby/gems/%{rb_ver}/gems/passenger-* passenger
|
|||||||
%config(noreplace) %{ngx_conf_dir}/koi-utf
|
%config(noreplace) %{ngx_conf_dir}/koi-utf
|
||||||
%config(noreplace) %{ngx_conf_dir}/koi-win
|
%config(noreplace) %{ngx_conf_dir}/koi-win
|
||||||
%config(noreplace) %{ngx_conf_dir}/fastcgi_params
|
%config(noreplace) %{ngx_conf_dir}/fastcgi_params
|
||||||
%config(noreplace) %{ngx_conf_dir}/fastcgi_params.default
|
%config %{ngx_conf_dir}/fastcgi_params.default
|
||||||
%config(noreplace) %{ngx_conf_dir}/mime.types
|
%config(noreplace) %{ngx_conf_dir}/mime.types
|
||||||
%config(noreplace) %{ngx_conf_dir}/mime.types.default
|
%config %{ngx_conf_dir}/mime.types.default
|
||||||
%config(noreplace) %{ngx_conf_dir}/nginx.conf
|
%config(noreplace) %{ngx_conf_dir}/nginx.conf
|
||||||
%config(noreplace) %{ngx_conf_dir}/nginx.conf.default
|
%config %{ngx_conf_dir}/nginx.conf.default
|
||||||
%config(noreplace) %{ngx_conf_dir}/fastcgi.conf
|
%config(noreplace) %{ngx_conf_dir}/fastcgi.conf
|
||||||
%config(noreplace) %{ngx_conf_dir}/fastcgi.conf.default
|
%config %{ngx_conf_dir}/fastcgi.conf.default
|
||||||
%config(noreplace) %{ngx_conf_dir}/win-utf
|
%config(noreplace) %{ngx_conf_dir}/win-utf
|
||||||
%config(noreplace) %{ngx_conf_dir}/scgi_params
|
%config(noreplace) %{ngx_conf_dir}/scgi_params
|
||||||
%config(noreplace) %{ngx_conf_dir}/scgi_params.default
|
%config %{ngx_conf_dir}/scgi_params.default
|
||||||
%config(noreplace) %{ngx_conf_dir}/uwsgi_params
|
%config(noreplace) %{ngx_conf_dir}/uwsgi_params
|
||||||
%config(noreplace) %{ngx_conf_dir}/uwsgi_params.default
|
%config %{ngx_conf_dir}/uwsgi_params.default
|
||||||
%{perl_vendorarch}/auto/nginx/
|
%{perl_vendorarch}/auto/nginx/
|
||||||
%{perl_vendorarch}/nginx.pm
|
%{perl_vendorarch}/nginx.pm
|
||||||
%{ngx_sbindir}
|
%{ngx_sbin_path}
|
||||||
%{_mandir}/man3/nginx.3pm*
|
%{_mandir}/man3/nginx.3pm*
|
||||||
/srv/www/htdocs/50x.html
|
/srv/www/htdocs/50x.html
|
||||||
%if 0%{?suse_version} && 0%{?suse_version} < 1140
|
%if 0%{?suse_version} && 0%{?suse_version} < 1140
|
||||||
|
Loading…
x
Reference in New Issue
Block a user