Blob Blame History Raw
%global ptpver                  4.0.3
%global photranver              6.0.2
%global reltag                  ptp_4_0
#global reltag                  v201009021728
%global eclipse_noarch_base     %{_datadir}/eclipse
%global eclipse_arch_base       %{_libdir}/eclipse
%global cdtreq                  1:7.0.0
%global pdereq                  1:3.6.0
%global rsereq                  3.2

Summary:        Eclipse Parallel Tools Platform
Name:           eclipse-ptp
# Be sure to update photran version if needed
Version:        %{ptpver}
Release:        0.3.RC2c%{?dist}
License:        EPL
Group:          Development/Tools
URL:            http://www.eclipse.org/ptp

# The following tarball was generated by the makesource.sh script
Source0:        org.eclipse.ptp-%{reltag}.tar.gz
Source1:        makesource.sh
Source2:        cdtdb-4.0.3-eclipse.jar
# To help generate the needed Requires
Source3:        finddeps.sh
BuildRequires: java-devel >= 1.5.0
BuildRequires: eclipse-pde >= %{pdereq}
BuildRequires: eclipse-cdt-parsers >= %{cdtreq}
#BuildRequires: eclipse-cdt-tests
# >= 1:6.0.2
BuildRequires: eclipse-rse >= %{rsereq}
BuildRequires: lpg-java-compat = 1.1.0

BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 
BuildArch:     noarch


%description
The aim of the parallel tools platform project is to produce an open-source
industry-strength platform that provides a highly integrated environment
specifically designed for parallel application development. The project will
provide:

 - a standard, portable parallel IDE that supports a wide range of parallel
   architectures and run-time systems
 - a scalable parallel debugger
 - support for the integration of a wide range of parallel tools
 - an environment that simplifies the end-user interaction with parallel
   systems

This package contains the main PTP run-time features.


%package        master
Summary:        Complete PTP package
Group:          Development/Libraries
BuildArch:      noarch
Requires:       eclipse-cdt >= %{cdtreq}
Requires:       %{name} = %{version}-%{release}

#master package is a virtual package that requires all of the components
Requires:       %{name}-etfw-ppw = %{version}-%{release}
Requires:       %{name}-etfw-tau = %{version}-%{release}
Requires:       %{name}-etfw-tau-fortran = %{version}-%{release}
Requires:       %{name}-gem = %{version}-%{release}
Requires:       %{name}-pldt-upc = %{version}-%{release}
Requires:       %{name}-rdt = %{version}-%{release}
Requires:       %{name}-rdt-remotetools = %{version}-%{release}
Requires:       %{name}-rdt-xlc = %{version}-%{release}
Requires:       %{name}-remote-rse = %{version}-%{release}
Requires:       %{name}-sci = %{version}-%{release}

%description    master
The package will bring in all of the PTP components.


%package        etfw-ppw
Summary:        PTP Parallel Performance Wizard (PPW)
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    etfw-ppw
Adds support for Parallel Performance Wizard (PPW).


%package        etfw-tau
Summary:        PTP External Tools Framework TAU Support
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    etfw-tau
Extends the external tools framework with capabilities specific
to the TAU performance analysis system.


%package        etfw-tau-fortran
Summary:        PTP External Tools Framework: TAU Fortran Enabler
Group:          Development/Libraries
Requires:       eclipse-photran = %{photranver}-%{release}
BuildArch:      noarch

%description    etfw-tau-fortran
Adds selective instrumentation functionality for Fortran via the
Photran project.


%package        gem
Summary:        PTP Graphical Explorer of MPI Programs (GEM)
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    gem
GEM serves as a graphical front end for In-situ Partial Order (ISP), a
dynamic formal verification tool for MPI developed at the School of
Computing, University of Utah.

Whether you are new to MPI or are an advanced user, GEM will help you debug
your MPI programs, and graphically show many valuable facts, including all
the possible send/receive matches, and synchronizations. GEM also includes
features to help users understand and debug the program across all platforms
on which it may be run (e.g. highlighting deadlocks that may occur due to
differing communication buffer allocations). For a given test harness, GEM
will allow you to explore only the relevant process interleavings, which are
much smaller than the number of total feasible interleavings. GEM also
guarantees to discover and explore all non-deterministic matches at run-time. 


%package        pldt-upc
Summary:        PTP Parallel Language Development Tools UPC Support
Group:          Development/Libraries
Requires:       eclipse-cdt-parsers >= %{cdtreq}
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    pldt-upc
Adds a range of static analysis and programming assistance tools.


%package        rdt
Summary:        PTP Remote Development Tools
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    rdt
PTP components for supporting Remote Development Tools.

%package        rdt-remotetools
Summary:        PTP RDT Remote Tools Support
Group:          Development/Libraries
Requires:       %{name}-rdt = %{version}-%{release}
BuildArch:      noarch

%description    rdt-remotetools
Allows RDT to be used with PTP Remote Tools.

%package        rdt-xlc
Summary:        PTP Remote Development Tools XL C/C++ Compiler Support
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    rdt-xlc
Remote support for the IBM XL C/C++ compilers.


%package        sci
Summary:        PTP Scalable Communication Infrastructure (SCI)
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    sci
Parallel Tools Platform components that implements the Scalable Communication
Infrastructure (SCI).


%package -n     eclipse-photran
Version:        %{photranver}
Summary:        Photran End-User Runtime
Group:          Development/Libraries
Requires:       eclipse-cdt = %{cdtreq}
BuildArch:      noarch

%description -n eclipse-photran
An Eclipse-based Integrated Development Environment for Fortran.


%package -n     eclipse-photran-intel
Version:        %{photranver}
Summary:        Intel Fortran compiler support for Photran
Group:          Development/Libraries
Requires:       eclipse-photran = %{photranver}-%{release}
BuildArch:      noarch

%description -n eclipse-photran-intel
This feature packages the plugins required to support
the Intel Fortran compiler in Photran/FDT.


%package -n     eclipse-photran-xlf
Version:        %{photranver}
Summary:        IBM XLF Compiler Support
Group:          Development/Libraries
Requires:       eclipse-photran = %{photranver}-%{release}
BuildArch:      noarch

%description -n eclipse-photran-xlf
Error parser and managed build tool chain for the IBM XLF compiler.

%package        remote-rse
#Kludge to work around http://rpm.org/ticket/124
Version:        %{ptpver}
Summary:        PTP RSE Enabler
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
BuildArch:      noarch

%description    remote-rse
Provides support for remote services using RSE.


%prep
%setup -q -n org.eclipse.ptp-%{reltag}
find -name \*.jar -exec rm {} +
mkdir cdtdb-4.0.3-eclipse
pushd cdtdb-4.0.3-eclipse
unzip -q %SOURCE2
find -name \*.class -exec rm {} +
popd
# This prevents the Photran Intel feature from building
sed -i -e 's/os="linux"//' photran/org.eclipse.photran.intel-feature/feature.xml
#Fix line endings, causes problems with pdebuild link names
find -name MANIFEST.MF -exec sed -i -e 's|\r||' {} +
mkdir orbitDeps


%build
export JAVA_HOME=%{java_home}
export PATH=%{java_bin}:/usr/bin:$PATH
# Build the helper jar first
pushd cdtdb-4.0.3-eclipse
classpath=$(echo %{_libdir}/eclipse/plugins/org.eclipse.equinox.common_*.jar | sed -e 's/ /:/g')
find -name \*java -exec javac -classpath $classpath '{}' +
jar cf ../photran/org.eclipse.rephraserengine.core.vpg/cdtdb-4.0.3-eclipse.jar *
popd
#Interferes with feature build
rm -rf cdtdb-4.0.3-eclipse

#We need to build some core features first due to dependencies, then we can build the
#main feature and others.  Use -Dnoclean=true so the aggregate features don't remove
#needed pre-built dependencies
for feature in org.eclipse.ptp.{utils,services,remote,remotetools} org.eclipse.photran org.eclipse.photran.{intel,xlf} org.eclipse.ptp org.eclipse.ptp.{etfw.{ppw,tau,tau.fortran},gem,pldt.upc,rdt,rdt.{remote{jars,tools},xlc},remote.rse,sci}
do
  %{eclipse_arch_base}/buildscripts/pdebuild -d "cdt cdt-parsers rse" \
    -f $feature -a "-DjavacSource=1.5 -DjavacTarget=1.5 -Dnoclean=true" -o `pwd`/orbitDeps
done


%install
rm -rf ${RPM_BUILD_ROOT}
#Cleanup some pre-built features
for zip in build/rpmBuild/org.eclipse.ptp.{utils,services,remote,remotetools}.zip
do
  rm -f $zip
done

#Install all of the remaining features
for zip in build/rpmBuild/*.zip
do
  feature=`basename $zip .zip`
  install -d -m755 ${RPM_BUILD_ROOT}%{eclipse_noarch_base}/dropins/${feature}
  
  unzip -o -d ${RPM_BUILD_ROOT}%{eclipse_noarch_base}/dropins/${feature} \
              build/rpmBuild/${feature}.zip
  mv ${RPM_BUILD_ROOT}%{eclipse_noarch_base}/dropins/${feature}/eclipse/* \
     ${RPM_BUILD_ROOT}%{eclipse_noarch_base}/dropins/${feature}
  rmdir ${RPM_BUILD_ROOT}%{eclipse_noarch_base}/dropins/${feature}/eclipse
done


%clean 
rm -rf ${RPM_BUILD_ROOT}

%files
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp

%files etfw-ppw
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.etfw.ppw

%files etfw-tau
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.etfw.tau

%files etfw-tau-fortran
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.etfw.tau.fortran

%files gem
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.gem

%files pldt-upc
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.pldt.upc

%files rdt
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.rdt

%files rdt-remotetools
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.rdt.remotetools

%files rdt-xlc
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.rdt.xlc

%files remote-rse
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.remote.rse

%files sci
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.ptp.sci

%files -n eclipse-photran
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.photran

%files -n eclipse-photran-intel
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.photran.intel

%files -n eclipse-photran-xlf
%defattr(-,root,root,-)
%doc releng/org.eclipse.ptp.master/epl-v10.html
%{eclipse_noarch_base}/dropins/org.eclipse.photran.xlf


%changelog
* Fri Sep 3 2010 Orion Poplawski <orion@cora.nwra.com> - 4.0.3-0.3.RC2c
- Fix changelog version

* Thu Sep 2 2010 Orion Poplawski <orion@cora.nwra.com> - 4.0.3-0.2.RC2b
- Fix remote-rse deps

* Wed Sep 1 2010 Orion Poplawski <orion@cora.nwra.com> - 4.0.3-0.1.v201009010938
- Update snapshot
- Re-work build

* Tue Jun 1 2010 Orion Poplawski <orion@cora.nwra.com> - 3.0.2-0.1.v201004302110
- Update snapshot
- Add patch from cvs to fix exception in MPI project wizard

* Fri May 28 2010 Orion Poplawski <orion@cora.nwra.com> - 3.0.2-1
- Update to 3.0.1 final
- Rework dependencies

* Mon Feb 1 2010 Orion Poplawski <orion@cora.nwra.com> - 3.0.1-0.4.v201002011019
- Update snapshot

* Tue Jan 26 2010 Orion Poplawski <orion@cora.nwra.com> - 3.0.1-0.3.v201001251825
- Update snapshot

* Thu Jan 21 2010 Orion Poplawski <orion@cora.nwra.com> - 3.0.1-0.2.v201001152110
- Make photran versions 5.0.1, rephraserengine 1.0.1

* Thu Jan 21 2010 Orion Poplawski <orion@cora.nwra.com> - 3.0.1-0.1.v201001152110
- Update to 3.0.1 snapshot
- Split package
- Make noarch

* Mon Dec 7 2009 Orion Poplawski <orion@cora.nwra.com> - 3.0.0-1
- Update to 3.0.0 final

* Wed Nov 11 2009 Orion Poplawski <orion@cora.nwra.com> - 3.0.0-0.5.200911091447
- Update to 200911091447

* Tue Oct 27 2009 Orion Poplawski <orion@cora.nwra.com> - 3.0.0-0.4.200910232110
- Update to 200910232110

* Thu Oct 22 2009 Orion Poplawski <orion@cora.nwra.com> - 3.0.0-0.3.200910162113
- Update to 200910162113

* Fri Oct 16 2009 Orion Poplawski <orion@cora.nwra.com> - 3.0.0-0.2.200910091648
- Remove gcj - eclipse is not built with it.

* Thu Oct 15 2009 Orion Poplawski <orion@cora.nwra.com> - 3.0.0-0.1.200910091648
- Initial package