Blob Blame History Raw
# psyco: Bug 483357 - Empty eclipse-pydev-debuginfo
%global debug_package %{nil}
%global qualifier 2627

Epoch: 1

%define eclipse_base        %{_libdir}/eclipse
%define install_loc         %{_libdir}/eclipse/dropins

%define major     1
%define minor     4
%define maint     3

Summary:          Eclipse Python development plug-in
Name:             eclipse-pydev
Version:          %{major}.%{minor}.%{maint}
Release:          1%{?dist}
License:          EPL
URL:              http://pydev.sourceforge.net
Group:            Development/Tools

Source0:          http://downloads.sourceforge.net/pydev/org.python.pydev.feature-%{version}.%{qualifier}-sources.zip
Source1:          org.python.pydev.mylyn.feature-fetched-src-pydev_1_3_7.tar.bz2
Source2:          fetch-pydev-mylyn.sh

BuildRequires:    java-devel >= 1.5.0

Requires:         eclipse-jdt
Requires:         python
# Psyco is available only on x86 
%ifarch %{ix86}
Requires:         python-psyco
%endif
Requires:         jakarta-commons-codec >= 1.3
Requires:         jakarta-commons-logging
Requires:         xmlrpc3-common
Requires:         xmlrpc3-client
Requires:         xmlrpc3-server
Requires:         junit >= 3.8.1
Requires:         jython >= 2.2
BuildRequires:    eclipse-pde
BuildRequires:    eclipse-mylyn
BuildRequires:    jpackage-utils >= 0:1.5
BuildRequires:    junit >= 3.8.1
BuildRequires:    jakarta-commons-codec >= 1.3
BuildRequires:    jakarta-commons-logging
BuildRequires:    ws-commons-util
BuildRequires:    xmlrpc3-common
BuildRequires:    xmlrpc3-client
BuildRequires:    xmlrpc3-server
BuildRequires:    jython >= 2.2

# This package can not be noarch because psyco is a x86 package.
#BuildArch:        noarch
BuildRoot:        %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

%description
The eclipse-pydev package contains Eclipse plugins for
Python development.

%package  mylyn
Summary:  Pydev Mylyn Focused UI
Requires: eclipse-mylyn
Requires: %{name} = %{epoch}:%{version}-%{release}
Group: Development/Tools

%description mylyn
Mylyn Task-Focused UI extensions for Pydev.

%prep
%setup -q -c 

tar jxf %{SOURCE1}

# remove pre-generated build files
find . -name build.xml | xargs rm 

# remove pre-built jars
rm -f plugins/org.python.pydev.core/core.jar
rm -f plugins/org.python.pydev.ast/ast.jar
rm -f plugins/org.python.pydev.debug/pydev-debug.jar
rm -f plugins/org.python.pydev.parser/parser.jar
rm -f plugins/org.python.pydev/pydev.jar
rm -f plugins/org.python.pydev.jython/pydev-jython.jar
rm -f plugins/org.python.pydev.refactoring/refactoring.jar

# remove included retroweaver jars as it isn't being used
find . -name retroweaver-rt.jar | xargs rm 

# link to system jars
rm -f plugins/org.python.pydev.core/commons-codec.jar
ln -sf %{_javadir}/jakarta-commons-codec.jar \
       plugins/org.python.pydev.core/commons-codec.jar

rm -f plugins/org.python.pydev.core/lib/junit.jar
ln -sf %{_javadir}/junit.jar \
       plugins/org.python.pydev.core/junit.jar

rm -f plugins/org.python.pydev.jython/jython.jar
ln -sf %{_javadir}/jython.jar \
       plugins/org.python.pydev.jython/jython.jar
       
rm -f plugins/org.python.pydev.debug/commons-logging-1.1.jar
ln -sf %{_javadir}/jakarta-commons-logging.jar \
       plugins/org.python.pydev.debug/commons-logging-1.1.jar
       
rm -f plugins/org.python.pydev.debug/ws-commons-util-1.0.2.jar
ln -sf %{_javadir}/ws-commons-util.jar \
       plugins/org.python.pydev.debug/ws-commons-util-1.0.2.jar
       
rm -f plugins/org.python.pydev.debug/xmlrpc-client-3.1.jar
ln -sf %{_javadir}/xmlrpc3-client.jar \
       plugins/org.python.pydev.debug/xmlrpc-client-3.1.jar

rm -f plugins/org.python.pydev.debug/xmlrpc-common-3.1.jar
ln -sf %{_javadir}/xmlrpc3-common.jar \
       plugins/org.python.pydev.debug/xmlrpc-common-3.1.jar
       
rm -f plugins/org.python.pydev.debug/xmlrpc-server-3.1.jar
ln -sf %{_javadir}/xmlrpc3-server.jar \
       plugins/org.python.pydev.debug/xmlrpc-server-3.1.jar

rm -f plugins/org.python.pydev.refactoring/tests/lib/JFlex.jar
# enable when tests are used
#ln -sf %{_datadir}/java/jflex.jar \
#       plugins/org.python.pydev.refactoring/tests/lib/JFlex.jar

rm -f plugins/org.python.pydev.refactoring/tests/lib/xpp3_min-1.1.3.4.O.jar
# enable when tests are used
#ln -sf %{_datadir}/java/xpp3-minimal.jar \
#       plugins/org.python.pydev.refactoring/tests/lib/xpp3_min-1.1.3.4.O.jar

rm -f plugins/org.python.pydev.refactoring/tests/lib/xstream-1.2.1.jar
# enable when tests are used
#ln -sf %{_datadir}/java/xstream.jar \
#       plugins/org.python.pydev.refactoring/tests/lib/xstream-1.2.1.jar

rm -f plugins/org.python.pydev.refactoring/contrib/ch/hsr/ukistler/astgraph/jgraph.jar

%build
%{eclipse_base}/buildscripts/pdebuild \
  -f org.python.pydev.feature

%{eclipse_base}/buildscripts/pdebuild \
  -d mylyn \
  -f org.python.pydev.mylyn.feature

%install
rm -rf $RPM_BUILD_ROOT
installDir=${RPM_BUILD_ROOT}/%{install_loc}/pydev
install -d -m755 $installDir
install -d -m755 ${installDir}-mylyn

# pydev main feature
unzip -q -d $installDir build/rpmBuild/org.python.pydev.feature.zip

# pydev mylyn feature
unzip -q -d ${installDir}-mylyn build/rpmBuild/org.python.pydev.mylyn.feature.zip

# deal with linked deps
pushd $installDir/eclipse/plugins
rm -rf org.python.pydev.core_%{version}.%{qualifier}/commons-codec.jar
ln -sf %{_javadir}/jakarta-commons-codec.jar \
       org.python.pydev.core_%{version}.%{qualifier}/commons-codec.jar

mkdir org.python.pydev.core_%{version}.%{qualifier}/lib
ln -sf %{_javadir}/junit.jar \
       org.python.pydev.core_%{version}.%{qualifier}/lib/junit.jar

rm -rf org.python.pydev.debug_%{version}.%{qualifier}/commons-logging-1.1.jar
ln -sf %{_javadir}/jakarta-commons-logging.jar \
       org.python.pydev.debug_%{version}.%{qualifier}/commons-logging-1.1.jar
       
rm -rf org.python.pydev.debug_%{version}.%{qualifier}/ws-commons-util-1.0.2.jar
ln -sf %{_javadir}/ws-commons-util.jar \
       org.python.pydev.debug_%{version}.%{qualifier}/ws-commons-util-1.0.2.jar
       
rm -f org.python.pydev.debug_%{version}.%{qualifier}/xmlrpc-client-3.1.jar
ln -sf %{_javadir}/xmlrpc3-client.jar \
       org.python.pydev.debug_%{version}.%{qualifier}/xmlrpc-client-3.1.jar

rm -f org.python.pydev.debug_%{version}.%{qualifier}/xmlrpc-common-3.1.jar
ln -sf %{_javadir}/xmlrpc3-common.jar \
       org.python.pydev.debug_%{version}.%{qualifier}/xmlrpc-common-3.1.jar
       
rm -f org.python.pydev.debug_%{version}.%{qualifier}/xmlrpc-server-3.1.jar
ln -sf %{_javadir}/xmlrpc3-server.jar \
       org.python.pydev.debug_%{version}.%{qualifier}/xmlrpc-server-3.1.jar

rm -rf org.python.pydev.jython_%{version}.%{qualifier}/jython.jar
ln -sf %{_javadir}/jython.jar \
       org.python.pydev.jython_%{version}.%{qualifier}/jython.jar
popd

# rename cgi.py's shebang from /usr/local/bin/python to /usr/bin/env python
sed -i 's/\/usr\/local\/bin\/python/\/usr\/bin\/env python/' ${RPM_BUILD_ROOT}%{install_loc}/pydev/eclipse/plugins/org.python.pydev.jython_%{version}.%{qualifier}/Lib/cgi.py
# convert .py$ files from mode 0644 to mode 0755
chmod 0755 `find ${RPM_BUILD_ROOT} -name '*\.py' -perm 0644 | xargs`

# convert '\r\n' end-of-lines to *unix-like '\n'
# sed -i 's/\r//' `find ${RPM_BUILD_ROOT} -name '*\.py' | xargs`


%clean 
rm -rf ${RPM_BUILD_ROOT}

%files
%defattr(-,root,root,-)
%{install_loc}/pydev

%files mylyn
%defattr(-,root,root,-)
%{install_loc}/pydev-mylyn

%changelog
* Fri Feb 20 2009 Alexander Kurtakov <akurtako@redhat.com> 1:1.4.3-1
- Update to 1.4.3.
- Adapt to upstream usage of qualifier.
- Use %%global instead of %%define.

* Sat Jan 31 2009 Michal Nowak <mnowak@redhat.com> 1:1.4.2-2
- %%defattr(-,root,root,-) for mylyn sub-package
- Disable building -debuginfo due to psyco problems; resolves: rhbz#483357

* Wed Jan 14 2009 Alexander Kurtakov <akurtako@redhat.com> 1:1.4.2-1
- Update to 1.4.2.

* Thu Dec 25 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.4.0-1
- Update to 1.4.0 - adds support for Python 2.6/3.0.
- Use system jakarta-commons-logging and xmlrpc3.
- Drop arch checks for mylyn - it is noarch now.

* Mon Dec 15 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.3.24-4
- This package is not noarch due to python-psyco and mylyn issues on different platforms.

* Thu Dec 11 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.3.24-3
- Require python-psyco to speed up debuging.

* Mon Dec 01 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 1:1.3.24-2
- Rebuild for Python 2.6

* Mon Oct 27 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.3.24-1
- 1.3.24

* Sun Oct 26 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.3.23-1
- 1.3.23

* Fri Oct 17 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.3.22-1
- 1.3.22

* Fri Oct 17 2008 Alexander Kurtakov <akurtako@redhat.com> 1:1.3.20-2
- Drop gcj support.
- Split mydev support to subpackage to correct dependencies.
- Drop eclipse-mylyn-ide BR - it is merged into eclipse-mylyn.

* Tue Oct 14 2008 Michal Nowak <mnowak@redhat.com> 1:1.3.20-1
- bump to 1.3.20
- created general versioning scheme for version tag & tarball URI)
- sed: /usr/local/bin/python -> /usr/bin/env python in Jython's cgi.py
- convert .py$ files from mode 0644 to mode 0755
- possibility to convert '\r\n' end-of-lines to *nix-like '\n'
  in all '.py$' files

* Wed Jul 30 2008 Andrew Overholt <overholt@redhat.com> 1:1.3.18-1
- 1.3.18
- Update for building with Eclipse SDK 3.4
- Back-port patch from HEAD for building against Eclipse SDK 3.4

* Thu Jul 17 2008 Tom "spot" Callaway <tcallawa@redhat.com> 1:1.3.14-2
- fix license tag

* Mon Apr 07 2008 Jeff Johnston <jjohnstn@redhat.com> 1:1.3.14-1
- 1.3.14

* Fri Feb 01 2008 Jeff Johnston <jjohnstn@redhat.com> 1:1.3.12-1
- Resolves Bugzilla #431200
- 1.3.12

* Thu Sep 20 2007 Ben Konrath <bkonrath@redhat.com> 1:1.3.9-1
- 1.3.9

* Tue Aug 28 2007 Ben Konrath <bkonrath@redhat.com> 1:1.3.8-2
- Add pydev mylyn feature to all archs except ppc64.

* Fri Aug 24 2007 Ben Konrath <bkonrath@redhat.com> 1:1.3.8-1
- 1.3.8

* Fri Apr 27 2007 Igor Foox <ifoox@redhat.com> 1:1.3.1-5
- Add runtime dependancy on the JDT.
- Reorganize Requires and BuildRequires.

* Mon Apr 02 2007 Andrew Overholt <overholt@redhat.com> 1:1.3.1-4
- Remove some whitespace, fix lines > 80 characters.
- Remove unnecessary rm of junit.jar.
- pushd to a deeper directory to fix long lines.
- Add missing popd.
- Typo in buildroot.

* Mon Apr 02 2007 Igor Foox <ifoox@redhat.com> 1:1.3.1-3
- Remove ExclusiveArch.

* Sun Apr 01 2007 Igor Foox <ifoox@redhat.com> 1:1.3.1-2
- Add Jython as a BuildRequires and Requires.
- Fix buildroot.
- Add dist tag.
- Remove pkg_summary and eclipse_name macros.
- Remove eclipse-jdt and eclipse-pde from BR as they are required by PDE.
- Fix permissions on defattr.
- Fix long lines.
- Renumber and comment patches.
- Update and simplify source drop generation comment.

* Tue Mar 27 2007 Igor Foox <ifoox@redhat.com> 1:1.3.1-1
- Update to PyDev 1.3.1.

* Mon Mar 26 2007 Igor Foox <ifoox@redhat.com> 1:1.3.0-2
- Add dependency on jython.

* Sun Mar 25 2007 Igor Foox <ifoox@redhat.com> 1:1.3.0-1
- Update to version 1.3.0.
- Update fetch script to include refactoring package.
- Fixeup changelog epochs.
- Remove #! lines from .py files.

* Sat Mar 24 2007 Igor Foox <ifoox@redhat.com> 1:1.2.5-2
- Update to version 1.2.5.
- Include Jython functionality again.
- Fix spacing issues.
- Remove backport to Java 1.4. 
- Change build method to package-build.
- Include script to create the tarball.

* Wed Jun 28 2006 Igor Foox <ifoox@redhat.com> 1:1.1.0-1
- Updated to version 1.1.0 (still backported)
- Excluded Jython functionality
- Removed _fc from version
- Indented

* Thu Feb 09 2006 Igor Foox <ifoox@redhat.com> 1:1.0.6_fc-1
- Building backported version.

* Thu Feb 09 2006 Andrew Overholt <overholt@redhat.com> 1:0.9.3_fc-14
- Build against 3.1.2.

* Fri Dec 16 2005 Andrew Overholt <overholt@redhat.com> 1:0.9.3_fc-13
- Build against gcc 4.1.

* Thu Oct 27 2005 Andrew Overholt <overholt@redhat.com> 1:0.9.3_fc-12
- Re-build.

* Tue Aug 02 2005 Jeff Pound <jpound@redhat.com> 1:0.9.3_fc-11
- Add patch to make python 2.4 default (bz#164847).

* Fri Jul 15 2005 Andrew Overholt <overholt@redhat.com> 1:0.9.3_fc-10
- Use gbenson's new aot-compile-rpm.

* Fri Jul 08 2005 Jeff Pound <jpound@redhat.com> 1:0.9.3_fc-9
- Fix eclipse build specification to be arch independant.
- Fix build.properties javacDebugInfo flag (Robin Green bz#161534)
- Add -g compile option (Robin Green bz#161534)

* Tue Jul 05 2005 Jeff Pound <jpound@redhat.com> 1:0.9.3_fc-8
- Apply Robin Greens patch to explicitly specify archive format (bz#162517)
- Fix spec file description.

* Tue Apr 26 2005 Andrew Overholt <overholt@redhat.com> 1:0.9.3_fc-7
- Re-organize and make use of scripts.
- Remove old tarball from sources.

* Tue Apr 26 2005 Jeff Pound <jpound@redhat.com> 1:0.9.3_fc-6
- Swap zip logic for tarball logic.
- Upgrade to 0.9.3.
- Remove 3.1 compat patch (included in 0.9.3).

* Fri Mar 4 2005 Phil Muldoon <pmuldoon@redhat.com> 1:0.9.0-4_fc
- Added x86_64 to ExclusiveArch

* Thu Mar 3 2005 Jeffrey Pound <jpound@redhat.com> 1:0.9.0-3_fc
- Rewrite for native build.
- Change gcc4 to gcc.
- Add python as requirement.
- Remove -g option for gcj.

* Tue Feb 08 2005 Jeff Pound <jpound@redhat.com> 1:0.9.0-1_fc
- Initial version