[emos] 02/02: emoslib_000392+dfsg.1-3.debian.tar.xz
Alastair McKinstry
mckinstry at moszumanska.debian.org
Mon Jun 15 08:56:22 UTC 2015
This is an automated email from the git hooks/post-receive script.
mckinstry pushed a commit to tag debian__000392+dfsg.1-3
in repository emos.
commit 119104f178ba07707a8acd5f5ecb67ddc53c4213
Author: Alastair McKinstry <mckinstry at debian.org>
Date: Thu May 7 12:28:06 2015 +0100
emoslib_000392+dfsg.1-3.debian.tar.xz
---
debian/build-shlib | 23 +++
debian/changelog | 150 ++++++++++++++++
debian/compat | 1 +
debian/control | 47 +++++
debian/copyright | 48 ++++++
debian/libemos-data.dirs | 1 +
debian/libemos-data.install | 1 +
debian/libemos-dev.dirs | 3 +
debian/libemos-dev.docs | 1 +
debian/libemos-dev.examples | 5 +
debian/libemos-dev.install | 5 +
debian/libemos0d.dirs | 1 +
debian/libemos0d.install | 1 +
debian/libemos0d.shlibs | 2 +
debian/patches/bufrnum.patch | 158 +++++++++++++++++
debian/patches/config.patch | 145 ++++++++++++++++
debian/patches/emosnum.patch | 133 ++++++++++++++
debian/patches/huge.patch | 35 ++++
debian/patches/little_endian.patch | 277 ++++++++++++++++++++++++++++++
debian/patches/pkgconfig.patch | 75 ++++++++
debian/patches/remove_sharedlib_dbg.patch | 31 ++++
debian/patches/series | 10 ++
debian/patches/shared.patch | 31 ++++
debian/patches/underscore_names.patch | 16 ++
debian/patches/wvqlid2.patch | 18 ++
debian/rules | 49 ++++++
debian/source/format | 1 +
debian/source/options | 1 +
28 files changed, 1269 insertions(+)
diff --git a/debian/build-shlib b/debian/build-shlib
new file mode 100644
index 0000000..527d477
--- /dev/null
+++ b/debian/build-shlib
@@ -0,0 +1,23 @@
+# Makefile to build the shared library.
+# Assumes R64 is passed on cmdline
+# This should be merged into upstream.
+
+SONAME=libemos$(R64).so.0d
+# SHLIBFLAGS= -Wl,-O1 -Wl,--version-script,emos.1.0.0.ver -Wl,-soname,$(SONAME)
+SHLIBFLAGS= -Wl,-O1 -Wl,-soname,$(SONAME)
+LIBS= -lgrib_api -lgfortran -lm
+
+# Hardening. -fPIE not working.
+# LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
+LDFLAGS:=-Wl,-z,relro -Wl,-z,now
+
+ALL_OBJS=bufrdc/*.o crexdc/*.o fft/*.o gribex/*.o interpolation/*.o pbio/*.o grib_api_merging/*.o
+DUP_OBJS:=interpolation/fft99.o interpolation/qpassm.o interpolation/set99.o interpolation/rpassm.o
+OBJS=$(filter-out $(DUP_OBJS), $(wildcard $(ALL_OBJS)))
+
+
+# Compile into the shlib all but certain duplicated object files
+build:
+ $(CC) -shared -o debian/$(SONAME) $(LDFLAGS) $(SHLIBFLAGS) $(OBJS) -Wl,--as-needed $(LIBS)
+
+.PHONY: clean build
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..e0e927e
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,150 @@
+emoslib (000392+dfsg.1-3) unstable; urgency=medium
+
+ * Acknowledge previously fixed bug (new version): Closes: #622860.
+ * Delete link to non-existent config.h file. Closes: #742684.
+ * Compress with xz.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Sun, 14 Sep 2014 07:01:40 +0100
+
+emoslib (000392+dfsg.1-2) unstable; urgency=medium
+
+ * Standards-Version: 3.9.5
+ * Include grib_api_merging/* into libemos* for MetView.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Thu, 12 Dec 2013 19:32:19 +0000
+
+emoslib (000392+dfsg.1-1) unstable; urgency=low
+
+ * New upstream release. Now with Apache 2.0 license, not GPL.
+ * Standards-Version: 3.9.4; no changes required.
+ * debhelper depends >=9 now.
+ * Make -dev pkg multiarch: same, -data is m-a: foreign. Closes: #693599.
+ * Enable hardening in shared library; build all objects fortified.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Fri, 05 Apr 2013 05:25:57 +0100
+
+emoslib (000382+dfsg-2) unstable; urgency=low
+
+ * Don't hardcode quadmath; it breaks on some archs. Instead let it be
+ pulled in by -lgfortran.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Sun, 11 Dec 2011 14:33:21 +0000
+
+emoslib (000382+dfsg-1) unstable; urgency=low
+
+ * New upstream release.
+ * Nove from cdbs to debhelper 9
+ * Move to Multi-Arch.
+ * Standards-Version: 3.9.2
+ * Now build-depend on grib-api-1.9.9.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Fri, 09 Dec 2011 16:18:04 +0000
+
+emoslib (000380+dfsg-3) unstable; urgency=low
+
+ * Fix for FTBFS on powerpc due to hard-coded max value.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Tue, 30 Mar 2010 10:21:14 +0100
+
+emoslib (000380+dfsg-2) unstable; urgency=low
+
+ * Move to Standards-Version: 3.8.4; no changes required.
+ * Disable new function WVQLID2 in interpolation/ ; it requires an
+ external function that is not present, and causes the sharedlib
+ not to link. Closes: #571396.
+ * Add DEP-3 tags to patches.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Fri, 26 Feb 2010 13:59:04 +0000
+
+emoslib (000380+dfsg-1) unstable; urgency=low
+
+ * New upstream release.
+ * remove_sharedllib_dbg patch now needed. Added file sharedlib.c to
+ interpolation/sources.linux
+
+ -- Alastair McKinstry <mckinstry at debian.org> Thu, 21 Jan 2010 13:57:20 +0000
+
+emoslib (000371+dfsg-3) unstable; urgency=low
+
+ * Remove quilt rule, which conflicts with source format 3. Closes: #561382.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Thu, 17 Dec 2009 21:31:05 +0000
+
+emoslib (000371+dfsg-2) unstable; urgency=low
+
+ * Fix broken patch that lead to non-shared code. Closes: #559944.
+ * Source format 3.0
+
+ -- Alastair McKinstry <mckinstry at debian.org> Tue, 08 Dec 2009 13:38:29 +0000
+
+emoslib (000371+dfsg-1) unstable; urgency=low
+
+ * New upstream release: EMOS_00371
+ * Move to standards: 3.8.3
+ * Patch largefile.patch needed for new sharedlib.c bug in 000371.
+ * Add underscore_names patch to add file to sources.linux in interpolation/
+
+ -- Alastair McKinstry <mckinstry at debian.org> Mon, 07 Dec 2009 20:26:14 +0000
+
+emoslib (000370.dfsg.2-1) unstable; urgency=low
+
+ * Updated version emos_000370 contains the following fixes:
+ Latest Emos library 000370 is updated on 7.9.2009 due to changes of N320 Reduced Gaussian Grid definition.
+
+ Beside of N320 there are two more changes:
+ * insane.F : set env variable INCREMENT_NO_LIMIT=1 to avoid check of limit for increment size
+ * wavexxx.F: Bug Fix for calculation of latitudes
+ *
+
+ -- Alastair McKinstry <mckinstry at debian.org> Mon, 14 Sep 2009 15:36:35 +0100
+
+emoslib (000370+dfsg-6) unstable; urgency=low
+
+ * Move to Standards-Version: 3.8.2. No changes required.
+ * DH_COMPAT=7 now. ditto.
+ * Prep. for building with source format 3.0 Closes: #538678.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Tue, 04 Aug 2009 16:30:25 +0100
+
+emoslib (000370+dfsg-5) unstable; urgency=low
+
+ * Add Build-Depends: automake. Text with pbuilder. Closes: #529993.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Fri, 22 May 2009 21:39:32 +0100
+
+emoslib (000370+dfsg-4) unstable; urgency=low
+
+ * Change -fpic to -fPIC to fix breakage on sparc and other arches.
+ * Add little_endian.patch : use configure to detect endianness during build.
+ As a side-effect it adds GNU targets such as ChangeLog: I've added some
+ content from the ECMWF website.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Thu, 21 May 2009 20:31:30 +0100
+
+emoslib (000370+dfsg-3) unstable; urgency=low
+
+ * Remove -m32 compiler flag which causes build failures on most architectures.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Wed, 20 May 2009 22:16:53 +0100
+
+emoslib (000370+dfsg-2) unstable; urgency=low
+
+ * Add dependency on gfortran.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Tue, 19 May 2009 12:12:06 +0100
+
+emoslib (000370+dfsg-1) unstable; urgency=low
+
+ * New upstream release. Closes: #522755.
+ * Remove pdf documentation for dfsg release.
+ * Rename (unreleased) package names libemos0d to reflect its a debian-only
+ shared-library at the moment
+ (see http://lists.debian.org/debian-devel/2009/03/msg01019.html)
+
+ -- Alastair McKinstry <mckinstry at debian.org> Sat, 16 May 2009 23:32:19 +0100
+
+emoslib (000360-1) unstable; urgency=low
+
+ * Initial Debian release.
+
+ -- Alastair McKinstry <mckinstry at debian.org> Thu, 9 Apr 2009 16:15:52 +0100
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..b90db40
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,47 @@
+Source: emoslib
+Section: utils
+Priority: optional
+Maintainer: Alastair McKinstry <mckinstry at debian.org>
+Build-Depends: debhelper (>=9), dh-autoreconf (>= 4), gfortran, autoconf, automake, libgrib-api-dev (>= 1.9.9~)
+Standards-Version: 3.9.5
+Homepage: http://www.ecmwf.int/products/data/software/interpolation.html
+
+Package: libemos0d
+Section: libs
+Architecture: any
+Multi-Arch: same
+Depends: ${misc:Depends}, ${shlibs:Depends}, libemos-data
+Pre-Depends: ${misc:Pre-Depends}
+Description: ECMWF Interpolation Library
+ The Interpolation library (EMOSLIB) includes Interpolation software and GRIB,
+ BUFR, CREX encoding/decoding routines. It is used by the ECMWF meteorological
+ archival and retrieval system (MARS) and also by the ECMWF graphics
+ package MetView.
+
+Package: libemos-dev
+Section: libdevel
+Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: libemos0d ( = ${binary:Version}), ${misc:Depends}
+Recommends: pkg-config
+Description: ECMWF Interpolation Library - development
+ The Interpolation library (EMOSLIB) includes Interpolation software and GRIB,
+ BUFR, CREX encoding/decoding routines. It is used by the ECMWF meteorological
+ archival and retrieval system (MARS) and also by the ECMWF graphics
+ package MetView.
+ .
+ This package contains the static libraries and headers needed to build
+ applications against libemos.
+
+Package: libemos-data
+Architecture: any
+Depends: ${misc:Depends}
+Multi-Arch: foreign
+Description: Data files for the ECMWF Interpolation library
+ The Interpolation library (EMOSLIB) includes Interpolation software and GRIB,
+ BUFR, CREX encoding/decoding routines. It is used by the ECMWF meteorological
+ archival and retrieval system (MARS) and also by the ECMWF graphics
+ package MetView.
+ .
+ This package contains the data files needed by EMOSLIB.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..1b6f1ce
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,48 @@
+This package was debianized by Alastair McKinstry <mckinstry at debian.org>, on
+Mon, 6 Apr 2009 16:22:04 +0100. It was downloaded from
+http://www.ecmwf.int/products/data/software/interpolation.html
+
+Upstream authors: ECMWF
+
+Copyright © 1981-2013 European Centre for Medium-Range Weather Forecasts.
+
+Licensed under the Apache License 2.0.
+The texts of the license can be found in /usr/share/common-licenses/Apache-2.0
+
+The Debian packaging is Copyright © 2009, Alastair McKinstry <mckinstry at debian.org>,
+is licensed under the terms of the GNU GPL version 3.
+
+
+This product mainly includes software developed by the
+
+ Data and Services Section
+
+ and
+
+ Meteorological Visualisation Section
+
+at the
+
+ "European Centre for Medium-Range Weather Forecasts"
+ (ECMWF - http://www.ecmwf.int ).
+
+
+We would like to acknoledge the following contributions to Emoslib:
+
+- Files written by NCAR, the National Center for Atmospheric Research.
+ bt_ibm_bal.bal
+ btibm.special
+
+- File kwprs1.F makes use of the
+ WMO Manual on Codes re GRIB Code.
+ http://www.nco.ncep.noaa.gov/pmb/docs/on388/appendixc.html.
+
+- File c2gene.F
+ Algorithm used to determine groups is derived from Harry R. Glahn
+ (U.S. Met Service), from a working paper submitted to WMO SGDRC
+ in 1995.
+
+- File calcop.F
+ Located in the materials contains the following citation:
+ Seber, G.A.F. (1979). Linear Regression Analyses.
+ John Wiley and Sons
diff --git a/debian/libemos-data.dirs b/debian/libemos-data.dirs
new file mode 100644
index 0000000..2b13577
--- /dev/null
+++ b/debian/libemos-data.dirs
@@ -0,0 +1 @@
+/usr/share/emos
diff --git a/debian/libemos-data.install b/debian/libemos-data.install
new file mode 100644
index 0000000..323e005
--- /dev/null
+++ b/debian/libemos-data.install
@@ -0,0 +1 @@
+usr/share/emos/*
diff --git a/debian/libemos-dev.dirs b/debian/libemos-dev.dirs
new file mode 100644
index 0000000..2d2fd1d
--- /dev/null
+++ b/debian/libemos-dev.dirs
@@ -0,0 +1,3 @@
+usr/include/pbio
+usr/include/interpolation
+usr/lib/
diff --git a/debian/libemos-dev.docs b/debian/libemos-dev.docs
new file mode 100644
index 0000000..a7328c9
--- /dev/null
+++ b/debian/libemos-dev.docs
@@ -0,0 +1 @@
+docs/*.pdf
diff --git a/debian/libemos-dev.examples b/debian/libemos-dev.examples
new file mode 100644
index 0000000..ec976f5
--- /dev/null
+++ b/debian/libemos-dev.examples
@@ -0,0 +1,5 @@
+examples/bufr
+examples/crex
+examples/fft
+examples/gribex
+examples/interpolation
diff --git a/debian/libemos-dev.install b/debian/libemos-dev.install
new file mode 100644
index 0000000..db474ba
--- /dev/null
+++ b/debian/libemos-dev.install
@@ -0,0 +1,5 @@
+pbio/*.h usr/include/pbio
+gribex/*.h usr/include/gribex
+interpolation/*.h usr/include/interpolation
+usr/lib/*/*.a
+usr/lib/*/pkgconfig
diff --git a/debian/libemos0d.dirs b/debian/libemos0d.dirs
new file mode 100644
index 0000000..2964de6
--- /dev/null
+++ b/debian/libemos0d.dirs
@@ -0,0 +1 @@
+usr/lib/
diff --git a/debian/libemos0d.install b/debian/libemos0d.install
new file mode 100644
index 0000000..2c229ea
--- /dev/null
+++ b/debian/libemos0d.install
@@ -0,0 +1 @@
+usr/lib/*/*.0d
diff --git a/debian/libemos0d.shlibs b/debian/libemos0d.shlibs
new file mode 100644
index 0000000..67d3b40
--- /dev/null
+++ b/debian/libemos0d.shlibs
@@ -0,0 +1,2 @@
+libemos 0d libemos0d
+libemosR64 0d libemos0d
diff --git a/debian/patches/bufrnum.patch b/debian/patches/bufrnum.patch
new file mode 100644
index 0000000..4923354
--- /dev/null
+++ b/debian/patches/bufrnum.patch
@@ -0,0 +1,158 @@
+Description: Add BUFRNUM() function to bufrdc/ code. According to docs, each interface supplies
+ A function to describe its version number, but bufrnum was not present.
+Author: Alastair McKinstry <mckinstry at debian.org>
+Forwarded: no
+Last-Updated: 2009-04-17
+
+# From gribex/emoscyc.F, it appears that each interface has its own _CYCLE number,
+# emoscyc.F used BUFRNUM, but it was never defined; I've defined it here
+# matching gribnum, intpnum, etc.
+# -- AMCK, 2009-04-16
+diff -Nur -x '*.orig' -x '*~' emos/bufrdc/bufrnum.F emos.new/bufrdc/bufrnum.F
+--- emos/bufrdc/bufrnum.F 1970-01-01 01:00:00.000000000 +0100
++++ emos.new/bufrdc/bufrnum.F 2009-04-17 21:40:59.000000000 +0100
+@@ -0,0 +1,122 @@
++C
++C
++C Licensed under the GNU Lesser General Public License which
++C incorporates the terms and conditions of version 3 of the GNU
++C General Public License.
++C See LICENSE and gpl-3.0.txt for details.
++C
++
++ INTEGER FUNCTION BUFRNUM(KONOFF)
++C
++C---->
++C**** BUFRNUM
++C
++C Purpose
++C -------
++C
++C Returns current BUFR_CYCLE version number.
++C
++C
++C Interface
++C ---------
++C
++C INUM = BUFRNUM(KONOFF)
++C
++C Input
++C -----
++C
++C KONOFF - switch for displayed message
++C = 0 if display is required on the first call
++C = non-zero if display is not required
++C
++C
++C Output
++C ------
++C
++C Returns a 6-digit version number, aaabbc, where:
++C aaa = 3-digit major number
++C bb = 2-digit minor number
++C c = 1-digit spare number (normally 0)
++C
++C
++C Method
++C ------
++C
++C Reads a 6-digit version number from the environment variable
++C BUFR_CYCLE. If this does not give a 6-digit number, an internal
++C hard-coded default value is used.
++C
++C On the first call, the function (optionally) displays a message:
++C
++C **************************************
++C * BUFR_CYCLE version number = aaabbc *
++C **************************************
++C
++C
++C Externals
++C ---------
++C
++C None.
++C
++C
++C Author
++C ------
++C
++C A.McKinstry ICHEC Apr 2009
++C
++C
++C----<
++C ------------------------------------------------------------------
++C* Section 0. Variables.
++C ------------------------------------------------------------------
++C
++C
++ IMPLICIT NONE
++C
++#include "grprs.h"
++C
++C Function arguments
++C
++ INTEGER KONOFF
++C
++C Local variables
++C
++ INTEGER INUMBER, ICOUNT, IOFFSET
++ SAVE INUMBER, ICOUNT
++ CHARACTER*38 CMESS
++ CHARACTER*20 YNUMBER
++C
++ DATA INUMBER/000010/, ICOUNT/0/
++ DATA CMESS/'* BUFR_CYCLE version number = ****** *'/
++C
++C ------------------------------------------------------------------
++C* Section 1. Initialise
++C ------------------------------------------------------------------
++C
++ 100 CONTINUE
++C
++ IF( ICOUNT.EQ.0 ) THEN
++C
++C See if the environment variable has an override value
++C
++ CALL GETENV( 'BUFR_CYCLE', YNUMBER)
++ IOFFSET = INDEX( YNUMBER, ' ')
++ IF( IOFFSET.EQ.7 ) THEN
++ READ(YNUMBER,'(I6.6)') INUMBER
++ ENDIF
++C
++C First time through, display the message if required
++C
++ IF( KONOFF.EQ.0 ) THEN
++ WRITE(CMESS(31:36),'(I6.6)') INUMBER
++ WRITE(GRPRSM,*) '**************************************'
++ WRITE(GRPRSM,*) CMESS
++ WRITE(GRPRSM,*) '**************************************'
++ ENDIF
++ ICOUNT = 1
++ ENDIF
++C
++ BUFRNUM = INUMBER
++C
++ RETURN
++ END
+diff -Nur -x '*.orig' -x '*~' emos/bufrdc/grprs.h emos.new/bufrdc/grprs.h
+--- emos/bufrdc/grprs.h 1970-01-01 01:00:00.000000000 +0100
++++ emos.new/bufrdc/grprs.h 2009-04-17 21:41:47.000000000 +0100
+@@ -0,0 +1,7 @@
++C
++C Common blocks holding default or user supplied values for printing.
++C
++ LOGICAL GRPRSET
++ INTEGER GRPRSM
++C
++ COMMON /GRPRSCM/ GRPRSM, GRPRSET
+diff -Nur -x '*.orig' -x '*~' emos/bufrdc/sources emos.new/bufrdc/sources
+--- emos/bufrdc/sources 2008-07-23 11:41:34.000000000 +0100
++++ emos.new/bufrdc/sources 2009-04-17 21:41:33.000000000 +0100
+@@ -3,6 +3,7 @@
+ #
+
+ SOURCES.F = \
++ bufrnum.F \
+ bbuprs0.F \
+ bbuprs1.F \
+ bbuprs2.F \
diff --git a/debian/patches/config.patch b/debian/patches/config.patch
new file mode 100644
index 0000000..8bff598
--- /dev/null
+++ b/debian/patches/config.patch
@@ -0,0 +1,145 @@
+Description: Create config variants used by Debian package.
+Author: Alastair McKinstry <mckinstry at debian.org>
+Forwarded: no
+Last-Updated: 2013-04-03
+
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000371+dfsg/configure.ac 2009-12-08 12:05:24.000000000 +0000
+@@ -0,0 +1,11 @@
++dnl Process this file with autoconf to produce a configure script.
++
++AC_INIT(configure.ac)
++AM_INIT_AUTOMAKE(emoslib, 000392)
++AM_CONFIG_HEADER(config.h)
++
++AC_CONFIG_FILES([Makefile pkgconfig/Makefile pkgconfig/emos.pc pkgconfig/emosR64.pc fft/Makefile])
++
++AC_C_BIGENDIAN
++
++AC_OUTPUT
+Index: emoslib-000392+dfsg/config/config.linux_gfortranA64
+===================================================================
+--- emoslib-000392+dfsg.orig/config/config.linux_gfortranA64 2011-12-09 13:28:47.000000000 +0000
++++ emoslib-000392+dfsg/config/config.linux_gfortranA64 2011-12-09 13:28:52.000000000 +0000
+@@ -17,7 +17,7 @@
+ FASTCFLAGS = $(CFLAGS)
+ #
+ FC = gfortran
+-FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -Dgfortran -DLITTLE_ENDIAN -DINTEGER_IS_INT
++FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -Dgfortran -DLITTLE_ENDIAN -DINTEGER_IS_INT -DTABLE_PATH=\"/usr/share/emos\" -D_FORTIFY_SOURCE=2
+ VECTFFLAGS = $(FFLAGS)
+ # |
+ # v
+Index: emoslib-000392+dfsg/config/config.linux_gfortran+picR64
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000392+dfsg/config/config.linux_gfortran+picR64 2011-12-09 13:38:53.000000000 +0000
+@@ -0,0 +1,26 @@
++#
++# Configuration file for linux (32-bit reals).
++#
++AR = ar
++ARFLAGS = rv
++#
++PROFILE=
++DEBUG = -O2
++USE_NO_POINTERS =
++LARGE_FILE = -Dlinux -DFOPEN64 -D_GNU_SOURCE
++CC_A32 =
++#
++#
++CC = gcc
++CFLAGS = $(DEBUG) $(PROFILE) -DREAL_8 $(CC_A32) $(LOCAL_CFLAGS) $(LARGE_FILE) -DTABLE_PATH=\"/usr/share/emos\" -fPIC -D_FORTIFY_SOURCE=2
++FASTCFLAGS = $(CFLAGS)
++#
++FC = gfortran
++FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fdefault-real-8 -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -DREAL_8 -DREAL_BIGGER_THAN_INTEGER -DTABLE_PATH=\"/usr/share/emos\" -fPIC -D_FORTIFY_SOURCE=2
++VECTFFLAGS = $(FFLAGS)
++# |
++# v
++# 32-bit reals
++#
++RANLIB = /usr/bin/ranlib
++
+Index: emoslib-000392+dfsg/config/config.linux_gfortran+pic
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000392+dfsg/config/config.linux_gfortran+pic 2011-12-09 13:37:43.000000000 +0000
+@@ -0,0 +1,27 @@
++#
++# Configuration file for linux (32-bit reals).
++#
++AR = ar
++ARFLAGS = rv
++#
++PROFILE=
++DEBUG = -O2
++CC_A32 =
++USE_NO_POINTERS =
++LARGE_FILE = -Dlinux -DFOPEN64 -D_GNU_SOURCE
++#
++#
++#
++CC = gcc
++CFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) $(LOCAL_CFLAGS) $(LARGE_FILE) -DTABLE_PATH=\"/usr/share/emos\" -fPIC -D_FORTIFY_SOURCE=2
++FASTCFLAGS = $(CFLAGS)
++#
++FC = gfortran
++FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -Dgfortran -DTABLE_PATH=\"/usr/share/emos\" -fPIC -D_FORTIFY_SOURCE=2
++VECTFFLAGS = $(FFLAGS)
++# |
++# v
++# 32-bit reals
++#
++RANLIB = /usr/bin/ranlib
++
+Index: emoslib-000392+dfsg/config/config.linux_gfortranR64
+===================================================================
+--- emoslib-000392+dfsg.orig/config/config.linux_gfortranR64 2011-12-09 13:28:47.000000000 +0000
++++ emoslib-000392+dfsg/config/config.linux_gfortranR64 2011-12-09 13:38:28.000000000 +0000
+@@ -7,17 +7,17 @@
+ PROFILE=
+ DEBUG = -O2
+ USE_NO_POINTERS =
+-LARGE_FILE = -Dlinux -DFOPEN64 -D_LARGEFILE64_SOURCE
++LARGE_FILE = -Dlinux -DFOPEN64 -D_LARGEFILE64_SOURCE -D_GNU_SOURCE
+ #CC_A32 = -m32
+ CC_A32 =
+ #
+ #
+ CC = gcc
+-CFLAGS = $(DEBUG) $(PROFILE) -DREAL_8 -DLITTLE_ENDIAN $(CC_A32) $(LOCAL_CFLAGS) $(LARGE_FILE)
++CFLAGS = $(DEBUG) $(PROFILE) -DREAL_8 $(CC_A32) $(LOCAL_CFLAGS) $(LARGE_FILE) -D_FORTIFY_SOURCE=2
+ FASTCFLAGS = $(CFLAGS)
+ #
+ FC = gfortran
+-FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fdefault-real-8 -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -DREAL_8 -DREAL_BIGGER_THAN_INTEGER -Dgfortran -DLITTLE_ENDIAN
++FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fdefault-real-8 -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -DREAL_8 -DREAL_BIGGER_THAN_INTEGER -DTABLE_PATH=\"/usr/share/emos\" -D_FORTIFY_SOURCE=2
+ VECTFFLAGS = $(FFLAGS)
+ # |
+ # v
+Index: emoslib-000392+dfsg/config/config.linux_gfortran
+===================================================================
+--- emoslib-000392+dfsg.orig/config/config.linux_gfortran 2011-12-09 13:28:47.000000000 +0000
++++ emoslib-000392+dfsg/config/config.linux_gfortran 2011-12-09 13:38:06.000000000 +0000
+@@ -9,16 +9,16 @@
+ #CC_A32 = -m32
+ CC_A32 =
+ USE_NO_POINTERS =
+-LARGE_FILE = -Dlinux -DFOPEN64 -D_LARGEFILE64_SOURCE
++LARGE_FILE = -Dlinux -DFOPEN64 -D_LARGEFILE64_SOURCE -D_GNU_SOURCE
+ #
+ #
+ #
+ CC = gcc
+-CFLAGS = $(DEBUG) $(PROFILE) -DLITTLE_ENDIAN $(CC_A32) $(LOCAL_CFLAGS) $(LARGE_FILE)
++CFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) $(LOCAL_CFLAGS) $(LARGE_FILE) -D_FORTIFY_SOURCE=2
+ FASTCFLAGS = $(CFLAGS)
+ #
+ FC = gfortran
+-FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -Dgfortran -DLITTLE_ENDIAN
++FFLAGS = $(DEBUG) $(PROFILE) $(CC_A32) -fcray-pointer -fno-second-underscore -Dlinux $(USE_NO_POINTERS) -Dgfortran -DTABLE_PATH=\"/usr/share/emos\" -D_FORTIFY_SOURCE=2
+ VECTFFLAGS = $(FFLAGS)
+ # |
+ # v
diff --git a/debian/patches/emosnum.patch b/debian/patches/emosnum.patch
new file mode 100644
index 0000000..e5aaa72
--- /dev/null
+++ b/debian/patches/emosnum.patch
@@ -0,0 +1,133 @@
+Author: Alastair McKinstry <mckinstry at debian.org>
+Description: An emosnum function is required for the shared library to work.
+ Referred to elsewhere in the code
+Last-Updated: 2011-09-13
+Forwarded: no
+
+Index: emoslib-000382+dfsg/gribex/emosnum.F
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000382+dfsg/gribex/emosnum.F 2011-09-13 16:28:41.000000000 +0100
+@@ -0,0 +1,122 @@
++C Copyright 1981-2007 ECMWF
++C
++C Licensed under the GNU Lesser General Public License which
++C incorporates the terms and conditions of version 3 of the GNU
++C General Public License.
++C See LICENSE and gpl-3.0.txt for details.
++C
++
++ INTEGER FUNCTION EMOSNUM(KONOFF)
++C
++C---->
++C**** EMOSNUM
++C
++C Purpose
++C -------
++C
++C Returns current EMOSLIB version number.
++C
++C
++C Interface
++C ---------
++C
++C INUM = EMOSNUM(KONOFF)
++C
++C Input
++C -----
++C
++C KONOFF - switch for displayed message
++C = 0 if display is required on the first call
++C = non-zero if display is not required
++C
++C
++C Output
++C ------
++C
++C Returns a 6-digit version number, aaabbc, where:
++C aaa = 3-digit major number
++C bb = 2-digit minor number
++C c = 1-digit spare number (normally 0)
++C
++C
++C Method
++C ------
++C
++C Reads a 6-digit version number from the environment variable
++C EMOS_CYCLE. If this does not give a 6-digit number, an internal
++C hard-coded default value is used.
++C
++C On the first call, the function (optionally) displays a message:
++C
++C ***********************************
++C * EMOSLIB version number = aaabbc *
++C ***********************************
++C
++C
++C Externals
++C ---------
++C
++C None.
++C
++C
++C Author
++C ------
++C
++C J.D.Chambers ECMWF May 1998
++C
++C
++C----<
++C ------------------------------------------------------------------
++C* Section 0. Variables.
++C ------------------------------------------------------------------
++C
++C
++ IMPLICIT NONE
++C
++#include "grprs.h"
++C
++C Function arguments
++C
++ INTEGER KONOFF
++C
++C Local variables
++C
++ INTEGER INUMBER, ICOUNT, IOFFSET
++ SAVE INUMBER, ICOUNT
++ CHARACTER*35 CMESS
++ CHARACTER*20 YNUMBER
++C
++ DATA INUMBER/000382/, ICOUNT/0/
++ DATA CMESS/'* EMOSLIB version number = ****** *'/
++C
++C ------------------------------------------------------------------
++C* Section 1. Initialise
++C ------------------------------------------------------------------
++C
++ 100 CONTINUE
++C
++ IF( ICOUNT.EQ.0 ) THEN
++C
++C See if the environment variable has an override value
++C
++ CALL GETENV( 'EMOS_CYCLE', YNUMBER)
++ IOFFSET = INDEX( YNUMBER, ' ')
++ IF( IOFFSET.EQ.7 ) THEN
++ READ(YNUMBER,'(I6.6)') INUMBER
++ ENDIF
++C
++C First time through, display the message if required
++C
++ IF( KONOFF.EQ.0 ) THEN
++ WRITE(CMESS(28:33),'(I6.6)') INUMBER
++ WRITE(GRPRSM,*) '***********************************'
++ WRITE(GRPRSM,*) CMESS
++ WRITE(GRPRSM,*) '***********************************'
++ ENDIF
++ ICOUNT = 1
++ ENDIF
++C
++ EMOSNUM = INUMBER
++C
++ RETURN
++ END
diff --git a/debian/patches/huge.patch b/debian/patches/huge.patch
new file mode 100644
index 0000000..946f82d
--- /dev/null
+++ b/debian/patches/huge.patch
@@ -0,0 +1,35 @@
+Description: Use HUGE() rather than hard-code, to avoid FTBFS on powerpc gfortran
+Author: Alastair McKinstry <mckinstry at debian.org>
+Forwarded: no
+Last-Updated: 2010-03-10
+
+Index: emos.git/bufrdc/buens4.F
+===================================================================
+--- emos.git.orig/bufrdc/buens4.F 2010-02-24 10:52:48.000000000 +0000
++++ emos.git/bufrdc/buens4.F 2011-12-09 12:35:25.000000000 +0000
+@@ -138,8 +138,8 @@
+ C
+ IF(KERR.GT.0) RETURN
+ C
+- R4=3.4028235e+38
+- R8=1.7976931348623157D+308
++ R4=HUGE(R4)
++ R8=HUGE(R8)
+ C
+ C* 1.1 KEEP POINTERS TO THE BEGINING OF THE SECTION.
+ C ---------------------------------------------
+Index: emos.git/bufrdc/buexs4.F
+===================================================================
+--- emos.git.orig/bufrdc/buexs4.F 2009-11-13 10:30:25.000000000 +0000
++++ emos.git/bufrdc/buexs4.F 2011-12-09 12:35:25.000000000 +0000
+@@ -148,8 +148,8 @@
+ C
+ IF(KERR.GT.0) RETURN
+ C
+- R4=3.4028235e+38
+- R8=1.7976931348623157D+308
++ R4=HUGE(R4)
++ R8=HUGE(R8)
+ C
+ IF(OMULTI) THEN
+ IF(NSUBSET.EQ.1) JCV = 0
diff --git a/debian/patches/little_endian.patch b/debian/patches/little_endian.patch
new file mode 100644
index 0000000..529b27e
--- /dev/null
+++ b/debian/patches/little_endian.patch
@@ -0,0 +1,277 @@
+Description: Use configure to detect endianness rather than setting in config files.
+ Don't use LITTLE_ENDIAN as it is defined in Linux header files (even on non-LITTLE_ENDIAN platforms)
+Author: Alastair McKinstry <mckinstry at debian.org>
+Last-Updated: 2011-12-09
+Forwarded: no
+
+Index: emoslib-000392+dfsg.1/gribex/ecloc1.F
+===================================================================
+--- emoslib-000392+dfsg.1.orig/gribex/ecloc1.F 2013-04-04 17:14:58.000000000 +0100
++++ emoslib-000392+dfsg.1/gribex/ecloc1.F 2013-04-04 17:14:58.000000000 +0100
+@@ -69,7 +69,7 @@
+ C DSGNBT - decode sign bit
+ C ELDEFS - encode ECMWF section 1, local usage definitions
+ C DLDEFS - decode ECMWF section 1, local usage definitions
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ C SWAP4 - swap order of characters in the experiment version
+ #endif
+ C
+Index: emoslib-000392+dfsg.1/gribex/fortranInterface.c
+===================================================================
+--- emoslib-000392+dfsg.1.orig/gribex/fortranInterface.c 2013-04-04 17:14:58.000000000 +0100
++++ emoslib-000392+dfsg.1/gribex/fortranInterface.c 2013-04-04 17:14:58.000000000 +0100
+@@ -9,6 +9,7 @@
+ * nor does it submit to any jurisdiction.
+ */
+
++#include "config.h"
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -180,7 +181,7 @@
+
+ fortint ldefnum(fortint* centre, fortint* subcentre, fortint* number) {
+ int shift = (sizeof(fortint)-1)*8;
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ return ((*centre*1000000) + (*subcentre*1000) + (*number & 0xff));
+ #else
+ return ((*centre*1000000) + (*subcentre*1000) + ((*number>>shift) & 0xff));
+@@ -223,7 +224,7 @@
+ for( loop = 7; loop >= missing; loop-- ) value[loop] = value[loop-missing];
+ for( loop = 0; loop < missing; loop++ ) value[loop] = '0';
+ }
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ p = value[0];
+ value[0] = value[6];
+ value[6] = p;
+Index: emoslib-000392+dfsg.1/gribex/grprs1b.F
+===================================================================
+--- emoslib-000392+dfsg.1.orig/gribex/grprs1b.F 2013-04-04 17:14:58.000000000 +0100
++++ emoslib-000392+dfsg.1/gribex/grprs1b.F 2013-04-04 17:14:58.000000000 +0100
+@@ -88,6 +88,7 @@
+ C
+ IMPLICIT NONE
+ C
++#include "config.h"
+ #include "grprs.h"
+ #include "grbcom.h"
+ C
+@@ -519,7 +520,7 @@
+ WRITE(GRPRSM,1105) KSEC1(44)
+ WRITE(HVERSION, '(A8)' ) KSEC1(45)
+ WRITE(GRPRSM,1106)
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ X HVERSION(8:8),
+ X HVERSION(7:7),
+ X HVERSION(6:6),
+@@ -711,7 +712,7 @@
+ WRITE(GRPRSM,1803) KSEC1(44)
+ WRITE(HVERSION, '(A8)' ) KSEC1(45)
+ WRITE(GRPRSM,1804)
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ X HVERSION(8:8),
+ X HVERSION(7:7),
+ X HVERSION(6:6),
+@@ -728,7 +729,7 @@
+ DO JLOOP = 1, KSEC1(46)
+ WRITE(HVERSION, '(A8)' ) KSEC1(46+JLOOP)
+ WRITE(GRPRSM,1806)
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ X HVERSION(8:8),
+ X HVERSION(7:7),
+ X HVERSION(6:6),
+@@ -789,7 +790,7 @@
+ WRITE(GRPRSM,2115) KSEC1(56)
+ WRITE(GRPRSM,2116) KSEC1(57)
+ WRITE(HVERSION, '(A8)' ) KSEC1(58)
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ WRITE(GRPRSM,2117) HVERSION(5:5)
+ #else
+ WRITE(GRPRSM,2117) HVERSION(8:8)
+Index: emoslib-000392+dfsg.1/gribex/grprs1.F
+===================================================================
+--- emoslib-000392+dfsg.1.orig/gribex/grprs1.F 2013-04-04 17:14:58.000000000 +0100
++++ emoslib-000392+dfsg.1/gribex/grprs1.F 2013-04-04 17:14:58.000000000 +0100
+@@ -168,6 +168,7 @@
+ C
+ IMPLICIT NONE
+ C
++#include "config.h"
+ #include "grprs.h"
+ #include "grbcom.h"
+ C
+@@ -949,7 +950,7 @@
+ WRITE(GRPRSM,2115) KSEC1(56)
+ WRITE(GRPRSM,2116) KSEC1(57)
+ WRITE(HVERSION, '(A8)' ) KSEC1(58)
+-#ifdef LITTLE_ENDIAN
++#if !defined(WORDS_BIGENDIAN)
+ WRITE(GRPRSM,2117) HVERSION(5:5)
+ #else
+ WRITE(GRPRSM,2117) HVERSION(8:8)
+Index: emoslib-000392+dfsg.1/Makefile.am
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000392+dfsg.1/Makefile.am 2013-04-04 17:14:58.000000000 +0100
+@@ -0,0 +1,20 @@
++# Makefile for libemos
++#
++R64 = reals
++TARGETS = all clean
++LIBRARY = libemos$(R64).a
++SHELL=/bin/sh
++SUBDIRS = gribex interpolation bufrdc crexdc pbio fft bufrtables
++
++all :
++ @for name in $(SUBDIRS); do\
++ ( echo "*************************"; \
++ echo "*** Make in $$name "; \
++ echo "*************************"; \
++ cd $$name ; make LIB=emos ; ) done
++
++clean :
++ @for name in $(SUBDIRS); do\
++ ( echo "*** Clean in $$name ***" ;cd $$name ; make clean ); \
++ done
++ rm -f $(LIBRARY)
+Index: emoslib-000392+dfsg.1/NEWS
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000392+dfsg.1/NEWS 2013-04-04 17:14:58.000000000 +0100
+@@ -0,0 +1,9 @@
++EMOSLIB
++
++The routines included in the software library EMOSLIB were developed in the Meteorological Application Section at the European Centre for Medium-Range Weather Forecasts, Reading, U.K. They are used for:
++
++ * encoding and decoding BUFR products
++ * encoding and decoding GRIB products
++ * handling pure binary unix files
++ * interpolating fields
++ * handling files of GRIB products in an indexed manner
+Index: emoslib-000392+dfsg.1/ChangeLog
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ emoslib-000392+dfsg.1/ChangeLog 2013-04-04 17:14:58.000000000 +0100
+@@ -0,0 +1,115 @@
++Changes in 000371
++=================
++ Latest Emos library 000370 is updated on 7.9.2009 due to changes of N320 Reduced Gaussian Grid definition.
++
++BUFR routines
++
++ * Check on section 4 size and actual data size. The check will be performed only is variable CHECK_S4=true is set.
++ * For bufr Edition 4 section 3 and 4 can have odd number of bytes
++ * Compression on character string
++ * Fix for bufr creation for multi-subset uncompressed case with different delayed replications in the subsets and if soft return error code -28 was returned from previous subset
++ * IEEE change for big/little endian
++ * bufren.F: Bug fix uncompress multi subset packing
++
++Interpolation software
++
++ * intfb.F: bug fix memory allocation for double interpolation
++ * hsp2gg2.F: new function to determine gaussian number and spectral truncation based on output resolution of rotated lat-lon field. It is done to save computation time for high resolution
++ * sharelib.c, sharedll.c, sharedgg.c: added set of functions to support shared memory handling
++ * krg2rgu.F: increased JPACK = 1500000, JPMAXNG=1280
++ * hsp2gg.F : Match T255 and T213 against N128 instead of N160
++
++Changes in 000370
++=================
++
++BUFR routines
++
++ * bufr_repack_206t205.F: KELEM changed from 2000 to 16000
++ * bufr_split.F added handling of BUFR subtypes 216 and 217
++ * buprt.F - Prints full name of 64 characters and better control of code/flag table printing
++ * buens3.F - Bug fix to reset ksec3(4) flag for compression.
++ * added bustop.F - A new routine used by mbufr_mars_filter.F to force stopping expansion after certain number of elements.
++ * bufr_split.F: Program modified to create maximum 255 files to split 255 possible bufr subtypes.
++
++Gribex routines
++
++ * grchk1.F: added class 17 la LACE ALADIN,18 yt YOTC
++
++Interpolation software
++
++ * igplsm.F: commented check if less then zero because of bitmaped fields
++ * auresol.F : deleted 1023 and added 2047 truncation
++ * intuvxh.F intuvgh.F: NINT instead of INT for calculation of NLON NLAT
++ * iagcntl.F iarcntl.F: added env variable LSM_REAL to allow real values of lsm
++ * intvect.F: reseting OUTLEN for V wind component
++ * kintrg.F: Bug fix for reduced gaussian to reduced gaussian interpolation. Set env varible RG2RG_COMP in order to get compatible result with previous Emos libraries
++ * intout.F: softer criteria for non global fields instead of AND - OR
++
++Changes in 000360
++=================
++
++BUFR routines
++
++ * bufrtools/bufr_split.F: subtype 241 GTS IASI added
++ * A new variable USE_TABLE_C introduced. When set to true bufr software will load code and flag tables. There are subroutines to get the meaning of the code and flag values.
++ * buprt.F has been modified to print code/flag values meaning
++ * New subroutine buget_opera_image.F to handle radar image data up to 10 mega pixels particularly suitable for Opera composite radar images ( rain rates).
++ * Subroutine bufrex.f has been modified to handle delayed repetitions
++ * Missing value indicator rvind=1.7D38 and eps=10D-8 are used in consistent way.
++ * parameter.F modified. JELEM=320000 set
++ * Example decode_bufr_image.F is available in the examples directory.
++ * Bufr tables updated.
++ * Bufr user's Guide updated
++
++Gribex routines
++
++ * getsetValues.c: rename copyName to copyNameLoc due to multiple definition in shared library
++ * gribtemplates: added localDefinitionTemplate_098_000_031
++ * grchk1.F: added stream 1040 Ensemble Forecast Hindcast Statistics (EFHS)
++ * grchk1.F: added stream 1240 Eurosip Monthly Means, 1241 Eurosip Hindcast Monthly Means
++ * dmesec2 emesec2: Bug fix decode/encode Mercator data
++
++Interpolation software
++
++ * intfb.F: bug fix to avoid multiple memory allocation before rg2rgy routine
++ * kintrg.F: parameter number 43 - Soil type to be procesed with nearest neighbour interpolation
++ * hirlsm.F hll2ll hrg2gg: Added completely new checking for nearest neighbour processing
++ * iglsmd.c : added env varibale LSM_10MIN to force processing of lsm with 10min file
++ * hsp2gg.F :Added checking for a automatic truncation T1279 -> N640
++ * w251idx.F wvqlint.F, wvqlidx.F:allow upto 0.1 degree resolution
++ * hirlsm.F : Neaarest Neighbour interpolation modified
++ * hntfaph.F : added check weather to enable lsm processing
++ * oceanp.c: increased JP_GUESS = 519840 to allow for 0.25*0.25 interpolated grid
++ * kintrg.F : set JPMAXNG to 1280 to allow N640
++
++Changes in 000350
++=================
++
++BUFR routines
++
++ * Introduction of 209YYY operator to represent IEEE 32/64 bit floating point numbers.
++ * The software now keeps in memory maximum 10 tables which speeds up parallel processing in some cases.
++ * ctable.F btable.F dtable.F: The unit number used to open file for bufr tables was changed to use any free unit number
++
++Gribex routines
++
++ * calcop.F: packcf.F unpackcf.F : Increased maximum Truncation to be handled to T2047
++ * grchk1.F: added class 16 dt (Data Targeting System)
++ * gribtemplate:
++ added - localDefinitionTemplate_214_098_245
++ updated - localDefinitionTemplate_098_235_015, localDefinitionTemplate_098_235_004, localDefinitionTemplate_098_235_016
++
++Interpolation software
++
++ * islproc.F hirlam.F igtog.F igtogr.F irgtog.F: parameter .43 - Soil type to be procesed with nearest neighbour
++ * intout.F: forsing bilinear interpolation for rotation setting keyword interpolation to "bilinear"
++ * wv2didx.F: Bug fix calculation of indexes along each latitude in iregular lat-lon if it input field is not global, treating separetly cases for global and non globa input field
++ * wv2dint.F: Bug fix generating latitutes for input field
++ * jgetgg.F: added 640 reduced gaussian definition
++ * hgenll.F: NINT instead of INT for calculation of NLON NLAT
++
++PBIO routines
++
++ * pbio.c: Bug fix - setvbuf to be called every time new file is open
++ * jopnggsm.c: Bug fix - calculation of coefficient file size
++ * gbyte_alpha.c: Bug fix for 64 bits packing
diff --git a/debian/patches/pkgconfig.patch b/debian/patches/pkgconfig.patch
new file mode 100644
index 0000000..c76defa
--- /dev/null
+++ b/debian/patches/pkgconfig.patch
@@ -0,0 +1,75 @@
+Description: Create pkg-config files for EMOS libraries
+Author: Alastair McKinstry <mckinstry at debian.org>
+Last-Updated: 2011-12-09
+Forwarded: no
+
+# Add a pkgconfig directory to emoslib, which installs emos.pc and
+# emosR64.pc files.
+# -- Alastair McKinstry, 2009-05-16
+diff -Nur -x '*.orig' -x '*~' emos/install emos.new/install
+--- emos/install 2006-02-24 16:23:32.000000000 +0000
++++ emos.new/install 2009-04-17 21:52:20.000000000 +0100
+@@ -41,6 +41,9 @@
+ done
+
+ cp libemos$R64.a $INSTALL_DIR/.
++
++make -C pkgconfig
++
+ echo
+
+ echo "*******************************************************************"
+diff -Nur -x '*.orig' -x '*~' emos/pkgconfig/emos.pc.in emos.new/pkgconfig/emos.pc.in
+--- emos/pkgconfig/emos.pc.in 1970-01-01 01:00:00.000000000 +0100
++++ emos.new/pkgconfig/emos.pc.in 2009-04-17 14:56:25.000000000 +0100
+@@ -0,0 +1,10 @@
++prefix=@prefix@
++exec_prefix=${prefix}
++libdir=@libdir@
++
++Name: emos
++Description: ECMWF interpolation library
++Version: @VERSION@
++Libs: -L${libdir} -lemos
++Libs.private: -$L{libdir} -lemos -lgfortran -lm
++CFlags: -I${prefix}/include/pbio -I${prefix}/include/interpolation -I${prefix}/include/gribex
+diff -Nur -x '*.orig' -x '*~' emos/pkgconfig/emosR64.pc.in emos.new/pkgconfig/emosR64.pc.in
+--- emos/pkgconfig/emosR64.pc.in 1970-01-01 01:00:00.000000000 +0100
++++ emos.new/pkgconfig/emosR64.pc.in 2009-04-17 14:56:39.000000000 +0100
+@@ -0,0 +1,10 @@
++prefix=@prefix@
++exec_prefix=${prefix}
++libdir=@libdir@
++
++Name: emosR64
++Description: ECMWF interpolation library
++Version: @VERSION@
++Libs: -L${libdir} -lemosR64
++Libs.private: -$L{libdir} -lemosR64 -lgfortran -lm
++CFlags: -I${prefix}/include/pbio -I${prefix}/include/interpolation -I${prefix}/include/gribex
+diff -Nur -x '*.orig' -x '*~' emos/pkgconfig/Makefile.in emos.new/pkgconfig/Makefile.in
+--- emos/pkgconfig/Makefile.in 1970-01-01 01:00:00.000000000 +0100
++++ emos.new/pkgconfig/Makefile.in 2009-04-17 21:53:44.000000000 +0100
+@@ -0,0 +1,22 @@
++#
++# Makefile for libemos/pkgconfig
++#
++#
++#
++INSTALL = @INSTALL@
++INSTALL_DATA= @INSTALL_DATA@
++prefix=@prefix@
++pkgconfigdir=@libdir@/pkgconfig
++
++TARGETS = all clean install
++
++all:
++
++clean:
++
++install:
++ mkdir -p $(pkgconfigdir)
++ $(INSTALL_DATA) emos.pc $(pkgconfigdir)
++ $(INSTALL_DATA) emosR64.pc $(pkgconfigdir)
++
++.PHONY: all clean install
diff --git a/debian/patches/remove_sharedlib_dbg.patch b/debian/patches/remove_sharedlib_dbg.patch
new file mode 100644
index 0000000..f537b66
--- /dev/null
+++ b/debian/patches/remove_sharedlib_dbg.patch
@@ -0,0 +1,31 @@
+Description: Remove unnused references, that for some reason collide when linking in shared_lib.c
+Author: Alastair McKinstry <mckinstry at debian.org>
+Forwarded: no
+Last-Updated: 2011-12-09
+
+Index: emoslib-000382+dfsg/interpolation/sharedgg.c
+===================================================================
+--- emoslib-000382+dfsg.orig/interpolation/sharedgg.c 2011-12-09 12:37:35.000000000 +0000
++++ emoslib-000382+dfsg/interpolation/sharedgg.c 2011-12-09 12:50:15.000000000 +0000
+@@ -29,8 +29,6 @@
+ #include <sys/ipc.h>
+ #include <sys/shm.h>
+
+-extern int sharedlib_dbg;
+-
+ #ifndef CRAY
+ #ifdef FORTRAN_NO_UNDERSCORE
+ #define SHAREDLL sharedll
+Index: emoslib-000382+dfsg/interpolation/sharedll.c
+===================================================================
+--- emoslib-000382+dfsg.orig/interpolation/sharedll.c 2011-12-09 12:37:35.000000000 +0000
++++ emoslib-000382+dfsg/interpolation/sharedll.c 2011-12-09 12:50:15.000000000 +0000
+@@ -29,8 +29,6 @@
+ #include <sys/ipc.h>
+ #include <sys/shm.h>
+
+-extern int sharedlib_dbg;
+-
+ #ifndef CRAY
+ #ifdef FORTRAN_NO_UNDERSCORE
+ #define SHAREDLL sharedll
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..15708e3
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,10 @@
+huge.patch
+config.patch
+bufrnum.patch
+pkgconfig.patch
+little_endian.patch
+shared.patch
+underscore_names.patch
+remove_sharedlib_dbg.patch
+wvqlid2.patch
+# emosnum.patch
diff --git a/debian/patches/shared.patch b/debian/patches/shared.patch
new file mode 100644
index 0000000..0d46de6
--- /dev/null
+++ b/debian/patches/shared.patch
@@ -0,0 +1,31 @@
+Description: Don't set external variables; is not allowed by Gcc.
+Author: Alastair McKinstry <mckinstry at debian.org>
+Last-Updated: 2011-12-09
+Forwarded: no
+
+Index: emoslib-000371+dfsg/interpolation/sharedgg.c
+===================================================================
+--- emoslib-000371+dfsg.orig/interpolation/sharedgg.c 2009-12-06 12:58:59.000000000 +0000
++++ emoslib-000371+dfsg/interpolation/sharedgg.c 2009-12-06 12:59:04.000000000 +0000
+@@ -29,7 +29,7 @@
+ #include <sys/ipc.h>
+ #include <sys/shm.h>
+
+-extern int sharedlib_dbg = 0;
++extern int sharedlib_dbg;
+
+ #ifndef CRAY
+ #ifdef FORTRAN_NO_UNDERSCORE
+Index: emoslib-000371+dfsg/interpolation/sharedll.c
+===================================================================
+--- emoslib-000371+dfsg.orig/interpolation/sharedll.c 2009-12-06 12:58:12.000000000 +0000
++++ emoslib-000371+dfsg/interpolation/sharedll.c 2009-12-06 12:58:16.000000000 +0000
+@@ -29,7 +29,7 @@
+ #include <sys/ipc.h>
+ #include <sys/shm.h>
+
+-extern int sharedlib_dbg = 0;
++extern int sharedlib_dbg;
+
+ #ifndef CRAY
+ #ifdef FORTRAN_NO_UNDERSCORE
diff --git a/debian/patches/underscore_names.patch b/debian/patches/underscore_names.patch
new file mode 100644
index 0000000..e10dee1
--- /dev/null
+++ b/debian/patches/underscore_names.patch
@@ -0,0 +1,16 @@
+Description: Include file left our of sources.linux in interpolation.
+Author: Alastair McKInstry <mckinstry at debian.org>
+Last-Updated: 2011-12-10
+Forwarded: no
+
+Index: emoslib-000371+dfsg/interpolation/sources.linux
+===================================================================
+--- emoslib-000371+dfsg.orig/interpolation/sources.linux 2009-12-07 20:24:00.000000000 +0000
++++ emoslib-000371+dfsg/interpolation/sources.linux 2009-12-07 20:24:41.000000000 +0000
+@@ -265,4 +265,5 @@
+ my_ialloc.c \
+ rddefs.c \
+ showmap.c \
+- soffset.c
++ soffset.c \
++ rename_unlink.c
diff --git a/debian/patches/wvqlid2.patch b/debian/patches/wvqlid2.patch
new file mode 100644
index 0000000..ce37388
--- /dev/null
+++ b/debian/patches/wvqlid2.patch
@@ -0,0 +1,18 @@
+Description: Don' include wclin2 function(s), as they require an external function wvqlid2()
+ Which is not available yet.
+Author: Alastair McKInstry <mckinstry at debian.org>
+Bug-Debian: http://bugs.debian.org/571396
+Last-Updated: 2010-02-26
+
+Index: emoslib-000392+dfsg.1/interpolation/sources.linux
+===================================================================
+--- emoslib-000392+dfsg.1.orig/interpolation/sources.linux 2013-04-04 17:16:29.000000000 +0100
++++ emoslib-000392+dfsg.1/interpolation/sources.linux 2013-04-04 17:16:29.000000000 +0100
+@@ -252,7 +252,6 @@
+ wv2dxx2.F \
+ wvqlidx.F \
+ wvqlint.F \
+- wvqlin2.F \
+ xrotate.F \
+ xyz2ll.F \
+ gasetup.F \
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..83115e5
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,49 @@
+#!/usr/bin/make -f
+
+# export DH_VERBOSE=1
+
+# The magic debhelper rule
+%:
+ dh $@ --with autoreconf
+
+DESTDIR:=`pwd`/debian/tmp/
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH)
+SUBDIRS=" gribex interpolation bufrdc crexdc pbio fft bufrtables grib_api_merging"
+override_dh_auto_clean:
+ $(MAKE) ARCH=linux CNAME=_gfortran clean
+ rm -f libemos* debian/libemos*.so.* gribex/config.h
+ rm -f .r64 .emos bufrdc/*.o fft/*.o grib_api_merging/*.o
+ find bufrtables -type l -delete
+
+override_dh_auto_test:
+ @echo "Tests not available"
+
+override_dh_auto_build:
+ ( cd gribex && ln -sf ../config.h config.h )
+ # First build libemos.a
+ $(MAKE) SUBDIRS=$(SUBDIRS) ARCH=linux CNAME=_gfortran A64= R64= GRIB_API_MERGING=grib_api_merging clean all
+ # Then rebuild pic for objects ...
+ $(MAKE) SUBDIRS=$(SUBDIRS) ARCH=linux CNAME=_gfortran+pic A64= R64= GRIB_API_MERGING=grib_api_merging clean all
+ # Link them into libemos.so
+ $(MAKE) -f debian/build-shlib R64= DESTDIR=$(DESTDIR) LIBDIR=$(LIBDIR)
+ # And repeat for 64-bit reals.
+ $(MAKE) SUBDIRS=$(SUBDIRS) ARCH=linux CNAME=_gfortran R64=R64 A64= GRIB_API_MERGING=grib_api_merging clean all
+ $(MAKE) SUBDIRS=$(SUBDIRS) ARCH=linux CNAME=_gfortran+pic R64=R64 A64= GRIB_API_MERGING=grib_api_merging clean all
+ $(MAKE) -f debian/build-shlib R64=R64 DESTDIR=$(DESTDIR) LIBDIR=$(LIBDIR)
+
+override_dh_auto_install:
+ chmod a-x examples/*/*
+ mkdir -p $(DESTDIR)/$(LIBDIR)
+ mv libemos* debian/libemos*.0d $(DESTDIR)/$(LIBDIR)
+ echo "" > .r64
+ echo "$(DESTDIR)/usr/share/emos" > .emos
+ ls bufrtables/*000* > .list/bufrtables
+ mkdir -p $(DESTDIR)/usr/share/emos
+ ./install
+ find $(DESTDIR)/usr/share -type f -exec chmod 644 {} \;
+ $(MAKE) -C pkgconfig install prefix=$(DESTDIR)/usr
+ find debian -name config.h -delete
+ # multi-arch
+ dh_link -p libemos-dev $(LIBDIR)/libemos.so.0d $(LIBDIR)/libemos.so
+ dh_link -p libemos-dev $(LIBDIR)/libemosR64.so.0d $(LIBDIR)/libemosR64.so
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/source/options b/debian/source/options
new file mode 100644
index 0000000..b7bc1f2
--- /dev/null
+++ b/debian/source/options
@@ -0,0 +1 @@
+compression = "xz"
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/emos.git
More information about the debian-science-commits
mailing list