passenger 6.1.4 → 6.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +6 -1
- data/Rakefile +1 -1
- data/build/agent.rb +15 -15
- data/build/apache2.rb +18 -18
- data/build/basics.rb +1 -1
- data/build/common_library.rb +21 -20
- data/build/cxx_tests.rb +19 -19
- data/build/integration_tests.rb +3 -3
- data/build/misc.rb +10 -9
- data/build/nginx.rb +12 -12
- data/build/oxt_tests.rb +7 -7
- data/build/packaging.rb +11 -11
- data/build/ruby_extension.rb +3 -3
- data/build/ruby_tests.rb +1 -1
- data/build/schema_printer.rb +13 -13
- data/build/support/cplusplus.rb +8 -8
- data/build/support/cxx_dependency_map.rb +622 -622
- data/build/support/general.rb +0 -1
- data/build/support/vendor/cxx_hinted_parser/lib/cxx_hinted_parser/parser.rb +4 -4
- data/build/support/vendor/cxxcodebuilder/lib/cxxcodebuilder/builder.rb +1 -1
- data/build/test_basics.rb +4 -4
- data/dev/colorize-logs +6 -6
- data/dev/copy_boost_headers +8 -8
- data/dev/index_cxx_dependencies.rb +6 -6
- data/dev/install_scripts_bootstrap_code.rb +4 -4
- data/dev/list_tests +2 -2
- data/dev/nginx_version_sha256 +2 -2
- data/dev/parse_file_descriptor_log +1 -1
- data/passenger.gemspec +4 -4
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/helper-scripts/backtrace-sanitizer.rb +2 -2
- data/src/helper-scripts/download_binaries/extconf.rb +8 -8
- data/src/helper-scripts/meteor-loader.rb +39 -39
- data/src/helper-scripts/rack-loader.rb +1 -0
- data/src/helper-scripts/rack-preloader.rb +2 -1
- data/src/ruby_native_extension/extconf.rb +27 -28
- data/src/ruby_supportlib/phusion_passenger/abstract_installer.rb +27 -27
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance.rb +5 -4
- data/src/ruby_supportlib/phusion_passenger/admin_tools/instance_registry.rb +9 -8
- data/src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb +24 -24
- data/src/ruby_supportlib/phusion_passenger/admin_tools.rb +5 -5
- data/src/ruby_supportlib/phusion_passenger/apache2/config_options.rb +526 -526
- data/src/ruby_supportlib/phusion_passenger/apache2/config_utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +105 -105
- data/src/ruby_supportlib/phusion_passenger/config/about_command.rb +5 -5
- data/src/ruby_supportlib/phusion_passenger/config/agent_compiler.rb +7 -6
- data/src/ruby_supportlib/phusion_passenger/config/api_call_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/compile_agent_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/compile_nginx_engine_command.rb +5 -5
- data/src/ruby_supportlib/phusion_passenger/config/detach_process_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/download_agent_command.rb +17 -17
- data/src/ruby_supportlib/phusion_passenger/config/download_nginx_engine_command.rb +18 -18
- data/src/ruby_supportlib/phusion_passenger/config/install_agent_command.rb +10 -10
- data/src/ruby_supportlib/phusion_passenger/config/install_standalone_runtime_command.rb +12 -12
- data/src/ruby_supportlib/phusion_passenger/config/installation_utils.rb +24 -23
- data/src/ruby_supportlib/phusion_passenger/config/main.rb +26 -26
- data/src/ruby_supportlib/phusion_passenger/config/nginx_engine_compiler.rb +5 -4
- data/src/ruby_supportlib/phusion_passenger/config/reopen_logs_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/restart_app_command.rb +4 -4
- data/src/ruby_supportlib/phusion_passenger/config/system_properties_command.rb +14 -13
- data/src/ruby_supportlib/phusion_passenger/config/utils.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/config/validate_install_command.rb +34 -33
- data/src/ruby_supportlib/phusion_passenger/console_text_template.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/debug_logging.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb +35 -36
- data/src/ruby_supportlib/phusion_passenger/message_channel.rb +17 -16
- data/src/ruby_supportlib/phusion_passenger/message_client.rb +5 -4
- data/src/ruby_supportlib/phusion_passenger/native_support.rb +42 -42
- data/src/ruby_supportlib/phusion_passenger/nginx/config_options.rb +548 -548
- data/src/ruby_supportlib/phusion_passenger/packaging.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache.rb +85 -84
- data/src/ruby_supportlib/phusion_passenger/platform_info/apache_detector.rb +13 -13
- data/src/ruby_supportlib/phusion_passenger/platform_info/binary_compatibility.rb +5 -5
- data/src/ruby_supportlib/phusion_passenger/platform_info/compiler.rb +65 -65
- data/src/ruby_supportlib/phusion_passenger/platform_info/crypto.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/platform_info/curl.rb +5 -5
- data/src/ruby_supportlib/phusion_passenger/platform_info/cxx_portability.rb +10 -10
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck.rb +6 -5
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/apache2.rb +7 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/libs.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/ruby.rb +7 -7
- data/src/ruby_supportlib/phusion_passenger/platform_info/depcheck_specs/utilities.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/linux.rb +14 -13
- data/src/ruby_supportlib/phusion_passenger/platform_info/networking.rb +27 -26
- data/src/ruby_supportlib/phusion_passenger/platform_info/operating_system.rb +16 -16
- data/src/ruby_supportlib/phusion_passenger/platform_info/pcre.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/platform_info/ruby.rb +29 -28
- data/src/ruby_supportlib/phusion_passenger/platform_info/zlib.rb +2 -2
- data/src/ruby_supportlib/phusion_passenger/platform_info.rb +37 -36
- data/src/ruby_supportlib/phusion_passenger/plugin.rb +3 -3
- data/src/ruby_supportlib/phusion_passenger/preloader_shared_helpers.rb +16 -15
- data/src/ruby_supportlib/phusion_passenger/public_api.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/handler.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/rack/out_of_band_gc.rb +5 -4
- data/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb +8 -7
- data/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb +9 -11
- data/src/ruby_supportlib/phusion_passenger/request_handler.rb +27 -26
- data/src/ruby_supportlib/phusion_passenger/ruby_core_enhancements.rb +6 -5
- data/src/ruby_supportlib/phusion_passenger/ruby_core_io_enhancements.rb +7 -6
- data/src/ruby_supportlib/phusion_passenger/standalone/app_finder.rb +13 -13
- data/src/ruby_supportlib/phusion_passenger/standalone/command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/standalone/config_options_list.rb +351 -351
- data/src/ruby_supportlib/phusion_passenger/standalone/main.rb +11 -11
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/builtin_engine.rb +13 -14
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command/nginx_engine.rb +21 -23
- data/src/ruby_supportlib/phusion_passenger/standalone/start_command.rb +4 -4
- data/src/ruby_supportlib/phusion_passenger/standalone/status_command.rb +5 -5
- data/src/ruby_supportlib/phusion_passenger/standalone/stop_command.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/standalone/version_command.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/download.rb +12 -11
- data/src/ruby_supportlib/phusion_passenger/utils/file_system_watcher.rb +9 -9
- data/src/ruby_supportlib/phusion_passenger/utils/hosts_file_parser.rb +8 -7
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +7 -6
- data/src/ruby_supportlib/phusion_passenger/utils/native_support_utils.rb +4 -4
- data/src/ruby_supportlib/phusion_passenger/utils/progress_bar.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/shellwords.rb +1 -1
- data/src/ruby_supportlib/phusion_passenger/utils/strscan.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/utils/tee_input.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/utils/terminal_choice_menu.rb +13 -12
- data/src/ruby_supportlib/phusion_passenger/utils/tmpio.rb +2 -3
- data/src/ruby_supportlib/phusion_passenger/utils/unseekable_socket.rb +7 -7
- data/src/ruby_supportlib/phusion_passenger/utils.rb +17 -16
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/app.rb +1 -0
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/gdb_controller.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/lldb_controller.rb +2 -1
- data/src/ruby_supportlib/phusion_passenger/vendor/crash_watch/utils.rb +3 -2
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +13 -13
- data/src/ruby_supportlib/phusion_passenger.rb +23 -22
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2dd1fdb6483c4366fa3d4b9116ab193e5b4dd792fcd96ba0f473df90f242e840
|
|
4
|
+
data.tar.gz: 3f9d87a07478e540a116902a4a2b0cd1ac0f6c859f95d8d819c2e7725e6adaa4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cf613cab8b915a9fe7d229526997a15e60ba1ad3a51c06d48e7d0b51243ce88f5c08543b13f4528859c5981601dc390080c316742382d41946271fa25f75b1eb
|
|
7
|
+
data.tar.gz: 4afe74d5212532a3d07f828ae641f7548abc1853ad39b9fec7dac76e21688393e12f84926627e5a02ddb2beaea580405b4b4bc3b116cfa406d104fdabb34f15b
|
data/CHANGELOG
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
Release 6.1.
|
|
1
|
+
Release 6.1.5 (Not yet released)
|
|
2
|
+
-------------
|
|
3
|
+
* [Ubuntu] Rebuild packages against broken Nginx packages that Ubuntu is shipping. Closes GH-2662.
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
Release 6.1.4
|
|
2
7
|
-------------
|
|
3
8
|
* [Nginx] Upgrades preferred Nginx to 1.30.2 from 1.30.1.
|
|
4
9
|
* Updated various library versions used in precompiled binaries (used for e.g. gem installs):
|
data/Rakefile
CHANGED
data/build/agent.rb
CHANGED
|
@@ -46,15 +46,15 @@ AGENT_OBJECTS = {
|
|
|
46
46
|
"#{AGENT_OUTPUT_DIR}ExecHelperMain.o" =>
|
|
47
47
|
"src/agent/ExecHelper/ExecHelperMain.cpp",
|
|
48
48
|
"#{AGENT_OUTPUT_DIR}FileReadHelperMain.o" =>
|
|
49
|
-
"src/agent/FileReadHelper/FileReadHelperMain.cpp"
|
|
49
|
+
"src/agent/FileReadHelper/FileReadHelperMain.cpp",
|
|
50
50
|
}
|
|
51
51
|
AGENT_AUTOGENERATED_SOURCES = {
|
|
52
52
|
"src/agent/Core/SpawningKit/Config/AutoGeneratedCode.h" => [
|
|
53
|
-
"src/agent/Core/SpawningKit/Config.h"
|
|
53
|
+
"src/agent/Core/SpawningKit/Config.h",
|
|
54
54
|
],
|
|
55
55
|
"src/agent/Core/SpawningKit/Result/AutoGeneratedCode.h" => [
|
|
56
|
-
"src/agent/Core/SpawningKit/Result.h"
|
|
57
|
-
]
|
|
56
|
+
"src/agent/Core/SpawningKit/Result.h",
|
|
57
|
+
],
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
# Agent-specific compiler flags.
|
|
@@ -92,18 +92,18 @@ AGENT_OBJECTS.each_pair do |object, source|
|
|
|
92
92
|
object,
|
|
93
93
|
source,
|
|
94
94
|
lambda { {
|
|
95
|
-
:
|
|
95
|
+
include_paths: [
|
|
96
96
|
"src/agent",
|
|
97
|
-
*CXX_SUPPORTLIB_INCLUDE_PATHS
|
|
97
|
+
*CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
98
98
|
],
|
|
99
|
-
:
|
|
99
|
+
flags: [
|
|
100
100
|
agent_cflags,
|
|
101
101
|
libev_cflags,
|
|
102
102
|
libuv_cflags,
|
|
103
103
|
PlatformInfo.curl_flags,
|
|
104
104
|
PlatformInfo.openssl_extra_cflags,
|
|
105
|
-
PlatformInfo.zlib_flags
|
|
106
|
-
]
|
|
105
|
+
PlatformInfo.zlib_flags,
|
|
106
|
+
],
|
|
107
107
|
} }
|
|
108
108
|
)
|
|
109
109
|
end
|
|
@@ -116,7 +116,7 @@ dependencies = AGENT_OBJECTS.keys + [
|
|
|
116
116
|
LIBBOOST_OXT,
|
|
117
117
|
agent_libs.link_objects,
|
|
118
118
|
LIBEV_TARGET,
|
|
119
|
-
LIBUV_TARGET
|
|
119
|
+
LIBUV_TARGET,
|
|
120
120
|
].flatten.compact
|
|
121
121
|
file(AGENT_TARGET => dependencies) do
|
|
122
122
|
sh "mkdir -p #{AGENT_OUTPUT_DIR}" if !File.directory?(AGENT_OUTPUT_DIR)
|
|
@@ -124,29 +124,29 @@ file(AGENT_TARGET => dependencies) do
|
|
|
124
124
|
[
|
|
125
125
|
agent_libs.link_objects_as_string,
|
|
126
126
|
AGENT_OBJECTS.keys,
|
|
127
|
-
LIBBOOST_OXT_LINKARG
|
|
127
|
+
LIBBOOST_OXT_LINKARG,
|
|
128
128
|
],
|
|
129
|
-
:
|
|
129
|
+
flags: [
|
|
130
130
|
libev_libs,
|
|
131
131
|
libuv_libs,
|
|
132
132
|
PlatformInfo.curl_libs,
|
|
133
133
|
PlatformInfo.zlib_libs,
|
|
134
134
|
PlatformInfo.crypto_libs,
|
|
135
135
|
PlatformInfo.portability_cxx_ldflags,
|
|
136
|
-
agent_ldflags
|
|
136
|
+
agent_ldflags,
|
|
137
137
|
]
|
|
138
138
|
)
|
|
139
139
|
end
|
|
140
140
|
|
|
141
141
|
desc 'Build the agent'
|
|
142
|
-
task :
|
|
142
|
+
task agent: AGENT_TARGET
|
|
143
143
|
|
|
144
144
|
task 'common:clean' do
|
|
145
145
|
sh('rm', '-rf', AGENT_TARGET, *AGENT_OBJECTS.keys)
|
|
146
146
|
end
|
|
147
147
|
|
|
148
148
|
def create_agent_auto_generated_source_task(source, dependencies)
|
|
149
|
-
dependencies += ["#{source}.cxxcodebuilder"]
|
|
149
|
+
dependencies += [ "#{source}.cxxcodebuilder" ]
|
|
150
150
|
file(source => dependencies) do
|
|
151
151
|
template = CxxCodeTemplateRenderer.new("#{source}.cxxcodebuilder")
|
|
152
152
|
template.render_to(source)
|
data/build/apache2.rb
CHANGED
|
@@ -41,9 +41,9 @@ APACHE2_OBJECTS = {
|
|
|
41
41
|
"#{APACHE2_OUTPUT_DIR}Bucket.o" =>
|
|
42
42
|
"src/apache2_module/Bucket.cpp",
|
|
43
43
|
"#{APACHE2_OUTPUT_DIR}Hooks.o" =>
|
|
44
|
-
"src/apache2_module/Hooks.cpp"
|
|
44
|
+
"src/apache2_module/Hooks.cpp",
|
|
45
45
|
}
|
|
46
|
-
APACHE2_AUTOGENERATED_SOURCES = %w
|
|
46
|
+
APACHE2_AUTOGENERATED_SOURCES = %w[
|
|
47
47
|
src/apache2_module/ConfigGeneral/AutoGeneratedDefinitions.cpp
|
|
48
48
|
src/apache2_module/ConfigGeneral/AutoGeneratedSetterFuncs.cpp
|
|
49
49
|
src/apache2_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.cpp
|
|
@@ -54,16 +54,16 @@ APACHE2_AUTOGENERATED_SOURCES = %w(
|
|
|
54
54
|
src/apache2_module/DirConfig/AutoGeneratedStruct.h
|
|
55
55
|
src/apache2_module/DirConfig/AutoGeneratedHeaderSerialization.cpp
|
|
56
56
|
src/apache2_module/DirConfig/AutoGeneratedManifestGeneration.cpp
|
|
57
|
-
|
|
57
|
+
]
|
|
58
58
|
|
|
59
59
|
let(:apache2_cflags) do
|
|
60
|
-
result = [PlatformInfo.apache2_module_cflags]
|
|
60
|
+
result = [ PlatformInfo.apache2_module_cflags ]
|
|
61
61
|
result << '-O' if OPTIMIZE
|
|
62
62
|
result.join(' ')
|
|
63
63
|
end
|
|
64
64
|
|
|
65
65
|
let(:apache2_cxxflags) do
|
|
66
|
-
result = [PlatformInfo.apache2_module_cxxflags]
|
|
66
|
+
result = [ PlatformInfo.apache2_module_cxxflags ]
|
|
67
67
|
result << '-O' if OPTIMIZE
|
|
68
68
|
result.join(' ')
|
|
69
69
|
end
|
|
@@ -75,11 +75,11 @@ APACHE2_OBJECTS.each_pair do |object, source|
|
|
|
75
75
|
object,
|
|
76
76
|
source,
|
|
77
77
|
lambda { {
|
|
78
|
-
:
|
|
78
|
+
include_paths: [
|
|
79
79
|
"src/agent",
|
|
80
|
-
*CXX_SUPPORTLIB_INCLUDE_PATHS
|
|
80
|
+
*CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
81
81
|
],
|
|
82
|
-
:
|
|
82
|
+
flags: apache2_cflags,
|
|
83
83
|
} }
|
|
84
84
|
)
|
|
85
85
|
else
|
|
@@ -87,11 +87,11 @@ APACHE2_OBJECTS.each_pair do |object, source|
|
|
|
87
87
|
object,
|
|
88
88
|
source,
|
|
89
89
|
lambda { {
|
|
90
|
-
:
|
|
90
|
+
include_paths: [
|
|
91
91
|
"src/agent",
|
|
92
|
-
*CXX_SUPPORTLIB_INCLUDE_PATHS
|
|
92
|
+
*CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
93
93
|
],
|
|
94
|
-
:
|
|
94
|
+
flags: apache2_cxxflags,
|
|
95
95
|
} }
|
|
96
96
|
)
|
|
97
97
|
end
|
|
@@ -111,7 +111,7 @@ APACHE2_MODULE_COMMON_LIBRARIES = COMMON_LIBRARY.
|
|
|
111
111
|
dependencies = [
|
|
112
112
|
APACHE2_MODULE_COMMON_LIBRARIES,
|
|
113
113
|
APACHE2_MODULE_BOOST_OXT_LIBRARY,
|
|
114
|
-
APACHE2_OBJECTS.keys
|
|
114
|
+
APACHE2_OBJECTS.keys,
|
|
115
115
|
].flatten
|
|
116
116
|
file(APACHE2_TARGET => dependencies) do
|
|
117
117
|
PlatformInfo.apache2ctl.nil? and raise "Could not find 'apachectl' or 'apache2ctl'."
|
|
@@ -120,7 +120,7 @@ file(APACHE2_TARGET => dependencies) do
|
|
|
120
120
|
sh "mkdir -p #{APACHE2_OUTPUT_DIR}" if !File.directory?(APACHE2_OUTPUT_DIR)
|
|
121
121
|
create_shared_library(APACHE2_TARGET,
|
|
122
122
|
APACHE2_OBJECTS.keys,
|
|
123
|
-
:
|
|
123
|
+
flags: [
|
|
124
124
|
APACHE2_MODULE_COMMON_LIBRARIES,
|
|
125
125
|
APACHE2_MODULE_BOOST_OXT_LINKARG,
|
|
126
126
|
PlatformInfo.apache2_module_cxx_ldflags,
|
|
@@ -132,16 +132,16 @@ file(APACHE2_TARGET => dependencies) do
|
|
|
132
132
|
end
|
|
133
133
|
|
|
134
134
|
desc "Build Apache 2 module"
|
|
135
|
-
task :
|
|
135
|
+
task apache2: [
|
|
136
136
|
APACHE2_TARGET,
|
|
137
137
|
AGENT_TARGET,
|
|
138
|
-
NATIVE_SUPPORT_TARGET
|
|
138
|
+
NATIVE_SUPPORT_TARGET,
|
|
139
139
|
].compact
|
|
140
140
|
|
|
141
141
|
# Workaround for https://github.com/jimweirich/rake/issues/274
|
|
142
|
-
task :
|
|
142
|
+
task _apache2: :apache2
|
|
143
143
|
|
|
144
|
-
task :
|
|
144
|
+
task clean: 'apache2:clean'
|
|
145
145
|
desc "Clean all compiled Apache 2 files"
|
|
146
146
|
task 'apache2:clean' => 'common:clean' do
|
|
147
147
|
files = APACHE2_OBJECTS.keys.dup
|
|
@@ -152,7 +152,7 @@ end
|
|
|
152
152
|
def create_apache2_auto_generated_source_task(source)
|
|
153
153
|
dependencies = [
|
|
154
154
|
"#{source}.cxxcodebuilder",
|
|
155
|
-
'src/ruby_supportlib/phusion_passenger/apache2/config_options.rb'
|
|
155
|
+
'src/ruby_supportlib/phusion_passenger/apache2/config_options.rb',
|
|
156
156
|
]
|
|
157
157
|
file(source => dependencies) do
|
|
158
158
|
template = CxxCodeTemplateRenderer.new("#{source}.cxxcodebuilder")
|
data/build/basics.rb
CHANGED
|
@@ -103,7 +103,7 @@ LTO = OPTIMIZE && boolean_option('LTO')
|
|
|
103
103
|
CXX_SUPPORTLIB_INCLUDE_PATHS = [
|
|
104
104
|
"src/cxx_supportlib",
|
|
105
105
|
"src/cxx_supportlib/vendor-copy",
|
|
106
|
-
"src/cxx_supportlib/vendor-modified"
|
|
106
|
+
"src/cxx_supportlib/vendor-modified",
|
|
107
107
|
]
|
|
108
108
|
|
|
109
109
|
# Extra compiler flags that should always be passed to the C/C++ compiler.
|
data/build/common_library.rb
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
|
|
2
3
|
# Phusion Passenger - https://www.phusionpassenger.com/
|
|
3
4
|
# Copyright (c) 2010-2025 Asynchronous B.V.
|
|
4
5
|
#
|
|
@@ -56,8 +57,8 @@ def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
|
|
56
57
|
object_file,
|
|
57
58
|
source_file,
|
|
58
59
|
lambda { {
|
|
59
|
-
:
|
|
60
|
-
:
|
|
60
|
+
include_paths: CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
61
|
+
flags: [ optimize, maybe_eval_lambda(extra_compiler_flags) ],
|
|
61
62
|
} }
|
|
62
63
|
)
|
|
63
64
|
end
|
|
@@ -74,8 +75,8 @@ def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
|
|
74
75
|
object_file,
|
|
75
76
|
source_file,
|
|
76
77
|
lambda { {
|
|
77
|
-
:
|
|
78
|
-
:
|
|
78
|
+
include_paths: CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
79
|
+
flags: [ optimize, maybe_eval_lambda(extra_compiler_flags) ],
|
|
79
80
|
} }
|
|
80
81
|
)
|
|
81
82
|
end
|
|
@@ -93,9 +94,9 @@ def define_libboost_oxt_task(namespace, output_dir, extra_compiler_flags = nil)
|
|
|
93
94
|
if OPTIMIZE && LTO
|
|
94
95
|
# Clang -flto does not support static libraries containing
|
|
95
96
|
# .o files that are compiled with -flto themselves.
|
|
96
|
-
[output_file, [output_file, boost_object_files, oxt_object_files].flatten.join(" ")]
|
|
97
|
+
[ output_file, [ output_file, boost_object_files, oxt_object_files ].flatten.join(" ") ]
|
|
97
98
|
else
|
|
98
|
-
[output_file, output_file]
|
|
99
|
+
[ output_file, output_file ]
|
|
99
100
|
end
|
|
100
101
|
end
|
|
101
102
|
|
|
@@ -122,12 +123,12 @@ if USE_VENDORED_LIBEV
|
|
|
122
123
|
"#{LIBEV_OUTPUT_DIR}.libs/libev.a #{$1}".strip
|
|
123
124
|
end
|
|
124
125
|
|
|
125
|
-
task :
|
|
126
|
+
task libev: LIBEV_TARGET
|
|
126
127
|
|
|
127
128
|
dependencies = [
|
|
128
129
|
"src/cxx_supportlib/vendor-modified/libev/configure",
|
|
129
130
|
"src/cxx_supportlib/vendor-modified/libev/config.h.in",
|
|
130
|
-
"src/cxx_supportlib/vendor-modified/libev/Makefile.am"
|
|
131
|
+
"src/cxx_supportlib/vendor-modified/libev/Makefile.am",
|
|
131
132
|
]
|
|
132
133
|
file LIBEV_OUTPUT_DIR + "Makefile" => dependencies do
|
|
133
134
|
cc_command = cc
|
|
@@ -147,20 +148,20 @@ if USE_VENDORED_LIBEV
|
|
|
147
148
|
end
|
|
148
149
|
|
|
149
150
|
libev_sources = Dir["src/cxx_supportlib/vendor-modified/libev/{*.c,*.h}"].sort
|
|
150
|
-
file LIBEV_OUTPUT_DIR + ".libs/libev.a" => [LIBEV_OUTPUT_DIR + "Makefile"] + libev_sources do
|
|
151
|
+
file LIBEV_OUTPUT_DIR + ".libs/libev.a" => [ LIBEV_OUTPUT_DIR + "Makefile" ] + libev_sources do
|
|
151
152
|
sh "rm -f #{LIBEV_OUTPUT_DIR}libev.la"
|
|
152
153
|
sh "cd #{LIBEV_OUTPUT_DIR} && make libev.la V=1"
|
|
153
154
|
end
|
|
154
155
|
|
|
155
156
|
task 'libev:clean' do
|
|
156
|
-
patterns = %w
|
|
157
|
-
stamp-h1 *.o *.lo *.la .libs .deps
|
|
157
|
+
patterns = %w[Makefile config.h config.log config.status libtool
|
|
158
|
+
stamp-h1 *.o *.lo *.la .libs .deps]
|
|
158
159
|
patterns.each do |pattern|
|
|
159
160
|
sh "rm -rf #{LIBEV_OUTPUT_DIR}#{pattern}"
|
|
160
161
|
end
|
|
161
162
|
end
|
|
162
163
|
|
|
163
|
-
task :
|
|
164
|
+
task clean: 'libev:clean'
|
|
164
165
|
else
|
|
165
166
|
LIBEV_TARGET = nil
|
|
166
167
|
|
|
@@ -193,11 +194,11 @@ if USE_VENDORED_LIBUV
|
|
|
193
194
|
"#{LIBUV_OUTPUT_DIR}.libs/libuv.a #{$1}".strip
|
|
194
195
|
end
|
|
195
196
|
|
|
196
|
-
task :
|
|
197
|
+
task libuv: LIBUV_TARGET
|
|
197
198
|
|
|
198
199
|
dependencies = [
|
|
199
200
|
"src/cxx_supportlib/vendor-copy/libuv/configure",
|
|
200
|
-
"src/cxx_supportlib/vendor-copy/libuv/Makefile.am"
|
|
201
|
+
"src/cxx_supportlib/vendor-copy/libuv/Makefile.am",
|
|
201
202
|
]
|
|
202
203
|
file LIBUV_OUTPUT_DIR + "Makefile" => dependencies do
|
|
203
204
|
cc_command = cc
|
|
@@ -220,20 +221,20 @@ if USE_VENDORED_LIBUV
|
|
|
220
221
|
end
|
|
221
222
|
|
|
222
223
|
libuv_sources = Dir["src/cxx_supportlib/vendor-copy/libuv/**/{*.c,*.h}"].sort
|
|
223
|
-
file LIBUV_OUTPUT_DIR + ".libs/libuv.a" => [LIBUV_OUTPUT_DIR + "Makefile"] + libuv_sources do
|
|
224
|
+
file LIBUV_OUTPUT_DIR + ".libs/libuv.a" => [ LIBUV_OUTPUT_DIR + "Makefile" ] + libuv_sources do
|
|
224
225
|
sh "rm -f #{LIBUV_OUTPUT_DIR}/libuv.la"
|
|
225
226
|
sh "cd #{LIBUV_OUTPUT_DIR} && make -j2 libuv.la V=1"
|
|
226
227
|
end
|
|
227
228
|
|
|
228
229
|
task 'libuv:clean' do
|
|
229
|
-
patterns = %w
|
|
230
|
-
stamp-h1 src test *.o *.lo *.la *.pc .libs .deps
|
|
230
|
+
patterns = %w[Makefile config.h config.log config.status libtool
|
|
231
|
+
stamp-h1 src test *.o *.lo *.la *.pc .libs .deps]
|
|
231
232
|
patterns.each do |pattern|
|
|
232
233
|
sh "rm -rf #{LIBUV_OUTPUT_DIR}#{pattern}"
|
|
233
234
|
end
|
|
234
235
|
end
|
|
235
236
|
|
|
236
|
-
task :
|
|
237
|
+
task clean: 'libuv:clean'
|
|
237
238
|
else
|
|
238
239
|
LIBUV_TARGET = nil
|
|
239
240
|
|
|
@@ -252,9 +253,9 @@ end
|
|
|
252
253
|
# If you add a new shared definition file, don't forget to update
|
|
253
254
|
# src/ruby_supportlib/phusion_passenger/packaging.rb!
|
|
254
255
|
|
|
255
|
-
dependencies = ['src/cxx_supportlib/Constants.h.cxxcodebuilder',
|
|
256
|
+
dependencies = [ 'src/cxx_supportlib/Constants.h.cxxcodebuilder',
|
|
256
257
|
'src/ruby_supportlib/phusion_passenger.rb',
|
|
257
|
-
'src/ruby_supportlib/phusion_passenger/constants.rb']
|
|
258
|
+
'src/ruby_supportlib/phusion_passenger/constants.rb' ]
|
|
258
259
|
file 'src/cxx_supportlib/Constants.h' => dependencies do
|
|
259
260
|
PhusionPassenger.require_passenger_lib 'constants'
|
|
260
261
|
template = CxxCodeTemplateRenderer.new('src/cxx_supportlib/Constants.h.cxxcodebuilder')
|
data/build/cxx_tests.rb
CHANGED
|
@@ -135,7 +135,7 @@ TEST_CXX_OBJECTS = {
|
|
|
135
135
|
"#{TEST_OUTPUT_DIR}cxx/StrIntTools/TemplateTest.o" =>
|
|
136
136
|
"test/cxx/StrIntTools/TemplateTest.cpp",
|
|
137
137
|
"#{TEST_OUTPUT_DIR}cxx/Base64DecodingTest.o" =>
|
|
138
|
-
"test/cxx/Base64DecodingTest.cpp"
|
|
138
|
+
"test/cxx/Base64DecodingTest.cpp",
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
let(:basic_test_cxx_flags) do
|
|
@@ -144,7 +144,7 @@ let(:basic_test_cxx_flags) do
|
|
|
144
144
|
libuv_cflags,
|
|
145
145
|
PlatformInfo.crypto_extra_cflags,
|
|
146
146
|
PlatformInfo.curl_flags,
|
|
147
|
-
TEST_COMMON_CFLAGS
|
|
147
|
+
TEST_COMMON_CFLAGS,
|
|
148
148
|
]
|
|
149
149
|
end
|
|
150
150
|
|
|
@@ -153,7 +153,7 @@ let(:test_cxx_include_paths) do
|
|
|
153
153
|
'test/cxx',
|
|
154
154
|
'test/support',
|
|
155
155
|
'src/agent',
|
|
156
|
-
*CXX_SUPPORTLIB_INCLUDE_PATHS
|
|
156
|
+
*CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
157
157
|
]
|
|
158
158
|
end
|
|
159
159
|
|
|
@@ -161,11 +161,11 @@ let(:test_cxx_flags) do
|
|
|
161
161
|
# Some flags are necessary to make precompiled headers play well with ccache (and possibly also sccache):
|
|
162
162
|
# https://ccache.dev/manual/4.8.2.html#_precompiled_headers
|
|
163
163
|
if PlatformInfo.cxx_is_gcc?
|
|
164
|
-
['-include test/cxx/TestSupport.h', '-fpch-preprocess']
|
|
164
|
+
[ '-include test/cxx/TestSupport.h', '-fpch-preprocess' ]
|
|
165
165
|
elsif PlatformInfo.cxx_is_clang?
|
|
166
|
-
["-include-pch test/cxx/TestSupport.h.#{PlatformInfo.precompiled_header_extension}", '-Xclang', '-fno-pch-timestamp']
|
|
166
|
+
[ "-include-pch test/cxx/TestSupport.h.#{PlatformInfo.precompiled_header_extension}", '-Xclang', '-fno-pch-timestamp' ]
|
|
167
167
|
else
|
|
168
|
-
['-include test/cxx/TestSupport.h']
|
|
168
|
+
[ '-include test/cxx/TestSupport.h' ]
|
|
169
169
|
end + basic_test_cxx_flags
|
|
170
170
|
end
|
|
171
171
|
|
|
@@ -188,9 +188,9 @@ TEST_CXX_OBJECTS.each_pair do |object, source|
|
|
|
188
188
|
object,
|
|
189
189
|
source,
|
|
190
190
|
lambda { {
|
|
191
|
-
:
|
|
192
|
-
:
|
|
193
|
-
:
|
|
191
|
+
include_paths: test_cxx_include_paths,
|
|
192
|
+
flags: test_cxx_flags,
|
|
193
|
+
deps: "test/cxx/TestSupport.h.#{PlatformInfo.precompiled_header_extension}",
|
|
194
194
|
} }
|
|
195
195
|
)
|
|
196
196
|
end
|
|
@@ -202,13 +202,13 @@ dependencies = [
|
|
|
202
202
|
LIBUV_TARGET,
|
|
203
203
|
TEST_BOOST_OXT_LIBRARY,
|
|
204
204
|
TEST_COMMON_LIBRARY.link_objects,
|
|
205
|
-
AGENT_OBJECTS.keys - [AGENT_MAIN_OBJECT]
|
|
205
|
+
AGENT_OBJECTS.keys - [ AGENT_MAIN_OBJECT ],
|
|
206
206
|
].flatten.compact
|
|
207
207
|
file(TEST_CXX_TARGET => dependencies) do
|
|
208
208
|
create_cxx_executable(
|
|
209
209
|
TEST_CXX_TARGET,
|
|
210
|
-
TEST_CXX_OBJECTS.keys + AGENT_OBJECTS.keys - [AGENT_MAIN_OBJECT],
|
|
211
|
-
:
|
|
210
|
+
TEST_CXX_OBJECTS.keys + AGENT_OBJECTS.keys - [ AGENT_MAIN_OBJECT ],
|
|
211
|
+
flags: test_cxx_ldflags
|
|
212
212
|
)
|
|
213
213
|
end
|
|
214
214
|
|
|
@@ -216,13 +216,13 @@ cxx_test_dependencies = [
|
|
|
216
216
|
TEST_CXX_TARGET,
|
|
217
217
|
"#{TEST_OUTPUT_DIR}allocate_memory",
|
|
218
218
|
NATIVE_SUPPORT_TARGET,
|
|
219
|
-
AGENT_TARGET
|
|
219
|
+
AGENT_TARGET,
|
|
220
220
|
].compact
|
|
221
221
|
task 'test:cxx:build' => cxx_test_dependencies
|
|
222
222
|
|
|
223
223
|
desc "Run unit tests for the C++ components"
|
|
224
224
|
task 'test:cxx' => cxx_test_dependencies do
|
|
225
|
-
args = ENV['GROUPS'].to_s.split(";").map{ |name| "-g #{name}" }
|
|
225
|
+
args = ENV['GROUPS'].to_s.split(";").map { |name| "-g #{name}" }
|
|
226
226
|
|
|
227
227
|
if level = string_option('LOG_LEVEL')
|
|
228
228
|
args << '-l'
|
|
@@ -273,14 +273,14 @@ task 'test:cxx' => cxx_test_dependencies do
|
|
|
273
273
|
puts
|
|
274
274
|
puts "---------------------------------"
|
|
275
275
|
puts "Saving log files:"
|
|
276
|
-
FileUtils.mkdir_p("#{OUTPUT_DIR}testlogs", :
|
|
276
|
+
FileUtils.mkdir_p("#{OUTPUT_DIR}testlogs", verbose: true)
|
|
277
277
|
if boolean_option('SUDO')
|
|
278
278
|
sh "sudo cp /tmp/passenger-error-*.html #{OUTPUT_DIR}testlogs/"
|
|
279
279
|
sh "sudo chown $(whoami): #{OUTPUT_DIR}testlogs/passenger-error-*.html"
|
|
280
280
|
else
|
|
281
281
|
error_pages.each do |path|
|
|
282
282
|
if File.readable?(path)
|
|
283
|
-
FileUtils.cp(path, "#{OUTPUT_DIR}testlogs/", :
|
|
283
|
+
FileUtils.cp(path, "#{OUTPUT_DIR}testlogs/", verbose: true)
|
|
284
284
|
else
|
|
285
285
|
puts "Skip copying #{path}: file not readable"
|
|
286
286
|
end
|
|
@@ -294,11 +294,11 @@ file("test/cxx/TestSupport.h.#{PlatformInfo.precompiled_header_extension}" => ge
|
|
|
294
294
|
compile_cxx(
|
|
295
295
|
"test/cxx/TestSupport.h.#{PlatformInfo.precompiled_header_extension}",
|
|
296
296
|
'test/cxx/TestSupport.h',
|
|
297
|
-
:
|
|
298
|
-
:
|
|
297
|
+
include_paths: test_cxx_include_paths,
|
|
298
|
+
flags: [
|
|
299
299
|
"-x c++-header",
|
|
300
300
|
PlatformInfo.cxx_is_clang? ? "-Xclang -emit-pch" : nil,
|
|
301
|
-
basic_test_cxx_flags
|
|
301
|
+
basic_test_cxx_flags,
|
|
302
302
|
].compact.flatten
|
|
303
303
|
)
|
|
304
304
|
end
|
data/build/integration_tests.rb
CHANGED
|
@@ -26,14 +26,14 @@
|
|
|
26
26
|
|
|
27
27
|
def integration_test_dependencies(runtime_target_name)
|
|
28
28
|
if string_option('PASSENGER_LOCATION_CONFIGURATION_FILE')
|
|
29
|
-
|
|
29
|
+
[]
|
|
30
30
|
else
|
|
31
|
-
|
|
31
|
+
[ runtime_target_name, NATIVE_SUPPORT_TARGET ].compact
|
|
32
32
|
end
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
desc "Run all integration tests"
|
|
36
|
-
task 'test:integration' => ['test:integration:apache2', 'test:integration:nginx'] do
|
|
36
|
+
task 'test:integration' => [ 'test:integration:apache2', 'test:integration:nginx' ] do
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
dependencies = integration_test_dependencies(:_apache2)
|
data/build/misc.rb
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
+
|
|
2
3
|
# Phusion Passenger - https://www.phusionpassenger.com/
|
|
3
4
|
# Copyright (c) 2010-2025 Asynchronous B.V.
|
|
4
5
|
#
|
|
@@ -71,7 +72,7 @@ def extract_latest_news_contents_and_items
|
|
|
71
72
|
items = contents.split(/^ \* /)
|
|
72
73
|
items.shift while items.first == ""
|
|
73
74
|
|
|
74
|
-
|
|
75
|
+
[ contents, items ]
|
|
75
76
|
end
|
|
76
77
|
|
|
77
78
|
desc "Convert the Changelog items for the latest release to HTML"
|
|
@@ -154,7 +155,7 @@ task :contributors do
|
|
|
154
155
|
entries.push "Yichun Zhang"
|
|
155
156
|
|
|
156
157
|
File.open("CONTRIBUTORS", "w") do |f|
|
|
157
|
-
f.puts(entries.sort{ |a, b| a.downcase <=> b.downcase }.uniq.join("\n"))
|
|
158
|
+
f.puts(entries.sort { |a, b| a.downcase <=> b.downcase }.uniq.join("\n"))
|
|
158
159
|
end
|
|
159
160
|
puts "Updated CONTRIBUTORS"
|
|
160
161
|
end
|
|
@@ -168,9 +169,9 @@ dependencies = [
|
|
|
168
169
|
COMMON_LIBRARY.link_objects,
|
|
169
170
|
LIBBOOST_OXT,
|
|
170
171
|
LIBEV_TARGET,
|
|
171
|
-
LIBUV_TARGET
|
|
172
|
+
LIBUV_TARGET,
|
|
172
173
|
].flatten.compact
|
|
173
|
-
task :
|
|
174
|
+
task compile_app: dependencies do
|
|
174
175
|
source = ENV['SOURCE'] || ENV['FILE'] || ENV['F']
|
|
175
176
|
if !source
|
|
176
177
|
STDERR.puts "Please specify the source filename with SOURCE=(...)"
|
|
@@ -187,11 +188,11 @@ task :compile_app => dependencies do
|
|
|
187
188
|
begin
|
|
188
189
|
compile_cxx(object,
|
|
189
190
|
source,
|
|
190
|
-
:
|
|
191
|
+
include_paths: [
|
|
191
192
|
"src/agent",
|
|
192
|
-
*CXX_SUPPORTLIB_INCLUDE_PATHS
|
|
193
|
+
*CXX_SUPPORTLIB_INCLUDE_PATHS,
|
|
193
194
|
],
|
|
194
|
-
:
|
|
195
|
+
flags: [
|
|
195
196
|
OPTIMIZE ? "-O" : nil,
|
|
196
197
|
"-DSTANDALONE",
|
|
197
198
|
libev_cflags,
|
|
@@ -200,7 +201,7 @@ task :compile_app => dependencies do
|
|
|
200
201
|
)
|
|
201
202
|
create_cxx_executable(exe,
|
|
202
203
|
object,
|
|
203
|
-
:
|
|
204
|
+
flags: [
|
|
204
205
|
"-DSTANDALONE",
|
|
205
206
|
libev_cflags,
|
|
206
207
|
libuv_cflags,
|
|
@@ -211,7 +212,7 @@ task :compile_app => dependencies do
|
|
|
211
212
|
PlatformInfo.curl_libs,
|
|
212
213
|
PlatformInfo.zlib_libs,
|
|
213
214
|
PlatformInfo.crypto_libs,
|
|
214
|
-
PlatformInfo.portability_cxx_ldflags
|
|
215
|
+
PlatformInfo.portability_cxx_ldflags,
|
|
215
216
|
]
|
|
216
217
|
)
|
|
217
218
|
ensure
|
data/build/nginx.rb
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
23
23
|
# THE SOFTWARE.
|
|
24
24
|
|
|
25
|
-
auto_generated_sources = %w
|
|
25
|
+
auto_generated_sources = %w[
|
|
26
26
|
src/nginx_module/ConfigGeneral/AutoGeneratedDefinitions.c
|
|
27
27
|
src/nginx_module/ConfigGeneral/AutoGeneratedSetterFuncs.c
|
|
28
28
|
src/nginx_module/ConfigGeneral/AutoGeneratedManifestDefaultsInitialization.c
|
|
@@ -34,41 +34,41 @@ auto_generated_sources = %w(
|
|
|
34
34
|
src/nginx_module/LocationConfig/AutoGeneratedMergeFunction.c
|
|
35
35
|
src/nginx_module/LocationConfig/AutoGeneratedHeaderSerialization.c
|
|
36
36
|
src/nginx_module/LocationConfig/AutoGeneratedManifestGeneration.c
|
|
37
|
-
|
|
37
|
+
]
|
|
38
38
|
|
|
39
39
|
desc "Build Nginx support files"
|
|
40
|
-
task :
|
|
40
|
+
task nginx: [
|
|
41
41
|
:nginx_without_native_support,
|
|
42
|
-
NATIVE_SUPPORT_TARGET
|
|
42
|
+
NATIVE_SUPPORT_TARGET,
|
|
43
43
|
].compact
|
|
44
44
|
|
|
45
45
|
desc "Build Nginx support files, including objects suitable for dynamic linking against Nginx"
|
|
46
46
|
task 'nginx:as_dynamic_module' => [
|
|
47
47
|
:nginx_dynamic_without_native_support,
|
|
48
|
-
NATIVE_SUPPORT_TARGET
|
|
48
|
+
NATIVE_SUPPORT_TARGET,
|
|
49
49
|
].compact
|
|
50
50
|
|
|
51
51
|
# Workaround for https://github.com/jimweirich/rake/issues/274
|
|
52
|
-
task :
|
|
52
|
+
task _nginx: :nginx
|
|
53
53
|
|
|
54
|
-
task :
|
|
54
|
+
task nginx_without_native_support: [
|
|
55
55
|
auto_generated_sources,
|
|
56
56
|
AGENT_TARGET,
|
|
57
|
-
COMMON_LIBRARY.only(*NGINX_LIBS_SELECTOR).link_objects
|
|
57
|
+
COMMON_LIBRARY.only(*NGINX_LIBS_SELECTOR).link_objects,
|
|
58
58
|
].flatten
|
|
59
59
|
|
|
60
60
|
# define_tasks creates an extra compilation to the specified output_dir, with extra compiler flags;
|
|
61
61
|
# it also creates a namespace:clean task to clean up the output_dir
|
|
62
|
-
task :
|
|
62
|
+
task nginx_dynamic_without_native_support: [
|
|
63
63
|
auto_generated_sources,
|
|
64
64
|
AGENT_TARGET,
|
|
65
65
|
define_libboost_oxt_task("nginx", NGINX_DYNAMIC_OUTPUT_DIR + "libboost_oxt", "-fPIC"),
|
|
66
66
|
COMMON_LIBRARY.only(*NGINX_LIBS_SELECTOR).
|
|
67
67
|
set_namespace("nginx").set_output_dir(NGINX_DYNAMIC_OUTPUT_DIR + "module_libpassenger_common").define_tasks("-fPIC").
|
|
68
|
-
link_objects
|
|
68
|
+
link_objects,
|
|
69
69
|
].flatten
|
|
70
70
|
|
|
71
|
-
task :
|
|
71
|
+
task clean: 'nginx:clean'
|
|
72
72
|
desc "Clean all compiled Nginx files"
|
|
73
73
|
task 'nginx:clean' => 'common:clean' do
|
|
74
74
|
# Nothing extra to clean at this time.
|
|
@@ -77,7 +77,7 @@ end
|
|
|
77
77
|
def create_nginx_auto_generated_source_task(source)
|
|
78
78
|
dependencies = [
|
|
79
79
|
"#{source}.cxxcodebuilder",
|
|
80
|
-
'src/ruby_supportlib/phusion_passenger/nginx/config_options.rb'
|
|
80
|
+
'src/ruby_supportlib/phusion_passenger/nginx/config_options.rb',
|
|
81
81
|
]
|
|
82
82
|
file(source => dependencies) do
|
|
83
83
|
template = CxxCodeTemplateRenderer.new("#{source}.cxxcodebuilder")
|