Blob Blame History Raw
Name:          thredds
Version:       4.6.2
Release:       3%{?dist}
Summary:       Thematic Realtime Environmental Distributed Data Services (TDS)
# GPLv3: opendap/src/main/java/opendap/dap/parsers/DapParser.java
# LGPLv3: opendap/src/main/java/opendap/servlet/AsciiWriter.java
#         visad/src/main/java/ucar/nc2/iosp/mcidas/V5DStruct.java
#         grib/src/main/java/ucar/jpeg
# ASL: tds/src/main/java/thredds/servlet/URLEncoder.java
License:       ASL 2.0 and BSD
URL:           http://www.unidata.ucar.edu/software/tds/
# sh thredds-create-tarball.sh < VERSION >
Source0:       %{name}-%{version}-clean.tar.xz
Source1:       %{name}-create-tarball.sh

Patch0:        thredds-4.6.2-use-proper-system-environment-variables.patch
# jj2000 is non free:
# https://www.redhat.com/archives/fedora-legal-list/2008-December/msg00004.html
Patch1:        thredds-4.6.2-remove-jj2000-support.patch

# Support for log4j 2.5
Patch2:        thredds-4.6.2-log4j.patch

BuildRequires: bison >= 3.0
BuildRequires: maven-local
BuildRequires: mvn(com.beust:jcommander)
BuildRequires: mvn(com.google.guava:guava)
BuildRequires: mvn(com.google.protobuf:protobuf-java)
BuildRequires: mvn(com.sleepycat:je)
BuildRequires: mvn(javax.servlet:javax.servlet-api)
BuildRequires: mvn(joda-time:joda-time)
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(net.java.dev.jna:jna)
BuildRequires: mvn(net.jcip:jcip-annotations)
BuildRequires: mvn(org.apache.httpcomponents:httpclient)
BuildRequires: mvn(org.apache.httpcomponents:httpcore)
BuildRequires: mvn(org.apache.logging.log4j:log4j-api)
BuildRequires: mvn(org.apache.logging.log4j:log4j-core)
BuildRequires: mvn(org.apache.logging.log4j:log4j-slf4j-impl)
BuildRequires: mvn(org.apache.maven.plugins:maven-surefire-report-plugin)
BuildRequires: mvn(org.jdom:jdom2)
BuildRequires: mvn(org.jsoup:jsoup)
BuildRequires: mvn(org.quartz-scheduler.internal:quartz-core)
BuildRequires: mvn(org.slf4j:jcl-over-slf4j)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.slf4j:slf4j-jdk14)
BuildRequires: mvn(org.springframework:spring-context)
BuildRequires: mvn(org.springframework:spring-core)
BuildRequires: mvn(org.springframework:spring-web)

# TODO: opendap, tds, and ... modules
%if 0
# https://github.com/coverity/coverity-security-library
BuildRequires: mvn(com.coverity.security:coverity-escapers:1.1.1)
# https://github.com/eclipsesource/restfuse
BuildRequires: mvn(com.restfuse:com.eclipsesource.restfuse:1.0.0)
BuildRequires: mvn(EDS:threddsIso)
BuildRequires: mvn(org.bounce:bounce)
BuildRequires: mvn(org.imgscalr:imgscalr-lib)
# https://github.com/52North/OX-Framework/
BuildRequires: mvn(org.n52.sensorweb:52n-oxf-xmlbeans)
# https://github.com/52North/common-xml/
BuildRequires: mvn(org.n52.sensorweb:52n-xml-gml-v321)
BuildRequires: mvn(org.n52.sensorweb:52n-xml-om-v20)
BuildRequires: mvn(org.n52.sensorweb:52n-xml-sampling-v20)
BuildRequires: mvn(org.n52.sensorweb:52n-xml-sweCommon-v20)
BuildRequires: mvn(org.n52.sensorweb:52n-xml-waterML-v20)
BuildRequires: mvn(org.opengis:geoapi-pending)
# https://github.com/Unidata/ncWMS/
BuildRequires: mvn(uk.ac.rdg.resc:ncwms)
# NON free
BuildRequires: mvn(edu.ucar:jj2000)
BuildRequires: mvn(edu.wisc.ssec:visad)
%endif

BuildArch:     noarch

%description
The THREDDS (Thematic Realtime Environmental Distributed
Data Services) project is developing middle-ware to bridge the
gap between data providers and data users. The goal is to
simplify the discovery and use of scientific data and to allow
scientific publications and educational materials to reference
scientific data. The mission of THREDDS is for students,
educators and researchers to publish, contribute, find, and
interact with data relating to the Earth system in a convenient,
effective, and integrated fashion. Just as the World Wide Web and
digital-library technologies have simplified the process of
publishing and accessing multimedia documents, THREDDS is building
infrastructure needed for publishing and accessing scientific data
in a similarly convenient fashion.

%package -n netcdf-java
Summary:       Java interface to NetCDF files

%description -n netcdf-java
The NetCDF-Java Library is a Java interface to NetCDF files,
as well as to many other types of scientific data formats.

%package bufr
Summary:       BUFR IOSP

%description bufr
Reading BUFR files with the NetCDF-java library.

%package clcommon
Summary:       Client-side common library

%description clcommon
A collection of utilities needed client-side,
including java.awt dependencies and assorted IOSPs.

%package dap
Summary:       THREDDS DAP4 Protocol Services

%description dap
THREDDS DAP4 Protocol Services.

%package grib
Summary:       GRIB IOSP and Feature Collection

%description grib
Decoder for the GRIB format.

%package httpservices
Summary:       THREDDS HttpClient Wrappers

%description httpservices
THREDDS HttpClient Wrappers.

%package netcdf
Summary:       THREDDS netCDF-4 IOSP JNI connection to C library

%description netcdf
THREDDS netCDF-4 IOSP JNI connection to C library.

%package tdcommon
Summary:       THREDDS Server Common Utilities

%description tdcommon
THREDDS Server Common Utilities.

%package tdm
Summary:       THREDDS Data Manager (TDM)

%description tdm
THREDDS Data Manager (TDM).

%package -n java-udunits
Summary:       Java package for decoding and encoding unit specifications

%description -n java-udunits
The ucar.units Java package is for decoding and encoding
formatted unit specifications (e.g. "m/s"), converting numeric values
between compatible units (e.g. between "m/s" and "knot"), and for
performing arithmetic operations on units (e.g. dividing one unit by
another, raising a unit to a power).

%package javadoc
Summary:       Javadoc for %{name}

%description javadoc
This package contains javadoc for %{name}.

%prep
%setup -q -n %{name}-%{version}
%patch0 -p1
%patch1 -p1
rm -rf grib/src/main/java/ucar/nc2/grib/grib2/Grib2JpegDecoder.java
%patch2 -p1

sed -i 's/\r//' cdm/CHANGES.txt LICENSE.txt

# Disable unavailable build deps
%pom_disable_module cdm-test
%pom_disable_module dap4/d4tests
%pom_disable_module dap4/d4tswar
%pom_disable_module it
%pom_disable_module ncIdv
# thredds use customized opendap == 0.0.7 http://www.opendap.org/
%pom_disable_module opendap
%pom_disable_module opendap/dtswar
%pom_disable_module tds
%pom_disable_module ui
%pom_disable_module visad
%pom_disable_module waterml

%pom_remove_dep org.n52.sensorweb:
# waterml visadCdm opendap clcommon

#%% pom_xpath_set -r "pom:plugin[pom:artifactId = 'maven-jar-plugin']/pom:configuration/pom:archive/pom:manifest/pom:addClasspath" false

%pom_remove_plugin -r :maven-source-plugin
%pom_remove_plugin -r :maven-shade-plugin
%pom_xpath_set "pom:properties/pom:org.quartz-scheduler.version" 2.2.1
%pom_change_dep -r org.quartz-scheduler:quartz org.quartz-scheduler.internal:quartz-core

%mvn_package ':d4*' dap

%mvn_package ':cdm::tests:' cdm 
%mvn_alias :cdm :netcdf

%build
# Regnerate java source code
(
 cd dap4/grammars
 make bison
)
%mvn_build -s

%install
%mvn_install

%files -f .mfiles-%{name}-parent
%doc README.md
%license LICENSE.txt

%files -n netcdf-java -f .mfiles-cdm
%doc cdm/CHANGES.txt
%license LICENSE.txt

%files bufr -f .mfiles-bufr
%license LICENSE.txt

%files clcommon -f .mfiles-clcommon
%license LICENSE.txt

%files dap -f .mfiles-dap
%license LICENSE.txt

%files grib -f .mfiles-grib
%license LICENSE.txt

%files httpservices -f .mfiles-httpservices
%license LICENSE.txt

%files netcdf -f .mfiles-netcdf4
%license LICENSE.txt

%files tdcommon -f .mfiles-tdcommon
%license LICENSE.txt

%files tdm -f .mfiles-tdm
%license LICENSE.txt

%files -n java-udunits -f .mfiles-udunits
%license LICENSE.txt

%files javadoc -f .mfiles-javadoc
%license LICENSE.txt

%changelog
* Mon Feb 22 2016 gil cattaneo <puntogil@libero.it> 4.6.2-3
- rebuilt with log4j 2.5

* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.6.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Sat Jul 18 2015 gil cattaneo <puntogil@libero.it> 4.6.2-1
- update to 4.6.2

* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.19-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Thu Feb 12 2015 gil cattaneo <puntogil@libero.it> 4.3.19-6
- introduce license macro

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.19-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Wed Oct 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.3.19-4
- Rebuild to regenerate broken POMs
- Related: rhbz#1021484

* Sat Oct 19 2013 gil cattaneo <puntogil@libero.it> 4.3.19-3
- renamed sub package udunits

* Sat Oct 19 2013 gil cattaneo <puntogil@libero.it> 4.3.19-2
- fix license field

* Wed Oct 16 2013 gil cattaneo <puntogil@libero.it> 4.3.19-1
- update to 4.3.19

* Mon Sep 16 2013 gil cattaneo <puntogil@libero.it> 4.3.18-1
- update to 4.3.18

* Mon Jun 24 2013 gil cattaneo <puntogil@libero.it> 4.3.16-1
- initial rpm