Merge with changes on GitHub

This commit is contained in:
Shahram Najm 2019-02-11 15:07:34 +00:00
parent 444f1aef5d
commit 350e67043e
3 changed files with 111 additions and 50 deletions

View File

@ -12,23 +12,23 @@ branches:
image: Visual Studio 2015 image: Visual Studio 2015
environment: environment:
CONDA: c:\Miniconda37-x64 CONDA: c:\Miniconda37-x64
ECMWF: c:\ecmwf ECMWF: c:\ecmwf
GIT_CLONE_DIR: $(ECMWF)\git GIT_CLONE_DIR: $(ECMWF)\git
INSTALL_DIR: $(ECMWF)\install INSTALL_DIR: $(ECMWF)\install
ECCODES_SRC: $(GIT_CLONE_DIR)\eccodes ECCODES_SRC: $(GIT_CLONE_DIR)\eccodes
ECBUILD_SRC: $(GIT_CLONE_DIR)\ecbuild ECBUILD_SRC: $(GIT_CLONE_DIR)\ecbuild
# scripts that are called at very beginning, before repo cloning # scripts that are called at very beginning, before repo cloning
init: init:
# make sure git clones symlinks as symlinks # make sure git clones symlinks as symlinks
- cmd: git config --global core.symlinks true - cmd: git config --global core.symlinks true
# activate conda environment so the tests can find linux utils # activate conda environment so the tests can find linux utils
- cmd: call %CONDA%\Scripts\activate.bat - cmd: call %CONDA%\Scripts\activate.bat
# add eccodes\build\bin to path so tests can find eccodes.dll # add eccodes\build\bin to path so tests can find eccodes.dll
- cmd: set PATH=%PATH%;%ECCODES_SRC%\build\bin - cmd: set PATH=%PATH%;%ECCODES_SRC%\build\bin
# auto-yes for conda # auto-yes for conda
- cmd: conda config --set always_yes yes - cmd: conda config --set always_yes yes
clone_folder: $(ECCODES_SRC) clone_folder: $(ECCODES_SRC)
@ -36,59 +36,59 @@ clone_depth: 1
# scripts that run after cloning repository # scripts that run after cloning repository
install: install:
# install ecbuild # install ecbuild
- cmd: git clone --depth 1 https://github.com/ecmwf/ecbuild.git %ECBUILD_SRC% - cmd: git clone --depth 1 https://github.com/ecmwf/ecbuild.git %ECBUILD_SRC%
# install linux utils # install linux utils
- cmd: conda install -c msys2 m2-bash ^ - cmd: conda install -c msys2 m2-bash ^
m2-findutils ^ m2-findutils ^
m2-coreutils ^ m2-coreutils ^
m2-grep ^ m2-grep ^
m2-sed ^ m2-sed ^
m2-gawk ^ m2-gawk ^
m2-diffutils ^ m2-diffutils ^
m2-perl m2-perl
# get the latest version of cmake # get the latest version of cmake
- cmd: conda install -c conda-forge cmake - cmd: conda install -c conda-forge cmake
# other deps # other deps
- cmd: conda install netcdf4 - cmd: conda install libnetcdf
#---------------------------------# #---------------------------------#
# build configuration # # build configuration #
#---------------------------------# #---------------------------------#
platform: platform:
- x64 - x64
before_build: before_build:
- cmd: call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 - cmd: call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64
- cmd: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64 - cmd: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
build_script: build_script:
- cmd: cd %ECCODES_SRC% - cmd: cd %ECCODES_SRC%
- cmd: mkdir build && cd build - cmd: mkdir build && cd build
- cmd: cmake -G "NMake Makefiles" ^ - cmd: cmake -G "NMake Makefiles" ^
-D CMAKE_INSTALL_PREFIX=%INSTALL_DIR% ^ -D CMAKE_INSTALL_PREFIX=%INSTALL_DIR% ^
-D CMAKE_BUILD_TYPE=Release ^ -D CMAKE_BUILD_TYPE=Release ^
-D ENABLE_FORTRAN=0 ^ -D ENABLE_FORTRAN=0 ^
-D ENABLE_PYTHON=0 ^ -D ENABLE_PYTHON=0 ^
-D ENABLE_NETCDF=1 ^ -D ENABLE_NETCDF=1 ^
-D ENABLE_JPG=1 ^ -D ENABLE_JPG=1 ^
-D IEEE_LE=1 ^ -D IEEE_LE=1 ^
-D ENABLE_MEMFS=0 ^ -D ENABLE_MEMFS=0 ^
-D ENABLE_EXTRA_TESTS=OFF ^ -D ENABLE_EXTRA_TESTS=OFF ^
.. ..
- cmd: nmake - cmd: nmake
- cmd: ctest - cmd: ctest --output-on-failure
- cmd: nmake install - cmd: nmake install
#---------------------------------# #---------------------------------#
# tests configuration # # tests configuration #
#---------------------------------# #---------------------------------#
test_script: test_script:
- cmd: codes_info - cmd: codes_info
- cmd: for /F "tokens=* USEBACKQ" %%F IN (`codes_info -s`) DO (ls %%F) - cmd: for /F "tokens=* USEBACKQ" %%F IN (`codes_info -s`) DO (ls %%F)
- cmd: for /F "tokens=* USEBACKQ" %%F IN (`codes_info -d`) DO (ls %%F) - cmd: for /F "tokens=* USEBACKQ" %%F IN (`codes_info -d`) DO (ls %%F)

59
.travis.yml Normal file
View File

@ -0,0 +1,59 @@
#---------------------------------#
# general configuration #
#---------------------------------#
sudo: false
branches:
only:
- develop
- master
language: c
os: osx
osx_image: xcode10.1
env:
global:
- ECCODES_SRC=${TRAVIS_BUILD_DIR}
- ECBUILD_SRC=${ECCODES_SRC}/../ecbuild
- BUILD_DIR=${ECCODES_SRC}/build
git:
depth: 1
install:
# install ecbuild
- git clone --depth 1 https://github.com/ecmwf/ecbuild.git ${ECBUILD_SRC}
# install netcdf
- brew install netcdf
#---------------------------------#
# build configuration #
#---------------------------------#
script:
# env vars
- echo ${ECCODES_SRC}
- echo ${ECBUILD_SRC}
- echo ${BUILD_DIR}
# build ecCodes
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
- cmake -D ENABLE_FORTRAN=0
-D ENABLE_PYTHON=0
-D ENABLE_NETCDF=1
-D ENABLE_JPG=1
-D ENABLE_MEMFS=0
-D ENABLE_EXTRA_TESTS=ON
${ECCODES_SRC}
- make -j4
- ctest -j4 --output-on-failure
- make install --silent
# extra sanity tests
- codes_info
- ls $(codes_info -s)
- ls $(codes_info -d)

View File

@ -1,8 +1,10 @@
ecCodes ecCodes
======= =======
[![Windows: master](https://img.shields.io/appveyor/ci/ecmwf/eccodes/master.svg?label=windows-master)](https://ci.appveyor.com/project/ecmwf/eccodes/branch/master) [![macOS: master](https://img.shields.io/travis/ecmwf/eccodes/master.svg?label=macOS-master)](https://travis-ci.org/ecmwf/eccodes/branches)
[![Windows: develop](https://img.shields.io/appveyor/ci/ecmwf/eccodes/develop.svg?label=windows-dev)](https://ci.appveyor.com/project/ecmwf/eccodes/branch/develop) [![macOS: develop](https://img.shields.io/travis/ecmwf/eccodes/develop.svg?label=macOS-dev)](https://travis-ci.org/ecmwf/eccodes/branches)
[![Windows: master](https://img.shields.io/appveyor/ci/ecmwf/eccodes/master.svg?label=Windows-master)](https://ci.appveyor.com/project/ecmwf/eccodes/branch/master)
[![Windows: develop](https://img.shields.io/appveyor/ci/ecmwf/eccodes/develop.svg?label=Windows-dev)](https://ci.appveyor.com/project/ecmwf/eccodes/branch/develop)
ecCodes is a package developed by ECMWF which provides an application programming interface ecCodes is a package developed by ECMWF which provides an application programming interface
and a set of tools for decoding and encoding messages in the following formats: and a set of tools for decoding and encoding messages in the following formats:
@ -19,12 +21,12 @@ It is designed to provide the user with a simple set of functions to access data
several formats with a key/value approach. several formats with a key/value approach.
Documentation can be found here: Documentation can be found here:
https://confluence.ecmwf.int/display/ECC/ecCodes+Home https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home
INSTALLATION INSTALLATION
------------ ------------
1. Download ecCodes from https://confluence.ecmwf.int/display/ECC/Releases 1. Download ecCodes from https://software.ecmwf.int/wiki/display/ECC/Releases
2. Unpack distribution: 2. Unpack distribution:
> tar -xzf eccodes-x.y.z-Source.tar.gz > tar -xzf eccodes-x.y.z-Source.tar.gz
@ -45,7 +47,7 @@ INSTALLATION
For more details, please see: For more details, please see:
https://confluence.ecmwf.int/display/ECC/ecCodes+installation https://software.ecmwf.int/wiki/display/ECC/ecCodes+installation
If you encounter any problems please send an e-mail with your problem to: If you encounter any problems please send an e-mail with your problem to: