]> git.pld-linux.org Git - packages/parallel-netcdf.git/commitdiff
- new auto/th/parallel-netcdf-1.9.0-1
authorJakub Bogusz <qboosh@pld-linux.org>
Fri, 11 May 2018 03:50:36 +0000 (05:50 +0200)
committerJakub Bogusz <qboosh@pld-linux.org>
Fri, 11 May 2018 03:50:36 +0000 (05:50 +0200)
- added sh patch to kill bashisms in configure

parallel-netcdf-sh.patch [new file with mode: 0644]
parallel-netcdf.spec [new file with mode: 0644]

diff --git a/parallel-netcdf-sh.patch b/parallel-netcdf-sh.patch
new file mode 100644 (file)
index 0000000..371d4d2
--- /dev/null
@@ -0,0 +1,221 @@
+--- parallel-netcdf-1.9.0/acinclude.m4.orig    2017-10-28 19:09:38.000000000 +0200
++++ parallel-netcdf-1.9.0/acinclude.m4 2018-05-09 21:20:18.207727703 +0200
+@@ -1105,7 +1105,7 @@
+         end module conftest
+     ])]
+ )
+-dnl ac_try='$F90 ${F90FLAGS} conftest.f90 ${F90LIBS}>&AS_MESSAGE_LOG_FD'
++dnl ac_try='$F90 ${F90FLAGS} conftest.f90 ${F90LIBS} >AS_MESSAGE_LOG_FD 2>&1'
+ dnl AC_TRY_EVAL(ac_try)
+ if test -f conftest.${FC_MODEXT} ; then
+    ac_cv_prog_f90_uppercase_mod=no
+@@ -1558,7 +1558,7 @@
+ AC_DEFUN([UD_CHECK_PGF77],[
+     AC_CACHE_CHECK([if Fortran 77 compiler is pgf77], [ac_cv_fc_compiler_pgf77],
+     [ac_cv_fc_compiler_pgf77=no
+-     eval $MPIF77 -V </dev/null >& conftest.ver
++     eval $MPIF77 -V </dev/null >conftest.ver 2>&1
+      _F77_VENDOR=`head -c 5 conftest.ver`
+      if test "x${_F77_VENDOR}" = xpgf77 ; then
+         ac_cv_fc_compiler_pgf77=yes
+@@ -1578,7 +1578,7 @@
+ AC_DEFUN([UD_CHECK_FC_NAG],[
+     AC_CACHE_CHECK([if Fortran compiler is NAG], [ac_cv_fc_compiler_nag],
+     [ac_cv_fc_compiler_nag=no
+-     eval $MPIF90 -V </dev/null >& conftest.ver
++     eval $MPIF90 -V </dev/null >conftest.ver 2>&1
+      _FC_VENDOR=`head -c 3 conftest.ver`
+      if test "x${_FC_VENDOR}" = xNAG ; then
+         ac_cv_fc_compiler_nag=yes
+--- parallel-netcdf-1.9.0/configure.ac.orig    2017-12-18 23:30:28.000000000 +0100
++++ parallel-netcdf-1.9.0/configure.ac 2018-05-10 20:54:44.283425349 +0200
+@@ -189,34 +189,34 @@
+ CANDIDATE_MPIF90="${MPIF90} mpif90" 
+ dnl add IBM MPI compilers
+-CANDIDATE_MPICC+=" mpcc_r mpcc mpixlc_r mpixlc"
+-CANDIDATE_MPICXX+=" mpCC_r mpCC mpixlcxx_r mpixlcxx mpixlC_r mpixlC"
+-CANDIDATE_MPIF77+=" mpixlf77_r mpixlf77"
+-CANDIDATE_MPIF90+=" mpixlf90_r mpixlf90"
++CANDIDATE_MPICC="$CANDIDATE_MPICC mpcc_r mpcc mpixlc_r mpixlc"
++CANDIDATE_MPICXX="$CANDIDATE_MPICXX mpCC_r mpCC mpixlcxx_r mpixlcxx mpixlC_r mpixlC"
++CANDIDATE_MPIF77="$CANDIDATE_MPIF77 mpixlf77_r mpixlf77"
++CANDIDATE_MPIF90="$CANDIDATE_MPIF90 mpixlf90_r mpixlf90"
+ dnl add IBM BGL MPI compilers
+-CANDIDATE_MPICC+=" blrts_xlc mpxlc_r mpxlc"
+-CANDIDATE_MPICXX+=" blrts_xlC mpxlC_r mpxlC"
+-CANDIDATE_MPIF77+=" blrts_xlf mpxlf_r mpxlf"
+-CANDIDATE_MPIF90+=" blrts_xlf90 mpxlf90_r mpxlf90 mpxlf95_r mpxlf95"
++CANDIDATE_MPICC="$CANDIDATE_MPICC blrts_xlc mpxlc_r mpxlc"
++CANDIDATE_MPICXX="$CANDIDATE_MPICXX blrts_xlC mpxlC_r mpxlC"
++CANDIDATE_MPIF77="$CANDIDATE_MPIF77 blrts_xlf mpxlf_r mpxlf"
++CANDIDATE_MPIF90="$CANDIDATE_MPIF90 blrts_xlf90 mpxlf90_r mpxlf90 mpxlf95_r mpxlf95"
+ dnl add Fujitsu MPI compilers
+-CANDIDATE_MPICC+=" mpifccpx"
+-CANDIDATE_MPICXX+=" mpiFCCpx"
+-CANDIDATE_MPIF77+=" mpifrtpx"
+-CANDIDATE_MPIF90+=" mpifrtpx"
++CANDIDATE_MPICC="$CANDIDATE_MPICC  mpifccpx"
++CANDIDATE_MPICXX="$CANDIDATE_MPICXX mpiFCCpx"
++CANDIDATE_MPIF77="$CANDIDATE_MPIF77 mpifrtpx"
++CANDIDATE_MPIF90="$CANDIDATE_MPIF90 mpifrtpx"
+ dnl add Cray MPI compiler wrappers
+-CANDIDATE_MPICC+=" cc"
+-CANDIDATE_MPICXX+=" CC"
+-CANDIDATE_MPIF77+=" ftn"
+-CANDIDATE_MPIF90+=" ftn"
++CANDIDATE_MPICC="$CANDIDATE_MPICC  cc"
++CANDIDATE_MPICXX="$CANDIDATE_MPICXX CC"
++CANDIDATE_MPIF77="$CANDIDATE_MPIF77 ftn"
++CANDIDATE_MPIF90="$CANDIDATE_MPIF90 ftn"
+ dnl add Intel MPI compiler wrappers
+-CANDIDATE_MPICC+=" mpiicc icc"
+-CANDIDATE_MPICXX+=" mpiicpc icpc"
+-CANDIDATE_MPIF77+=" mpiifort mpiifc ifort"
+-CANDIDATE_MPIF90+=" mpiifort mpiifc ifort"
++CANDIDATE_MPICC="$CANDIDATE_MPICC  mpiicc icc"
++CANDIDATE_MPICXX="$CANDIDATE_MPICXX mpiicpc icpc"
++CANDIDATE_MPIF77="$CANDIDATE_MPIF77 mpiifort mpiifc ifort"
++CANDIDATE_MPIF90="$CANDIDATE_MPIF90 mpiifort mpiifc ifort"
+ dnl find the full path of MPICC from CANDIDATE_MPICC and MPI_INSTALL
+ if test "x${ac_user_MPICC}" = x ; then
+@@ -233,7 +233,7 @@
+       ERR_MSG="Specified MPI C compiler \"$ac_user_MPICC\" cannot be found"
+    fi
+    if test "x$MPI_INSTALL" != x ; then
+-      ERR_MSG+=" under $MPI_INSTALL"
++      ERR_MSG="$ERR_MSG under $MPI_INSTALL"
+    fi
+    AC_MSG_ERROR([
+    -----------------------------------------------------------------------
+@@ -311,7 +311,7 @@
+          ERR_MSG="Specified MPI C++ compiler \"$ac_user_MPICXX\" cannot be found"
+       fi
+       if test "x$MPI_INSTALL" != x ; then
+-         ERR_MSG+=" under $MPI_INSTALL"
++         ERR_MSG="$ERR_MSG under $MPI_INSTALL"
+       fi
+       if test "x${enable_cxx}" = xyes ; then
+          dnl --enable-cxx is explicitly set at command line
+@@ -412,7 +412,7 @@
+ if test "x${enable_strict}" = xyes; then
+    if test "x${GCC}" = xyes; then
+-      CFLAGS+=" -Wall -Wstrict-prototypes -Wmissing-prototypes -Wundef -Wpointer-arith -Wbad-function-cast"
++      CFLAGS="$CFLAGS -Wall -Wstrict-prototypes -Wmissing-prototypes -Wundef -Wpointer-arith -Wbad-function-cast"
+    else
+       AC_MSG_WARN([--enable-strict is for GNU compiler only])
+       enable_strict=no
+@@ -447,7 +447,7 @@
+          ERR_MSG="Specified MPI Fortran 77 compiler \"$ac_user_MPIF77\" cannot be found"
+       fi
+       if test "x$MPI_INSTALL" != x ; then
+-         ERR_MSG+=" under $MPI_INSTALL"
++         ERR_MSG="$ERR_MSG under $MPI_INSTALL"
+       fi
+       if test "x${enable_fortran}" = xyes ; then
+          dnl --enable-fortran is explicitly set at command line
+@@ -488,7 +488,7 @@
+          ERR_MSG="Specified MPI Fortran 90 compiler \"$ac_user_MPIF90\" cannot be found"
+       fi
+       if test "x$MPI_INSTALL" != x ; then
+-         ERR_MSG+=" under $MPI_INSTALL"
++         ERR_MSG="$ERR_MSG under $MPI_INSTALL"
+       fi
+       if test "x${enable_fortran}" = xyes ; then
+          dnl --enable-fortran is explicitly set at command line
+@@ -634,8 +634,8 @@
+ if test "x${has_fortran}" = xyes ; then
+    if test "x${enable_strict}" = xyes && test "x${GFC}" = xyes; then
+       dnl not all Fortran compilers recognize -Wall
+-      FFLAGS+=" -Wall"
+-      FCFLAGS+=" -Wall"
++      FFLAGS="$FFLAGS -Wall"
++      FCFLAGS="$FCFLAGS -Wall"
+    fi
+    dnl AC_SUBST(FLIBS)
+    dnl AC_SUBST(FCLIBS)
+@@ -746,14 +746,14 @@
+    if test "x${ac_cv_fc_compiler_nag}" = xyes ; then
+       dnl Add -mismatch if they are not set by users
+       if ! echo "${FFLAGS}" | ${EGREP} -q -- "-mismatch" ; then
+-         FFLAGS+=" -mismatch"
++         FFLAGS="$FFLAGS -mismatch"
+       fi
+       if ! echo "${FCFLAGS}" | ${EGREP} -q -- "-mismatch" ; then
+-         FCFLAGS+=" -mismatch"
++         FCFLAGS="$FCFLAGS -mismatch"
+       fi
+       dnl Add -DNAGFortran
+-       FFLAGS+=" -DNAGFortran"
+-      FCFLAGS+=" -DNAGFortran"
++       FFLAGS="$FFLAGS -DNAGFortran"
++      FCFLAGS="$FCFLAGS -DNAGFortran"
+    fi
+    dnl check Fortran parameter modifier for 8-byte integer type
+@@ -878,8 +878,8 @@
+ dnl fi
+ UD_PROG_M4
+-M4FLAGS+=" -DPNETCDF"
+-M4FFLAGS+=" -DPNETCDF"
++M4FLAGS="$M4FLAGS -DPNETCDF"
++M4FFLAGS="$M4FFLAGS -DPNETCDF"
+ dnl AM_PROG_AR is first recognized/traced in autoconf 2.68
+ dnl Use it only if we want support for unusual archivers such as Microsoft
+@@ -1249,31 +1249,31 @@
+    dnl remove all -O and -fast flags
+    dnl add -O0 to all flags
+    if ! echo "${CFLAGS}" | ${EGREP} -q -- "-g" ; then
+-      CFLAGS+=" -g"
++      CFLAGS="$CFLAGS -g"
+    fi
+    CFLAGS=`echo $CFLAGS | sed 's/-O. *//g' | sed 's/-fast *//g'`
+-   CFLAGS+=" -O0"
++   CFLAGS="$CFLAGS -O0"
+    if test "x${has_mpicxx}" = xyes ; then
+       if ! echo "${CXXFLAGS}" | ${EGREP} -q -- "-g" ; then
+-         CXXFLAGS+=" -g"
++         CXXFLAGS="$CXXFLAGS -g"
+       fi
+       CXXFLAGS=`echo $CXXFLAGS | sed 's/-O. *//g' | sed 's/-fast *//g'`
+-      CXXFLAGS+=" -O0"
++      CXXFLAGS="$CXXFLAGS -O0"
+    fi
+    if test "x${has_fortran}" = xyes ; then
+       if ! echo "${FFLAGS}" | ${EGREP} -q -- "-g" ; then
+-         FFLAGS+=" -g"
++         FFLAGS="$FFLAGS -g"
+       fi
+       if ! echo "${FCFLAGS}" | ${EGREP} -q -- "-g" ; then
+-         FCFLAGS+=" -g"
++         FCFLAGS="$FCFLAGS -g"
+       fi
+        FFLAGS=`echo $FFLAGS  | sed 's/-O. *//g' | sed 's/-fast *//g'`
+       FCFLAGS=`echo $FCFLAGS | sed 's/-O. *//g' | sed 's/-fast *//g'`
+-       FFLAGS+=" -O0"
+-      FCFLAGS+=" -O0"
++       FFLAGS="$FFLAGS -O0"
++      FCFLAGS="$FCFLAGS -O0"
+    fi
+ fi
+@@ -1394,7 +1394,7 @@
+    dnl set default to "mpiexec -n NP"
+    UD_MPI_PATH_PROGS([TESTMPIRUN], [mpiexec mpirun srun])
+    if test "x${TESTMPIRUN}" != x ; then
+-      TESTMPIRUN+=" -n NP"
++      TESTMPIRUN="$TESTMPIRUN -n NP"
+    fi
+ fi
diff --git a/parallel-netcdf.spec b/parallel-netcdf.spec
new file mode 100644 (file)
index 0000000..293f1b5
--- /dev/null
@@ -0,0 +1,163 @@
+#
+# Conditional build:
+%bcond_without apidocs         # API documentation
+%bcond_without static_libs     # static library
+#
+Summary:       Parallel netCDF (PnetCDF) library
+Summary(pl.UTF-8):     Biblioteka zrównoleglona netCDF (PnetCDF)
+Name:          parallel-netcdf
+Version:       1.9.0
+Release:       1
+License:       BSD-like
+Group:         Libraries
+#Source0Download: http://cucis.ece.northwestern.edu/projects/PnetCDF/download.html
+Source0:       http://cucis.ece.northwestern.edu/projects/PnetCDF/Release/%{name}-%{version}.tar.gz
+# Source0-md5: f8d5627cb297263c1459d67254dc5fab
+Patch0:                %{name}-sh.patch
+URL:           https://trac.mcs.anl.gov/projects/parallel-netcdf
+BuildRequires: autoconf >= 2.69
+BuildRequires: automake >= 1:1.13
+BuildRequires: gcc-fortran
+BuildRequires: libstdc++-devel
+BuildRequires: libtool >= 2:2.4.2
+# mpicc and co.
+BuildRequires: mpich-devel
+BuildRequires: m4
+%if %{with apidocs}
+BuildRequires: doxygen
+BuildRequires: ghostscript
+BuildRequires: texlive-latex
+%endif
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+Parallel netCDF (PnetCDF) is a library providing high-performance
+parallel I/O while still maintaining file-format compatibility with
+Unidata's NetCDF, specifically the classic CDF 1, 2, and 5 formats.
+Although NetCDF supports parallel I/O starting from version 4, it is
+built on top of HDF5 and thus its parallel feature requires files in
+HDF5 format. PnetCDF is currently the only option for parallel I/O on
+files in classic formats.
+
+%description -l pl.UTF-8
+Parallel netCDF (PnetCDF) to biblioteka zapewniająca bardzo wydajne,
+równoległe operacje we/wy, zachowując zgodność z formatem plików
+Unidata NetCDF, w szczególności klasycznych formatach CDF 1, 2, 5.
+Mimo że NetCDF obsługuje równoległe operacje we/wy począwszy od wersji
+4, ale w oparciu o HDF5, więc opcja zrównoleglenia wymaga plików w
+formacie HDF5. PnetCDF to obecnie jedyna możliwość zrównoleglenia
+we/wy dla plików w klasycznych formatach.
+
+%package devel
+Summary:       Header files for PnetCDF library
+Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki PnetCDF
+Group:         Development/Libraries
+Requires:      %{name} = %{version}-%{release}
+Requires:      mpich-devel
+
+%description devel
+Header files for PnetCDF library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki PnetCDF.
+
+%package static
+Summary:       Static PnetCDF library
+Summary(pl.UTF-8):     Statyczna biblioteka PnetCDF
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+
+%description static
+Static PnetCDF library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka PnetCDF.
+
+%package apidocs
+Summary:       API documentation for PnetCDF library
+Summary(pl.UTF-8):     Dokumentacja API biblioteki PnetCDF
+Group:         Documentation
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
+
+%description apidocs
+API documentation for PnetCDF library.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja API biblioteki PnetCDF.
+
+%prep
+%setup -q
+%patch0 -p1
+
+%build
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+%configure \
+       %{?with_apidocs:--enable-doxygen} \
+       --disable-silent-rules \
+       --enable-shared \
+       %{!?with_static_libs:--disable-static}
+%{__make}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
+
+# .la kept because of MPI dependencies
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post  -p /sbin/ldconfig
+%postun        -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc AUTHORS COPYRIGHT CREDITS README RELEASE_NOTES doc/README.{LINUX,consistency,large_files}
+%attr(755,root,root) %{_bindir}/ncmpidiff
+%attr(755,root,root) %{_bindir}/ncmpidump
+%attr(755,root,root) %{_bindir}/ncmpigen
+%attr(755,root,root) %{_bindir}/ncoffsets
+%attr(755,root,root) %{_bindir}/ncvalidator
+%attr(755,root,root) %{_bindir}/pnetcdf_version
+%attr(755,root,root) %{_libdir}/libpnetcdf.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpnetcdf.so.1
+%{_mandir}/man1/ncmpidiff.1*
+%{_mandir}/man1/ncmpidump.1*
+%{_mandir}/man1/ncmpigen.1*
+%{_mandir}/man1/ncoffsets.1*
+%{_mandir}/man1/ncvalidator.1*
+%{_mandir}/man1/pnetcdf_version.1*
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/pnetcdf-config
+%attr(755,root,root) %{_libdir}/libpnetcdf.so
+%{_libdir}/libpnetcdf.la
+%{_includedir}/pnetcdf.h
+%{_includedir}/pnetcdf
+%{_includedir}/pnetcdf.inc
+%{_includedir}/pnetcdf.mod
+%{_pkgconfigdir}/pnetcdf.pc
+%{_mandir}/man3/pnetcdf.3*
+%{_mandir}/man3/pnetcdf_f77.3*
+%{_mandir}/man3/pnetcdf_f90.3*
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libpnetcdf.a
+%endif
+
+%if %{with apidocs}
+%files apidocs
+%defattr(644,root,root,755)
+%doc doc/pnetcdf-api/pnetcdf-api.pdf
+%endif
This page took 0.104878 seconds and 4 git commands to generate.