com pftt2: Close #38: Add PHP 7.4 support: src/com/mostc/pftt/main/PfttAuto.java src/com/mostc/pftt/model/core/EBuildBranch.java
src/com/mostc/pftt/model/core/ECompiler.java src/com/mostc/pftt/model/core/PhpBuild.java src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy
| From: | Christoph Michael Becker | Date: | Tue, 02 Jul 2019 17:54:52 +0000 |
| Subject: | com pftt2: Close #38: Add PHP 7.4 support: src/com/mostc/pftt/main/PfttAuto.java src/com/mostc/pftt/model/core/EBuildBranch.java src/com/mostc/pftt/model/core/ECompiler.java src/com/mostc/pftt/model/core/PhpBuild.java src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy |
||
| Groups: | php.qa | ||
| Request: | Send a blank email to php-qa+get-68588@lists.php.net to get a copy of this message | ||
Commit: 116120135b954beb0cdd316492af74a6eef67da8
Author: Christoph M. Becker <cmbecker69@gmx.de> Tue, 4 Jun 2019 19:25:01 +0200
Parents: 05e66bd4a07bb84e1190fc77ae9eb73e9534c958
Branches: master
Link: http://git.php.net/?p=pftt2.git;a=commitdiff;h=116120135b954beb0cdd316492af74a6eef67da8
Log:
Close #38: Add PHP 7.4 support
Bugs:
https://bugs.php.net/38
Changed paths:
M src/com/mostc/pftt/main/PfttAuto.java
M src/com/mostc/pftt/model/core/EBuildBranch.java
M src/com/mostc/pftt/model/core/ECompiler.java
M src/com/mostc/pftt/model/core/PhpBuild.java
M src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy
Diff:
diff --git a/src/com/mostc/pftt/main/PfttAuto.java b/src/com/mostc/pftt/main/PfttAuto.java
index d8170e6..9d1d91d 100644
--- a/src/com/mostc/pftt/main/PfttAuto.java
+++ b/src/com/mostc/pftt/main/PfttAuto.java
@@ -37,6 +37,10 @@ import com.mostc.pftt.util.TimerUtil;
// TODO cleanup really old build, test, debug packs
public class PfttAuto {
static final BuildSpec[] BUILD_SPECS = new BuildSpec[] {
+ new BuildSpec(EBuildBranch.PHP_7_4, EBuildType.TS, ECPUArch.X64),
+ new BuildSpec(EBuildBranch.PHP_7_4, EBuildType.NTS, ECPUArch.X64),
+ new BuildSpec(EBuildBranch.PHP_7_4, EBuildType.TS, ECPUArch.X86),
+ new BuildSpec(EBuildBranch.PHP_7_4, EBuildType.NTS, ECPUArch.X86),
new BuildSpec(EBuildBranch.PHP_7_3, EBuildType.TS, ECPUArch.X64),
new BuildSpec(EBuildBranch.PHP_7_3, EBuildType.NTS, ECPUArch.X64),
new BuildSpec(EBuildBranch.PHP_7_3, EBuildType.TS, ECPUArch.X86),
diff --git a/src/com/mostc/pftt/model/core/EBuildBranch.java
b/src/com/mostc/pftt/model/core/EBuildBranch.java
index 2c2369b..3bc0e9b 100644
--- a/src/com/mostc/pftt/model/core/EBuildBranch.java
+++ b/src/com/mostc/pftt/model/core/EBuildBranch.java
@@ -95,6 +95,8 @@ public enum EBuildBranch {
return PHP_7_2;
else if
(str.equals("php_7_3")||str.equals("7_3")||str.equals("7.3")||str.equals("73")||str.equals("php7_3")||str.equals("php73")||str.equals("php7..3")||str.equals("php_7.3"))
return PHP_7_3;
+ else if
(str.equals("php_7_4")||str.equals("7_4")||str.equals("7.4")||str.equals("74")||str.equals("php7_4")||str.equals("php74")||str.equals("php7.4")||str.equals("php_7.4"))
+ return PHP_7_4;
else if (str.equals("master")||str.equals("php_master"))
return PHP_Master;
else if (str.equals("str_size_and_int64"))
@@ -115,6 +117,8 @@ public enum EBuildBranch {
return PHP_7_2;
else if
(str.contains("php_7_3")||str.contains("php7_3")||str.contains("php73")||str.contains("php7.3")||str.contains("php_7.3"))
return PHP_7_3;
+ else if
(str.contains("php_7_4")||str.contains("php7_4")||str.contains("php74")||str.contains("php7.4")||str.contains("php_7.4"))
+ return PHP_7_4;
else if (str.contains("master"))
return PHP_Master;
else if (str.contains("str_size")||str.contains("int64"))
diff --git a/src/com/mostc/pftt/model/core/ECompiler.java
b/src/com/mostc/pftt/model/core/ECompiler.java
index 04f91af..7b84c76 100644
--- a/src/com/mostc/pftt/model/core/ECompiler.java
+++ b/src/com/mostc/pftt/model/core/ECompiler.java
@@ -8,6 +8,7 @@ public enum ECompiler {
VC12,
VC14, // Visual Studio 2015
VC15,
+ VS16, // Visual Studio 2019
GCC4,
GCC3
}
diff --git a/src/com/mostc/pftt/model/core/PhpBuild.java
b/src/com/mostc/pftt/model/core/PhpBuild.java
index a906080..1f44663 100644
--- a/src/com/mostc/pftt/model/core/PhpBuild.java
+++ b/src/com/mostc/pftt/model/core/PhpBuild.java
@@ -201,6 +201,9 @@ public class PhpBuild extends SAPIManager {
case PHP_7_3:
debug_path =
"php-debug-pack-7.3-"+build_type+"-windows-"+compiler+"-"+cpu_arch+"-"+revision;
break;
+ case PHP_7_4:
+ debug_path =
"php-debug-pack-7.4-"+build_type+"-windows-"+compiler+"-"+cpu_arch+"-"+revision;
+ break;
case PHP_Master:
debug_path =
"php-debug-pack-master-"+build_type+"-windows-"+compiler+"-"+cpu_arch+"-"+revision;
break;
@@ -243,6 +246,9 @@ public class PhpBuild extends SAPIManager {
case PHP_7_3:
source_path = "php-7.3-src-"+revision;
break;
+ case PHP_7_4:
+ source_path = "php-7.4-src-"+revision;
+ break;
case PHP_Master:
source_path = "php-master-src-"+revision;
break;
@@ -422,6 +428,10 @@ public class PhpBuild extends SAPIManager {
branch = EBuildBranch.PHP_7_3;
major = 7;
minor = 3;
+ } else if (b.contains("php-7.4")) {
+ branch = EBuildBranch.PHP_7_4;
+ major = 7;
+ minor = 4;
} else if (b.contains("php-master")) {
branch = EBuildBranch.PHP_Master;
major = 5;
@@ -607,8 +617,16 @@ public class PhpBuild extends SAPIManager {
}
}
+ public boolean is74(ConsoleManager cm, Host host) {
+ try {
+ return getVersionBranch(cm, host) == EBuildBranch.PHP_7_4;
+ } catch ( Exception ex ) {
+ return false;
+ }
+ }
+
public boolean is7(ConsoleManager cm, Host host) {
- return is70(cm, host) || is71(cm, host) || is72(cm, host) || is73(cm, host);
+ return is70(cm, host) || is71(cm, host) || is72(cm, host) || is73(cm, host) || is74(cm, host);
}
public boolean isMaster(ConsoleManager cm, Host host) {
diff --git a/src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy
b/src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy
index 83811e8..93cb43b 100644
--- a/src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy
+++ b/src/com/mostc/pftt/util/WindowsSnapshotDownloadUtil.groovy
@@ -35,6 +35,7 @@ final class WindowsSnapshotDownloadUtil {
static final URL PHP_7_1_DOWNLOAD = new URL("http://windows.php.net/downloads/snaps/php-7.1/")
static final URL PHP_7_2_DOWNLOAD = new URL("http://windows.php.net/downloads/snaps/php-7.2/")
static final URL PHP_7_3_DOWNLOAD = new URL("http://windows.php.net/downloads/snaps/php-7.3/")
+ static final URL PHP_7_4_DOWNLOAD = new URL("http://windows.php.net/downloads/snaps/php-7.4/")
static final URL STR_SIZE_AND_INT64_DOWNLOAD = new URL("http://windows.php.net/downloads/snaps/str_size_and_int64/")
static final URL PHP_MASTER_DOWNLOAD = new URL("http://windows.php.net/downloads/snaps/master/")
@@ -62,6 +63,8 @@ final class WindowsSnapshotDownloadUtil {
static URL getDownloadURL(EBuildBranch branch) {
// TODO temp call method on EBuildBranch to simplify adding new branches
switch(branch) {
+ case EBuildBranch.PHP_7_4:
+ return PHP_7_4_DOWNLOAD;
case EBuildBranch.PHP_7_1:
return PHP_7_1_DOWNLOAD;
case EBuildBranch.PHP_7_0: