From: Kalle Sommer Nielsen Date: Tue, 18 Oct 2016 23:14:15 +0000 (+0200) Subject: Improve the config.simple.bat for Windows a little; X-Git-Tag: php-7.2.0alpha1~1081 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0ffd0a0217e8edefbb400f4dbab89009e41821b1;p=php Improve the config.simple.bat for Windows a little; This adds --with-config-profile=foobar, this generates a config.foobar.bat file in the root of php-src directory with the relevant configuration arguments. --- 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=) will save a certain config to php-src/config..bat +// so that it can be executed like: cofig. 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"); }