Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix : build bunled library version, fixes #90 #94

Merged
merged 34 commits into from
Nov 24, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
0527002
update library
viest Aug 21, 2018
72a1b19
update config.m4 check zlib
viest Aug 22, 2018
37703f9
bunled lib
viest Nov 24, 2018
9690d5a
bunled lib
viest Nov 24, 2018
f33d3ef
bunled lib
viest Nov 24, 2018
92d7840
Merge branch 'dev' into bunled_lib
viest Nov 24, 2018
cfcdd48
Merge pull request #91 from viest/bunled_lib
viest Nov 24, 2018
ec160d3
bunled lib
viest Nov 24, 2018
06ceccd
bunled lib
viest Nov 24, 2018
05d0162
bunled lib
viest Nov 24, 2018
dac83bf
bunled lib
viest Nov 24, 2018
c440042
bunled lib
viest Nov 24, 2018
770dddd
Merge pull request #92 from viest/bunled_lib
viest Nov 24, 2018
e180eee
bunled lib
viest Nov 24, 2018
56f20cf
windows config:
viest Nov 24, 2018
6dc19f9
windows config
viest Nov 24, 2018
74c0693
windows config
viest Nov 24, 2018
307939a
windows config
viest Nov 24, 2018
759c6e3
windows config
viest Nov 24, 2018
49203f4
windows config
viest Nov 24, 2018
a6a976f
windows config
viest Nov 24, 2018
058e0a6
windows config
viest Nov 24, 2018
1d2f872
windows config
viest Nov 24, 2018
d866f22
windows config
viest Nov 24, 2018
5fed934
windows config
viest Nov 24, 2018
87b4e81
windows config
viest Nov 24, 2018
bf37b7e
windows config
viest Nov 24, 2018
2a21c79
windows config
viest Nov 24, 2018
075aed8
windows config
viest Nov 24, 2018
9ad7c49
windows config
viest Nov 24, 2018
53a4a4c
windows config
viest Nov 24, 2018
d967560
windows config
viest Nov 24, 2018
63b698d
windows config
viest Nov 24, 2018
c02e3b5
Merge pull request #93 from viest/bunled_lib
viest Nov 24, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 31 additions & 18 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,25 +23,26 @@ install:
7z x c:\build-cache\$bname -oc:\build-cache
move c:\build-cache\$dname0 c:\build-cache\$dname1
}
$lname2 = 'zlib-1.2.11.tar.gz'
$lname3 = 'zlib'
$lname0 = 'zlib-' + $env:ZLIB_VER + '-' + $env:VC + '-' + $env:ARCH + '.zip'
$lname1 = 'zlib'
if (-not (Test-Path c:\build-cache\$lname0)) {
$zliurl = "https://windows.php.net/downloads/php-sdk/deps/" + $env:VC + "/" + $env:ARCH+ "/" + $lname0
Invoke-WebRequest $zliurl -OutFile "c:\build-cache\$lname0"
}
if (-not (Test-Path c:\build-cache\$lname1)) {
& 7z x c:\build-cache\$lname0 -oc:\build-cache\$lname1
}
$lname2 = 'libxlsxwriter-' + $env:LIBXLSXWRITER_VER + '-' + $env:VC + '-' + $env:ARCH + '.zip'
$lname3 = 'libxlsxwriter'
if (-not (Test-Path c:\build-cache\$lname2)) {
$zliurl = "http://zlib.net/" + $lname2
Invoke-WebRequest $zliurl -OutFile "c:\build-cache\$lname2"
$url = "https://windows.php.net/downloads/pecl/deps/" + $lname2
Invoke-WebRequest $url -OutFile "c:\build-cache\$lname2"
}
if (-not (Test-Path c:\build-cache\$lname3)) {
& 7z x c:\build-cache\$lname2 -oc:\build-cache
& 7z x c:\build-cache\zlib-1.2.11.tar -oc:\build-cache\$lname3
}
if (-not (Test-Path c:\build-cache\$lname3\Release)) {
cd c:\build-cache\$lname3\zlib-1.2.11
$cmakegen = 'Visual Studio 15 2017'
if ($env:VC -Match "vc14") {
$cmakegen = "Visual Studio 14 2015"
}
& cmake -G $cmakegen -DCMAKE_BUILD_TYPE="Release" -DCMAKE_C_FLAGS_RELEASE="/MT"
& cmake --build . --config "Release"
& 7z x c:\build-cache\$lname2 -oc:\build-cache\$lname3
}
move c:\build-cache\zlib\lib\*.* c:\build-cache\libxlsxwriter\lib
move c:\build-cache\zlib\include\*.* c:\build-cache\libxlsxwriter\include

cache:
c:\build-cache -> .appveyor.yml
Expand All @@ -54,61 +55,73 @@ environment:
ARCH: x64
VC: vc14
PHP_VER: 7.0.28
ZLIB_VER: 1.2.8
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.0.28
ZLIB_VER: 1.2.8
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.0.28
ZLIB_VER: 1.2.8
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.0.28
ZLIB_VER: 1.2.8
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.1.15
ZLIB_VER: 1.2.8
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.1.15
ZLIB_VER: 1.2.8
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.1.15
ZLIB_VER: 1.2.8
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.1.15
ZLIB_VER: 1.2.8
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x64
VC: vc15
PHP_VER: 7.2.3
ZLIB_VER: 1.2.11
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x64
VC: vc15
PHP_VER: 7.2.3
ZLIB_VER: 1.2.11
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x86
VC: vc15
PHP_VER: 7.2.3
ZLIB_VER: 1.2.11
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x86
VC: vc15
PHP_VER: 7.2.3
ZLIB_VER: 1.2.11
TS: 1

build_script:
Expand All @@ -134,7 +147,7 @@ build_script:
#echo "" | Out-File -Encoding "ASCII" -Append task.bat
echo "" | Out-File -Encoding "ASCII" task.bat
echo "call phpize 2>&1" | Out-File -Encoding "ASCII" -Append task.bat
$conf_cmd = 'call configure --with-xlswriter --with-extra-libs=c:\build-cache\zlib\zlib-1.2.11\Release --with-extra-includes=c:\build-cache\zlib\zlib-1.2.11 --enable-debug-pack 2>&1'
$conf_cmd = 'call configure --with-xlswriter --with-extra-libs=c:\build-cache\libxlsxwriter\lib --with-extra-includes=c:\build-cache\libxlsxwriter\include --enable-debug-pack 2>&1'
echo $conf_cmd | Out-File -Encoding "ASCII" -Append task.bat
echo "nmake /nologo 2>&1" | Out-File -Encoding "ASCII" -Append task.bat
echo "exit %errorlevel%" | Out-File -Encoding "ASCII" -Append task.bat
Expand All @@ -152,7 +165,7 @@ after_build:
if ('x64' -eq $env:ARCH) { $dir = $dir + 'x64\' }
$dir = $dir + 'Release'
if ('1' -eq $env:TS) { $dir = $dir + '_TS' }
& 7z a c:\$zip_bname $dir\php_xlswriter.dll c:\projects\xlswriter\LICENSE
& 7z a c:\$zip_bname $dir\php_xlswriter.dll c:\projects\xlswriter\LICENSE c:\build-cache\libxlsxwriter\lib\xlsxwriter.lib c:\build-cache\libxlsxwriter\lib\xlsxwriter.pdb
Push-AppveyorArtifact c:\$zip_bname

test_script:
Expand All @@ -173,7 +186,7 @@ test_script:
cd c:\projects\xlswriter
echo "" | Out-File -Encoding "ASCII" task.bat
echo "set REPORT_EXIT_STATUS=1" | Out-File -Encoding "ASCII" -Append task.bat
$cmd = 'call configure --with-xlswriter --with-xlswriter --with-extra-libs=c:\build-cache\zlib\zlib-1.2.11\Release --with-extra-includes=c:\build-cache\zlib\zlib-1.2.11 --with-prefix=c:\build-cache\' + $dname + ' 2>&1'
$cmd = 'call configure --with-xlswriter --with-extra-libs=c:\build-cache\libxlsxwriter\lib --with-extra-includes=c:\build-cache\libxlsxwriter\include --with-prefix=c:\build-cache\' + $dname + ' 2>&1'
echo $cmd | Out-File -Encoding "ASCII" -Append task.bat
echo 'nmake /nologo test TESTS="-q --show-diff --set-timeout 120" 2>&1' | Out-File -Encoding "ASCII" -Append task.bat
echo "exit %errorlevel%" | Out-File -Encoding "ASCII" -Append task.bat
Expand Down
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[submodule "library"]
path = library
url = https://github.com/jmcnamara/libxlsxwriter.git
branch = RELEASE_0.7.9
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ notifications:
email: dev@service.viest.me

before_script:
- git submodule update --init
- sudo apt-get install zlib1g-dev -y
- phpize && ./configure && make clean && make

Expand Down
184 changes: 184 additions & 0 deletions backup/.appveyor.yml.backup
Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
version: "{branch}.build.{build}"
skip_tags: true

branches:
only:
- master
- dev

clone_folder: c:\projects\xlswriter

install:
ps: |
if (-not (Test-Path c:\build-cache)) {
mkdir c:\build-cache
}
$bname = 'php-sdk-' + $env:BIN_SDK_VER + '.zip'
if (-not (Test-Path c:\build-cache\$bname)) {
Invoke-WebRequest "https://github.com/OSTC/php-sdk-binary-tools/archive/$bname" -OutFile "c:\build-cache\$bname"
}
$dname0 = 'php-sdk-binary-tools-php-sdk-' + $env:BIN_SDK_VER
$dname1 = 'php-sdk-' + $env:BIN_SDK_VER
if (-not (Test-Path c:\build-cache\$dname1)) {
7z x c:\build-cache\$bname -oc:\build-cache
move c:\build-cache\$dname0 c:\build-cache\$dname1
}
$lname2 = 'zlib-1.2.11.tar.gz'
$lname3 = 'zlib'
if (-not (Test-Path c:\build-cache\$lname2)) {
$zliurl = "http://zlib.net/" + $lname2
Invoke-WebRequest $zliurl -OutFile "c:\build-cache\$lname2"
}
if (-not (Test-Path c:\build-cache\$lname3)) {
& 7z x c:\build-cache\$lname2 -oc:\build-cache
& 7z x c:\build-cache\zlib-1.2.11.tar -oc:\build-cache\$lname3
}
if (-not (Test-Path c:\build-cache\$lname3\Release)) {
cd c:\build-cache\$lname3\zlib-1.2.11
$cmakegen = 'Visual Studio 15 2017'
if ($env:VC -Match "vc14") {
$cmakegen = "Visual Studio 14 2015"
}
& cmake -G $cmakegen -DCMAKE_BUILD_TYPE="Release" -DCMAKE_C_FLAGS_RELEASE="/MT"
& cmake --build . --config "Release"
}

cache:
c:\build-cache -> .appveyor.yml

environment:
BIN_SDK_VER: 2.1.2
LIBXLSXWRITER_VER: 0.7.7
matrix:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.0.28
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.0.28
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.0.28
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.0.28
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.1.15
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x64
VC: vc14
PHP_VER: 7.1.15
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.1.15
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
ARCH: x86
VC: vc14
PHP_VER: 7.1.15
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x64
VC: vc15
PHP_VER: 7.2.3
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x64
VC: vc15
PHP_VER: 7.2.3
TS: 1
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x86
VC: vc15
PHP_VER: 7.2.3
TS: 0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
ARCH: x86
VC: vc15
PHP_VER: 7.2.3
TS: 1

build_script:
ps: |
$ts_part = ''
if ('0' -eq $env:TS) { $ts_part = '-nts' }
$bname = 'php-devel-pack-' + $env:PHP_VER + $ts_part + '-Win32-' + $env:VC.toUpper() + '-' + $env:ARCH + '.zip'
if (-not (Test-Path c:\build-cache\$bname)) {
Invoke-WebRequest "http://windows.php.net/downloads/releases/archives/$bname" -OutFile "c:\build-cache\$bname"
if (-not (Test-Path c:\build-cache\$bname)) {
Invoke-WebRequest "http://windows.php.net/downloads/releases/$bname" -OutFile "c:\build-cache\$bname"
}
}
$dname0 = 'php-' + $env:PHP_VER + '-devel-' + $env:VC.toUpper() + '-' + $env:ARCH
$dname1 = 'php-' + $env:PHP_VER + $ts_part + '-devel-' + $env:VC.toUpper() + '-' + $env:ARCH
if (-not (Test-Path c:\build-cache\$dname1)) {
7z x c:\build-cache\$bname -oc:\build-cache
move c:\build-cache\$dname0 c:\build-cache\$dname1
}
cd c:\projects\xlswriter
$env:PATH = 'c:\build-cache\' + $dname1 + ';' + $env:PATH
#echo "@echo off" | Out-File -Encoding "ASCII" task.bat
#echo "" | Out-File -Encoding "ASCII" -Append task.bat
echo "" | Out-File -Encoding "ASCII" task.bat
echo "call git submodule update --init 2>&1" | Out-File -Encoding "ASCII" -Append task.bat
echo "call phpize 2>&1" | Out-File -Encoding "ASCII" -Append task.bat
$conf_cmd = 'call configure --with-xlswriter --with-extra-libs=c:\build-cache\zlib\zlib-1.2.11\Release --with-extra-includes=c:\build-cache\zlib\zlib-1.2.11 --enable-debug-pack 2>&1'
echo $conf_cmd | Out-File -Encoding "ASCII" -Append task.bat
echo "nmake /nologo 2>&1" | Out-File -Encoding "ASCII" -Append task.bat
echo "exit %errorlevel%" | Out-File -Encoding "ASCII" -Append task.bat
$here = (Get-Item -Path "." -Verbose).FullName
$runner = 'c:\build-cache\php-sdk-' + $env:BIN_SDK_VER + '\phpsdk' + '-' + $env:VC + '-' + $env:ARCH + '.bat'
$task = $here + '\task.bat'
& $runner -t $task

after_build:
ps: |
$ts_part = 'ts'
if ('0' -eq $env:TS) { $ts_part = 'nts' }
$zip_bname = 'php_xlswriter-' + $env:APPVEYOR_REPO_COMMIT.substring(0, 8) + '-' + $env:PHP_VER.substring(0, 3) + '-' + $ts_part + '-' + $env:VC + '-' + $env:ARCH + '.zip'
$dir = 'c:\projects\xlswriter\';
if ('x64' -eq $env:ARCH) { $dir = $dir + 'x64\' }
$dir = $dir + 'Release'
if ('1' -eq $env:TS) { $dir = $dir + '_TS' }
& 7z a c:\$zip_bname $dir\php_xlswriter.dll c:\projects\xlswriter\LICENSE
Push-AppveyorArtifact c:\$zip_bname

test_script:
ps: |
$ts_part = ''
if ('0' -eq $env:TS) { $ts_part = '-nts' }
$bname = 'php-' + $env:PHP_VER + $ts_part + '-Win32-' + $env:VC.toUpper() + '-' + $env:ARCH + '.zip'
if (-not (Test-Path c:\build-cache\$bname)) {
Invoke-WebRequest "http://windows.php.net/downloads/releases/archives/$bname" -OutFile "c:\build-cache\$bname"
if (-not (Test-Path c:\build-cache\$bname)) {
Invoke-WebRequest "http://windows.php.net/downloads/releases/$bname" -OutFile "c:\build-cache\$bname"
}
}
$dname = 'php-' + $env:PHP_VER + $ts_part + '-' + $env:VC.toUpper() + '-' + $env:ARCH
if (-not (Test-Path c:\build-cache\$dname)) {
7z x c:\build-cache\$bname -oc:\build-cache\$dname
}
cd c:\projects\xlswriter
echo "" | Out-File -Encoding "ASCII" task.bat
echo "set REPORT_EXIT_STATUS=1" | Out-File -Encoding "ASCII" -Append task.bat
$cmd = 'call configure --with-xlswriter --with-xlswriter --with-extra-libs=c:\build-cache\zlib\zlib-1.2.11\Release --with-extra-includes=c:\build-cache\zlib\zlib-1.2.11 --with-prefix=c:\build-cache\' + $dname + ' 2>&1'
echo $cmd | Out-File -Encoding "ASCII" -Append task.bat
echo 'nmake /nologo test TESTS="-q --show-diff --set-timeout 120" 2>&1' | Out-File -Encoding "ASCII" -Append task.bat
echo "exit %errorlevel%" | Out-File -Encoding "ASCII" -Append task.bat
$here = (Get-Item -Path "." -Verbose).FullName
$runner = 'c:\build-cache\php-sdk-' + $env:BIN_SDK_VER + '\phpsdk' + '-' + $env:VC + '-' + $env:ARCH + '.bat'
$task = $here + '\task.bat'
& $runner -t $task
28 changes: 28 additions & 0 deletions backup/config.w32.backup
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// vim:ft=javascript

ARG_WITH("xlswriter", "xlswriter support", "no");

if (PHP_XLSWRITER != "no") {

MESSAGE("Include Path:" + configure_module_dirname + "\\include");

if (CHECK_LIB("zlib_a.lib;zlib.lib", "zlib", PHP_XLSWRITER) &&
CHECK_HEADER_ADD_INCLUDE("zlib.h", "CFLAGS_XLSWRITER", "..\\zlib;" + php_usual_include_suspects) &&
CHECK_HEADER_ADD_INCLUDE("xlsxwriter.h", "CFLAGS_XLSWRITER", PHP_XLSWRITER + ";" + configure_module_dirname + "\\library\\include") &&
CHECK_HEADER_ADD_INCLUDE("packager.h", "CFLAGS_XLSWRITER", PHP_XLSWRITER + ";" + configure_module_dirname + "\\library\\include\\xlsxwriter") &&
CHECK_HEADER_ADD_INCLUDE("zip.h", "CFLAGS_XLSWRITER", PHP_XLSWRITER + ";" + configure_module_dirname + "\\library\\include\\xlsxwriter\\third_party")) {

EXTENSION("xlswriter", "xls_writer.c");

ADD_SOURCES(configure_module_dirname + "\\library\\third_party\\minizip", "ioapi.c iowin32.c mztools.c unzip.c zip.c", "xlswriter");
ADD_SOURCES(configure_module_dirname + "\\library\\third_party\\tmpfileplus", "tmpfileplus.c", "xlswriter");
ADD_SOURCES(configure_module_dirname + "\\library\\src", "app.c chart.c content_types.c core.c custom.c drawing.c format.c hash_table.c packager.c relationships.c shared_strings.c styles.c theme.c utility.c workbook.c worksheet.c xmlwriter.c", "xlswriter");
ADD_SOURCES(configure_module_dirname + "\\kernel", "common.c resource.c exception.c excel.c write.c format.c", "xlswriter");

ADD_FLAG("CFLAGS_XLSWRITER", ' /I "' + configure_module_dirname + '" ');

} else {
WARNING("xlswriter not enabled, headers not found");
}

}
14 changes: 10 additions & 4 deletions config.m4
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ if test "$PHP_XLSWRITER" != "no"; then
library/src/core.c \
library/src/custom.c \
library/src/drawing.c \
library/src/xlsx_format.c \
library/src/format.c \
library/src/hash_table.c \
library/src/packager.c \
library/src/relationships.c \
Expand Down Expand Up @@ -82,9 +82,15 @@ if test "$PHP_XLSWRITER" != "no"; then
xls_writer_sources="$xls_writer_sources $libxlsxwriter_sources"
PHP_ADD_INCLUDE([$srcdir/library/include])

dnl uncomment when bunled lib will be updated
dnl AC_DEFINE(HAVE_LXW_VERSION, 1, [ lxw_version available in 0.7.9 ])
dnl AC_DEFINE(HAVE_LXW_CHARTSHEET_NEW, 1, [ lxw_chartsheet_new available in 0.8.0 ])
XLSXWRITER_VERSION=`$EGREP "define LXW_VERSION" $srcdir/library/include/xlsxwriter.h | $SED -e 's/[[^0-9\.]]//g'`

if test `echo $XLSXWRITER_VERSION | $SED -e 's/[[^0-9]]/ /g' | $AWK '{print $1*10000 + $2*100 + $3}'` -lt 800; then
AC_DEFINE(HAVE_LXW_VERSION, 1, [ lxw_version available in 0.7.9 ])
fi

if test `echo $XLSXWRITER_VERSION | $SED -e 's/[[^0-9]]/ /g' | $AWK '{print $1*10000 + $2*100 + $3}'` -ge 800; then
AC_DEFINE(HAVE_LXW_CHARTSHEET_NEW, 1, [ lxw_chartsheet_new available in 0.8.0 ])
fi
fi

if test -z "$PHP_DEBUG"; then
Expand Down
Loading