diff options
-rw-r--r-- | README.win32.adoc | 10 | ||||
-rw-r--r-- | appveyor.yml | 1 | ||||
-rw-r--r-- | appveyor_build.cmd | 10 | ||||
-rw-r--r-- | appveyor_build.sh | 25 | ||||
m--------- | flexdll | 0 |
5 files changed, 17 insertions, 29 deletions
diff --git a/README.win32.adoc b/README.win32.adoc index a5ea725908..57ef54fa5a 100644 --- a/README.win32.adoc +++ b/README.win32.adoc @@ -73,10 +73,10 @@ https://github.com/alainfrisch/flexdll. A binary distribution is available; instructions on how to build FlexDLL from sources, including how to bootstrap FlexDLL and OCaml are given <<seflexdll,later in this document>>. Unless you bootstrap FlexDLL, you will need to ensure that the directory to which you -install FlexDLL is included in your `PATH` environment variable. Note: binary distributions -of FlexDLL are compatible only with certain versions of Visual Studio; for instance -version 0.36 of FlexDLL require Visual Studio 2015 or above, while earlier versions -require older versions of Visual Studio. +install FlexDLL is included in your `PATH` environment variable. Note: binary +distributions of FlexDLL are compatible only with Visual Studio 2013 and +earlier; for Visual Studio 2015 and later, you will need to compile the C +objects from source, or build ocaml using the flexdll target. The base bytecode system (ocamlc, ocaml, ocamllex, ocamlyacc, ...) of all three ports runs without any additional tools. @@ -388,7 +388,7 @@ and adapt their existing code bases accordingly. Note: in order for ocaml tools to support Unicode pathnames, it is necessary to use a version of FlexDLL which has itself been compiled with OCaml >= 4.06 in Unicode mode. This is the case for binary distributions -of FlexDLL starting from version 0.36 and above. +of FlexDLL starting from version 0.37 and above. == Trademarks diff --git a/appveyor.yml b/appveyor.yml index 02cb25f94f..a9cc760017 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -26,6 +26,7 @@ environment: CYG_ROOT: C:/cygwin64 CYG_MIRROR: http://mirrors.kernel.org/sourceware/cygwin/ CYG_CACHE: C:/cygwin64/var/cache/setup + FLEXDLL_VERSION: 0.37 OCAMLRUNPARAM: v=0,b OCAMLROOT: "%PROGRAMFILES%/OCaml" OCAMLROOT2: "%PROGRAMFILES%/OCaml-mingw32" diff --git a/appveyor_build.cmd b/appveyor_build.cmd index f11bd9dc3e..a798406069 100644 --- a/appveyor_build.cmd +++ b/appveyor_build.cmd @@ -56,18 +56,14 @@ if %CYGWIN_UPGRADE_REQUIRED% equ 1 ( goto :EOF :install -rem Temporarily initialise the submodule in the main (msvc64) build -git submodule update --init flexdll git worktree add ..\build-mingw32 -b appveyor-build-mingw32 cd ..\build-mingw32 git submodule update --init flexdll git worktree add ..\build-msvc32 -b appveyor-build-msvc32 -rem Temporarily initialise the submodule in the msvc32 build -cd ..\build-msvc32 -git submodule update --init flexdll -rem appveyor DownloadFile "http://alain.frisch.fr/flexdll/flexdll-0.35.tar.gz" -FileName "flexdll.tar.gz" || exit /b 1 -appveyor DownloadFile "http://alain.frisch.fr/flexdll/flexdll-bin-0.35.zip" -FileName "flexdll.zip" || exit /b 1 +cd "%APPVEYOR_BUILD_FOLDER%" +appveyor DownloadFile "https://github.com/alainfrisch/flexdll/archive/0.37.tar.gz" -FileName "flexdll.tar.gz" || exit /b 1 +appveyor DownloadFile "https://github.com/alainfrisch/flexdll/releases/download/0.37/flexdll-bin-0.37.zip" -FileName "flexdll.zip" || exit /b 1 rem flexdll.zip is processed here, rather than in appveyor_build.sh because the rem unzip command comes from MSYS2 (via Git for Windows) and it has to be rem invoked via cmd /c in a bash script which is weird(er). diff --git a/appveyor_build.sh b/appveyor_build.sh index b5d37576eb..a16209bbea 100644 --- a/appveyor_build.sh +++ b/appveyor_build.sh @@ -52,25 +52,18 @@ case "$1" in install) mkdir -p "$PREFIX/bin/flexdll" cd $APPVEYOR_BUILD_FOLDER/../flexdll - for f in flexdll.h flexlink.exe default_amd64.manifest ; do + # msvc64 objects need to be compiled with VS2015, so are copied later from + # a source build. + for f in flexdll.h flexlink.exe flexdll*_msvc.obj default*.manifest ; do cp $f "$PREFIX/bin/flexdll/$f" done echo 'eval $($APPVEYOR_BUILD_FOLDER/tools/msvs-promote-path)' >> ~/.bash_profile ;; msvc32-only) -# cd $APPVEYOR_BUILD_FOLDER/flexdll-0.35 -# make MSVC_DETECT=0 \ -# CHAINS=msvc \ -# MSVC_FLAGS="-nologo -MD -D_CRT_NO_DEPRECATE -GS- -WX" \ -# support -# cp flexdll*_msvc.obj "$PREFIX/bin/flexdll" - cd $APPVEYOR_BUILD_FOLDER/../build-msvc32 set_configuration msvc "C:/Program Files/OCaml-msmvc32" -WX - # Temporarily bootstrap flexdll - run "make flexdll" make flexdll run "make world" make world run "make runtimeopt" make runtimeopt run "make -C otherlibs/systhreads libthreadsnat.lib" \ @@ -87,11 +80,11 @@ case "$1" in *) cd $APPVEYOR_BUILD_FOLDER - # tar -xzf flexdll.tar.gz - # cd flexdll-0.35 - # make MSVC_DETECT=0 CHAINS=msvc64 support - # cp flexdll*_msvc64.obj "$PREFIX/bin/flexdll" - # cd .. + tar -xzf $APPVEYOR_BUILD_FOLDER/flexdll.tar.gz + cd flexdll-$FLEXDLL_VERSION + make MSVC_DETECT=0 CHAINS=msvc64 support + cp flexdll*_msvc64.obj "$PREFIX/bin/flexdll" + cd .. set_configuration msvc64 "$PREFIX" -WX @@ -105,8 +98,6 @@ case "$1" in script --quiet --return --command "make -C ../build-mingw32 flexdll world.opt" ../build-mingw32/build.log >/dev/null 2>/dev/null & BUILD_PID=$! - # Temporarily bootstrap flexdll - run "make flexdll" make flexdll run "make world" make world run "make bootstrap" make bootstrap run "make opt" make opt diff --git a/flexdll b/flexdll -Subproject d19ee6186604ee63d8d120a352ac3d8bb50b96c +Subproject 7f565ef8647a16e6a2cd2b30c8e6a4894558eaa |