summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--win32/build/buildconf.js7
-rw-r--r--win32/build/config.w325
-rw-r--r--win32/build/confutils.js20
4 files changed, 25 insertions, 10 deletions
diff --git a/.gitignore b/.gitignore
index ea5d16a5a4..81e339a82f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -56,7 +56,6 @@ config.cache
config.h.in
config.log
config.nice
-config.nice.bat
config.status
config.sub
config_vars.mk
@@ -285,4 +284,4 @@ win32/*.positions
win32/ext
win32/phpts.def
win32/wsyslog.h
-/config.simple.bat
+config.*.bat
diff --git a/win32/build/buildconf.js b/win32/build/buildconf.js
index a00c8aff7b..b7e964e3e7 100644
--- a/win32/build/buildconf.js
+++ b/win32/build/buildconf.js
@@ -23,7 +23,6 @@ WScript.StdOut.WriteLine("Rebuilding configure.js");
var FSO = WScript.CreateObject("Scripting.FileSystemObject");
var C = FSO.CreateTextFile("configure.js", true);
var B = FSO.CreateTextFile("configure.bat", true);
-var A = FSO.CreateTextFile("config.simple.bat", true);
var modules = "";
var MODULES = WScript.CreateObject("Scripting.Dictionary");
@@ -258,8 +257,4 @@ C.WriteBlankLines(1);
C.Write(file_get_contents("win32/build/configure.tail"));
B.WriteLine("@echo off");
-B.WriteLine("cscript /nologo configure.js %*");
-
-// Generates config.simple.bat (configure --disable-all --enable-cli --with-mp)
-A.WriteLine("@echo off");
-A.WriteLine("cscript /nologo configure.js --disable-all --enable-cli --with-mp"); \ No newline at end of file
+B.WriteLine("cscript /nologo configure.js %*"); \ No newline at end of file
diff --git a/win32/build/config.w32 b/win32/build/config.w32
index cc921d81a6..28c616823c 100644
--- a/win32/build/config.w32
+++ b/win32/build/config.w32
@@ -298,3 +298,8 @@ toolset_setup_codegen_arch();
ARG_WITH("all-shared", "Force all the non obligatory extensions to be shared", "no");
+// Config profiles (--with-config-profile=<name>) will save a certain config to php-src/config.<name>.bat
+// so that it can be executed like: cofig.<name> instead of a long list of parameters
+//
+// Note, nice as a name is disallowed and will generate a warning and skip saaving
+ARG_WITH('config-profile', 'Name of the configuration profile to save this to in php-src/config.name.bat', 'no'); \ No newline at end of file
diff --git a/win32/build/confutils.js b/win32/build/confutils.js
index 49b875ba6a..1e6ba365f3 100644
--- a/win32/build/confutils.js
+++ b/win32/build/confutils.js
@@ -336,7 +336,10 @@ function conf_process_args()
args = WScript.Arguments;
for (i = 0; i < args.length; i++) {
arg = args(i);
- nice += ' "' + arg + '"';
+ // Ignore --with-config-profile for config.nice.bat
+ if (arg.toLowerCase().substring(0, arg.indexOf('=')) != '--with-config-profile' && arg != '--with-config-profile') {
+ nice += ' "' + arg + '"';
+ }
if (arg == "--help") {
configure_help_mode = true;
break;
@@ -437,7 +440,7 @@ can be built that way. \
'pcre-regex', 'fastcgi', 'force-cgi-redirect',
'path-info-check', 'zts', 'ipv6', 'memory-limit',
'zend-multibyte', 'fd-setsize', 'memory-manager',
- 't1lib', 'pgi', 'pgo', 'all-shared'
+ 't1lib', 'pgi', 'pgo', 'all-shared', 'config-profile'
);
var force;
@@ -520,9 +523,22 @@ can be built that way. \
STDOUT.WriteLine("Saving configure options to config.nice.bat");
var nicefile = FSO.CreateTextFile("config.nice.bat", true);
+ nicefile.WriteLine('@echo off');
nicefile.WriteLine(nice + " %*");
nicefile.Close();
+ if (PHP_CONFIG_PROFILE != 'no') {
+ if (PHP_CONFIG_PROFILE.toLowerCase() == 'nice') {
+ WARNING('Config profile name cannot be named \'nice\'');
+ } else {
+ var config_profile = FSO.CreateTextFile('config.' + PHP_CONFIG_PROFILE + '.bat', true);
+
+ config_profile.WriteLine('@echo off');
+ config_profile.WriteLine(nice + ' %*');
+ config_profile.Close();
+ }
+ }
+
AC_DEFINE('CONFIGURE_COMMAND', nice, "Configure line");
}