Skip to content
Commits on Source (6)
......@@ -30,13 +30,13 @@ install:
- cmd: call %CONDA_INSTALL_LOCN%\Scripts\activate.bat
- cmd: conda config --set always_yes yes --set changeps1 no --set show_channel_urls true
- cmd: conda update conda
- cmd: conda config --remove channels defaults --force
- cmd: conda config --add channels conda-forge --force
- cmd: conda config --set channel_priority strict
- cmd: set PYTHONUNBUFFERED=1
- cmd: conda info --all
- cmd: conda create --name TEST python=%PY% cmake antlr=2.7.7 curl expat gsl hdf5 libnetcdf udunits2 zlib
- cmd: conda create --name TEST python=%PY% cmake antlr=2.7 curl expat gsl hdf5 libnetcdf udunits2 zlib
- cmd: conda activate TEST
# Skip .NET project specific build phase.
......
......@@ -439,6 +439,7 @@ endif()
#//////////////////////////
set(nco_SOURCES ${nco_SOURCES} src/nco/libnco.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_att_utl.c src/nco/nco_att_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_aux.c src/nco/nco_aux.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_bnr.c src/nco/nco_bnr.h)
......@@ -448,6 +449,7 @@ set(nco_SOURCES ${nco_SOURCES} src/nco/nco_cnf_typ.c src/nco/nco_cnf_typ.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_cnk.c src/nco/nco_cnk.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_cnv_arm.c src/nco/nco_cnv_arm.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_cnv_csm.c src/nco/nco_cnv_csm.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_crt.c src/nco/nco_crt.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_ctl.c src/nco/nco_ctl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_dbg.c src/nco/nco_dbg.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_dmn_utl.c src/nco/nco_dmn_utl.h)
......@@ -455,10 +457,11 @@ set(nco_SOURCES ${nco_SOURCES} src/nco/nco_fl_utl.c src/nco/nco_fl_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_getopt.c src/nco/nco_getopt.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_grp_trv.c src/nco/nco_grp_trv.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_grp_utl.c src/nco/nco_grp_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_kd.c src/nco/nco_kd.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_lmt.c src/nco/nco_lmt.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_lst_utl.c src/nco/nco_lst_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_map.c src/nco/nco_map.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_map.c src/nco/nco_map.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_md5.c src/nco/nco_md5.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_mmr.c src/nco/nco_mmr.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_mpi.h)
......@@ -468,6 +471,8 @@ set(nco_SOURCES ${nco_SOURCES} src/nco/nco_mta.c src/nco/nco_mta.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_netcdf.c src/nco/nco_netcdf.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_omp.c src/nco/nco_omp.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_pck.c src/nco/nco_pck.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_ply.c src/nco/nco_ply.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_ply_lst.c src/nco/nco_ply_lst.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_ppc.c src/nco/nco_ppc.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_prn.c src/nco/nco_prn.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_rec_var.c src/nco/nco_rec_var.h)
......@@ -478,6 +483,7 @@ set(nco_SOURCES ${nco_SOURCES} src/nco/nco_scl_utl.c src/nco/nco_scl_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_scm.c src/nco/nco_scm.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_sld.c src/nco/nco_sld.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_sng_utl.c src/nco/nco_sng_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_sph.c src/nco/nco_sph.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_srm.c src/nco/nco_srm.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_typ.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_uthash.h)
......@@ -486,23 +492,17 @@ set(nco_SOURCES ${nco_SOURCES} src/nco/nco_var_lst.c src/nco/nco_var_lst.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_var_rth.c src/nco/nco_var_rth.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_var_scv.c src/nco/nco_var_scv.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_var_utl.c src/nco/nco_var_utl.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_ply.c src/nco/nco_ply.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_ply_lst.c src/nco/nco_ply_lst.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_map.c src/nco/nco_map.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_sph.c src/nco/nco_sph.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/nco_crt.c src/nco/nco_crt.h)
set(nco_SOURCES ${nco_SOURCES} src/nco/kd.c src/nco/kd.h)
# Type of library (SHARED, STATIC) is configured using BUILD_SHARED_LIBS
add_library(nco ${nco_SOURCES})
add_executable(ncks src/nco/ncks.c)
add_executable(ncatted src/nco/ncatted.c)
add_executable(ncbo src/nco/ncbo.c)
add_executable(ncecat src/nco/ncecat.c)
add_executable(ncflint src/nco/ncflint.c)
add_executable(ncks src/nco/ncks.c)
add_executable(ncpdq src/nco/ncpdq.c)
add_executable(ncra src/nco/ncra.c)
add_executable(ncrename src/nco/ncrename.c)
add_executable(ncatted src/nco/ncatted.c)
#//////////////////////////
#ncwa, flex, bison on UNIX
......@@ -527,20 +527,18 @@ else()
endif()
add_executable(ncwa ${ncwa_SOURCES})
set(nco_LIB nco)
target_link_libraries (ncks ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncatted ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncbo ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncecat ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncflint ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncks ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncpdq ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncra ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncrename ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncatted ${nco_LIB} ${LIB_DEP})
target_link_libraries (ncwa ${nco_LIB} ${LIB_DEP})
#//////////////////////////
#ANTLR
#cmake can detect relative paths, e.g, antlr/AST.hpp
......@@ -582,22 +580,22 @@ else()
endif()
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/Invoke.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncap2.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncap2_utl.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncap2_att.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/sdo_utl.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/sym_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/fmc_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/fmc_all_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/fmc_gsl_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/prs_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/Invoke.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/NcapVar.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/NcapVarVector.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/fmc_all_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/fmc_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/fmc_gsl_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncap2.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncap2_att.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncap2_utl.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncoLexer.cpp)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncoParser.cpp)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/ncoTree.cpp)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/Invoke.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/nco_gsl.c)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/prs_cls.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/sdo_utl.cc)
set(ncap2_SOURCES ${ncap2_SOURCES} src/nco++/sym_cls.cc)
#//////////////////////////
#GSL
......@@ -712,7 +710,6 @@ if(ANTLR_INCLUDE AND ANTLR_LIBRARY)
endif()
endif()
#//////////////////////////
# detect system specific functions used by NCO
#//////////////////////////
......
......@@ -1939,12 +1939,14 @@ ${libnco}.a: ${libnco}.a(${MY_OBJ_DIR}/nco_att_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_cnk.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_cnv_arm.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_cnv_csm.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_crt.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_ctl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_dbg.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_dmn_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_fl_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_grp_trv.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_grp_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_kd.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_lmt.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_lst_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_map.o) \
......@@ -1956,6 +1958,8 @@ ${libnco}.a: ${libnco}.a(${MY_OBJ_DIR}/nco_att_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_netcdf.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_omp.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_pck.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_ply.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_ply_lst.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_ppc.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_prn.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_rec_var.o) \
......@@ -1966,6 +1970,7 @@ ${libnco}.a: ${libnco}.a(${MY_OBJ_DIR}/nco_att_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_scm.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_sld.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_sng_utl.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_sph.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_srm.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_var_avg.o) \
${libnco}.a(${MY_OBJ_DIR}/nco_var_lst.o) \
......
......@@ -2,17 +2,17 @@
# http://cvs.fedoraproject.org/viewvc/devel/nco/nco.spec?view=co
Name: nco
Version: 4.8.0
Version: 4.8.1
Release: 1%{?dist}
Summary: Programs that manipulate netCDF files
Group: Applications/Engineering
License: GPL3
URL: http://nco.sf.net/
# Obtain NCO version 4.8.0-1 tar.gz from Sourceforge using CVS:
# Obtain NCO version 4.8.1-1 tar.gz from Sourceforge using CVS:
# cvs -d:pserver:anonymous@nco.cvs.sf.net:/cvsroot/nco login
# cvs -z3 -d:pserver:anonymous@nco.cvs.sf.net:/cvsroot/nco co -r nco-4.8.0-1 -d nco-%{version} nco
# tar czf nco-%{version}.tar.gz --exclude='nco-4.8.0/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude='ncap_yacc.[ch]' ./nco-%{version}
# cvs -z3 -d:pserver:anonymous@nco.cvs.sf.net:/cvsroot/nco co -r nco-4.8.1-1 -d nco-%{version} nco
# tar czf nco-%{version}.tar.gz --exclude='nco-4.8.1/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude='ncap_yacc.[ch]' ./nco-%{version}
Source0: nco-%{version}.tar.gz
#Patch0: nco_install_C_headers.patch
#Patch1: nco_find_udunits-dat.patch
......@@ -108,6 +108,9 @@ fi
# %{_libdir}/libnco++.so
%changelog
* Mon Jul 01 2019 Charlie Zender <zender@uci.edu> - 4.8.1-1
- new upstream 4.8.1
* Wed May 15 2019 Charlie Zender <zender@uci.edu> - 4.8.0-1
- new upstream 4.8.0
......
......@@ -5,20 +5,20 @@
# Usage:
# Export tagged, public versions
# /usr/bin/scp ${DATA}/nco-4.8.0.tar.gz zender,nco@web.sf.net:/home/project-web/nco/htdocs/src
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4.8.0 # Build, do not release on SF
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --sf nco-4.8.0 # Build, release on SF
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --nst_all nco-4.8.0 # Install, do not build
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --nst_all nco-4.8.0 # Build and install
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_cnt nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_prs nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cgd_cnt nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cray_prs nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --bbl_cnt nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --blk_cnt nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --dat_cnt nco-4.8.0
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --ute_prs nco-4.8.0
# /usr/bin/scp ${DATA}/nco-4.8.1.tar.gz zender,nco@web.sf.net:/home/project-web/nco/htdocs/src
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4.8.1 # Build, do not release on SF
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --sf nco-4.8.1 # Build, release on SF
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --nst_all nco-4.8.1 # Install, do not build
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --nst_all nco-4.8.1 # Build and install
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_cnt nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_prs nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cgd_cnt nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cray_prs nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --bbl_cnt nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --blk_cnt nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --dat_cnt nco-4.8.1
# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --ute_prs nco-4.8.1
# Export daily snapshot
# ${HOME}/nco/bld/nco_dst.pl --dbg=2
......@@ -256,7 +256,7 @@ if($bld){
# Set up FTP server
chdir $dst_pth_pfx or die "$prg_nm: ERROR unable to chdir to $dst_pth_pfx: $!\n"; # $! is system error string
cmd_prc("$cp_cmd $doc_fl ./$dst_vrs/doc"); # Copy derived documentation to source directory
cmd_prc("$tar_cmd cvzf $dst_fl --exclude='nco-4.8.0/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude=ncap_yacc.[ch] ./$dst_vrs"); # Create gzipped tarfile
cmd_prc("$tar_cmd cvzf $dst_fl --exclude='nco-4.8.1/debian*' --exclude='.cvsignore' --exclude=ncap_lex.c --exclude=ncap_yacc.[ch] ./$dst_vrs"); # Create gzipped tarfile
cmd_prc("$rsh_cmd $www_mch $rm_cmd $www_drc/src/$dst_fl"); # Remove any distribution with same name
if($dly_snp){cmd_prc("$rsh_cmd $www_mch $rm_cmd -r $www_drc/src/nco-????????.tar.gz");} # Remove previous daily snapshots from WWW server
cmd_prc("$rcp_cmd $dst_fl $www_mch:$www_drc/src"); # Copy local tarfile to WWW server
......
......@@ -18,18 +18,18 @@
@echo off
if not defined DevEnvDir (
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
if errorlevel 1 goto :eof
)
set MSVC_VERSION="Visual Studio 16 2019"
echo using %MSVC_VERSION%
if "%~1" == "crt" (
set STATIC_CRT=ON
) else (
set STATIC_CRT=OFF
)
set MSVC_VERSION="Visual Studio 14 2015 Win64"
echo using static crt %STATIC_CRT%
echo using %MSVC_VERSION%
:: 'git clone' all the dependencies
:: the build folder is 'build'
......@@ -136,6 +136,7 @@ if exist %build%\zlib\build\zlib.sln (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_USE_STATIC_CRT=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF
......@@ -160,6 +161,7 @@ if exist %build%\szip\build\SZIP.sln (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_USE_STATIC_CRT=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF ^
......@@ -184,6 +186,7 @@ if exist %build%\hdf5\build\bin\Debug\h5dump.exe (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DBUILD_STATIC_CRT_LIBS=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF ^
......@@ -246,6 +249,7 @@ if exist %build%\libexpat\expat\build\expat.sln (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_USE_STATIC_CRT=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF ^
......@@ -271,6 +275,7 @@ if exist %build%\UDUNITS-2\build\lib\Debug\udunits2.lib (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_USE_STATIC_CRT=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF ^
......@@ -302,6 +307,7 @@ if exist %build%\GSL\build\GSL.sln (
)
echo using dynamic CRT %DYNAMIC_CRT%
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_RUNTIME_DYNAMIC=%DYNAMIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF ^
......@@ -328,6 +334,7 @@ if exist %build%\antlr2\lib\cpp\build\antlr.sln (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_USE_STATIC_CRT=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DBUILD_SHARED_LIBS=OFF
......@@ -353,6 +360,7 @@ if exist %build%\netcdf-c\build\ncdump\ncdump.exe (
mkdir build
pushd build
cmake .. -G %MSVC_VERSION% ^
-A x64 ^
-DNC_USE_STATIC_CRT=%STATIC_CRT% ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DENABLE_TESTS=OFF ^
......@@ -398,6 +406,7 @@ if exist %build%\Debug\ncks.exe (
rm -rf CMakeCache.txt CMakeFiles
cmake .. -H..\.. ^
-G %MSVC_VERSION% ^
-A x64 ^
-DMSVC_DEVELOPER=ON ^
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ^
-DMSVC_USE_STATIC_CRT=%STATIC_CRT% ^
......
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for NCO netCDF Operators 4.8.0.
# Generated by GNU Autoconf 2.69 for NCO netCDF Operators 4.8.1.
#
# Report bugs to <nco-bugs@lists.sourceforge.net>.
#
......@@ -592,8 +592,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='NCO netCDF Operators'
PACKAGE_TARNAME='nco'
PACKAGE_VERSION='4.8.0'
PACKAGE_STRING='NCO netCDF Operators 4.8.0'
PACKAGE_VERSION='4.8.1'
PACKAGE_STRING='NCO netCDF Operators 4.8.1'
PACKAGE_BUGREPORT='nco-bugs@lists.sourceforge.net'
PACKAGE_URL=''
 
......@@ -1388,7 +1388,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures NCO netCDF Operators 4.8.0 to adapt to many kinds of systems.
\`configure' configures NCO netCDF Operators 4.8.1 to adapt to many kinds of systems.
 
Usage: $0 [OPTION]... [VAR=VALUE]...
 
......@@ -1459,7 +1459,7 @@ fi
 
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of NCO netCDF Operators 4.8.0:";;
short | recursive ) echo "Configuration of NCO netCDF Operators 4.8.1:";;
esac
cat <<\_ACEOF
 
......@@ -1625,7 +1625,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
NCO netCDF Operators configure 4.8.0
NCO netCDF Operators configure 4.8.1
generated by GNU Autoconf 2.69
 
Copyright (C) 2012 Free Software Foundation, Inc.
......@@ -2491,7 +2491,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
 
It was created by NCO netCDF Operators $as_me 4.8.0, which was
It was created by NCO netCDF Operators $as_me 4.8.1, which was
generated by GNU Autoconf 2.69. Invocation command line was
 
$ $0 $@
......@@ -3746,7 +3746,7 @@ fi
 
# Define the identity of the package.
PACKAGE='nco'
VERSION='4.8.0'
VERSION='4.8.1'
 
 
cat >>confdefs.h <<_ACEOF
......@@ -21575,7 +21575,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by NCO netCDF Operators $as_me 4.8.0, which was
This file was extended by NCO netCDF Operators $as_me 4.8.1, which was
generated by GNU Autoconf 2.69. Invocation command line was
 
CONFIG_FILES = $CONFIG_FILES
......@@ -21641,7 +21641,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
NCO netCDF Operators config.status 4.8.0
NCO netCDF Operators config.status 4.8.1
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
 
......
# $Header$ -*-Shell-script-*-
# Purpose: Template autoconf uses to generate NCO configure script
# Newer convention names this file configure.ac, rather than configure.in
# Purpose: Generate NCO configure script using autoconf build-engine
# Newer autoconf convention names this file configure.ac, formerly configure.in
# Copyright (C) 2003--present Charlie Zender
# License: GNU General Public License (GPL) Version 3
......@@ -54,7 +54,7 @@
# 20170808: Choose between traditional version and Git-based version
# If Git, consider that Linux dynamic libraries will have full messy name, MacOSX will not
# https://stackoverflow.com/questions/43526939/how-to-insert-git-based-version-in-autoconf-managed-project
AC_INIT([NCO netCDF Operators],[4.8.0],[nco-bugs@lists.sourceforge.net],[nco])
AC_INIT([NCO netCDF Operators],[4.8.1],[nco-bugs@lists.sourceforge.net],[nco])
# Print GNU copyright in configure script
AC_COPYRIGHT
......
......@@ -239,6 +239,7 @@ Commands for LINUX are the only ones "regularly" used after ~2010
# Yan Liu <yanliu@illinois.edu> # NCSA Maintainer = Yan Liu (github: yanliu-chn)
# https://nersc.service-now.com/navpage.do # NERSC Maintainer = Yun (Helen) He
# https://www.olcf.ornl.gov/support/submit-ticket # OLCF
# rc-support@pnnl.gov # PNNL Maintainer = Silvia.Hoisie@pnnl.gov ?
# Subject: Please upgrade to netCDF 4.6.1 and to NCO 4.7.4
# Request: NCO 4.7.4 was released 4/6 and contains many features of interest to your ACME users. Please upgrade the system NCO module to 4.7.4 and make that the default NCO module. Thanks!
......@@ -390,6 +391,28 @@ cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
cd ~/nco;git reset --hard origin/master
cd ~/nco/bld;make ANTLR_ROOT=${HOME} GSL_ROOT='/glade/u/apps/ch/opt/gsl/2.4/gnu/6.3.0' GSL_INC='/glade/u/apps/ch/opt/gsl/2.4/gnu/6.3.0/include' SL_LIB='/glade/u/apps/ch/opt/gsl/2.4/gnu/6.3.0/lib' NETCDF_ROOT='/glade/u/apps/ch/opt/netcdf/4.6.1/intel/17.0.1' UDUNITS_INC='/glade/u/apps/ch/opt/udunits/2.2.20/gnu/4.8.2/include' UDUNITS_LIB='/glade/u/apps/ch/opt/udunits/2.2.20/gnu/4.8.2/lib' OPTS=D allinone;cd -
# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on compy
# https://acme-climate.atlassian.net/wiki/spaces/ED/pages/928973795/CompyMcNodeFace+-+E3SM+RGMA+ESMD+dedicated+system+at+PNNL
# Sysadmin upgrade request: rc-support@pnnl.gov # PNNL Maintainer = Tim Carlson ?
# Latest ticket: 20190525 ICS-4099 (closed in 1 day!)
# Latest sysadmin-compiled module usage: module add nco # 20190524 default version is 4.7.9
# Personal recipe last modified: 20190525
# Personal recipe last used successfully: 20190525
# 20190526: DAP functionality is present in libnetcdf but missing in my NCO because configure does not find libcurl although it is definitely in /lib64/libcurl.so.*
module purge
module load gcc/8.1.0
module load mvapich2/2.3.1 # Required for ncclimo/ncremap in MPI-mode
module load netcdf/4.6.3
export GNU_TRP=`~/nco/autobld/config.guess`
cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
ANTLR_ROOT=${HOME} CC='gcc' CXX='g++' LDFLAGS='-L/lib64' UDUNITS2_PATH='/share/apps/udunits/2.2.26' ./configure --prefix=${HOME} --bindir=${MY_BIN_DIR} --datadir=${HOME}/nco/data --libdir=${MY_LIB_DIR} --mandir=${HOME}/nco/man > nco.configure.${GNU_TRP}.foo 2>&1
/bin/cp -f config.log nco.config.log.${GNU_TRP}.foo
/bin/cp -f libtool nco.libtool.${GNU_TRP}.foo
make clean;make > nco.make.${GNU_TRP}.foo 2>&1
make check >> nco.make.${GNU_TRP}.foo 2>&1
make install >> nco.make.${GNU_TRP}.foo 2>&1
scp nco.configure.${GNU_TRP}.foo nco.config.log.${GNU_TRP}.foo nco.libtool.${GNU_TRP}.foo nco.make.${GNU_TRP}.foo dust.ess.uci.edu:Sites/nco/rgr
# 20150901: gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on cooley:
# Sysadmin upgrade request: support@alcf.anl.gov # ALCF Maintainer =
# Latest ticket: alcf-support #367012 on 20180413
......@@ -407,19 +430,16 @@ make check >> nco.make.${GNU_TRP}.foo 2>&1
make install >> nco.make.${GNU_TRP}.foo 2>&1
scp nco.configure.${GNU_TRP}.foo nco.config.log.${GNU_TRP}.foo nco.libtool.${GNU_TRP}.foo nco.make.${GNU_TRP}.foo dust.ess.uci.edu:Sites/nco/rgr
# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on cori:
# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on cori with GNU:
# Sysadmin upgrade request: https://nersc.service-now.com/navpage.do # NERSC Maintainer = Yun (Helen) He
# Latest ticket: INC0118469 on 20180413
# Latest sysadmin-compiled module usage: module load nco/4.7.4 # 20180430 (without ncap2)
# Personal recipe last modified: 20190417 (updated from 4.4.1.1.3 to 4.6.1.3)
# Personal recipe last used successfully: 20190227
module load szip
module load gsl
module load udunits
module load cray-netcdf
# Personal recipe last modified: 20190607 (converted from intel to gnu)
# Personal recipe last used successfully: 20190607 (currently not linking ncap2 because needs -L${HOME}/lib_cori to find -lantlr. Moreover, ldd cannot find system libraries.)
module load gcc
export GNU_TRP=`~/nco/autobld/config.guess`
cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
ANTLR_ROOT=${HOME} ANTLR_LIB=${HOME}/lib_cori CC='icc' CXX='icpc' GSL_ROOT='/usr/common/software/gsl/2.1/intel' NETCDF_INC='/opt/cray/pe/netcdf/4.6.1.3/intel/16.0/include' NETCDF_LIB='/opt/cray/pe/netcdf/4.6.1.3/intel/16.0/lib' NETCDF_ROOT='/opt/cray/pe/netcdf/4.4.1.1.3' UDUNITS2_PATH='/usr/common/software/udunits/2.2.19/hsw/intel' ./configure --prefix=${HOME} --bindir=${HOME}/bin_cori --datadir=${HOME}/nco/data --libdir=${HOME}/lib_cori --mandir=${HOME}/man > nco.configure.${GNU_TRP}.foo 2>&1
ANTLR_ROOT=${HOME} ANTLR_LIB=${HOME}/lib_cori CC='gcc' CXX='g++' GSL_ROOT='/usr/common/software/gsl/2.1/gnu' NETCDF_INC='/opt/cray/pe/netcdf/4.6.1.3/gnu/7.1/include' NETCDF_LIB='/opt/cray/pe/netcdf/4.6.1.3/gnu/7.1/lib' NETCDF_ROOT='/opt/cray/pe/netcdf/4.6.1.3' UDUNITS2_PATH='/usr/common/software/udunits/2.2.19/hsw/gnu' ./configure --prefix=${HOME} --bindir=${HOME}/bin_cori --datadir=${HOME}/nco/data --libdir=${HOME}/lib_cori --mandir=${HOME}/man > nco.configure.${GNU_TRP}.foo 2>&1
/bin/cp -f config.log nco.config.log.${GNU_TRP}.foo
/bin/cp -f libtool nco.libtool.${GNU_TRP}.foo
make clean;make > nco.make.${GNU_TRP}.foo 2>&1
......@@ -427,20 +447,30 @@ make check >> nco.make.${GNU_TRP}.foo 2>&1
make install >> nco.make.${GNU_TRP}.foo 2>&1
scp nco.configure.${GNU_TRP}.foo nco.config.log.${GNU_TRP}.foo nco.libtool.${GNU_TRP}.foo nco.make.${GNU_TRP}.foo dust.ess.uci.edu:Sites/nco/rgr
# e3sm: http://www.gnu.org/software/automake/manual/automake.html search for "shared by two hosts" use
# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on edison:
# Sysadmin upgrade request: https://nersc.service-now.com/navpage.do
# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on cori with Intel:
# Sysadmin upgrade request: https://nersc.service-now.com/navpage.do # NERSC Maintainer = Yun (Helen) He
# Latest ticket: INC0118469 on 20180413
# Latest sysadmin-compiled module usage: module load nco/4.7.4 # 20180430 (without ncap2)
# Personal recipe last modified: 20190420 (updated to netCDF 4.6.1.3)
# Personal recipe last used successfully: 20190216 (but must manually link to -L${HOME}/lib_edison to find antlr)
module load szip
module load gsl
module load udunits2
module load cray-netcdf
# Personal recipe last modified: 20190529 (updated from 4.4.1.1.3 to 4.6.1.3)
# Personal recipe last used successfully: 20190415 (currently not linking ncap2 because needs -L${HOME}/lib_cori to find -lantlr. Moreover, ldd cannot find system libraries.)
#module add PrgEnv-intel # Link-stage
module load intel # Link-stage cannot find -lsvml etc
export GNU_TRP=`~/nco/autobld/config.guess`
cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
ANTLR_ROOT=${HOME} ANTLR_LIB=${HOME}/lib_cori CC='icc' CXX='icpc' GSL_ROOT='/usr/common/software/gsl/2.1/intel' NETCDF_INC='/opt/cray/pe/netcdf/4.6.1.3/intel/16.0/include' NETCDF_LIB='/opt/cray/pe/netcdf/4.6.1.3/intel/16.0/lib' NETCDF_ROOT='/opt/cray/pe/netcdf/4.6.1.3' UDUNITS2_PATH='/usr/common/software/udunits/2.2.19/hsw/intel' ./configure --prefix=${HOME} --bindir=${HOME}/bin_cori --datadir=${HOME}/nco/data --libdir=${HOME}/lib_cori --mandir=${HOME}/man > nco.configure.${GNU_TRP}.foo 2>&1
/bin/cp -f config.log nco.config.log.${GNU_TRP}.foo
/bin/cp -f libtool nco.libtool.${GNU_TRP}.foo
make clean;make > nco.make.${GNU_TRP}.foo 2>&1
make check >> nco.make.${GNU_TRP}.foo 2>&1
make install >> nco.make.${GNU_TRP}.foo 2>&1
scp nco.configure.${GNU_TRP}.foo nco.config.log.${GNU_TRP}.foo nco.libtool.${GNU_TRP}.foo nco.make.${GNU_TRP}.foo dust.ess.uci.edu:Sites/nco/rgr
# gcc/g++ Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on greenplanet
# Personal recipe last modified: 20190526
# Personal recipe last used successfully: 20190526 (no antlr or ncap2)
export GNU_TRP=`~/nco/autobld/config.guess`
cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
ANTLR_ROOT=${HOME} ANTLR_LIB=${HOME}/lib_edison CC='icc' CXX='icpc' GSL_ROOT='/usr/common/usg/gsl/2.3/intel' NETCDF_INC='/opt/cray/pe/netcdf/4.6.1.3/intel/16.0/include' NETCDF_LIB='/opt/cray/pe/netcdf/4.6.1.3/intel/16.0/lib' NETCDF_ROOT='/opt/cray/pe/netcdf/4.6.1.3' UDUNITS2_PATH='/usr/common/usg/udunits/2.1.24/intel' ./configure --prefix=${HOME} --bindir=${HOME}/bin_edison --datadir=${HOME}/nco/data --libdir=${HOME}/lib_edison --mandir=${HOME}/man > nco.configure.${GNU_TRP}.foo 2>&1
CC='gcc' CXX='g++' LDFLAGS='-L/lib64' ./configure --prefix=${HOME} --bindir=${MY_BIN_DIR} --datadir=${HOME}/nco/data --libdir=${MY_LIB_DIR} --mandir=${HOME}/nco/man > nco.configure.${GNU_TRP}.foo 2>&1
/bin/cp -f config.log nco.config.log.${GNU_TRP}.foo
/bin/cp -f libtool nco.libtool.${GNU_TRP}.foo
make clean;make > nco.make.${GNU_TRP}.foo 2>&1
......@@ -463,7 +493,7 @@ make check >> nco.make.${GNU_TRP}.foo 2>&1
make install >> nco.make.${GNU_TRP}.foo 2>&1
scp nco.configure.${GNU_TRP}.foo nco.config.log.${GNU_TRP}.foo nco.libtool.${GNU_TRP}.foo nco.make.${GNU_TRP}.foo dust.ess.uci.edu:Sites/nco/rgr
# gcc/g++ 20160107 Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on rhea:
# gcc/g++ 20160107 Zender uses this to develop/install/update netCDF4-enabled NCO in personal directories on rhea with system (old) netCDF:
# Sysadmin upgrade request: https://www.olcf.ornl.gov/support/submit-ticket
# Latest ticket: 381695 on 20180413
# Latest sysadmin-compiled module usage: module load netcdf/4.6.1 nco/4.7.4 # 20180423
......
This diff is collapsed.
This diff is collapsed.
nco (4.8.0-1) UNRELEASED; urgency=medium
nco (4.8.1-1~exp1) experimental; urgency=medium
* New upstream release.
* Remove package name from lintian overrides.
* Add license & copyright for sources by Joseph O'Rourke.
* Update copyright file, changes:
- Update copyright years for Charlie Zender
- Add license & copyright for nco_crt.h
* Add patch to fix spelling errors.
-- Bas Couwenberg <sebastic@debian.org> Thu, 16 May 2019 06:41:24 +0200
-- Bas Couwenberg <sebastic@debian.org> Tue, 02 Jul 2019 06:17:16 +0200
nco (4.7.9-1) unstable; urgency=medium
......
......@@ -4,7 +4,7 @@ Upstream-Contact: Charlie Zender <zender@uci.edu>
Source: https://github.com/nco/nco/releases
Files: *
Copyright: 1995-2018, Charlie Zender
Copyright: 1995-2019, Charlie Zender
Comment: Charlie Zender wrote most of NCO and holds all NCO copyrights.
He licenses NCO under the GNU GPL3 (see file COPYING).
Advance permission must be sought from him for any usage or
......@@ -27,11 +27,10 @@ Comment: Charlie Zender wrote most of NCO and holds all NCO copyrights.
License: GPL-3 with NCO exception
Files: src/nco/nco_crt.c
src/nco/nco_crt.h
src/nco/nco_sph.c
Copyright: 1997, Joseph O'Rourke
License: crt
It may be freely redistributed in its entirety provided that this
copyright notice is not removed.
License: BSD-2-Clause and GPL-3 with NCO exception
Files: src/nco/nco_getopt.c
src/nco/nco_getopt.h
......@@ -196,6 +195,30 @@ License: BSD-1-Clause
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
License: BSD-2-Clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
.
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: MIT
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
......
# False positive, string not included in source
spelling-error-in-binary usr/bin/nc* ment meant
# False positive on abbreviation for 'degree east'
spelling-error-in-binary * degreeE degree
# ncdiff is symlinked to ncbo
binary-without-manpage usr/bin/ncdiff
......
spelling-errors.patch
Description: Fix spelling errors.
* didnt -> didn't
Author: Bas Couwenberg <sebastic@debian.org>
Forwarded: https://github.com/nco/nco/pull/141
--- a/src/nco/nco_ply_lst.c
+++ b/src/nco/nco_ply_lst.c
@@ -218,7 +218,7 @@ int *pl_nbr)
else
{
if(nco_dbg_lvl_get() >= nco_dbg_std ){
- (void)fprintf(stdout, "%s: split wrapping didnt work on this polygon(%lu)\n", nco_prg_nm_get(), idx );
+ (void)fprintf(stdout, "%s: split wrapping didn't work on this polygon(%lu)\n", nco_prg_nm_get(), idx );
(void)fprintf(stdout, "/********************************/\n");
}
$Header$ -*-text-*-
The netCDF Operators NCO version 4.8.0 art b'rn
The netCDF Operators NCO version 4.8.1 art b'rn
http://nco.sf.net (Homepage, Mailing lists, Help)
http://github.com/nco (Source Code, Issues, Releases, Developers)
What's new?
Version 4.8.0 contains, as usual, numerous enhancements to ncremap
and ncclimo. The most significant is vertical interpolation, which
is useful to create new initial conditions for models, and to convert
data to/from any desired hybrid coordinate or pure pressure vertical
grid. Also we have changed NCO_PATH_OVERRIDE from opt-out to opt-in
due to the increased maturity and use of the Conda NCO package which
now pulls-in both ESMF_RegridWeightGen and TempestRemap.
Version 4.8.1 primarily contains enhancements to the vertical
interpolation feature of ncremap, ncclimo, and ncks. Two extrapolation
options are now supported (nearest neighbor and missing value), and
the entire procedure now works with the ECMWF IFS hybrid sigma
pressure grid as input. Other changes include better support for
north-to-south (n2s) Gaussian grid inferral and output, and ncclimo
updates and improvements for finer-grained MPI parallelism.
See below for full details.
ncap2 now allows creating brand-new files without specifying an
existing input file, which eliminates an indefensible and annoying
requirement. ncks can now easily detect and identify NaNs in datasets.
See below for a fuller list of new features and pointers to more info.
Work on NCO 4.8.1 has commenced. This will include plumbing work that
allows simultaneous horizontal and vertical regridding, and that
allows ncclimo to invoke the vertical regridding features.
Work on NCO 4.8.2 has commenced and will expose more powerful options
for vertical interpolation and, hopefully, the debut of the NCO
weight-generator for regridding.
Work on NCO 5.0.0 has commenced "under the hood". The key leap in that
release will be support for netCDF4 user-defined types. Printing of
......@@ -35,89 +31,84 @@ Charlie
NEW FEATURES (full details always in ChangeLog):
A. ncremap now accepts two new Tempest map configurations, "se2se" and
"fv2fv". Use them to regrid one spectral element grid to another,
or one finite volume grid to another with TempestRemap.
http://nco.sf.net/nco.html#se2se
http://nco.sf.net/nco.html#fv2fv
B. ncap2 now allows creating brand-new files without specifying an
input filename. Previously, users had to specify an input file
even if the output file had no dependency on it.
ncap2 -s 'foo=1' ~/foo.nc # Create new or modify existing foo.nc
ncap2 -O -s 'foo=1' ~/foo.nc # Overwrite old with new foo.nc
ncap2 -s 'foo=1' ~/foo.nc ~/foo.nc # Add to old foo.nc
http://nco.sf.net/nco.html#ncap2
A. ncremap/ncks now always creates/infers north-to-south grids with
polygons in counter-clockwise (CCW) orientation. Formerly, polygons in
south-to-north grids had CCW orientation while those in north-to-south
grids had CW orientation.
ncremap -G latlon=1280,2560#lat_typ=gss#lat_drc=n2s -g $HOME/grd_n2s.nc
ncremap -d ecmwf_ifs.nc -g grd_n2s.nc
http://nco.sf.net/nco.html#n2s
http://nco.sf.net/nco.html#ncremap
C. ncremap and ncclimo have a new flag, --no_stdin, that disables
checking stdin for input files. This is a flag that takes no
argument, not a key-value option. Add --no_stdin to any command
that might run in an environment, like Azure CI or CWL, that uses
stdin for other purposes.
ncclimo --no_stdin --caseid=foo ...
ncremap --no_stdin --map=map.nc in.nc out.nc
http://nco.sf.net/nco.html#no_stdin
D. ncremap can now interpolate files in the vertical dimension.
The --vrt_fl=vrt_fl option points to a vertical grid file
that specifies the desired vertical grid for the output file.
Currently supported grids include the hybrid vertical coordinate
employed by E3SM and CESM, and pure pressure coordinates.
ncremap --vrt_fl=vrt_fl in.nc out.nc
http://nco.sf.net/nco.html#vrt
E. ncremap and ncclimo now accept the --xcl_var switch. This switch
changes the extraction list (specified with -v vars or --vars=vars)
into an exclusion list. Behavior is identical to the common NCO -x
option:
ncremap --xcl_var --vars=excluded,from,output in.nc out.nc
http://nco.sf.net/nco.html#xcl_var
F. ncremap and ncclimo now alter paths on certain supercomputers at
DOE HPC centers only when requested to. Previously, these commands
used pre-defined paths, when available, to ensure users could
easily run the executables in CZ's directories. Users could opt-out
of these paths by exporting NCO_PATH_OVERRIDE=No in their
environment. Thanks to inclusion of external (non-NCO) executables
such as ESMF_RegridWeightGen and TempestRemap in Anaconda
environments widely used at DOE labs, this is no longer necessary.
Now users must opt-in to the preset paths by exporting
NCO_PATH_OVERRIDE=Yes in their environments.
export NCO_PATH_OVERRIDE=Yes # Use CZ's ESMF, TR, and NCO
ncremap -a conserve --map=map.nc in.nc out.nc
B. ncremap now vertically interpolates data from ECMWF IFS hybrid
vertical grid format to CAM/E3SM hybrid format and to pure-pressure
format. ECMWF archives and serves IFS data in a hybrid
sigma-pressure grid format significantly different from CAM/E3SM.
ECMWF supplies lnsp (log surface pressure) not PS (surface
pressure). There are numerous other metadata differences.
NCO now automatically takes care of these.
ncremap --vrt=vrt_hyb_L72.nc ecmwf_ifs_f640L137.nc out.nc
http://nco.sf.net/nco.html#vrt_fl
http://nco.sf.net/nco.html#ncremap
G. ncclimo adopts a default job_nbr of var_nbr in splitter mode.
Previusly the default was 2. However, the splitter is extremely
memory efficient and scales well up to over a hundred variables on
all HPCs tested. Hence this change.
http://nco.sf.net/nco.html#job_nbr
H. ncks has a new --chk_nan option. This option invokes a special
checker that looks for NaN of NaNf in double- and single-precision
floating-point variables, respectively. If a NaN is encountered,
NCO prints its location and then exits with an error code. Thanks
to Matthew Thompson of NASA for this suggestion.
ncks --chk_nan in.nc
http://nco.sf.net/nco.html#chk_nan
I. New synonyms --xtr_ass_var and --xcl_ass_var, which stand for
"exclude associated variables" and "extract associated variables",
have been added to the -C and -c switches, respectively.
Simultaneously, the --no-coords and --no-crd synonyms have been
renamed --no_coords and --no_crd because NCO is standardizing on
underscores not dashes for multi-component option names.
ncks --xcl_ass_var lat in.nc
ncks --xtr_ass_var lat in.nc
http://nco.sf.net/nco.html#xcl_ass_var
http://nco.sf.net/nco.html#xtr_ass_var
C. ncks, ncremap, and ncclimo now support two different extrapolation
algorithms for vertical regridding. The original and default
extrapolation algorithm uses the nearest valid neighbor.
This is now explicitly selectable with --vrt_xtr=nrs_ngh.
The second supported algorithm extrapolates to missing values.
This is now explicitly selectable with --vrt_xtr=mss_val.
ncremap --vrt=vrt.nc --vrt_xtr=mss_val in.nc out.nc
ncremap --vrt=vrt.nc --vrt_xtr=nrg_ngh in.nc out.nc
ncclimo --vrt=vrt.nc --vrt_xtr=mss_val -i drc_raw -O drc_rgr
ncks --vrt=vrt.nc --rgr vrt_xtr=mss_val in.nc out.nc
http://nco.sf.net/nco.html#vrt_xtr
http://nco.sf.net/nco.html#ncremap
D. The former ncremap ESMF extrapolation options xtr_nsp, xtr_typ, and
xtr_xpn have been renamed xtr_nsp, xtr_typ, and esmf_xpn,
respectively. This was done to make them easier to find and to
segregate regridder-specific from regridder-generic options.
http://nco.sf.net/nco.html#esmf_typ
http://nco.sf.net/nco.html#ncremap
E. ncremap accepts a new option, --msh_fl=msh.nc, to specify the name
of the intersection mesh-file. This option only works with the
TempestRemap and NCO weight-generators. (The NCO weight-generator
is still in development and is not yet supported. Interested beta
testers can access it with --alg_typ=nco).
F. ncremap MWF mode now only generates TempestRemap maps when one or
both input grids are Exodus-format (and end with a .g suffix).
This was done to keep ERWG and TR map-generation from being
interdependent in case a grid-pair breaks one or the other.
BUG FIXES:
A. ncremap runs 20-30x faster on Cori KNL than before.
Cori KNL has an unusual default setting for OMP_PROC_BIND that
causes hardware thread contention with NCO. Thanks to Noel Keen of
NERSC for help diagnosing this problem.
A. ncremap now infers north-to-south Gaussian grids correctly.
Previously such grids, like ECMWF IFS grids, failed to converge
in the Newton-Raphson iteration for latitude interfaces.
ncremap -d ecmwf_ifs.nc -g grd_n2s.nc
The solution is to upgrade to 4.8.1, and the workaround is to use
ncpdq to reorder the grids from n2s to s2n.
Thanks to Wuyin Lin of BNL for highlighting this issue.
http://nco.sf.net/nco.html#n2s
http://nco.sf.net/nco.html#gss
B. North-to-south grids are now output in counterclockwise order.
Previously s2n and n2s grids were output in CCW and CW order,
respectively. Now all grids are CCW.
Thanks to Wuyin Lin of BNL for highlighting this issue.
http://nco.sf.net/nco.html#n2s
C. ncap2 correctly overwrites output-files in single-file mode.
4.8.0 introduced the single-file feature where ncap2 does
not need two file arguments, but instead can construct the
output file purely from scratch. In the case where an output
file of the same name already existed, ncap2 would fail to
overwrite it when given the -O argument:
ncap2 -O -s 'one=1' ~/foo.nc # now works
ncap2 -s 'one=1' ~/foo.nc # always worked
http://nco.sf.net/nco.html#ncap2
Full release statement at http://nco.sf.net/ANNOUNCE
......
2019-07-01 Charlie Zender <zender@uci.edu>
* NCO 4.8.1 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1: INDICES';git push
git tag -a 4.8.1 -m 'ncclimo job_nbr csn;ncremap msh_fl, n2s CCW gss nfr, IFS, vrt_xtr mss_val;ncap2 -O;copyright';git push --tags
* Fix ncap2 use of single-file with -O if file already exists
* Add --no_amwg synonym
2019-06-22 Charlie Zender <zender@uci.edu>
* NCO 4.8.1-beta01 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-beta01: Iron Champs Elysée';git push
git tag -a 4.8.1-beta01 -m 'ncclimo job_nbr csn;ncremap msh_fl, n2s CCW gss nfr, IFS, vrt_xtr mss_val';git push --tags
* When foo.nc already exists, "ncap2 -O -s 'one=1' ~/foo.nc" works and "ncap2 -s 'one=1' ~/foo.nc" is borken
2019-06-15 Charlie Zender <zender@uci.edu>
* ncremap/ncclimo print NCO_PATH_OVERRIDE HINT when ncks fails due to link error
* nco_ntp_vrt() correct prs_min/max_in/out idx_fst when detecting extrapolation
* NCO 4.8.1-alpha07 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha07: Kahakai';git push
git tag -a 4.8.1-alpha07 -m 'ncremap/ncclimo vrt_xtr;ntp_vrt mss_val min max';git push --tags
* ncclimo print correct regridded filename at end when no_ntv_tms requested
* ncclimo incorporate vertical extrapolation type vrt_xtr option
* nco_ntp_vrt() set flag to add _FillValue based on both maximum and minimum midpoint pressure
* nco_ntp_vrt() set flag to add _FillValue based on maximum midpoint pressure not surface pressure
* ncremap incorporate vertical extrapolation type vrt_xtr option
2019-06-14 Charlie Zender <zender@uci.edu>
* NCO 4.8.1-alpha06 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha06: School of Rock';git push
git tag -a 4.8.1-alpha06 -m 'ncremap --msh_fl, rename ESMF xtr_* to esmf_*, IFS vrt_fl w/lev, n2s CCW;Cori GCC not Intel;ncks xtr_mth mss_val;update Makefile/libnco.h; add copyright/license to msh code';git push --tags
* Add copyright/license to new regridding files nco_ply.c/h, nco_crt.c/h, nco_sph.c/h, nco_ply_lst.c/h, nco_kd.c/h
* Always use n2s algorithm during Newton-Raphson construction of s2n latitudes (later flipped to n2s)
2019-06-13 Charlie Zender <zender@uci.edu>
* Add CW->CCW filter to nco_grd_mk() and nco_grd_nfr() so n2s grids work with TR
2019-06-12 Charlie Zender <zender@uci.edu>
* Rename ESMF extrapolation options from "xtr_xyz" to "esmf_xyz"
* Correctly read lev dimension name from vrt_fl during ECMWF IFS processing
2019-06-08 Charlie Zender <zender@uci.edu>
* Move nco_nmn_get() and nco_lbr_vrs_prn/() from nco_ctl.c to nco_scm.c, re-jigger version banner
* nco_ntp_vrt() handle xtr_mth option with rgr parameter database
* nco_ntp_vrt() add _FillValue attributes if necessary when missing value extrapolation requested
* nco_ntp_vrt() pre-screen to determine whether extrapolation necessary
2019-06-07 Charlie Zender <zender@uci.edu>
* ncremap outputs intersection meshfile with --msh_fl
* Cori add '-C knl' to interactive queue requests
* Remove gsl and udunits modules from NCO_PATH_OVERRIDE actions on Cori
* NCO 4.8.1-alpha05 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha05: Tampa Mockingbird';git push
git tag -a 4.8.1-alpha05 -m 'ncremap MWF w/o tempest, blues MPI, xtr_fll_msv, AppVeyor fix';git push --tags
* ncremap skip Tempest alg_typ 'tempest' in MWF mode when called with .nc grids
* ncclimo/ncremap choose correct batch and MPI type for blues/anvil, requested by Balwinder Singh
* nco_ntp_vrt() missing value extrapolation works, still need to add _FillValue attribute and option
* nco_ntp_vrt() add hooks to create _FillValue attribute after extrapolating to missing values
2019-06-06 Charlie Zender <zender@uci.edu>
* nco_ntp_vrt() add stubs for extrapolation to missing value
2019-06-05 Charlie Zender <zender@uci.edu>
* nco_ntp_vrt() re-use existing dmn_ids_out array to fix new AppVeyor breakage
* Merge Filipe's patch to fix old AppVeyor breakage
2019-06-04 Charlie Zender <zender@uci.edu>
* NCO 4.8.1-alpha04 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha04: Taco Al Pastor';git push
git tag -a 4.8.1-alpha04 -m 'ncremap --amwg_links, gss ntf n2s, ECMWF IFS vrt ntp;ncks msh_fl';git push --tags
* Verify vertical interpolation of ECMWF now works
* Compensate for different definitions of hya? between ECMWF and CAM/EAM
* Fix Newton-Raphson computation of Gaussian grid interfaces for n2s grids (including ECMWF)
2019-06-03 Charlie Zender <zender@uci.edu>
* Interpolation of hybrid grids from ECMWF IFS input files appears to work
2019-06-02 Charlie Zender <zender@uci.edu>
* Change --lnk_flg to true option with argument, add --amwg_links antonym flag to --no_amwg_links
* nco_rgr.c print absolute convergence at last iteration step for failed Gaussian calculations
* Add stubs to understand and interpolate hybrid grids from ECMWF IFS input files
* Address warnings found by Pedro with MSVC Studio Version 19
2019-05-31 Charlie Zender <zender@uci.edu>
* Allow ncremap to work when ERWG is not found and not needed
2019-05-30 Henry Butowsky <henryb@hush.com>
* ncks --rgr msh_fl=msh.nc for SCRIP-formatted netCDF overlap mesh
2019-05-29 Charlie Zender <zender@uci.edu>
* Fix mis-formatted fprintf() statements
2019-05-27 Charlie Zender <zender@uci.edu>
* NCO 4.8.1-alpha03 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha03: Compy';git push
git tag -a 4.8.1-alpha03 -m 'ncremap/ncclimo compy, job_nbr csn;';git push --tags
* nco_ntp_vrt() add stubs for depth coordinate
2019-05-26 Charlie Zender <zender@uci.edu>
* ncclimo use job_nbr in seasonal climos
* Prevent automatic writing of output grid to nco_map_tst_out.nc
* Ensure compy MPI mode uses srun
* Deprecate edison and hopper from ncremap/ncclimo scripts
2019-05-25 Charlie Zender <zender@uci.edu>
* Add compy to ncremap/ncclimo HPC database
2019-05-22 Charlie Zender <zender@uci.edu>
* Expand HINT when GenerateOverlapMesh fails
2019-05-19 Charlie Zender <zender@uci.edu>
* NCO 4.8.1-alpha02 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha02: Knee Wrench';git push
git tag -a 4.8.1-alpha02 -m 'ORourke BSD license/copyright;ncclimo vrt_fl';git push --tags
* ncclimo MPAS branch passes vertical interpolation arguments
2019-05-18 Charlie Zender <zender@uci.edu>
* Plumb ncks and nco_rgr_ini() to accept vrt_fl directly
* Pass vertical interpolation arguments from ncclimo to ncremap
* Insert copyright for Joseph O'Rourke and BSD License into nco_crt.c and nco_sph.c
* NCO 4.8.1-alpha01 release procedure:
cd ~/nco;git commit -a -m 'Version 4.8.1-alpha01: Salted Pig';git push
git tag -a 4.8.1-alpha01 -m 'Nearly functionally identical to 4.8.0;ncclimo/ncremap -p serial';git push --tags
* ncclimo/ncremap -p serial is synonym for -p nil
2019-05-15 Charlie Zender <zender@uci.edu>
 
* NCO 4.8.0 release procedure:
......
......@@ -29,18 +29,18 @@ apt-get install dh-make debhelper devscripts fakeroot gnupg debian-policy develo
2. Debian build procedure recommends placing entire package source in
subdirectory of main package.
For starters, we wish to create .debs of tagged releases, e.g., nco-4.8.0
First we create a clean source distribution of nco and place it in nco-4.8.0
For starters, we wish to create .debs of tagged releases, e.g., nco-4.8.1
First we create a clean source distribution of nco and place it in nco-4.8.1
Until we know what is necessary, however, we just copy a snapshot
2.1 Clean all build files from development directory
cd ~/nco;make distclean;cd bld;make clean;cd ~
tar cvzf ./nco/nco.tar.gz ./nco/*
cd ~/nco;tar xvzf nco.tar.gz;mv nco nco-4.8.0
/bin/rm nco.tar.gz;tar cvzf nco-4.8.0.tar.gz ./nco-4.8.0/*
cd ~/nco/nco-4.8.0
dh_make -e zender@uci.edu -f ../nco-4.8.0.tar.gz
cd ~/nco;tar xvzf nco.tar.gz;mv nco nco-4.8.1
/bin/rm nco.tar.gz;tar cvzf nco-4.8.1.tar.gz ./nco-4.8.1/*
cd ~/nco/nco-4.8.1
dh_make -e zender@uci.edu -f ../nco-4.8.1.tar.gz
2.2 The preceding steps created template debian files for a .deb,
Those files now reside in ~/nco/debian.
......@@ -55,7 +55,7 @@ dh_make -e zender@uci.edu -f ../nco-4.8.0.tar.gz
from previous build
cd ~/nco;/bin/rm *.gz
cd ~/nco/nco-4.8.0
cd ~/nco/nco-4.8.1
dpkg-buildpackage -rfakeroot > foo 2>&1
dpkg-buildpackage -rsudo > foo 2>&1
......@@ -84,33 +84,33 @@ patch -p0 < nco_X.Y.Z-3.diff # Patch destination with Debian diff
make tags
# Put cute version-specific string in nco_ctl.c:nco_nmn_get()
# Install correct version numbers before updating Debian
# tags-query replace 4.8.0 with X.Y.Z+1
# tags-query replace 4.8.1 with X.Y.Z+1
# If tags-query replace does not work, be sure to manually change
# versions in configure.ac, debian/files, doc/ANNOUNCE, doc/debian.txt,
# doc/index.shtml, doc/nco.texi, bld/nco_dst.pl, doc/VERSION
# 20141201: Change NCO_VERSION_PATCH in src/nco.h!!!!!!!!!!!!!!!!!!!!!!
cd ~/nco/debian;dch -b --force-distribution --distribution=unstable -v 4.8.0-1 # Update changelog (-b forces this version number)
cd ~/nco/debian;dch -b --force-distribution --distribution=unstable -v 4.8.1-1 # Update changelog (-b forces this version number)
emacs ~/nco/bld/nco.spec # Update changelog
# For unknown reason rules file may lose its executable bit
chmod a+x ~/nco/debian/rules
# Rebuild autotools so new version # propagates
cd ~/nco;aclocal;autoheader;automake --foreign;autoconf
# Save all files in emacs before tagging
${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4.8.0
${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4.8.1
# Upload tarball to SF https://sourceforge.net/projects/nco/files
cd;scp dust.ess.uci.edu:/var/www/html/nco/src/nco-4.8.0.tar.gz .
cd;scp dust.ess.uci.edu:/var/www/html/nco/src/nco-4.8.1.tar.gz .
7. Ubuntu PPA
https://help.launchpad.net/Packaging/PPA
dput NCO nco_4.8.0-2~ppa1_source.changes
dput NCO nco_4.8.1-2~ppa1_source.changes
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com
# Location of build diagnostics for mentors to help
http://dust.ess.uci.edu/nco/src/nco_4.8.0-1.dpkg-buildpackage.txt
http://dust.ess.uci.edu/nco/src/nco_4.8.0-1.dsc
http://dust.ess.uci.edu/nco/src/nco_4.8.0-1_i386.changes
http://dust.ess.uci.edu/nco/src/nco_4.8.0-1_i386.deb
http://dust.ess.uci.edu/nco/src/nco_4.8.0.orig.tar.gz
http://dust.ess.uci.edu/nco/src/nco_4.8.1-1.dpkg-buildpackage.txt
http://dust.ess.uci.edu/nco/src/nco_4.8.1-1.dsc
http://dust.ess.uci.edu/nco/src/nco_4.8.1-1_i386.changes
http://dust.ess.uci.edu/nco/src/nco_4.8.1-1_i386.deb
http://dust.ess.uci.edu/nco/src/nco_4.8.1.orig.tar.gz
# Becoming a Debian developer
http://www.debian.org/devel/join/newmaint
......@@ -164,31 +164,31 @@ Matej Vela <vela@debian.org>, Daniel Baumann <daniel@debian.org>, Warren Turkal
# export LD_LIBRARY_PATH=/usr/lib:/lib:/usr/X11R6/lib
# sudo aptitude install antlr bison flex gsl-bin libgsl0-dev libantlr-dev netcdf-bin libnetcdfc7 libnetcdf-dev texinfo libcurl4-gnutls-dev libexpat1-dev libxml2-dev udunits-bin libudunits2-0 libudunits2-dev
cd ~/nco;cvc
sudo /bin/rm -rf ${DATA}/nco-4.8.0 ${DATA}/nco_4.8.0* ${DATA}/debian # Cleanup last build. sudo necessary for removal because dpkg-buildpackage uses sudo?
# cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4.8.0-1 -d nco-4.8.0 nco # Export based on tag
cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -d nco-4.8.0 nco # Export most recent
tar cvzf ./nco_4.8.0.orig.tar.gz --exclude='nco-4.8.0/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.8.0
/bin/rm -rf ${DATA}/nco-4.8.0 # Remove cvs-exported directory
tar xvzf ./nco_4.8.0.orig.tar.gz # Untar to get directory without excluded files
mkdir -p ${DATA}/nco-4.8.0/debian/source;cd ~/nco/debian;/bin/cp changelog compat control convert copyright doc-base files info rules ${DATA}/nco-4.8.0/debian;cd ~/nco/debian/source;/bin/cp format ${DATA}/nco-4.8.0/debian/source # Replace debian directory with _CURRENT_ (main trunk) settings
sudo /bin/rm -rf ${DATA}/nco-4.8.1 ${DATA}/nco_4.8.1* ${DATA}/debian # Cleanup last build. sudo necessary for removal because dpkg-buildpackage uses sudo?
# cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4.8.1-1 -d nco-4.8.1 nco # Export based on tag
cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -d nco-4.8.1 nco # Export most recent
tar cvzf ./nco_4.8.1.orig.tar.gz --exclude='nco-4.8.1/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.8.1
/bin/rm -rf ${DATA}/nco-4.8.1 # Remove cvs-exported directory
tar xvzf ./nco_4.8.1.orig.tar.gz # Untar to get directory without excluded files
mkdir -p ${DATA}/nco-4.8.1/debian/source;cd ~/nco/debian;/bin/cp changelog compat control convert copyright doc-base files info rules ${DATA}/nco-4.8.1/debian;cd ~/nco/debian/source;/bin/cp format ${DATA}/nco-4.8.1/debian/source # Replace debian directory with _CURRENT_ (main trunk) settings
#export DEB_BUILD_OPTIONS='disable-dap-netcdf disable-netcdf4 disable-udunits2'; # Disable optional packages based on available Debian support
#cd ${DATA}/nco-4.8.0;dpkg-buildpackage -rsudo -uc -us > ~/foo.nco 2>&1 # -uc -us: Do not sign changes or source files
#cd ${DATA}/nco-4.8.0;dpkg-buildpackage -rsudo -sa > ~/foo.nco 2>&1 # -sa: Include _orig.tar.gz in .changes
cd ${DATA}/nco-4.8.0;dpkg-buildpackage -rsudo > ~/foo.nco 2>&1
#cd ${DATA}/nco-4.8.1;dpkg-buildpackage -rsudo -uc -us > ~/foo.nco 2>&1 # -uc -us: Do not sign changes or source files
#cd ${DATA}/nco-4.8.1;dpkg-buildpackage -rsudo -sa > ~/foo.nco 2>&1 # -sa: Include _orig.tar.gz in .changes
cd ${DATA}/nco-4.8.1;dpkg-buildpackage -rsudo > ~/foo.nco 2>&1
sudo dpkg --remove nco
sudo dpkg --install ${DATA}/nco_4.8.0-1_*.deb
sudo dpkg --install ${DATA}/nco_4.8.1-1_*.deb
cd ~/nco/bld;MY_BIN_DIR=/usr/bin ../bm/nco_bm.pl --regress
# http://lintian.debian.org/full/zender@uci.edu.html
lintian ${DATA}/nco_4.8.0-1_*.deb
ls -l ${DATA}/nco_4.8.0*
lintian ${DATA}/nco_4.8.1-1_*.deb
ls -l ${DATA}/nco_4.8.1*
m ~/foo.nco
# Upload Ubuntu (rather than Debian) packages to websites
scp ${DATA}/nco_4.8.0* dust.ess.uci.edu:/var/www/html/nco/src
scp ${DATA}/nco_4.8.0* zender,nco@web.sf.net:/home/project-web/nco/htdocs/src
scp ${DATA}/nco_4.8.1* dust.ess.uci.edu:/var/www/html/nco/src
scp ${DATA}/nco_4.8.1* zender,nco@web.sf.net:/home/project-web/nco/htdocs/src
# NB: Make sure RPMs build before uploading to debian, since changing
# Debian versions is a PITA
# NB: Only upload pbuilder Debian Sid (not personal Ubuntu) .deb builds to Debian mentors
# cd ${DATA};dupload -t mentors nco_4.8.0-1_*.changes
# cd ${DATA};dupload -t mentors nco_4.8.1-1_*.changes
bsrc # Reset shell environment for regular development
# New build system #2
......@@ -202,52 +202,52 @@ DIST=sid sudo pbuilder update # Update chroot before building package in it
# dget http://ftp.debian.org/debian/pool/main/n/nco/nco_3.9.0-1.dsc
# dget http://ftp.debian.org/debian/pool/main/n/netcdf/netcdf_3.6.1-1.dsc
# apt-get source nco # Get package source
sudo /bin/rm /var/cache/pbuilder/result/nco_4.8.0* # Cleanup prior build
sudo /bin/rm /var/cache/pbuilder/result/nco_4.8.1* # Cleanup prior build
# To pass DEB_BUILD_OPTIONS to pbuilder while using sudo, one must first
# modify sudoers with visudo to prevent sudo from resetting environment
#export DEB_BUILD_OPTIONS='disable-dap-netcdf disable-netcdf4 disable-udunits2'; # Disable optional packages based on available Debian support
cd ${DATA};DIST=sid sudo pbuilder build nco_4.8.0-1.dsc > ~/foo.nco.pbuilder 2>&1
cd /var/cache/pbuilder/result;debsign -k6F635D10 nco_4.8.0-1_*.changes
lintian /var/cache/pbuilder/result/nco_4.8.0-1_*.deb
cd ${DATA};DIST=sid sudo pbuilder build nco_4.8.1-1.dsc > ~/foo.nco.pbuilder 2>&1
cd /var/cache/pbuilder/result;debsign -k6F635D10 nco_4.8.1-1_*.changes
lintian /var/cache/pbuilder/result/nco_4.8.1-1_*.deb
sudo dpkg --remove nco
sudo dpkg --install /var/cache/pbuilder/result/nco_4.8.0-1_*.deb
sudo dpkg --install /var/cache/pbuilder/result/nco_4.8.1-1_*.deb
cd ~/nco/bld;MY_BIN_DIR=/usr/bin ../bm/nco_bm.pl --regress
# NB: Upload pbuilder Debian Sid packages to Debian mentors, but not
# to personal or NCO websites since most people use Ubuntu not Debian
# NB: Debian versions are a PITA, ensure RPMs build before uploading to Debian
cd /var/cache/pbuilder/result;dupload -t mentors nco_4.8.0-1_*.changes
cd /var/cache/pbuilder/result;dupload -t mentors nco_4.8.1-1_*.changes
# RPM builds as root
export rpm_root='/usr/src/redhat'
# export sudo_sng='' # sudo not-necessary when builing in user directories
export sudo_sng='sudo' # sudo necessary when building in system directories
cd ~/nco;cvc;cvu
/bin/rm -rf ${DATA}/nco-4.8.0 ${DATA}/nco-4.8.0* # Cleanup last build
/bin/rm -rf ${DATA}/nco-4.8.1 ${DATA}/nco-4.8.1* # Cleanup last build
${sudo_sng} /bin/rm -r -f \
${rpm_root}/BUILD/nco-4.8.0 \
${rpm_root}/RPMS/i386/nco-4.8.0-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-debuginfo-4.8.0-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-devel-4.8.0-?.i386.rpm \
${rpm_root}/SOURCES/nco-4.8.0.tar.gz \
${rpm_root}/SPECS/nco-4.8.0.spec \
${rpm_root}/SRPMS/nco-4.8.0-?.src.rpm
cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4.8.0-1 -d nco-4.8.0 nco # Export based on tag
${sudo_sng} ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/SPECS/nco-4.8.0.spec
tar cvzf ./nco-4.8.0.tar.gz --exclude='nco-4.8.0/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.8.0
${sudo_sng} /bin/cp ${DATA}/nco-4.8.0.tar.gz ${rpm_root}/SOURCES
${rpm_root}/BUILD/nco-4.8.1 \
${rpm_root}/RPMS/i386/nco-4.8.1-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-debuginfo-4.8.1-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-devel-4.8.1-?.i386.rpm \
${rpm_root}/SOURCES/nco-4.8.1.tar.gz \
${rpm_root}/SPECS/nco-4.8.1.spec \
${rpm_root}/SRPMS/nco-4.8.1-?.src.rpm
cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4.8.1-1 -d nco-4.8.1 nco # Export based on tag
${sudo_sng} ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/SPECS/nco-4.8.1.spec
tar cvzf ./nco-4.8.1.tar.gz --exclude='nco-4.8.1/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.8.1
${sudo_sng} /bin/cp ${DATA}/nco-4.8.1.tar.gz ${rpm_root}/SOURCES
cd ${rpm_root}/SPECS
${sudo_sng} rpmbuild -ba --sign nco-4.8.0.spec > ~/foo.nco 2>&1
${sudo_sng} rpmbuild -ba --sign nco-4.8.1.spec > ~/foo.nco 2>&1
scp \
${rpm_root}/RPMS/i386/nco-4.8.0-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-debuginfo-4.8.0-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-devel-4.8.0-?.i386.rpm \
${rpm_root}/SRPMS/nco-4.8.0-?.src.rpm \
${rpm_root}/RPMS/i386/nco-4.8.1-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-debuginfo-4.8.1-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-devel-4.8.1-?.i386.rpm \
${rpm_root}/SRPMS/nco-4.8.1-?.src.rpm \
dust.ess.uci.edu:/var/www/html/nco/src
scp \
${rpm_root}/RPMS/i386/nco-4.8.0-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-debuginfo-4.8.0-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-devel-4.8.0-?.i386.rpm \
${rpm_root}/SRPMS/nco-4.8.0-?.src.rpm \
${rpm_root}/RPMS/i386/nco-4.8.1-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-debuginfo-4.8.1-?.i386.rpm \
${rpm_root}/RPMS/i386/nco-devel-4.8.1-?.i386.rpm \
${rpm_root}/SRPMS/nco-4.8.1-?.src.rpm \
zender,nco@web.sf.net:/home/project-web/nco/htdocs/src
# RPM builds as user
......@@ -256,33 +256,33 @@ zender,nco@web.sf.net:/home/project-web/nco/htdocs/src
export rpm_root="${DATA}/rpm/nco"
#cd ~/nco;cvc;cvu # This risks committing unwanted *.[ch]pp files
mkdir -p ${DATA}/rpm/nco/TMP ${DATA}/rpm/nco/BUILD
/bin/rm -rf ${DATA}/nco-4.8.0 ${DATA}/nco-4.8.0* # Cleanup last build
/bin/rm -rf ${DATA}/nco-4.8.1 ${DATA}/nco-4.8.1* # Cleanup last build
/bin/rm -r -f \
${rpm_root}/nco-4.8.0-?.src.rpm \
${rpm_root}/nco-4.8.0.spec \
${rpm_root}/nco-4.8.0.tar.gz \
${rpm_root}/*/nco-4.8.0-?.*.rpm \
${rpm_root}/*/nco-debuginfo-4.8.0-?.*.rpm \
${rpm_root}/*/nco-devel-4.8.0-?.*.rpm
# cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4.8.0-1 -d nco-4.8.0 nco # Export based on tag
cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -dnco-4.8.0 nco # Export most recent and build as 4.8.0-1
tar cvzf ./nco-4.8.0.tar.gz --exclude='nco-4.8.0/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.8.0
/bin/cp ${DATA}/nco-4.8.0.tar.gz ${rpm_root}
${rpm_root}/nco-4.8.1-?.src.rpm \
${rpm_root}/nco-4.8.1.spec \
${rpm_root}/nco-4.8.1.tar.gz \
${rpm_root}/*/nco-4.8.1-?.*.rpm \
${rpm_root}/*/nco-debuginfo-4.8.1-?.*.rpm \
${rpm_root}/*/nco-devel-4.8.1-?.*.rpm
# cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4.8.1-1 -d nco-4.8.1 nco # Export based on tag
cd ${DATA};cvs -d zender@nco.cvs.sf.net:/cvsroot/nco export -kkv -D "1 second ago" -dnco-4.8.1 nco # Export most recent and build as 4.8.1-1
tar cvzf ./nco-4.8.1.tar.gz --exclude='nco-4.8.1/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.8.1
/bin/cp ${DATA}/nco-4.8.1.tar.gz ${rpm_root}
ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/nco.spec
cd ${rpm_root}
rpmbuild -ba --sign nco.spec > ~/foo.nco 2>&1
rpmlint ${rpm_root}/*/nco-4.8.0-?.*.rpm
rpmlint ${rpm_root}/*/nco-4.8.1-?.*.rpm
sudo yum remove nco
sudo yum install ${rpm_root}/*/nco-4.8.0-?.*.rpm
sudo yum install ${rpm_root}/*/nco-4.8.1-?.*.rpm
scp \
${rpm_root}/*/nco-4.8.0-?.*.rpm \
${rpm_root}/*/nco-debuginfo-4.8.0-?.*.rpm \
${rpm_root}/*/nco-devel-4.8.0-?.*.rpm \
${rpm_root}/nco-4.8.0-?.*.src.rpm \
${rpm_root}/*/nco-4.8.1-?.*.rpm \
${rpm_root}/*/nco-debuginfo-4.8.1-?.*.rpm \
${rpm_root}/*/nco-devel-4.8.1-?.*.rpm \
${rpm_root}/nco-4.8.1-?.*.src.rpm \
dust.ess.uci.edu:/var/www/html/nco/src
scp \
${rpm_root}/*/nco-4.8.0-?.*.rpm \
${rpm_root}/*/nco-debuginfo-4.8.0-?.*.rpm \
${rpm_root}/*/nco-devel-4.8.0-?.*.rpm \
${rpm_root}/nco-4.8.0-?.*.src.rpm \
${rpm_root}/*/nco-4.8.1-?.*.rpm \
${rpm_root}/*/nco-debuginfo-4.8.1-?.*.rpm \
${rpm_root}/*/nco-devel-4.8.1-?.*.rpm \
${rpm_root}/nco-4.8.1-?.*.src.rpm \
zender,nco@web.sf.net:/home/project-web/nco/htdocs/src