Commit 7d3aec90 authored by Uwe Schulzweida's avatar Uwe Schulzweida

git pushMerge branch 'develop'

parents ed240ce0 606628c8
*.test
#=================================
# CDO
#=================================
#==== Uncategorized ==============
*~
*.dSYM
.deps
.dirstamp
stamp-h1
TAGS
tags
#====== Objects and libs =========
*.la
*.lo
*.o
.libs
#=================================
#==== Test files =================
*.log
*.trs
*.dSYM
.deps
.libs
.dirstamp
stamp-h1
*.test
#=================================
#==== Autogen files ==============
Makefile
#----- aclocal files -----
aclocal.m4
autom4te.cache
#----- configure files ---
configure
config.h.in
config.log
config.status
config.h
build
#----- libtool files -----
ltmain.sh
libtool.m4
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
#----- automake files ----
config/config.guess
config/config.sub
#---- Makefiles.in ---------------
Makefile.in
#=================================
#==== Documentation pdfs =========
cdo.pdf
cdo_eca.pdf
cdo_magics.pdf
cdo_cmor.pdf
cdo_refcard.pdf
autom4te.cache
Makefile
TAGS
tags
cdo_libdep.pdf
#---- html folder ----------------
doc/html/
#=================================
......@@ -12,13 +12,13 @@
},
"mistral": {
"hostname": "mistral.dkrz.de",
"dir": "/work/mh0287/users/ralf/builds/remote",
"dir": "/work/mh0287/users/ralf/builds/remote/cdo",
"envConfigFiles": ["/etc/profile",".profile"],
"CC": ["gcc","g++","icc","icpc"]
},
"cygwin": {
"hostname": "cdo4windows-cyg.mpimet.mpg.de",
"dir": "/home/mpimet/ralf/builds/remote",
"dir": "/home/mpimet/ralf/builds/remote/cdo",
"username": "mpimet",
"CC": ["gcc","g++"]
},
......@@ -30,7 +30,7 @@
},
"wanglung": {
"hostname": "wanglung.mpimet.mpg.de",
"dir": "/home/zmaw/m300064/builds/remote",
"dir": "/home/zmaw/m300064/builds/remote/cdo",
"username": "m300064",
"CC": ["icc","pgcc","cray","gcc"]
},
......@@ -100,6 +100,12 @@
"makeCall": "make -j 12",
"sync": true
},
"localPgi": {
"hostname": "luthien",
"configureCall": "./configure CC=pgcc CXX=pgc++ FC=pgfortran CPPFLAGS=-I/home/ram/local/pgi/linux86-64/17.10/include",
"makeCall": "make -j 12",
"sync": true
},
"localGCC_static": {
"doc": "local builder with default GCC - VPATH build - As-Static-As-Possible",
"hostname": "luthien",
......@@ -144,6 +150,12 @@
"makeCall": "make -j 12",
"sync": true
},
"localIntel": {
"hostname": "luthien",
"configureCall": "/home/ram/src/cdo/configure --with-netcdf --with-eccodes CC=/home/ram/src/tools/spack/opt/spack/linux-arch-x86_64/gcc-7.2.0/intel-18.0.1-si3z4sjcsfivnzl6znctszuevsktcflf/compilers_and_libraries_2018.1.163/linux/bin/intel64/icc CXX=/home/ram/src/tools/spack/opt/spack/linux-arch-x86_64/gcc-7.2.0/intel-18.0.1-si3z4sjcsfivnzl6znctszuevsktcflf/compilers_and_libraries_2018.1.163/linux/bin/intel64/icpc FC=/home/ram/src/tools/spack/opt/spack/linux-arch-x86_64/gcc-7.2.0/intel-18.0.1-si3z4sjcsfivnzl6znctszuevsktcflf/compilers_and_libraries_2018.1.163/linux/bin/intel64/ifort",
"makeCall": "make -j 12",
"sync": false
},
"linux32bit": {
"hostname": "ubuntu-32bit",
"configureCall": "./configure --with-netcdf ",
......
Uwe Schulzweida, <uwe.schulzweida AT mpimet.mpg.de>, is the main author.
Ralf Mueller, <ralf.mueller AT mpimet.mpg.de>
Luis Kornblueh, <luis.kornblueh AT mpimet.mpg.de>
Oliver Heidmann, <oliver.heidmann AT mpimet.mpg.de>
Cedrick Ansorge, <cedrick.ansorge AT mpimet.mpg.de>
Luis Kornblueh, <luis.kornblueh AT mpimet.mpg.de>
Ralf Quast, <ralf.quast AT brockmann-consult.de>
Schulzweida, U. (2018), Climate Data Operators (CDO) User Guide, Version 1.9.3,
https://code.mpimet.mpg.de/projects/cdo/embedded/cdo.pdf
Uwe Schulzweida, Max Planck Institute for Meteorologie, (2018),
Climate Data Operators (CDO) User Guide, Version 1.9.3,
https://code.mpimet.mpg.de/projects/cdo/embedded/cdo.pdf.
2018-05-09 Uwe Schulzweida
* Using CDI library version 1.9.4
* Version 1.9.4 release
2018-05-08 Uwe Schulzweida
* setattribute: added support for \n in text attributes
2018-05-03 Uwe Schulzweida
* Expr: added support for constant statements
2018-04-30 Uwe Schulzweida
* New operator yearminidx: Yearly minimum index
2018-04-28 Uwe Schulzweida
* New operator yearmaxidx: Yearly maximum index
* New operator selyearidx: Select index of year
2018-03-27 Uwe Schulzweida
* New operator complextopol: complex to polar
2018-03-26 Uwe Schulzweida
* New operator arg: argument or phase of the complex numbers
* New operator conj: complex conjugate
* add, sub, mul, div: added support for complex numbers
2018-03-22 Uwe Schulzweida
* diff: added support for complex numbers (only for the real part)
2018-03-17 Uwe Schulzweida
* remapbil, remapbic: optimized by changing point search from latbins to kdtree:nanoflann
2018-03-13 Uwe Schulzweida
* remapnn, remapdis: optimized by changing point search from latbins to kdtree:nanoflann
2018-03-08 Uwe Schulzweida
* expandWildCards: check error code (bug fix)
2018-02-17 Uwe Schulzweida
* Fldstat, Vertstat: added option weight=false to disable weighting
2018-02-15 Uwe Schulzweida
* expr: removed character [LlDd] from definition of float constants (bug fix) [report: Simon Blessing]
* select timesteps: call taxisCopyTimestep() before pstreamDefVlist() (bug fix) [report: Renate Brokopf]
2018-02-05 Uwe Schulzweida
* Large data support: changed type of gridsize from 32 to 64-bit integer
2018-01-29 Uwe Schulzweida
* seldate: check parameter
2018-01-29 Uwe Schulzweida
* Using CDI library version 1.9.3
......
# Process this file with automake to produce Makefile.in
SUBDIRS = libcdi src/lib/ncl src contrib test/data test
SUBDIRS = libcdi src/lib/ncl src/lib/yac src contrib test/data test
if MAINTAINER_MODE
SUBDIRS += test/bandit_tests
endif
#
ACLOCAL_AMFLAGS = -I m4 -I libcdi/m4
#
EXTRA_DIST=config/default OPERATORS doc/cdo.pdf doc/cdo_cmor.pdf doc/cdo_eca.pdf doc/cdo_magics.pdf doc/cdo_refcard.pdf cdo.spec README
#
ACLOCAL_AMFLAGS = -I m4
#
CLEANFILES = `ls *~ 2> /dev/null`
This diff is collapsed.
CDO NEWS
--------
Version 1.9.4 (26 April 2018):
New features:
* Large data support: changed type of gridsize from 32 to 64-bit integer
* remapbil, remapbic, remapnn, remapdis: optimized by changing point search method
* Fldstat, Vertstat: added option weight=false to disable weighting
Fixed bugs:
* option -r doesn't work [Bug #8334]
* enspctl: changed parameter type from int to float [Bug #8386]
* segfault with chained operators on timeseries data [Bug #8230]
* setattribute: added support for \n in text attributes
* expr: removed character [LlDd] from definition of float constants
Version 1.9.3 (29 January 2018):
New features:
......
......@@ -23,7 +23,7 @@ end
# helper methods {{{ ===========================================================
# general debugging output
def dbg(msg); pp msg if @debug; end
def dbg(msg); if msg.kind_of?(String) then puts msg else pp msg end if @debug; end
# return name of current branch
def getBranchName; `git branch`.split("\n").grep(/^\*/)[0].split[-1].tr(')',''); end
......@@ -58,6 +58,11 @@ def executeRemote(command, builder)
Net::SSH.start(builder.hostname,builder.username,
:config => true, :compression => true) do |ssh|
remoteHostname = ssh.exec!('hostname -f')
puts "Connected to #{remoteHostname}".colorize(:green)
ssh.loop
stdout_data = ""
stderr_data = ""
exit_code = nil
......@@ -86,7 +91,10 @@ def executeRemote(command, builder)
channel.on_request("exit-signal") do |ch, data|
exit_signal = data.read_long
end
channel.on_close {puts "done!".colorize(:green)}
end
channel.wait
end
ssh.loop
end
......@@ -104,7 +112,7 @@ def execute(command, builder)
"cd #{builder.targetDir}",
command]).join(';')
dbg(commands)
dbg(commands.colorize(:blue))
if builder.isLocal? then
executeLocal(commands)
......@@ -134,6 +142,8 @@ def doSync(builder)
file.write(`git ls-files`)
file.write(`git submodule foreach 'git ls-files | sed "s|^|$path/|"'`)
file.close
# call rsync for a given host
if builder.isLocal?
syncCmd = "rsync #{rsyncOpts} -avz --files-from=#{file.path} . #{builder.targetDir}"
......@@ -143,7 +153,6 @@ def doSync(builder)
dbg(syncCmd)
executeLocal(syncCmd)
ensure
file.close
file.unlink
end
end
......@@ -161,9 +170,15 @@ def builder2task(builder,useHostAsName=false,syncSource=true)
end
end
@_help[:reconf] = "create configure script on host" unless @_help.has_key?(:reconf)
task toDo[:reconf] do |t|
dbg("call 'autoreconf -v -i'")
execute("autoreconf -v -i",builder)
end
@_help[:conf]= \
"run configure on host: ./config/default with user settings activated" unless @_help.has_key?(:conf)
task toDo[:conf] do |t|
task toDo[:conf] => toDo[:reconf] do |t|
dbg("call #{builder.configureCall}")
execute("#{builder.configureCall}",builder)
end
......
......@@ -34,63 +34,7 @@ dnl PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
dnl LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
dnl NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
dnl SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
dnl
dnl Commentary:
dnl
dnl
dnl
dnl Code:
dnl
dnl
dnl Local Variables:
dnl mode: autoconf
dnl license-project-url: "https://www.dkrz.de/redmine/projects/show/scales-ppm"
dnl license-default: "bsd"
dnl End:
dnl acinclude.m4 --- m4 files that are unconditionally included by autoconf
dnl
dnl Copyright (C) 2010 Thomas Jahns <jahns@dkrz.de>
dnl
dnl Version: 1.0
dnl Keywords: configure configure.ac autotools
dnl Author: Thomas Jahns <jahns@dkrz.de>
dnl Maintainer: Thomas Jahns <jahns@dkrz.de>
dnl URL: https://www.dkrz.de/redmine/projects/show/scales-ppm
dnl
dnl Redistribution and use in source and binary forms, with or without
dnl modification, are permitted provided that the following conditions are
dnl met:
dnl
dnl Redistributions of source code must retain the above copyright notice,
dnl this list of conditions and the following disclaimer.
dnl
dnl Redistributions in binary form must reproduce the above copyright
dnl notice, this list of conditions and the following disclaimer in the
dnl documentation and/or other materials provided with the distribution.
dnl
dnl Neither the name of the DKRZ GmbH nor the names of its contributors
dnl may be used to endorse or promote products derived from this software
dnl without specific prior written permission.
dnl
dnl THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
dnl IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
dnl TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
dnl PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
dnl OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
dnl EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
dnl PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
dnl PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
dnl LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
dnl NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
dnl SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
dnl
dnl Commentary:
dnl
dnl
dnl
dnl Code:
dnl
dnl
m4_include([libcdi/m4/acx_lang_c_check_include.m4])
dnl Local Variables:
dnl mode: autoconf
dnl license-project-url: "https://www.dkrz.de/redmine/projects/show/scales-ppm"
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -33,7 +33,7 @@ case "${HOSTNAME}" in
bailung*|d133*|d134*)
CDOLIBS="--enable-nearpt3 \
--with-fftw3 \
--with-eccodes=$HOME/local/eccodes-2.3.0 \
--with-eccodes=$HOME/local/eccodes-2.6.0 \
--with-netcdf=$HOME/local/netcdf-4.4.1.1 \
--with-hdf5=$HOME/local/hdf5-1.8.19-threadsafe \
--with-udunits2=/opt/local \
......@@ -46,41 +46,48 @@ case "${HOSTNAME}" in
if test "$COMP" = intel ; then
${CONFPATH}configure \
$CDOLIBS \
LDFLAGS="-Wl,-rpath,$HOME/local/eccodes-2.3.0/lib -Wl,-rpath,/opt/intel/lib" \
LDFLAGS="-Wl,-rpath,$HOME/local/eccodes-2.6.0/lib -Wl,-rpath,/opt/intel/lib" \
CXX=icpc CXXFLAGS="-g -Wall -O2 -qopt-report=5 -march=native" \
CC=icc CFLAGS="-g -Wall -O2 -qopt-report=5 -march=native -fp-model strict"
elif test "$COMP" = clang ; then
${CONFPATH}configure --prefix=$HOME/local \
--enable-maintainer-mode \
$CDOLIBS \
LDFLAGS="-Wl,-rpath,$HOME/local/eccodes-2.3.0/lib" \
CXX=clang++ CXXFLAGS="-g -Wall -O3" \
CC=clang CFLAGS="-g -Wall -O3"
LDFLAGS="-Wl,-rpath,$HOME/local/eccodes-2.6.0/lib" \
CXX=clang++ CXXFLAGS="-g -Wall -Wextra -O3" \
CC=clang CFLAGS="-g -Wall -Wextra -O3"
elif test "$COMP" = gnu4.9 ; then
${CONFPATH}configure --prefix=$HOME/local \
--enable-maintainer-mode \
$CDOLIBS \
LDFLAGS="-Wl,-rpath,$HOME/local/eccodes-2.3.0/lib" \
LDFLAGS="-Wl,-rpath,$HOME/local/eccodes-2.6.0/lib" \
CXX=g++-mp-4.9 CXXFLAGS="-g -Wall -W -Wfloat-equal -pedantic -O3 -march=native" \
CC=gcc-mp-4.9 CFLAGS="-g -Wall -W -Wfloat-equal -pedantic -O3 -march=native"
elif test "$COMP" = gnu5 ; then
${CONFPATH}configure --prefix=$HOME/local \