Project homepage Mailing List  Warmcat.com  API Docs  Github Mirror 
{"schema":"libjg2-1", "vpath":"/git/", "avatar":"/git/avatar/", "alang":"", "gen_ut":1753165573, "reponame":"openssl", "desc":"OpenSSL", "owner": { "name": "Andy Green", "email": "andy@warmcat.com", "md5": "c50933ca2aa61e0fe2c43d46bb6b59cb" },"url":"https://warmcat.com/repo/openssl", "f":3, "items": [ {"schema":"libjg2-1", "cid":"3400c46b890a68bf1f7b3687ba2b1d25", "commit": {"type":"commit", "time": 1570980256, "time_ofs": 120, "oid_tree": { "oid": "b7d01e58300ae6f89ff93a876527e9323e0693f1", "alias": []}, "oid":{ "oid": "df22cbb555430b7206a8d30cb41f4e28b9e28370", "alias": []}, "msg": "Configure: accept Windows style compiler options", "sig_commit": { "git_time": { "time": 1570980256, "offset": 120 }, "name": "Dr. Matthias St. Pierre", "email": "Matthias.St.Pierre@ncp-e.com", "md5": "7d700d548b38974b2492f8ff219793b3" }, "sig_author": { "git_time": { "time": 1569017656, "offset": 120 }, "name": "Dr. Matthias St. Pierre", "email": "Matthias.St.Pierre@ncp-e.com", "md5": "7d700d548b38974b2492f8ff219793b3" }}, "body": "Configure: accept Windows style compiler options\n\nCurrently the Configure command only supports passing UNIX style\noptions (`-opt`) to the compiler. Passing Windows style options\n(`/opt`) yields an error. Fortunately, the compiler accepts both\ntypes of options, nevertheless this commit fixes that discrimination\nof Windows users.\n\nReviewed-by: Richard Levitte \u003clevitte@openssl.org\u003e\n(Merged from https://github.com/openssl/openssl/pull/9961)\n\n(cherry picked from commit f246f54f18d380791cc60be4aea0fbc7253a9a20)\n" , "diff": "diff --git a/Configure b/Configure\nindex f498ac2..5931311 100755\n--- a/Configure\n+++ b/Configure\n@@ -69,7 +69,15 @@ my $usage\u003d\u0022Usage: Configure [no-\u003ccipher\u003e ...] [enable-\u003ccipher\u003e ...] [-Dxxx] [-lx\n # no-sse2 disables IA-32 SSE2 code in assembly modules, the above\n # mentioned '386' option implies this one\n # no-\u003ccipher\u003e build without specified algorithm (rsa, idea, rc5, ...)\n-# -\u003cxxx\u003e +\u003cxxx\u003e compiler options are passed through\n+# -\u003cxxx\u003e +\u003cxxx\u003e All options which are unknown to the 'Configure' script are\n+# /\u003cxxx\u003e passed through to the compiler. Unix-style options beginning\n+# with a '-' or '+' are recognized, as well as Windows-style\n+# options beginning with a '/'. If the option contains arguments\n+# separated by spaces, then the URL-style notation %20 can be\n+# used for the space character in order to avoid having to quote\n+# the option. For example, -opt%20arg gets expanded to -opt arg.\n+# In fact, any ASCII character can be encoded as %xx using its\n+# hexadecimal encoding.\n # -static while -static is also a pass-through compiler option (and\n # as such is limited to environments where it's actually\n # meaningful), it triggers a number configuration options,\n@@ -777,7 +785,7 @@ while (@argvcopy)\n {\n die \u0022FIPS mode not supported\u005cn\u0022;\n }\n- elsif (/^[-+]/)\n+ elsif (m|^[-+/]|)\n {\n if (/^--prefix\u003d(.*)$/)\n {\n@@ -854,11 +862,11 @@ while (@argvcopy)\n {\n push @{$useradd{LDFLAGS}}, $_;\n }\n- elsif (/^-D(.*)$/)\n+ elsif (m|^[-/]D(.*)$|)\n {\n push @{$useradd{CPPDEFINES}}, $1;\n }\n- elsif (/^-I(.*)$/)\n+ elsif (m|^[-/]I(.*)$|)\n {\n push @{$useradd{CPPINCLUDES}}, $1;\n }\n@@ -868,11 +876,23 @@ while (@argvcopy)\n }\n else # common if (/^[-+]/), just pass down...\n {\n+ # Treat %xx as an ASCII code (e.g. replace %20 by a space character).\n+ # This provides a simple way to pass options with arguments separated\n+ # by spaces without quoting (e.g. -opt%20arg translates to -opt arg).\n $_ \u003d~ s/%([0-9a-f]{1,2})/chr(hex($1))/gei;\n push @{$useradd{CFLAGS}}, $_;\n push @{$useradd{CXXFLAGS}}, $_;\n }\n }\n+ elsif (m|^/|)\n+ {\n+ # Treat %xx as an ASCII code (e.g. replace %20 by a space character).\n+ # This provides a simple way to pass options with arguments separated\n+ # by spaces without quoting (e.g. /opt%20arg translates to /opt arg).\n+ $_ \u003d~ s/%([0-9a-f]{1,2})/chr(hex($1))/gei;\n+ push @{$useradd{CFLAGS}}, $_;\n+ push @{$useradd{CXXFLAGS}}, $_;\n+ }\n else\n {\n die \u0022target already defined - $target (offending arg: $_)\u005cn\u0022 if ($target ne \u0022\u0022);\ndiff --git a/INSTALL b/INSTALL\nindex f61c6de..c4c65c1 100644\n--- a/INSTALL\n+++ b/INSTALL\n@@ -608,10 +608,19 @@\n Take note of the VAR\u003dvalue documentation below and how\n these flags interact with those variables.\n \n- -xxx, +xxx\n+ -xxx, +xxx, /xxx\n Additional options that are not otherwise recognised are\n- passed through as they are to the compiler as well. Again,\n- consult your compiler documentation.\n+ passed through as they are to the compiler as well.\n+ Unix-style options beginning with a '-' or '+' and\n+ Windows-style options beginning with a '/' are recognized.\n+ Again, consult your compiler documentation.\n+\n+ If the option contains arguments separated by spaces,\n+ then the URL-style notation %20 can be used for the space\n+ character in order to avoid having to quote the option.\n+ For example, -opt%20arg gets expanded to -opt arg.\n+ In fact, any ASCII character can be encoded as %xx using its\n+ hexadecimal encoding.\n \n Take note of the VAR\u003dvalue documentation below and how\n these flags interact with those variables.\n","s":{"c":1753165573,"u": 46901}} ],"g": 48693,"chitpc": 0,"ehitpc": 0,"indexed":0 , "ab": 0, "si": 0, "db":0, "di":0, "sat":0, "lfc": "0000"}