mirror of
https://github.com/phpv8/v8js.git
synced 2024-12-31 22:31:52 +00:00
Merge pull request #293 from stesie/refresh-appveyor
[WIP] refresh appveyor
This commit is contained in:
commit
9a1f42c56c
43
appveyor.yml
43
appveyor.yml
@ -1,21 +1,22 @@
|
|||||||
environment:
|
environment:
|
||||||
matrix:
|
matrix:
|
||||||
- BUILD_PLATFORM: x86
|
- ARTIFACT_NAME: v8js_vc14_php7_%Platform%_ts.zip
|
||||||
ARTIFACT_NAME: v8js_vc14_php7_ts.zip
|
|
||||||
OUTDIR: Release_TS
|
OUTDIR: Release_TS
|
||||||
- BUILD_PLATFORM: x86
|
V8_ASSETS: V8-5.8.301.0-%Platform%.zip
|
||||||
ARTIFACT_NAME: v8js_vc14_php7_nts.zip
|
- ARTIFACT_NAME: v8js_vc14_php7_%Platform%_nts.zip
|
||||||
OUTDIR: Release
|
OUTDIR: Release
|
||||||
CONFIGURE_EXTRA: --disable-zts
|
CONFIGURE_EXTRA: --disable-zts
|
||||||
|
V8_ASSETS: V8-5.8.301.0-%Platform%.zip
|
||||||
|
|
||||||
PHP_VERSION: 7.0.7
|
PHP_VERSION: 7.0.16
|
||||||
PHP_SDK: c:\projects\php-sdk
|
PHP_SDK: c:\projects\php-sdk
|
||||||
|
|
||||||
os: Windows Server 2012
|
os: Windows Server 2012
|
||||||
clone_folder: c:\projects\php-sdk\v8js-ci\vc14\x86\php\ext\v8js
|
clone_folder: c:\projects\php-sdk\v8js-ci\vc14\%Platform%\php\ext\v8js
|
||||||
|
|
||||||
matrix:
|
platform:
|
||||||
fast_finish: true
|
- x64
|
||||||
|
- x86
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- cd %PHP_SDK%
|
- cd %PHP_SDK%
|
||||||
@ -23,21 +24,31 @@ install:
|
|||||||
- 7z.exe x php-sdk-binary-tools-20110915.zip
|
- 7z.exe x php-sdk-binary-tools-20110915.zip
|
||||||
- call bin\phpsdk_setvars.bat
|
- call bin\phpsdk_setvars.bat
|
||||||
- call bin\phpsdk_buildtree.bat v8js-ci
|
- call bin\phpsdk_buildtree.bat v8js-ci
|
||||||
- cd v8js-ci\vc14\x86
|
- cd v8js-ci\vc14\%Platform%
|
||||||
- md deps
|
- md deps
|
||||||
- curl -fSL -o v8-4.9.385.29-x86-deps.zip 'https://s3.amazonaws.com/win-phpv8/v8-4.9.385.29-x86-deps.zip'
|
- cd deps
|
||||||
- 7z.exe x v8-4.9.385.29-x86-deps.zip
|
- curl -fSL -o %V8_ASSETS% 'https://s3.amazonaws.com/win-phpv8/%V8_ASSETS%'
|
||||||
|
- 7z.exe x %V8_ASSETS%
|
||||||
|
- cd ..
|
||||||
- curl -fSL -o 'php-%PHP_VERSION%.tar.gz' 'http://us1.php.net/distributions/php-%PHP_VERSION%.tar.gz'
|
- curl -fSL -o 'php-%PHP_VERSION%.tar.gz' 'http://us1.php.net/distributions/php-%PHP_VERSION%.tar.gz'
|
||||||
- ren php php-%PHP_VERSION%
|
- ren php php-%PHP_VERSION%
|
||||||
- 7z.exe x php-%PHP_VERSION%.tar.gz -y
|
- 7z.exe x php-%PHP_VERSION%.tar.gz -y
|
||||||
- 7z.exe x php-%PHP_VERSION%.tar -y | find /v "Extracting"
|
- 7z.exe x php-%PHP_VERSION%.tar -y | find /v "Extracting"
|
||||||
- cd php-%PHP_VERSION%
|
- cd php-%PHP_VERSION%
|
||||||
|
- IF "%Platform%" == "x64" SET OUTDIR=x64\%OUTDIR%
|
||||||
- mkdir %OUTDIR%
|
- mkdir %OUTDIR%
|
||||||
- move ..\deps\lib\*.dll %OUTDIR%\
|
- move ..\deps\bin\*.dll %OUTDIR%\
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- '"%VS140COMNTOOLS%\VsDevCmd" %BUILD_PLATFORM%'
|
- ps: >-
|
||||||
- set
|
If ($env:Platform -Match "x86") {
|
||||||
|
$env:VCVARS_PLATFORM="x86"
|
||||||
|
$env:ENV_PLATFORM="x86"
|
||||||
|
} Else {
|
||||||
|
$env:VCVARS_PLATFORM="amd64"
|
||||||
|
$env:ENV_PLATFORM="x64"
|
||||||
|
}
|
||||||
|
- call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %VCVARS_PLATFORM%
|
||||||
- echo Building PHP [%PHP_VERSION%]
|
- echo Building PHP [%PHP_VERSION%]
|
||||||
- '%PHP_SDK%\bin\phpsdk_setvars'
|
- '%PHP_SDK%\bin\phpsdk_setvars'
|
||||||
- buildconf
|
- buildconf
|
||||||
@ -50,14 +61,14 @@ after_build:
|
|||||||
- ps: Push-AppveyorArtifact $env:ARTIFACT_NAME
|
- ps: Push-AppveyorArtifact $env:ARTIFACT_NAME
|
||||||
|
|
||||||
test_script:
|
test_script:
|
||||||
- cd c:\projects\php-sdk\v8js-ci\vc14\x86\php-%PHP_VERSION%
|
- cd c:\projects\php-sdk\v8js-ci\vc14\%Platform%\php-%PHP_VERSION%
|
||||||
- set NO_INTERACTION=1
|
- set NO_INTERACTION=1
|
||||||
- set TEST_PHP_JUNIT=junit.xml
|
- set TEST_PHP_JUNIT=junit.xml
|
||||||
- set REPORT_EXIT_STATUS=1
|
- set REPORT_EXIT_STATUS=1
|
||||||
- "%OUTDIR%\\php.exe run-tests.php -p %OUTDIR%\\php.exe ext/v8js/tests/ -d extension=php_v8js.dll -d extension_dir=%OUTDIR%\\"
|
- "%OUTDIR%\\php.exe run-tests.php -p %OUTDIR%\\php.exe ext/v8js/tests/ -d extension=php_v8js.dll -d extension_dir=%OUTDIR%\\"
|
||||||
|
|
||||||
on_finish:
|
on_finish:
|
||||||
- cd c:\projects\php-sdk\v8js-ci\vc14\x86\php-%PHP_VERSION%
|
- cd c:\projects\php-sdk\v8js-ci\vc14\%Platform%\php-%PHP_VERSION%
|
||||||
- ps: |
|
- ps: |
|
||||||
# upload results to AppVeyor
|
# upload results to AppVeyor
|
||||||
$wc = New-Object 'System.Net.WebClient'
|
$wc = New-Object 'System.Net.WebClient'
|
||||||
|
@ -16,9 +16,9 @@ if (PHP_V8JS != "no") {
|
|||||||
ADD_FLAG("CFLAGS_V8JS", "/D __STDC_LIMIT_MACROS");
|
ADD_FLAG("CFLAGS_V8JS", "/D __STDC_LIMIT_MACROS");
|
||||||
|
|
||||||
// defaults
|
// defaults
|
||||||
var v8major = 4;
|
var v8major = 5;
|
||||||
var v8minor = 7;
|
var v8minor = 8;
|
||||||
var v8build = 75;
|
var v8build = 301;
|
||||||
var v8patch = 0;
|
var v8patch = 0;
|
||||||
var v8pinc = search_paths("v8-version.h", php_usual_include_suspects, null);
|
var v8pinc = search_paths("v8-version.h", php_usual_include_suspects, null);
|
||||||
if (typeof(v8pinc) == "string") {
|
if (typeof(v8pinc) == "string") {
|
||||||
|
36
tests/long_int64.phpt
Normal file
36
tests/long_int64.phpt
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
--TEST--
|
||||||
|
Test V8::executeString() : Check long 64-bit export from PHP to JS
|
||||||
|
--SKIPIF--
|
||||||
|
<?php
|
||||||
|
require_once(dirname(__FILE__) . '/skipif.inc');
|
||||||
|
if (4 == PHP_INT_SIZE)
|
||||||
|
die("SKIP test not supported on 32bit PHP");
|
||||||
|
?>
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$addInt = function ($a, $b) {
|
||||||
|
return $a + $b;
|
||||||
|
};
|
||||||
|
|
||||||
|
$v8 = new V8Js('PHP');
|
||||||
|
$v8->add = $addInt;
|
||||||
|
$v8->p1 = 10;
|
||||||
|
$v8->p2 = pow(2,45);
|
||||||
|
|
||||||
|
var_dump($v8->p2);
|
||||||
|
|
||||||
|
var_dump($v8->executeString('
|
||||||
|
var res = PHP.p1 + PHP.p2;
|
||||||
|
"p1:" + PHP.p1 +
|
||||||
|
", p2:" + PHP.p2 +
|
||||||
|
", PHP.add(p1,p2)=" + PHP.add(PHP.p1, PHP.p2) +
|
||||||
|
", p1+p2=" + res +
|
||||||
|
" -> " + (new Date(res)).toISOString();
|
||||||
|
'));
|
||||||
|
?>
|
||||||
|
===EOF===
|
||||||
|
--EXPECT--
|
||||||
|
int(35184372088832)
|
||||||
|
string(105) "p1:10, p2:35184372088832, PHP.add(p1,p2)=35184372088842, p1+p2=35184372088842 -> 3084-12-12T12:41:28.842Z"
|
||||||
|
===EOF===
|
@ -101,7 +101,7 @@ static v8::Handle<v8::Value> v8js_hash_to_jsarr(zval *value, v8::Isolate *isolat
|
|||||||
v8::Handle<v8::Value> zval_to_v8js(zval *value, v8::Isolate *isolate TSRMLS_DC) /* {{{ */
|
v8::Handle<v8::Value> zval_to_v8js(zval *value, v8::Isolate *isolate TSRMLS_DC) /* {{{ */
|
||||||
{
|
{
|
||||||
v8::Handle<v8::Value> jsValue;
|
v8::Handle<v8::Value> jsValue;
|
||||||
long v;
|
zend_long v;
|
||||||
zend_class_entry *ce;
|
zend_class_entry *ce;
|
||||||
|
|
||||||
switch (Z_TYPE_P(value))
|
switch (Z_TYPE_P(value))
|
||||||
@ -143,9 +143,9 @@ v8::Handle<v8::Value> zval_to_v8js(zval *value, v8::Isolate *isolate TSRMLS_DC)
|
|||||||
#undef max
|
#undef max
|
||||||
#undef min
|
#undef min
|
||||||
if (v < - std::numeric_limits<int32_t>::min() || v > std::numeric_limits<int32_t>::max()) {
|
if (v < - std::numeric_limits<int32_t>::min() || v > std::numeric_limits<int32_t>::max()) {
|
||||||
jsValue = V8JS_FLOAT((double)v);
|
jsValue = V8JS_FLOAT(static_cast<double>(v));
|
||||||
} else {
|
} else {
|
||||||
jsValue = V8JS_INT(v);
|
jsValue = V8JS_INT(static_cast<int32_t>(v));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user