# TODO: # - migrate compare API patch (patch33) to 3.2 final # - migrate cairo patch (patch43) to 3.2 final # - migrate GNU formatter patches (patch20, patch21) to 3.2 final # - comment on this bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=126648 Epoch: 1 %define gcj_support 1 %define tomcatsharedir %{_datadir}/tomcat5 %define tomcatlibdir %{_var}/lib/tomcat5 %define section free %define eclipse_major 3 %define eclipse_minor 2 %define eclipse_majmin %{eclipse_major}.%{eclipse_minor} %define eclipse_micro 1 %define libname libswt3 # All arches line up except i386 -> x86 %ifarch %{ix86} %define eclipse_arch x86 %else %define eclipse_arch %{_arch} %endif Summary: An open, extensible IDE Name: eclipse Version: %{eclipse_majmin}.%{eclipse_micro} Release: 21%{?dist} License: EPL Group: Text Editors/Integrated Development Environments (IDE) URL: http://www.eclipse.org/ Source0: http://download.eclipse.org/eclipse/downloads/drops/R-3.2.1-200609210945/eclipse-sourceBuild-srcIncluded-3.2.1.zip Source2: %{name}.desktop Source5: %{name}-48.png # FIXME: this should be in its own package Source7: ftp://ftp.software.ibm.com/software/globalization/icu/icu4j/3.4.5/icu4jsrc_3_4_5.jar Source11: %{name}-fedora-splash-3.2.1.png Source16: %{name}-copy-platform.sh Source17: efj.sh.in Source18: ecj.sh.in # https://bugs.eclipse.org/bugs/show_bug.cgi?id=90535 Source19: %{name}-filenamepatterns.txt # cvs -d :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse co equinox-incubator/org.eclipse.equinox.initializer # tar cjf eclipse-fileinitializerapp.tar.bz2 equinox-incubator/ # (generated 2006-11-01 18:48 UTC) Source20: %{name}-fileinitializerapp.tar.bz2 # Build libswt-mozilla and libswt-cairo and use O2 # https://bugs.eclipse.org/bugs/show_bug.cgi?id=71637 Patch0: %{name}-libswt-enableallandO2.patch # Build JNI libs # FIXME: these should be built by upstream build method # http://www.bagu.org/eclipse/plugin-source-drops.html # https://bugs.eclipse.org/bugs/show_bug.cgi?id=71637 # https://bugs.eclipse.org/bugs/show_bug.cgi?id=86848 # GNU XML issue identified by Michael Koch Patch2: %{name}-build.patch Patch3: %{name}-icu4j-build-files.patch Patch4: %{name}-libupdatebuild.patch Patch5: %{name}-libupdatebuild2.patch # Build swttools.jar # https://bugs.eclipse.org/bugs/show_bug.cgi?id=90364 Patch18: %{name}-swttools.patch # GNU-style JDT formatter # https://bugs.eclipse.org/bugs/show_bug.cgi?id=91770 #Patch20: %{name}-gnuformatterjdt.patch #Patch21: %{name}-gnuformatterjdtui.patch # https://bugs.eclipse.org/bugs/show_bug.cgi?id=114001 Patch38: %{name}-helpindexbuilder.patch Patch40: %{name}-usebuiltlauncher.patch ## Build cairo native libs #Patch43: %{name}-libswt-cairo1.0-3.patch Patch46: %{name}-libswt-xpcomgcc4.patch Patch47: %{name}-launcher-set-install-dir-and-shared-config.patch # Don't attempt to link to Sun's javadocs Patch48: %{name}-javadoclinks.patch # Always generate debug info when building RPMs (Andrew Haley) Patch49: %{name}-ecj-rpmdebuginfo.patch # generic releng plugins that can be used to build plugins # see this thread for deails: # https://www.redhat.com/archives/fedora-devel-java-list/2006-April/msg00048.html Patch53: %{name}-pde.build-add-package-build.patch # We need to disable junit4 and apt until GCJ can handle Java5 code Patch55: %{name}-disable-junit4-apt.patch # These patches need to go upstream # https://bugs.eclipse.org/bugs/show_bug.cgi?id=98371 Patch28: %{name}-tomcat55.patch Patch29: %{name}-tomcat55-build.patch Patch31: %{name}-webapp-tomcat55.patch # https://bugs.eclipse.org/bugs/show_bug.cgi?id=98707 # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=178726 Patch33: %{name}-compare-create-api.patch # https://bugs.eclipse.org/bugs/show_bug.cgi?id=90630 Patch22: %{name}-updatehomedir.patch # JPackage []s in names of symlinks ... # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=162177 Patch34: %{name}-ecj-square-bracket-classpath.patch # Use ecj for gcj Patch57: %{name}-ecj-gcj.patch # Build against firefox: # - fix swt profile include path # - don't compile the mozilla 1.7 / firefox profile library -- build it inline # - don't use symbols not in our firefox builds # FIXME: add reference(s) to discussion(s) and bug(s) # Note: I made this patch from within Eclipse and then did the following to # it due to spaces in the paths: # sed --in-place "s/Eclipse\ SWT\ Mozilla/Eclipse_SWT_Mozilla/g" eclipse-swt-firefox.patch # sed --in-place "s/Eclipse\ SWT\ PI/Eclipse_SWT_PI/g" eclipse-swt-firefox.patch Patch59: %{name}-swt-firefox.patch Patch60: %{name}-swt-firefox.2.patch # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=209393 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29853 Patch61: %{name}-workaround-plugin.xml-parsing-bug-gcc-bz29853.patch Patch100: customBuildCallbacks.xml-add-pre.gather.bin.parts.patch # Add ppc64 to the list of arches with gre64.conf # part of https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=207016 Patch101: %{name}-ppc64gre64.patch %if %{gcj_support} %else ExclusiveArch: %{ix86} x86_64 ppc ia64 sparc sparc64 %endif BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot BuildRequires: ant BuildRequires: jpackage-utils >= 0:1.5, make, gcc BuildRequires: gnome-vfs2-devel BuildRequires: gtk2-devel BuildRequires: glib2-devel BuildRequires: libgnome-devel BuildRequires: libgnomeui-devel BuildRequires: gcc-c++ BuildRequires: firefox-devel BuildRequires: nspr-devel BuildRequires: libXtst-devel BuildRequires: mesa-libGL-devel BuildRequires: mesa-libGLU-devel BuildRequires: cairo >= 1.0 BuildRequires: unzip BuildRequires: java-javadoc BuildRequires: dos2unix %if %{gcj_support} BuildRequires: gcc-java >= 4.0.2 BuildRequires: java-gcj-compat-devel >= 1.0.64 BuildRequires: gjdoc >= 0.7.7-14 %else BuildRequires: java-devel >= 1.4.2 %endif #BuildRequires: ant-antlr ant-apache-bcel ant-apache-bsf ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging BuildRequires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642 #BuildRequires: ant-commons-net BuildRequires: ant-javamail ant-jdepend ant-junit ant-nodeps ant-swing ant-trax ant-jsch BuildRequires: jsch >= 0:0.1.28-1jpp BuildRequires: jakarta-commons-beanutils jakarta-commons-collections jakarta-commons-digester jakarta-commons-dbcp jakarta-commons-el jakarta-commons-fileupload jakarta-commons-launcher jakarta-commons-logging jakarta-commons-modeler jakarta-commons-pool BuildRequires: mx4j >= 2.1 BuildRequires: tomcat5 >= 5.5.17 BuildRequires: tomcat5-jasper >= 5.5.17 BuildRequires: tomcat5-servlet-2.4-api >= 5.5.17 BuildRequires: lucene BuildRequires: regexp BuildRequires: junit >= 3.8.1-3jpp %if %{gcj_support} Requires(post,postun): java-gcj-compat >= 1.0.64 %endif %description The Eclipse Platform is designed for building integrated development environments (IDEs) that can be used to create applications as diverse as web sites, embedded Java(tm) programs, C++ programs, and Enterprise JavaBeans(tm). %package ecj Summary: Eclipse Compiler for Java Group: Development/Languages Obsoletes: ecj Provides: ecj %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post,postun): java-gcj-compat >= 1.0.64 %else Requires: java >= 1.4.2 %endif %description ecj Eclipse compiler for Java. %package -n %{libname}-gtk2 Summary: SWT Library for GTK2 Group: Text Editors/Integrated Development Environments (IDE) %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post,postun): java-gcj-compat >= 1.0.64 %endif Requires: firefox Conflicts: mozilla %description -n %{libname}-gtk2 SWT Library for GTK2. %package rcp Summary: Eclipse Rich Client Platform Group: Development/Languages Requires: %{libname}-gtk2 = %{epoch}:%{version}-%{release} Requires: %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_3.2.1.v3235.jar Requires(post,postun): %{libname}-gtk2 = %{epoch}:%{version}-%{release} %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post,postun): java-gcj-compat >= 1.0.64 %else Requires: java >= 1.4.2 %endif %description rcp Eclipse Rich Client Platform %package rcp-sdk Summary: Eclipse RCP Source Group: Text Editors/Integrated Development Environments (IDE) # FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy Provides: %{name}-rcp-devel Obsoletes: %{name}-rcp-devel Requires: %{name}-rcp = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-rcp = %{epoch}:%{version}-%{release} #FIXME: fix description to include docs %description rcp-sdk Source for RCP for use within Eclipse. %package platform Summary: Eclipse platform common files Group: Text Editors/Integrated Development Environments (IDE) %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires: java-gcj-compat >= 1.0.64 Requires(post,postun): java-gcj-compat >= 1.0.64 %else Requires: java >= 1.4.2 %endif Requires: %{name}-rcp = %{epoch}:%{version}-%{release} Requires: %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_3.2.1.v3235.jar Requires(post,postun): %{name}-rcp = %{epoch}:%{version}-%{release} BuildRequires: gtk2 >= 2.6 Requires: gtk2 >= 2.6 Requires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging #Requires: ant-antlr ant-apache-bcel ant-apache-bsf ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642 #Requires: ant-commons-net Requires: ant-javamail ant-jdepend ant-junit ant-nodeps ant-swing ant-trax ant-jsch Requires: jakarta-commons-beanutils jakarta-commons-collections jakarta-commons-digester jakarta-commons-dbcp jakarta-commons-el jakarta-commons-fileupload jakarta-commons-launcher jakarta-commons-logging jakarta-commons-modeler jakarta-commons-pool Requires: mx4j >= 2.1 Requires: tomcat5 >= 5.5.17 Requires: tomcat5-jasper >= 5.5.17 Requires: tomcat5-servlet-2.4-api >= 5.5.17 Requires: lucene Requires: regexp %description platform Eclipse platform common files. This package now contains the GTK2 UI (the former eclipse-gtk2 package). %package platform-sdk Summary: Eclipse platform Source Group: Text Editors/Integrated Development Environments (IDE) # FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy Provides: %{name}-platform-devel Obsoletes: %{name}-platform-devel Requires: %{name}-platform = %{epoch}:%{version}-%{release} Requires: %{name}-rcp-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-platform = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-rcp-sdk = %{epoch}:%{version}-%{release} Requires: java-javadoc #FIXME: fix description to include docs %description platform-sdk Source for Eclipse platform for use within Eclipse. %package jdt Summary: Eclipse Java development tools Group: Text Editors/Integrated Development Environments (IDE) Requires: %{name}-platform = %{epoch}:%{version}-%{release} Requires: %{name}-ecj = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-platform = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-ecj = %{epoch}:%{version}-%{release} Requires: junit >= 3.8.1-3jpp %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post,postun): java-gcj-compat >= 1.0.64 %endif %description jdt Eclipse Java developments tools. %package jdt-sdk Summary: Eclipse JDT Source Group: Text Editors/Integrated Development Environments (IDE) # FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy Provides: %{name}-jdt-devel Obsoletes: %{name}-jdt-devel Requires: %{name}-jdt = %{epoch}:%{version}-%{release} Requires: %{name}-platform-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-jdt = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-platform-sdk = %{epoch}:%{version}-%{release} Requires: java-javadoc #FIXME: fix description to include docs %description jdt-sdk Source for JDT for use within Eclipse. %package pde Summary: Eclipse PDE Group: Text Editors/Integrated Development Environments (IDE) Requires: %{name}-jdt = %{epoch}:%{version}-%{release} Requires: %{name}-pde-runtime = %{epoch}:%{version}-%{release} Requires: %{name}-platform-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-jdt = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-pde-runtime = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-platform-sdk = %{epoch}:%{version}-%{release} %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post,postun): java-gcj-compat >= 1.0.64 %endif %description pde Eclipse Plug-in Development Environment. %package pde-runtime Summary: Eclipse PDE runtime plugin. Group: Text Editors/Integrated Development Environments (IDE) Requires: %{name}-platform = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-platform = %{epoch}:%{version}-%{release} %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post): java-gcj-compat >= 1.0.64 Requires(postun): java-gcj-compat >= 1.0.64 %endif %description pde-runtime Eclipse Plug-in Development Environment runtime plugin (org.eclipse.pde.runtime). %package pde-sdk Summary: Eclipse PDE Source Group: Text Editors/Integrated Development Environments (IDE) Requires: %{name}-pde = %{epoch}:%{version}-%{release} Requires: %{name}-jdt-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-pde = %{epoch}:%{version}-%{release} #FIXME: fix description to include docs %description pde-sdk Source for Eclipse Plug-in Development Environment for use within Eclipse. %package sdk Summary: Eclipse PDE Source Group: Text Editors/Integrated Development Environments (IDE) # FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy Provides: %{name}-pde-devel Obsoletes: %{name}-pde-devel Requires: %{name}-platform-sdk = %{epoch}:%{version}-%{release} Requires: %{name}-jdt-sdk = %{epoch}:%{version}-%{release} Requires: %{name}-pde-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-platform-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-pde-sdk = %{epoch}:%{version}-%{release} Requires(post,postun): %{name}-jdt-sdk = %{epoch}:%{version}-%{release} # This file requirement is to deal with the biarch installation case Requires(post,postun): %{_libdir}/%{name}/configuration/config.ini %if %{gcj_support} Requires: libgcj >= 4.0.2 Requires(post,postun): java-gcj-compat >= 1.0.64 %endif #FIXME: fix description to be better %description sdk The Eclipse Plug-in Development Environment SDK. This package allows you to create an IDE based on Eclipse. %prep %setup -q -c # I hate spaces in paths with patch! pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library %patch0 -p0 popd %patch2 -p0 %patch4 -p0 %patch5 -p0 pushd plugins/org.eclipse.swt.gtk.linux.x86_64 %patch18 -p0 popd %patch22 -p0 # tomcat patches pushd plugins/org.eclipse.tomcat %patch28 -p0 %patch29 -p0 popd sed --in-place "s/4.1.130/5.5.17/" \ features/org.eclipse.platform/build.xml \ plugins/org.eclipse.tomcat/build.xml \ assemble.*.xml pushd plugins/org.eclipse.help.webapp %patch31 -p0 popd pushd plugins/org.eclipse.compare #%patch33 -p0 popd pushd plugins/org.eclipse.jdt.core %patch34 -p0 %patch57 -p0 popd %patch38 -p0 %patch40 -p0 #%patch43 pushd plugins/org.eclipse.swt/Eclipse\ SWT\ Mozilla/common/library %patch46 popd # Because the launcher source is zipped up, we need to unzip, patch, and re-pack # FIXME: figure out why we need to patch and sed twice and fix upstream mkdir launchertmp unzip -qq -d launchertmp plugins/org.eclipse.platform/launchersrc.zip pushd launchertmp %patch47 -p0 %patch101 -p0 # put the configuration directory in an arch specific location sed --in-place "s:/usr/lib/eclipse/configuration:%{_libdir}/%{name}/configuration:" library/eclipse.c # make the eclipse install relocatable sed --in-place "s:/usr/share/eclipse:%{_datadir}/%{name}:" library/eclipse.c zip -q -9 -r ../launchersrc.zip * popd mv launchersrc.zip plugins/org.eclipse.platform rm -rf launchertmp pushd features/org.eclipse.platform.launchers %patch47 -p0 %patch101 -p0 # put the configuration directory in an arch specific location sed --in-place "s:/usr/lib/eclipse:%{_libdir}/%{name}:" library/eclipse.c # make the eclipse install relocatable sed --in-place "s:/usr/share/eclipse:%{_datadir}/%{name}:" library/eclipse.c popd # Link against our system-installed javadocs %patch48 -p0 sed --in-place "s:/usr/share/:%{_datadir}/:g" \ plugins/org.eclipse.jdt.doc.isv/jdtOptions.txt \ plugins/org.eclipse.pde.doc.user/pdeOptions.txt \ plugins/org.eclipse.pde.doc.user/pdeOptions \ plugins/org.eclipse.platform.doc.isv/platformOptions.txt %patch49 -p0 pwd pushd plugins/org.eclipse.pde.build %patch53 sed --in-place "s:@eclipse_base@:%{_datadir}/%{name}:" templates/package-build/build.properties popd %patch55 -p0 rm plugins/org.junit4/junit-4.1.jar # I love directories with spaces in their names pushd plugins/org.eclipse.swt mv "Eclipse SWT Mozilla" Eclipse_SWT_Mozilla mv "Eclipse SWT PI" Eclipse_SWT_PI %patch59 mv Eclipse_SWT_Mozilla "Eclipse SWT Mozilla" mv Eclipse_SWT_PI "Eclipse SWT PI" popd pushd plugins/org.eclipse.swt.tools mv "JNI Generation" JNI_Generation %patch60 mv JNI_Generation "JNI Generation" popd # workaround for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29853 pushd plugins/org.eclipse.pde.core %patch61 popd # FIXME check if this has been applied upstream pushd plugins/org.eclipse.platform.doc.isv %patch100 -p0 popd pushd plugins/org.eclipse.platform.doc.user %patch100 -p0 popd pushd plugins/org.eclipse.platform cp %{SOURCE11} splash.bmp popd # FIXME this should be patched upstream with a flag to turn on and off # all output should be directed to stdout find -type f -name \*.xml -exec sed --in-place -r "s/output=\".*(txt|log).*\"//g" "{}" \; # Remove existing .sos find -name \*.so | xargs rm # Symlinks ## BEGIN ANT ## rm plugins/org.apache.ant/lib/ant-antlr.jar rm plugins/org.apache.ant/lib/ant-antlrsrc.zip rm plugins/org.apache.ant/lib/ant-apache-bcel.jar rm plugins/org.apache.ant/lib/ant-apache-bcelsrc.zip #rm plugins/org.apache.ant/lib/ant-apache-bsf.jar #rm plugins/org.apache.ant/lib/ant-apache-bsfsrc.zip rm plugins/org.apache.ant/lib/ant-apache-log4j.jar rm plugins/org.apache.ant/lib/ant-apache-log4jsrc.zip rm plugins/org.apache.ant/lib/ant-apache-oro.jar rm plugins/org.apache.ant/lib/ant-apache-orosrc.zip rm plugins/org.apache.ant/lib/ant-apache-regexp.jar rm plugins/org.apache.ant/lib/ant-apache-regexpsrc.zip rm plugins/org.apache.ant/lib/ant-apache-resolver.jar rm plugins/org.apache.ant/lib/ant-apache-resolversrc.zip rm plugins/org.apache.ant/lib/ant-commons-logging.jar rm plugins/org.apache.ant/lib/ant-commons-loggingsrc.zip rm plugins/org.apache.ant/lib/ant-commons-net.jar rm plugins/org.apache.ant/lib/ant-commons-netsrc.zip rm plugins/org.apache.ant/lib/ant-icontract.jar rm plugins/org.apache.ant/lib/ant-icontractsrc.zip rm plugins/org.apache.ant/lib/ant-jai.jar rm plugins/org.apache.ant/lib/ant-jaisrc.zip rm plugins/org.apache.ant/lib/ant.jar rm plugins/org.apache.ant/lib/antsrc.zip rm plugins/org.apache.ant/lib/ant-javamail.jar rm plugins/org.apache.ant/lib/ant-javamailsrc.zip rm plugins/org.apache.ant/lib/ant-jdepend.jar rm plugins/org.apache.ant/lib/ant-jdependsrc.zip rm plugins/org.apache.ant/lib/ant-jmf.jar rm plugins/org.apache.ant/lib/ant-jmfsrc.zip rm plugins/org.apache.ant/lib/ant-jsch.jar rm plugins/org.apache.ant/lib/ant-jschsrc.zip rm plugins/org.apache.ant/lib/ant-junit.jar rm plugins/org.apache.ant/lib/ant-junitsrc.zip rm plugins/org.apache.ant/lib/ant-launcher.jar rm plugins/org.apache.ant/lib/ant-launchersrc.zip rm plugins/org.apache.ant/lib/ant-netrexx.jar rm plugins/org.apache.ant/lib/ant-netrexxsrc.zip rm plugins/org.apache.ant/lib/ant-nodeps.jar rm plugins/org.apache.ant/lib/ant-nodepssrc.zip rm plugins/org.apache.ant/lib/ant-starteam.jar rm plugins/org.apache.ant/lib/ant-starteamsrc.zip rm plugins/org.apache.ant/lib/ant-stylebook.jar rm plugins/org.apache.ant/lib/ant-stylebooksrc.zip rm plugins/org.apache.ant/lib/ant-swing.jar rm plugins/org.apache.ant/lib/ant-swingsrc.zip rm plugins/org.apache.ant/lib/ant-trax.jar rm plugins/org.apache.ant/lib/ant-traxsrc.zip rm plugins/org.apache.ant/lib/ant-vaj.jar rm plugins/org.apache.ant/lib/ant-vajsrc.zip rm plugins/org.apache.ant/lib/ant-weblogic.jar rm plugins/org.apache.ant/lib/ant-weblogicsrc.zip rm plugins/org.apache.ant/lib/ant-xalan1.jar rm plugins/org.apache.ant/lib/ant-xalan1src.zip rm plugins/org.apache.ant/lib/ant-xslp.jar rm plugins/org.apache.ant/lib/ant-xslpsrc.zip # FIXME use build-jar-repository ln -s %{_javadir}/ant/ant-antlr.jar plugins/org.apache.ant/lib/ant-antlr.jar ln -s %{_javadir}/ant/ant-apache-bcel.jar plugins/org.apache.ant/lib/ant-apache-bcel.jar #ln -s %{_javadir}/ant/ant-apache-bsf.jar plugins/org.apache.ant/lib/ant-apache-bsf.jar ln -s %{_javadir}/ant/ant-apache-log4j.jar plugins/org.apache.ant/lib/ant-apache-log4j.jar ln -s %{_javadir}/ant/ant-apache-oro.jar plugins/org.apache.ant/lib/ant-apache-oro.jar ln -s %{_javadir}/ant/ant-apache-regexp.jar plugins/org.apache.ant/lib/ant-apache-regexp.jar ln -s %{_javadir}/ant/ant-apache-resolver.jar plugins/org.apache.ant/lib/ant-apache-resolver.jar ln -s %{_javadir}/ant/ant-commons-logging.jar plugins/org.apache.ant/lib/ant-commons-logging.jar # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642 # the symlinks that are commented out are not currently shipped on Fedora #ln -s %{_javadir}/ant/ant-commons-net.jar plugins/org.apache.ant/lib/ant-commons-net.jar #ln -s %{_javadir}/ant/ant-icontract.jar plugins/org.apache.ant/lib/ant-icontract.jar #ln -s %{_javadir}/ant/ant-jai.jar plugins/org.apache.ant/lib/ant-jai.jar ln -s %{_javadir}/ant.jar plugins/org.apache.ant/lib/ant.jar ln -s %{_javadir}/ant/ant-javamail.jar plugins/org.apache.ant/lib/ant-javamail.jar ln -s %{_javadir}/ant/ant-jdepend.jar plugins/org.apache.ant/lib/ant-jdepend.jar #ln -s %{_javadir}/ant/ant-jmf.jar plugins/org.apache.ant/lib/ant-jmf.jar ln -s %{_javadir}/ant/ant-jsch.jar plugins/org.apache.ant/lib/ant-jsch.jar ln -s %{_javadir}/ant/ant-junit.jar plugins/org.apache.ant/lib/ant-junit.jar ln -s %{_javadir}/ant-launcher.jar plugins/org.apache.ant/lib/ant-launcher.jar #ln -s %{_javadir}/ant/ant-netrexx.jar plugins/org.apache.ant/lib/ant-netrexx.jar ln -s %{_javadir}/ant/ant-nodeps.jar plugins/org.apache.ant/lib/ant-nodeps.jar #ln -s %{_javadir}/ant/ant-starteam.jar plugins/org.apache.ant/lib/ant-starteam.jar #ln -s %{_javadir}/ant/ant-stylebook.jar plugins/org.apache.ant/lib/ant-stylebook.jar ln -s %{_javadir}/ant/ant-swing.jar plugins/org.apache.ant/lib/ant-swing.jar ln -s %{_javadir}/ant/ant-trax.jar plugins/org.apache.ant/lib/ant-trax.jar #ln -s %{_javadir}/ant/ant-vaj.jar plugins/org.apache.ant/lib/ant-vaj.jar #ln -s %{_javadir}/ant/ant-weblogic.jar plugins/org.apache.ant/lib/ant-weblogic.jar #ln -s %{_javadir}/ant/ant-xalan1.jar plugins/org.apache.ant/lib/ant-xalan1.jar #ln -s %{_javadir}/ant/ant-xslp.jar plugins/org.apache.ant/lib/ant-xslp.jar ## END ANT ## # BEGIN LUCENE ## rm plugins/org.apache.lucene/lucene-1.4.3.jar # FIXME: Remove this zip until we have a lucene-devel package containing it. # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=170343 rm plugins/org.apache.lucene/lucene-1.4.3-src.zip ln -s %{_javadir}/lucene.jar plugins/org.apache.lucene/lucene-1.4.3.jar # END LUCENE ## ## BEGIN TOMCAT ## rm plugins/org.eclipse.tomcat/commons-beanutils.jar rm plugins/org.eclipse.tomcat/commons-collections.jar rm plugins/org.eclipse.tomcat/commons-digester.jar rm plugins/org.eclipse.tomcat/commons-logging-api.jar rm plugins/org.eclipse.tomcat/commons-modeler.jar rm plugins/org.eclipse.tomcat/jakarta-regexp-1.3.jar rm plugins/org.eclipse.tomcat/servlet.jar rm plugins/org.eclipse.tomcat/servlets-manager.jar rm plugins/org.eclipse.tomcat/naming-common.jar rm plugins/org.eclipse.tomcat/servlets-common.jar rm plugins/org.eclipse.tomcat/tomcat-http11.jar rm plugins/org.eclipse.tomcat/bootstrap.jar rm plugins/org.eclipse.tomcat/catalina.jar rm plugins/org.eclipse.tomcat/jasper-compiler.jar rm plugins/org.eclipse.tomcat/jasper-runtime.jar rm plugins/org.eclipse.tomcat/mx4j-jmx.jar rm plugins/org.eclipse.tomcat/naming-resources.jar rm plugins/org.eclipse.tomcat/naming-factory.jar rm plugins/org.eclipse.tomcat/servlets-default.jar rm plugins/org.eclipse.tomcat/servlets-invoker.jar rm plugins/org.eclipse.tomcat/tomcat-coyote.jar rm plugins/org.eclipse.tomcat/tomcat-util.jar mkdir -p plugins/org.eclipse.tomcat/lib ln -s %{tomcatsharedir}/bin/bootstrap.jar plugins/org.eclipse.tomcat/lib/bootstrap.jar ln -s %{tomcatlibdir}/server/lib/catalina.jar plugins/org.eclipse.tomcat/lib/catalina.jar ln -s %{tomcatlibdir}/server/lib/catalina-optional.jar plugins/org.eclipse.tomcat/lib/catalina-optional.jar ln -s %{_javadir}/jasper5-compiler.jar plugins/org.eclipse.tomcat/lib/jasper-compiler.jar ln -s %{_javadir}/jasper5-runtime.jar plugins/org.eclipse.tomcat/lib/jasper-runtime.jar ln -s %{_javadir}/mx4j/mx4j.jar plugins/org.eclipse.tomcat/lib/mx4j.jar ln -s %{_javadir}/mx4j/mx4j-impl.jar plugins/org.eclipse.tomcat/lib/mx4j-impl.jar ln -s %{_javadir}/mx4j/mx4j-jmx.jar plugins/org.eclipse.tomcat/lib/mx4j-jmx.jar ln -s %{tomcatlibdir}/common/lib/naming-factory.jar plugins/org.eclipse.tomcat/lib/naming-factory.jar ln -s %{tomcatlibdir}/common/lib/naming-resources.jar plugins/org.eclipse.tomcat/lib/naming-resources.jar ln -s %{tomcatlibdir}/server/lib/servlets-default.jar plugins/org.eclipse.tomcat/lib/servlets-default.jar ln -s %{tomcatlibdir}/server/lib/servlets-invoker.jar plugins/org.eclipse.tomcat/lib/servlets-invoker.jar ln -s %{tomcatlibdir}/server/lib/tomcat-coyote.jar plugins/org.eclipse.tomcat/lib/tomcat-coyote.jar ln -s %{tomcatlibdir}/server/lib/tomcat-http.jar plugins/org.eclipse.tomcat/lib/tomcat-http.jar ln -s %{tomcatlibdir}/server/lib/tomcat-util.jar plugins/org.eclipse.tomcat/lib/tomcat-util.jar build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-beanutils build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-collections build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-dbcp build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-digester build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-digester-rss build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-el build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-fileupload build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-launcher build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-logging-api build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-modeler build-jar-repository -s -p plugins/org.eclipse.tomcat/lib commons-pool build-jar-repository -s -p plugins/org.eclipse.tomcat/lib jspapi build-jar-repository -s -p plugins/org.eclipse.tomcat/lib regexp build-jar-repository -s -p plugins/org.eclipse.tomcat/lib servletapi5 ## END TOMCAT ## build-jar-repository -s -p plugins/org.junit junit pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library # /usr/lib -> /usr/lib64 sed --in-place "s:/usr/lib/:%{_libdir}/:g" build.sh sed --in-place "s:-L\$(AWT_LIB_PATH):-L%{_jvmdir}/java/jre/lib/%{_arch}:" make_linux.mak popd # FIXME: figure out what's going on with build.index find plugins -type f -name \*.xml -exec sed --in-place "s/\(\)/<\!-- \1 -->/" "{}" \; # the swt version is set to HEAD on ia64 but shouldn't be # FIXME: file a bug about this # get swt version SWT_MAJ_VER=$(grep maj_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =) SWT_MIN_VER=$(grep min_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =) SWT_VERSION=$SWT_MAJ_VER$SWT_MIN_VER swt_frag_ver=$(grep v$SWT_VERSION plugins/org.eclipse.swt.gtk.linux.x86/build.xml | sed "s:.*<.*\"\(.*\)\"/>:\1:") swt_frag_ver_ia64=$(grep "version\.suffix\" value=" plugins/org.eclipse.swt.gtk.linux.ia64/build.xml | sed "s:.*<.*\"\(.*\)\"/>:\1:") sed --in-place "s/$swt_frag_ver_ia64/$swt_frag_ver/g" plugins/org.eclipse.swt.gtk.linux.ia64/build.xml \ assemble.org.eclipse.sdk.linux.gtk.ia64.xml \ features/org.eclipse.rcp/build.xml # nasty hack to get suppport for ppc64, s390(x) and sparc(64) # move all of the ia64 directories to ppc64 or s390(x) or sparc(64) dirs and replace # the ia64 strings with ppc64 or s390(x) %ifarch ppc64 s390 s390x sparc sparc64 # there is only partial support for ppc64 in 3.2 so we have to remove this # partial support to get the replacemnt hack to work find -name \*ppc64\* | xargs rm -r # remove remove ppc64 support from features/org.eclipse.platform.source/feature.xml # replace ppc64 with a fake arch (ppc128) so we don't have duplicate ant targets find -type f -name \*.xml -exec sed --in-place "s/\(rootFileslinux_gtk_\)ppc64/\1ppc128/g" "{}" \; # remove org.eclipse.platform.source.linux.gtk.ppc64,3.2.0.v20060602-0010-gszCh-8eOaU1uKq sed --in-place "s/,.\{38\}ppc64.*macosx/,org.eclipse.platform.source.macosx/g" features/org.eclipse.platform.source/build.xml # replace final occurances with an existing arch sed --in-place "s/ppc64/x86_64/g" features/org.eclipse.platform.source/build.xml # remove remove ppc64 support from features/org.eclipse.platform.source/feature.xml mv features/org.eclipse.platform.source/feature.xml features/org.eclipse.platform.source/feature.xml.orig grep -v ppc64 features/org.eclipse.platform.source/feature.xml.orig > features/org.eclipse.platform.source/feature.xml # finally the replacement hack for f in $(find -name \*ia64\* | grep -v motif | grep -v ia64_32); do mv $f $(echo $f | sed "s/ia64/%{_arch}/") done find -type f -exec sed --in-place "s/ia64_32/@eye-eh-64_32@/g" "{}" \; find -type f -exec sed --in-place "s/ia64/%{_arch}/g" "{}" \; find -type f -exec sed --in-place "s/@eye-eh-64_32@/ia64_32/g" "{}" \; %endif # gjdoc can't handle Mac-encoded files # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29167 pushd plugins for f in `find .. -name \*.java`; do file $f | grep "CR line" > /dev/null && mac2unix $f done popd # setup the jsch plugin build rm plugins/org.eclipse.team.cvs.ssh2/com.jcraft.jsch_*.jar # FIXME remove version number, file a bug about this pushd baseLocation/plugins # get the Manifest file unzip -qq -o -d com.jcraft.jsch_0.1.28.jar-build com.jcraft.jsch_*.jar -x com\* rm com.jcraft.jsch_*.jar popd # setup with the icu4j plugins for building pushd baseLocation/plugins rm com.ibm.icu.base_3.4.5.jar \ com.ibm.icu_3.4.5.jar \ com.ibm.icu.base.source_3.4.5/src/com.ibm.icu.base_3.4.5/src.zip \ com.ibm.icu.source_3.4.5/src/com.ibm.icu_3.4.5/src.zip mkdir -p icu4j-build-temp pushd icu4j-build-temp unzip -qq %{SOURCE7} sed --in-place "s/ .*bootclasspath=.*//g" build.xml ant eclipseProjects popd mkdir -p icu4j-build mv icu4j-build-temp/eclipseProjects/com.ibm.icu icu4j-build mv icu4j-build-temp/eclipseProjects/com.ibm.icu.base icu4j-build rm -r icu4j-build-temp # add build.xml patches pushd icu4j-build %patch3 -p1 popd popd # delete included jars # FIXME: file a bug about these rm plugins/org.eclipse.swt.win32.win32.x86/swt.jar \ plugins/org.eclipse.swt/extra_jars/exceptions.jar \ plugins/org.eclipse.swt.tools/swttools.jar \ features/org.eclipse.platform.launchers/bin/startup.jar # make sure there are no jars left JARS="" for j in $(find -name \*.jar); do if [ ! -L $j ]; then JARS="$JARS $j" fi done if [ ! -z "$JARS" ]; then echo "These jar should be deleted and symlinked to system jars: $JARS" #FIXME: enable exit 1 fi tar jxf %{SOURCE20} %build env ORIGCLASSPATH=$CLASSPATH # finish the jsch plugin build # FIXME remove version numbers # FIXME jar -V does not work for proprietary VMs pushd baseLocation/plugins/com.jcraft.jsch_0.1.28.jar-build unzip -qq %{_javadir}/jsch.jar -x META-INF\* sed --in-place "s/$(grep Created-By: META-INF/MANIFEST.MF)/Created-By: $(jar -V | head -1)/" META-INF/MANIFEST.MF jar -Mcf ../com.jcraft.jsch_0.1.28.jar * popd # FXIME don't delete this, do what icu4j does rm -r baseLocation/plugins/com.jcraft.jsch_0.1.28.jar-build # finish the icu4j build pushd baseLocation/plugins # build the icu.base plugin zipfile=$PWD/com.ibm.icu.base.source_3.4.5/src/com.ibm.icu.base_3.4.5/src.zip pushd icu4j-build/com.ibm.icu.base/src find -name \*.java | xargs touch --date=1/1/1970 zip -X -9 -r $zipfile . -i \*.java popd pushd icu4j-build/com.ibm.icu.base ant build.update.jar popd mv icu4j-build/com.ibm.icu.base/com.ibm.icu.base_3.4.5.jar . # build the icu plugin zipfile=$PWD/com.ibm.icu.source_3.4.5/src/com.ibm.icu_3.4.5/src.zip pushd icu4j-build/com.ibm.icu/src find -name \*.java | xargs touch --date=1/1/1970 zip -X -9 -r $zipfile . -i \*.java popd pushd icu4j-build/com.ibm.icu ant build.update.jar popd mv icu4j-build/com.ibm.icu/com.ibm.icu_3.4.5.jar . popd # Bootstrapping is 3 parts: # 1. Build ecj with gcj -C -- only necessary until gcjx/ecj lands in gcc # 2. Build ecj with gcj-built ecj ("javac") # 3. Re-build ecj with output of 2. %if %{gcj_support} # Unzip the "stable compiler" source into a temp dir and build it. # Note: we don't want to build the CompilerAdapter. mkdir ecj-bootstrap-tmp unzip -qq -d ecj-bootstrap-tmp jdtcoresrc/src/ecj.zip rm -f ecj-bootstrap-tmp/org/eclipse/jdt/core/JDTCompilerAdapter.java # 1a. Build ecj with gcj -C pushd ecj-bootstrap-tmp for f in `find -name '*.java' | cut -c 3- | LC_ALL=C sort`; do gcj -Wno-deprecated -C $f done find -name '*.class' -or -name '*.properties' -or -name '*.rsc' |\ xargs jar cf ../ecj-bootstrap.jar popd # Delete our modified ecj and restore the backup rm -rf ecj-bootstrap-tmp # 1b. Natively-compile it gcj -fPIC -fjni -findirect-dispatch -shared -Wl,-Bsymbolic \ -o ecj-bootstrap.jar.so ecj-bootstrap.jar gcj-dbtool -n ecj-bootstrap.db 30000 gcj-dbtool -a ecj-bootstrap.db ecj-bootstrap.jar{,.so} # 2a. Build ecj export CLASSPATH=ecj-bootstrap.jar:$ORIGCLASSPATH export ANT_OPTS="-Dgnu.gcj.precompiled.db.path=`pwd`/ecj-bootstrap.db" %endif ant -buildfile jdtcoresrc/compilejdtcorewithjavac.xml %if %{gcj_support} # 2b. Natively-compile ecj gcj -fPIC -fjni -findirect-dispatch -shared -Wl,-Bsymbolic \ -o jdtcoresrc/ecj.jar.so jdtcoresrc/ecj.jar gcj-dbtool -n jdtcoresrc/ecj.db 30000 gcj-dbtool -a jdtcoresrc/ecj.db jdtcoresrc/ecj.jar{,.so} # Remove our gcj-built ecj rm ecj-bootstrap.db ecj-bootstrap.jar{,.so} # To enSURE we're not using any pre-compiled ecj on the build system, set this export ANT_OPTS="-Dgnu.gcj.precompiled.db.path=`pwd`/jdtcoresrc/ecj.db" %endif # 3. Use this ecj to rebuild itself export CLASSPATH=`pwd`/jdtcoresrc/ecj.jar:$ORIGCLASSPATH ant -buildfile jdtcoresrc/compilejdtcore.xml %if %{gcj_support} # Natively-compile it gcj -fPIC -fjni -findirect-dispatch -shared -Wl,-Bsymbolic \ -o ecj.jar.so ecj.jar gcj-dbtool -n ecj.db 30000 gcj-dbtool -a ecj.db ecj.jar{,.so} export ANT_OPTS="-Dgnu.gcj.precompiled.db.path=`pwd`/ecj.db" # Remove old native bits rm jdtcoresrc/ecj.db jdtcoresrc/ecj.jar.so %endif # Build the rest of Eclipse export CLASSPATH=`pwd`/ecj.jar:$ORIGCLASSPATH export JAVA_HOME=%{java_home} ant \ -Dnobootstrap=true \ -DinstallOs=linux -DinstallWs=gtk -DinstallArch=%{eclipse_arch} \ -Dlibsconfig=true # Hack to get the -debuginfo source code references # to be pointing to the right place: # Hardlink all the org.* source we can find # Presumably, all the zipped source gets unzipped before compilation? #src_root=$PWD/plugins #pushd result #mkdir -p eclipse/org #collected_src_dir=$PWD/eclipse #cat >copyallsrc <<-EOF # #! /bin/bash -peu # cd "\$1" # echo "Copying all .java source files from \$1 to $collected_src_dir..." # find . -type f -name '*.java' -print0 \ # | xargs -0 -r cp -l --parents --target-directory=$collected_src_dir/org #EOF #chmod u+x copyallsrc ## Special case logic for SWT - only copy linux-gtk source #find $src_root -type d -a \( -name org.eclipse.swt -prune -o -name org -print0 \) | xargs -l -0 ./copyallsrc #./copyallsrc $src_root/org.eclipse.swt/Eclipse\ SWT/gtk/org #popd # Build the FileInitializer application SDK=$(cd eclipse && pwd) PDEPLUGINVERSION=$(ls $SDK/plugins | grep pde.build | sed 's/org.eclipse.pde.build_//') pushd equinox-incubator mkdir -p build mkdir -p home homedir=$(cd home && pwd) echo "" > build/assemble.org.eclipse.equinox.initializer.all.xml echo "" > build/package.org.eclipse.equinox.initializer.all.xml java -cp $SDK/startup.jar \ org.eclipse.core.launcher.Main \ -Duser.home=$homedir \ -application org.eclipse.ant.core.antRunner \ -Dtype=plugin \ -Did=org.eclipse.equinox.initializer \ -DsourceDirectory=$(pwd) \ -DbaseLocation=$SDK \ -Dbuilder=$SDK/plugins/org.eclipse.pde.build_$PDEPLUGINVERSION/templates/package-build \ -f $SDK/plugins/org.eclipse.pde.build_$PDEPLUGINVERSION/scripts/build.xml pushd build/plugins/org.eclipse.equinox.initializer java -cp $SDK/startup.jar \ org.eclipse.core.launcher.Main \ -Duser.home=$homedir \ -application org.eclipse.ant.core.antRunner \ -f build.xml build.update.jar popd popd %install rm -rf $RPM_BUILD_ROOT # get swt version SWT_MAJ_VER=$(grep maj_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =) SWT_MIN_VER=$(grep min_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =) SWT_VERSION=$SWT_MAJ_VER$SWT_MIN_VER install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name} tar -C $RPM_BUILD_ROOT%{_datadir} -zxf result/linux-gtk-%{eclipse_arch}-sdk.tar.gz cp equinox-incubator/org.eclipse.equinox.initializer/org.eclipse.equinox.initializer_*.jar \ $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name} # Install the platform specific fragments in an arch specific dir install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}/links echo "path:$RPM_BUILD_ROOT%{_libdir}" > $RPM_BUILD_ROOT%{_datadir}/%{name}/links/fragments.link echo "name=Eclipse Platform" > $RPM_BUILD_ROOT%{_libdir}/%{name}/.eclipseextension echo "id=org.eclipse.platform" >> $RPM_BUILD_ROOT%{_libdir}/%{name}/.eclipseextension echo "version=%{eclipse_majmin}.%{eclipse_micro}" >> $RPM_BUILD_ROOT%{_libdir}/%{name}/.eclipseextension install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/features # Install the platform specific fragments in an arch specific dir install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/*%{eclipse_arch}* $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins # platform.source has the launcher src zip which is platform specific PLATFORMSOURCEVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep platform.source_ | sed 's/org.eclipse.platform.source_//') mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform.source_$PLATFORMSOURCEVERSION \ $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins # help.webapp generates web.xml with Apache Jakarta Tomcat JspC. This file is # generated differently for different arches. FIXME investigate this. HELPWEBAPPVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep help.webapp_ | sed 's/org.eclipse.help.webapp_//') mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.help.webapp_$HELPWEBAPPVERSION \ $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins # update.core.linux is a fragment # FIXME: make a patch for upstream to change to swt fragment notation UPDATECORELINUXVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep update.core.linux_ | sed 's/org.eclipse.update.core.linux_//') mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.update.core.linux_$UPDATECORELINUXVERSION \ $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins # FIXME: icu4j generates res_index.txt differently on different arches - possible libgcj bug. mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/com.ibm.icu_3.4.5.jar $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/com.ibm.icu.source_3.4.5 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins # FIXME: there is a problem with gjdoc with this plugin PLATFORMDOCISVVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep platform.doc.isv_ | sed 's/org.eclipse.platform.doc.isv_//') mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform.doc.isv_$PLATFORMDOCISVVERSION \ $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins # To ensure that the product is org.eclipse.sdk.ide when eclipse-sdk is # installed, we must check for its presence at %%post{,un} time. This does not # work in the biarch case, though, if it is not in an arch-specific location. # This results in complaints that the sdk plugin is found twice, but this is # better than always appearing in the about dialog as the Eclipse Platform with # the platform plugin version number instead of the actual SDK version number. # -- overholt, 2006-11-03 mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.sdk_* $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins mv $RPM_BUILD_ROOT%{_datadir}/%{name}/features/org.eclipse.sdk_* $RPM_BUILD_ROOT%{_libdir}/%{name}/features mkdir -p home homedir=$(cd home && pwd) # FIXME: investigate why it doesn't work to set this -- configuration data is # always written to /usr/share/eclipse/configuration # -Dosgi.sharedConfiguration.area=$RPM_BUILD_ROOT%{_libdir}/%{name}/configuration \ # Extract .so files # https://bugs.eclipse.org/bugs/show_bug.cgi?id=90535 pushd $RPM_BUILD_ROOT datadir_path=$(echo %{_datadir}/%{name} | sed -e 's/^\///') libdir_path=$(echo %{_libdir}/%{name} | sed -e 's/^\///') java -Dosgi.sharedConfiguration.area=$libdir_path/configuration \ -cp $datadir_path/startup.jar \ org.eclipse.core.launcher.Main \ -consolelog \ -application org.eclipse.equinox.initializer.configInitializer \ -fileInitializer %{SOURCE19} popd # Make proper links file echo "path:/usr/lib" > $RPM_BUILD_ROOT%{_datadir}/%{name}/links/fragments.link echo "path:/usr/lib64" > $RPM_BUILD_ROOT%{_datadir}/%{name}/links/fragments64.link # Install config.ini to an arch dependent location and remove the unnecessary # configuration data mv $RPM_BUILD_ROOT%{_datadir}/%{name}/configuration $RPM_BUILD_ROOT%{_libdir}/%{name} rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/org.eclipse.update rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/org.eclipse.core.runtime # Where did these go? #rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/*.log # Set config.ini for the platform; no benefit to having it be sdk sed --in-place "s/eclipse.product=org.eclipse.sdk.ide/eclipse.product=org.eclipse.platform.ide/" \ $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/config.ini # Install the Eclipse binary install -d -m 755 $RPM_BUILD_ROOT%{_bindir} mv $RPM_BUILD_ROOT%{_datadir}/%{name}/eclipse $RPM_BUILD_ROOT%{_bindir}/%{name} # Ensure the shared libraries have the correct permissions pushd $RPM_BUILD_ROOT%{_libdir}/%{name} for lib in `find configuration -name \*.so`; do chmod 755 $lib done # Create file listings for the extracted shared objects echo -n "" > %{_builddir}/%{buildsubdir}/%{name}-platform.install; for id in `ls configuration/org.eclipse.osgi/bundles`; do if [ "Aconfiguration" = $(echo A`find configuration/org.eclipse.osgi/bundles/$id -name libswt\*.so` | sed "s:/.*::") ]; then echo "%{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles/$id" > %{_builddir}/%{buildsubdir}/%{libname}-gtk2.install; else echo "%{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles/$id" >> %{_builddir}/%{buildsubdir}/%{name}-platform.install; fi done popd # Install symlinks to the SWT JNI shared libraries in /usr/lib pushd $RPM_BUILD_ROOT%{_libdir} for lib in $(find %{name}/configuration -name libswt\*.so); do ln -s %{_libdir}/$lib `basename $lib` done popd # Install the SWT symlinks in libdir swtjarversion=$(grep v$SWT_VERSION plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}/build.xml | sed "s:.*<.*\"\(.*\)\"/>:\1:") pushd $RPM_BUILD_ROOT%{_libdir}/%{name} ln -s %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_$swtjarversion.jar swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar ln -s swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar swt-gtk-%{eclipse_majmin}.jar popd # Install the eclipse-ecj.jar symlink for java-1.4.2-gcj-compat's "javac" JDTCORESUFFIX=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep jdt.core_ | sed "s/org.eclipse.jdt.core_//") install -d -m 755 $RPM_BUILD_ROOT%{_javadir} ln -s %{_datadir}/%{name}/plugins/org.eclipse.jdt.core_$JDTCORESUFFIX $RPM_BUILD_ROOT%{_javadir}/eclipse-ecj.jar ln -s %{_javadir}/eclipse-ecj.jar $RPM_BUILD_ROOT%{_javadir}/jdtcore.jar # FIXME: get rid of this by putting logic in package build to know what version # of pde.build it's using # Install a versionless pde.build pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/ ln -s org.eclipse.pde.build_* org.eclipse.pde.build popd # rh/freedesktop.org icons install -p -D -m0644 %{SOURCE5} \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png install -d -m0755 $RPM_BUILD_ROOT%{_datadir}/pixmaps ln -s ../icons/hicolor/48x48/apps/%{name}.png \ $RPM_BUILD_ROOT%{_datadir}/pixmaps install -d -m0755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps ln -s ../../../../%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.%{eclipse_micro}/eclipse32.gif \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png install -d -m0755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps ln -s ../../../../%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.%{eclipse_micro}/eclipse.gif \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png # Remove unused icon.xpm rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/icon.xpm # install the efj wrapper script install -p -D -m0755 %{SOURCE17} $RPM_BUILD_ROOT%{_bindir}/efj sed --in-place "s:startup.jar:%{_datadir}/%{name}/startup.jar:" \ $RPM_BUILD_ROOT%{_bindir}/efj # Install the ecj wrapper script install -p -D -m0755 %{SOURCE18} $RPM_BUILD_ROOT%{_bindir}/ecj sed --in-place "s:@JAVADIR@:%{_javadir}:" $RPM_BUILD_ROOT%{_bindir}/ecj # A sanity check. desktop-file-validate %{SOURCE2} # freedesktop.org menu entry install -p -D -m0644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop # Put Fedora Core version into about.mappings of org.eclipse.sdk and # org.eclipse.platform to show it in # Eclipse about dialog. (courtesy Debian # Eclipse packagers) # FIXME use the third id pushd $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/org.eclipse.sdk_%{eclipse_majmin}.* OS_VERSION=`cat /etc/*-release | head -n 1` sed -e "s/\(0=.*\)/\1 ($OS_VERSION)/" < about.mappings > about.mappings.tmp mv about.mappings.tmp about.mappings popd pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.* sed -e "s/\(0=.*\)/\1 ($OS_VERSION)/" < about.mappings > about.mappings.tmp mv about.mappings.tmp about.mappings popd # Create a script that can be used to make a symlink tree of the # eclipse platform. cp %{SOURCE16} copy-platform ( cd $RPM_BUILD_ROOT%{_datadir}/%{name} ls -d * | egrep -v '^(plugins|features|links|about_files)$' ls -d plugins/* features/* links/* ) | sed -e's/^\(.*\)$/\1 \1/' -e's,^,ln -s $eclipse/,' >> copy-platform mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts cp copy-platform $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts pushd $RPM_BUILD_ROOT%{_datadir}/%{name} ## BEGIN ANT ## rm plugins/org.apache.ant_*/lib/ant-antlr.jar rm plugins/org.apache.ant_*/lib/ant-apache-bcel.jar #rm plugins/org.apache.ant_*/lib/ant-apache-bsf.jar rm plugins/org.apache.ant_*/lib/ant-apache-log4j.jar rm plugins/org.apache.ant_*/lib/ant-apache-oro.jar rm plugins/org.apache.ant_*/lib/ant-apache-regexp.jar rm plugins/org.apache.ant_*/lib/ant-apache-resolver.jar rm plugins/org.apache.ant_*/lib/ant-commons-logging.jar #rm plugins/org.apache.ant_*/lib/ant-commons-net.jar #rm plugins/org.apache.ant_*/lib/ant-icontract.jar #rm plugins/org.apache.ant_*/lib/ant-jai.jar rm plugins/org.apache.ant_*/lib/ant.jar rm plugins/org.apache.ant_*/lib/ant-javamail.jar rm plugins/org.apache.ant_*/lib/ant-jdepend.jar #rm plugins/org.apache.ant_*/lib/ant-jmf.jar rm plugins/org.apache.ant_*/lib/ant-jsch.jar rm plugins/org.apache.ant_*/lib/ant-junit.jar rm plugins/org.apache.ant_*/lib/ant-launcher.jar #rm plugins/org.apache.ant_*/lib/ant-netrexx.jar rm plugins/org.apache.ant_*/lib/ant-nodeps.jar #rm plugins/org.apache.ant_*/lib/ant-starteam.jar #rm plugins/org.apache.ant_*/lib/ant-stylebook.jar rm plugins/org.apache.ant_*/lib/ant-swing.jar rm plugins/org.apache.ant_*/lib/ant-trax.jar #rm plugins/org.apache.ant_*/lib/ant-vaj.jar #rm plugins/org.apache.ant_*/lib/ant-weblogic.jar #rm plugins/org.apache.ant_*/lib/ant-xalan1.jar #rm plugins/org.apache.ant_*/lib/ant-xslp.jar # FIXME use build-jar-repository ln -s %{_javadir}/ant/ant-antlr.jar plugins/org.apache.ant_1.6.5/lib/ant-antlr.jar ln -s %{_javadir}/ant/ant-apache-bcel.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-bcel.jar #ln -s %{_javadir}/ant/ant-apache-bsf.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-bsf.jar ln -s %{_javadir}/ant/ant-apache-log4j.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-log4j.jar ln -s %{_javadir}/ant/ant-apache-oro.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-oro.jar ln -s %{_javadir}/ant/ant-apache-regexp.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-regexp.jar ln -s %{_javadir}/ant/ant-apache-resolver.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-resolver.jar ln -s %{_javadir}/ant/ant-commons-logging.jar plugins/org.apache.ant_1.6.5/lib/ant-commons-logging.jar # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642 # the symlinks that are commented out are not currently shipped on Fedora #ln -s %{_javadir}/ant/ant-commons-net.jar plugins/org.apache.ant_1.6.5/lib/ant-commons-net.jar #ln -s %{_javadir}/ant/ant-icontract.jar plugins/org.apache.ant_1.6.5/lib/ant-icontract.jar #ln -s %{_javadir}/ant/ant-jai.jar plugins/org.apache.ant_1.6.5/lib/ant-jai.jar ln -s %{_javadir}/ant.jar plugins/org.apache.ant_1.6.5/lib/ant.jar ln -s %{_javadir}/ant/ant-javamail.jar plugins/org.apache.ant_1.6.5/lib/ant-javamail.jar ln -s %{_javadir}/ant/ant-jdepend.jar plugins/org.apache.ant_1.6.5/lib/ant-jdepend.jar #ln -s %{_javadir}/ant/ant-jmf.jar plugins/org.apache.ant_1.6.5/lib/ant-jmf.jar ln -s %{_javadir}/ant/ant-jsch.jar plugins/org.apache.ant_1.6.5/lib/ant-jsch.jar ln -s %{_javadir}/ant/ant-junit.jar plugins/org.apache.ant_1.6.5/lib/ant-junit.jar ln -s %{_javadir}/ant-launcher.jar plugins/org.apache.ant_1.6.5/lib/ant-launcher.jar #ln -s %{_javadir}/ant/ant-netrexx.jar plugins/org.apache.ant_1.6.5/lib/ant-netrexx.jar ln -s %{_javadir}/ant/ant-nodeps.jar plugins/org.apache.ant_1.6.5/lib/ant-nodeps.jar #ln -s %{_javadir}/ant/ant-starteam.jar plugins/org.apache.ant_1.6.5/lib/ant-starteam.jar #ln -s %{_javadir}/ant/ant-stylebook.jar plugins/org.apache.ant_1.6.5/lib/ant-stylebook.jar ln -s %{_javadir}/ant/ant-swing.jar plugins/org.apache.ant_1.6.5/lib/ant-swing.jar ln -s %{_javadir}/ant/ant-trax.jar plugins/org.apache.ant_1.6.5/lib/ant-trax.jar #ln -s %{_javadir}/ant/ant-vaj.jar plugins/org.apache.ant_1.6.5/lib/ant-vaj.jar #ln -s %{_javadir}/ant/ant-weblogic.jar plugins/org.apache.ant_1.6.5/lib/ant-weblogic.jar #ln -s %{_javadir}/ant/ant-xalan1.jar plugins/org.apache.ant_1.6.5/lib/ant-xalan1.jar #ln -s %{_javadir}/ant/ant-xslp.jar plugins/org.apache.ant_1.6.5/lib/ant-xslp.jar ## END ANT ## # BEGIN LUCENE ## # FIXME: rm -f in ln #rm plugins/org.apache.lucene_*/lucene-1.4.3.jar ln -sf %{_javadir}/lucene.jar plugins/org.apache.lucene_*/lucene-1.4.3.jar # END LUCENE ## # FIXME #rm plugins/org.eclipse.team.cvs.ssh2_*/jsch-0.1.18.jar #ln -s %{_javadir}/jsch.jar plugins/org.eclipse.team.cvs.ssh2_*/jsch-0.1.18.jar ## BEGIN TOMCAT ## TOMCATPLUGINVERSION=$(ls plugins | grep tomcat | sed 's/org.eclipse.tomcat_//') mkdir -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib ln -s %{tomcatsharedir}/bin/bootstrap.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/bootstrap.jar ln -s %{tomcatlibdir}/server/lib/catalina.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/catalina.jar ln -s %{tomcatlibdir}/server/lib/catalina-optional.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/catalina-optional.jar ln -s %{_javadir}/jasper5-compiler.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/jasper-compiler.jar ln -s %{_javadir}/jasper5-runtime.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/jasper-runtime.jar ln -s %{_javadir}/mx4j/mx4j.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/mx4j.jar ln -s %{_javadir}/mx4j/mx4j-impl.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/mx4j-impl.jar ln -s %{_javadir}/mx4j/mx4j-jmx.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/mx4j-jmx.jar ln -s %{tomcatlibdir}/common/lib/naming-factory.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/naming-factory.jar ln -s %{tomcatlibdir}/common/lib/naming-resources.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/naming-resources.jar ln -s %{tomcatlibdir}/server/lib/servlets-default.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/servlets-default.jar ln -s %{tomcatlibdir}/server/lib/servlets-invoker.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/servlets-invoker.jar ln -s %{tomcatlibdir}/server/lib/tomcat-coyote.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/tomcat-coyote.jar ln -s %{tomcatlibdir}/server/lib/tomcat-http.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/tomcat-http.jar ln -s %{tomcatlibdir}/server/lib/tomcat-util.jar plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib/tomcat-util.jar build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-beanutils build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-collections build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-dbcp build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-digester build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-digester-rss build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-el build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-fileupload build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-launcher build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-logging-api build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-modeler build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib commons-pool build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib jspapi build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib regexp build-jar-repository -s -p plugins/org.eclipse.tomcat_$TOMCATPLUGINVERSION/lib servletapi5 ## END TOMCAT ## build-jar-repository -s -p plugins/org.junit_* junit # FIXME: due to aot-compile-rpm smarts, the required resource bundles aren't # being compiled so this truly native ecj binary isn't possible #%if %{gcj_support} # # Build and install ecj binary # pushd $RPM_BUILD_ROOT%{_libdir}/gcj/%{name} # gcj -g -O2 --main=org.eclipse.jdt.internal.compiler.batch.Main \ # -Wl,-R,%{_libdir}/gcj/%{name} \ # org.eclipse.jdt.core_3.1.2.jar.so -o \ # $RPM_BUILD_ROOT%{_bindir}/ecj # popd # chmod a+x $RPM_BUILD_ROOT%{_bindir}/ecj #%else # Ensure that the zip files are the same across all builds. # This is needed to make these package multilib compatible. # FIXME: this needs to be re-written as a separate program # warning: big hack! mkdir -p ${RPM_BUILD_ROOT}/tmp for zip in `find ${RPM_BUILD_ROOT}%{_datadir}/%{name} -type f -name \*.zip -o -type f -name \*.jar`; do # unpack every zip, set the date of the files and directories and repack the zip ZIPNAME=`basename $zip` TMPDIR=`mktemp -d -p ${RPM_BUILD_ROOT}/tmp $ZIPNAME.tmpdir.XXXXXXXXXX` ZIPDIR=`mktemp -d -p ${RPM_BUILD_ROOT}/tmp $ZIPNAME.zipdir.XXXXXXXXXX` pushd $TMPDIR unzip -qq -o $zip rm -f $zip # check if there are jars or zips inside the zip or jar zipsinside=`find $TMPDIR -type f -name \*.zip -o -name \*.jar` if [ -n "$zipsinside" ]; then for zip2 in $zipsinside; do # unpack every zip, set the date of the files and directories and repack the zip ZIPNAME2=`basename $zip2` TMPDIR2=`mktemp -d -p ${RPM_BUILD_ROOT}/tmp $ZIPNAME2.tmpdir.XXXXXXXXXX` ZIPDIR2=`mktemp -d -p ${RPM_BUILD_ROOT}/tmp $ZIPNAME2.zipdir.XXXXXXXXXX` pushd $TMPDIR2 unzip -qq -o $zip2 rm -f $zip2 # create the directories first for d in `find -type d | LC_ALL=C sort`; do mkdir -p $ZIPDIR2/$d done # move the contents over to the a new directory in order and set the times. for f in `find -type f | LC_ALL=C sort`; do cp $f $ZIPDIR2/$f touch --date="1970-01-01 UTC" $ZIPDIR2/$f done popd # Set the times of the directories. touch --date="1970-01-01 UTC" `find $ZIPDIR2 -type d` # make the new zip pushd $ZIPDIR2 find -type f -print | LC_ALL=C sort | /usr/bin/zip -q -X -9 $zip2 -@ popd # Cleanup. rm -rf $TMPDIR2 rm -rf $ZIPDIR2 done fi # now on to the original zip or jar. # create the directories first for d in `find -type d | LC_ALL=C sort`; do mkdir -p $ZIPDIR/$d done # move the contents over to the a new directory in order and set the times. for f in `find -type f | LC_ALL=C sort`; do cp $f $ZIPDIR/$f touch --date="1970-01-01 UTC" $ZIPDIR/$f done popd # Set the times of the directories. touch --date="1970-01-01 UTC" `find $ZIPDIR -type d` # make the new zip pushd $ZIPDIR find -type f -print | LC_ALL=C sort | /usr/bin/zip -q -X -9 $zip -@ popd # Cleanup. rm -rf $TMPDIR rm -rf $ZIPDIR done rm -rf ${RPM_BUILD_ROOT}/tmp # remove this python script so that it is not aot compiled, thus avoiding a # multilib conflict ANTPLUGINVERSION=$(ls plugins | grep org.apache.ant_ | sed 's/org.apache.ant_//') rm $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.apache.ant_$ANTPLUGINVERSION/bin/runant.py %if %{gcj_support} # exclude org.eclipse.ui.ide to work around # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=175547 UIIDEPLUGINVERSION=$(ls plugins | grep ui.ide_ | sed 's/org.eclipse.ui.ide_//') aot-compile-rpm --exclude %{_datadir}/%{name}/plugins/org.eclipse.ui.ide_$UIIDEPLUGINVERSION %endif %clean rm -rf $RPM_BUILD_ROOT %post platform %if %{gcj_support} %{_bindir}/rebuild-gcj-db %endif touch --no-create %{_datadir}/icons/hicolor if [ -x /usr/bin/gtk-update-icon-cache ]; then gtk-update-icon-cache -q %{_datadir}/icons/hicolor fi %postun platform %if %{gcj_support} %{_bindir}/rebuild-gcj-db %endif touch --no-create %{_datadir}/icons/hicolor if [ -x /usr/bin/gtk-update-icon-cache ]; then gtk-update-icon-cache -q %{_datadir}/icons/hicolor fi %post sdk %if %{gcj_support} %{_bindir}/rebuild-gcj-db %endif if [ -f %{_libdir}/%{name}/configuration/config.ini ]; then sed --in-place "s/[#]*eclipse.product=.*/eclipse.product=org.eclipse.sdk.ide/" \ %{_libdir}/%{name}/configuration/config.ini fi %postun sdk %if %{gcj_support} %{_bindir}/rebuild-gcj-db %endif # Only set the product back to platform.ide if the sdk is actually removed for # this arch. This SDKDIR check is to deal with the ordering of new %%post # before old %%postun SDKDIR=$(ls %{_libdir}/%{name}/features | grep "org\.eclipse\.sdk_") if [ -z "$SDKDIR" -a -f %{_libdir}/%{name}/configuration/config.ini ]; then sed --in-place "s/[#]*eclipse.product=.*/eclipse.product=org.eclipse.platform.ide/" \ %{_libdir}/%{name}/configuration/config.ini fi %if %{gcj_support} %post ecj -p %{_bindir}/rebuild-gcj-db %postun ecj -p %{_bindir}/rebuild-gcj-db %post -n %{libname}-gtk2 -p %{_bindir}/rebuild-gcj-db %postun -n %{libname}-gtk2 -p %{_bindir}/rebuild-gcj-db %post rcp -p %{_bindir}/rebuild-gcj-db %postun rcp -p %{_bindir}/rebuild-gcj-db %post rcp-sdk -p %{_bindir}/rebuild-gcj-db %postun rcp-sdk -p %{_bindir}/rebuild-gcj-db %post platform-sdk -p %{_bindir}/rebuild-gcj-db %postun platform-sdk -p %{_bindir}/rebuild-gcj-db %post jdt -p %{_bindir}/rebuild-gcj-db %postun jdt -p %{_bindir}/rebuild-gcj-db %post jdt-sdk -p %{_bindir}/rebuild-gcj-db %postun jdt-sdk -p %{_bindir}/rebuild-gcj-db %post pde -p %{_bindir}/rebuild-gcj-db %postun pde -p %{_bindir}/rebuild-gcj-db %post pde-runtime -p %{_bindir}/rebuild-gcj-db %postun pde-runtime -p %{_bindir}/rebuild-gcj-db %post pde-sdk -p %{_bindir}/rebuild-gcj-db %postun pde-sdk -p %{_bindir}/rebuild-gcj-db %endif # This is to deal with my stupidity that manifested itself as # rebuild-sdk-features -- overholt %triggerpostun rcp -- eclipse-rcp < 1:3.2.1, eclipse-rcp-devel < 1:3.2.1, eclipse-pde < 1:3.2.1, eclipse-pde-devel < 1:3.2.1, eclipse-jdt < 1:3.2.1, eclipse-jdt-devel < 1:3.2.1, eclipse-platform < 1:3.2.1, eclipse-platform-devel < 1:3.2.1 # Remove crap from rebuild-sdk-features rm -rf %{_datadir}/%{name}/features/org.eclipse.sdk_3.1.2 # Remove pre-configured, unnecessary platform.xml created by rebuild-sdk-features rm -f %{_datadir}/%{name}/configuration/org.eclipse.update/platform.xml* %files ecj %defattr(-,root,root) %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/plugins %{_datadir}/%{name}/plugins/org.eclipse.jdt.core_* %{_javadir}/eclipse-ecj.jar %{_javadir}/jdtcore.jar %{_bindir}/ecj %if %{gcj_support} %dir %{_libdir}/gcj/%{name} %{_libdir}/gcj/%{name}/org.eclipse.jdt.core_* %endif %files -n %{libname}-gtk2 -f %{libname}-gtk2.install %defattr(-,root,root) %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/plugins %dir %{_libdir}/%{name}/plugins %dir %{_libdir}/%{name}/configuration %dir %{_libdir}/%{name}/configuration/org.eclipse.osgi %dir %{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles %{_datadir}/%{name}/plugins/org.eclipse.swt_* %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_* %{_libdir}/libswt-*.so # FIXME: do we need to build? #%{_libdir}/%{name}/libcairo-swt.so #%{_libdir}/libcairo-swt.so %{_libdir}/%{name}/swt-gtk*.jar %if %{gcj_support} %dir %{_libdir}/gcj/%{name} %{_libdir}/gcj/%{name}/org.eclipse.swt.gtk.linux.%{eclipse_arch}_* %endif %files rcp %defattr(-,root,root) %dir %{_datadir}/%{name}/features %{_libdir}/%{name}/configuration/org.eclipse.osgi/.bundledata* %{_libdir}/%{name}/configuration/org.eclipse.osgi/.lazy* %{_libdir}/%{name}/configuration/org.eclipse.osgi/.manager %{_libdir}/%{name}/configuration/org.eclipse.osgi/.state* %{_libdir}/%{name}/configuration/config.ini %{_libdir}/%{name}/.eclipseextension %{_datadir}/%{name}/.eclipseproduct %{_datadir}/%{name}/notice.html %{_datadir}/%{name}/epl-v10.html %{_datadir}/%{name}/links %ifarch %{ix86} x86_64 %{_datadir}/%{name}/about.html %endif %{_datadir}/%{name}/startup.jar %ifarch x86_64 %{_datadir}/%{name}/about_files %endif %{_datadir}/%{name}/readme %{_datadir}/%{name}/features/org.eclipse.rcp_* %{_datadir}/%{name}/plugins/org.eclipse.update.configurator_* %{_datadir}/%{name}/plugins/org.eclipse.osgi_* %{_datadir}/%{name}/plugins/org.eclipse.equinox.registry_* %{_libdir}/%{name}/plugins/com.ibm.icu_* %{_datadir}/%{name}/plugins/org.eclipse.jface_* %{_datadir}/%{name}/plugins/org.eclipse.jface.databinding_* %{_datadir}/%{name}/plugins/org.eclipse.core.commands_* %{_datadir}/%{name}/plugins/org.eclipse.core.runtime.compatibility.auth_* %{_datadir}/%{name}/plugins/org.eclipse.ui.workbench_* %{_datadir}/%{name}/plugins/org.eclipse.core.jobs_* %{_datadir}/%{name}/plugins/org.eclipse.ui_* %{_datadir}/%{name}/plugins/org.eclipse.core.runtime_* %{_datadir}/%{name}/plugins/org.eclipse.equinox.preferences_* %{_datadir}/%{name}/plugins/org.eclipse.core.expressions_* %{_datadir}/%{name}/plugins/org.eclipse.equinox.common_* %{_datadir}/%{name}/plugins/org.eclipse.help_* %{_datadir}/%{name}/plugins/org.eclipse.core.contenttype_* %{_datadir}/%{name}/plugins/org.eclipse.rcp_* %if %{gcj_support} %{_libdir}/gcj/%{name}/org.eclipse.update.configurator_* %{_libdir}/gcj/%{name}/org.eclipse.osgi_* %{_libdir}/gcj/%{name}/org.eclipse.equinox.registry_* %{_libdir}/gcj/%{name}/com.ibm.icu_* %{_libdir}/gcj/%{name}/org.eclipse.jface_* %{_libdir}/gcj/%{name}/org.eclipse.jface.databinding_* %{_libdir}/gcj/%{name}/org.eclipse.core.commands_* %{_libdir}/gcj/%{name}/org.eclipse.core.runtime.compatibility.auth_* %{_libdir}/gcj/%{name}/org.eclipse.ui.workbench_* %{_libdir}/gcj/%{name}/org.eclipse.core.jobs_* %{_libdir}/gcj/%{name}/org.eclipse.ui_* %{_libdir}/gcj/%{name}/org.eclipse.core.runtime_* %{_libdir}/gcj/%{name}/org.eclipse.equinox.preferences_* %{_libdir}/gcj/%{name}/org.eclipse.core.expressions_* %{_libdir}/gcj/%{name}/org.eclipse.equinox.common_* %{_libdir}/gcj/%{name}/org.eclipse.help_* %{_libdir}/gcj/%{name}/org.eclipse.core.contenttype_* %{_libdir}/gcj/%{name}/startup.jar* %endif %files rcp-sdk %defattr(-,root,root) %{_datadir}/%{name}/features/org.eclipse.rcp.source_* %{_libdir}/%{name}/plugins/org.eclipse.rcp.source.linux.gtk.%{eclipse_arch}* %{_datadir}/%{name}/plugins/org.eclipse.rcp.source_* %{_libdir}/%{name}/plugins/com.ibm.icu.source_* %files platform -f %{name}-platform.install %defattr(-,root,root) %attr(0755,root,root) %{_bindir}/%{name} %{_datadir}/%{name}/eclipse.ini %{_datadir}/applications/* %{_datadir}/pixmaps/* %{_datadir}/icons/*/*/apps/* %{_datadir}/%{name}/features/org.eclipse.platform_* %{_datadir}/%{name}/plugins/org.eclipse.equinox.initializer_* %{_datadir}/%{name}/plugins/org.eclipse.ui.navigator.resources_* %{_datadir}/%{name}/plugins/org.eclipse.team.cvs.ui_* %{_datadir}/%{name}/plugins/org.eclipse.ui.navigator_* %{_datadir}/%{name}/plugins/org.eclipse.team.cvs.core_* %{_datadir}/%{name}/plugins/org.eclipse.ui.workbench.compatibility_* %{_datadir}/%{name}/plugins/org.eclipse.ui.forms_* %{_datadir}/%{name}/plugins/org.eclipse.ltk.core.refactoring_* %{_datadir}/%{name}/plugins/org.eclipse.debug.ui_* %{_datadir}/%{name}/plugins/org.eclipse.core.resources_* %{_datadir}/%{name}/plugins/org.eclipse.jface.text_* %{_datadir}/%{name}/plugins/org.eclipse.ui.intro_* %{_datadir}/%{name}/plugins/org.eclipse.ui.ide_* %{_datadir}/%{name}/plugins/com.jcraft.jsch_* %{_datadir}/%{name}/plugins/org.eclipse.ui.cheatsheets_* %{_datadir}/%{name}/plugins/org.eclipse.ant.core_* %{_datadir}/%{name}/plugins/org.eclipse.help.appserver_* %{_datadir}/%{name}/plugins/org.eclipse.ui.browser_* %{_datadir}/%{name}/plugins/org.eclipse.ui.presentations.r21_* %{_datadir}/%{name}/plugins/org.eclipse.team.ui_* %{_libdir}/%{name}/plugins/org.eclipse.update.core.linux_* %ifarch %{ix86} x86_64 %{_libdir}/%{name}/plugins/org.eclipse.core.filesystem.linux.%{eclipse_arch}_* %endif %{_datadir}/%{name}/plugins/org.eclipse.core.variables_* %{_datadir}/%{name}/plugins/org.eclipse.help.base_* %{_datadir}/%{name}/plugins/org.eclipse.ui.views.properties.tabbed_* %{_datadir}/%{name}/plugins/org.eclipse.compare_* %{_datadir}/%{name}/plugins/org.eclipse.team.core_* %{_datadir}/%{name}/plugins/org.eclipse.osgi.util_* %{_datadir}/%{name}/plugins/org.eclipse.osgi.services_* %{_datadir}/%{name}/plugins/org.eclipse.ui.console_* %{_datadir}/%{name}/plugins/org.eclipse.platform_* %{_datadir}/%{name}/plugins/org.eclipse.update.ui_* %{_libdir}/%{name}/plugins/org.eclipse.help.webapp_* %{_datadir}/%{name}/plugins/org.eclipse.core.runtime.compatibility_* %{_datadir}/%{name}/plugins/org.eclipse.ui.views_* %{_datadir}/%{name}/plugins/org.eclipse.update.core_* %{_datadir}/%{name}/plugins/org.eclipse.core.resources.compatibility_* %{_datadir}/%{name}/plugins/org.eclipse.ui.intro.universal_* %{_datadir}/%{name}/plugins/org.eclipse.core.boot_* %{_datadir}/%{name}/plugins/org.apache.ant_* %{_datadir}/%{name}/plugins/org.eclipse.team.cvs.ssh2_* %{_datadir}/%{name}/plugins/org.eclipse.ui.externaltools_* %{_datadir}/%{name}/plugins/org.eclipse.team.cvs.ssh_* %{_datadir}/%{name}/plugins/org.apache.lucene_* %{_datadir}/%{name}/plugins/org.eclipse.update.scheduler_* %{_datadir}/%{name}/plugins/org.eclipse.debug.core_* %{_datadir}/%{name}/plugins/org.eclipse.help.ui_* %{_datadir}/%{name}/plugins/org.eclipse.ui.editors_* %{_datadir}/%{name}/plugins/org.eclipse.core.filesystem_* %{_datadir}/%{name}/plugins/org.eclipse.tomcat_* %{_datadir}/%{name}/plugins/org.eclipse.core.filebuffers_* %{_datadir}/%{name}/plugins/org.eclipse.core.runtime.compatibility.registry_* %{_datadir}/%{name}/plugins/org.eclipse.platform.doc.user_* %{_datadir}/%{name}/plugins/org.eclipse.ltk.ui.refactoring_* %{_datadir}/%{name}/plugins/org.eclipse.ui.workbench.texteditor_* %{_datadir}/%{name}/plugins/org.eclipse.text_* %{_datadir}/%{name}/plugins/org.eclipse.search_* %if %{gcj_support} %{_libdir}/gcj/%{name}/org.eclipse.equinox.initializer_* %{_libdir}/gcj/%{name}/org.eclipse.ui.navigator.resources_* %{_libdir}/gcj/%{name}/org.eclipse.team.cvs.ui_* %{_libdir}/gcj/%{name}/org.eclipse.ui.navigator_* %{_libdir}/gcj/%{name}/org.eclipse.team.cvs.core_* %{_libdir}/gcj/%{name}/org.eclipse.ui.forms_* %{_libdir}/gcj/%{name}/org.eclipse.ltk.core.refactoring_* %{_libdir}/gcj/%{name}/org.eclipse.debug.ui_* %{_libdir}/gcj/%{name}/org.eclipse.core.resources_* %{_libdir}/gcj/%{name}/org.eclipse.jface.text_* %{_libdir}/gcj/%{name}/org.eclipse.ui.intro_* #%{_libdir}/gcj/%{name}/org.eclipse.ui.ide_* %{_libdir}/gcj/%{name}/com.jcraft.jsch_* %{_libdir}/gcj/%{name}/org.eclipse.ui.cheatsheets_* %{_libdir}/gcj/%{name}/org.eclipse.ant.core_* %{_libdir}/gcj/%{name}/org.eclipse.help.appserver_* %{_libdir}/gcj/%{name}/org.eclipse.ui.browser_* %{_libdir}/gcj/%{name}/org.eclipse.ui.presentations.r21_* %{_libdir}/gcj/%{name}/org.eclipse.team.ui_* %{_libdir}/gcj/%{name}/org.eclipse.core.variables_* %{_libdir}/gcj/%{name}/org.eclipse.help.base_* %{_libdir}/gcj/%{name}/org.eclipse.ui.views.properties.tabbed_* %{_libdir}/gcj/%{name}/org.eclipse.compare_* %{_libdir}/gcj/%{name}/org.eclipse.team.core_* %{_libdir}/gcj/%{name}/org.eclipse.osgi.util_* %{_libdir}/gcj/%{name}/org.eclipse.osgi.services_* %{_libdir}/gcj/%{name}/org.eclipse.ui.console_* %{_libdir}/gcj/%{name}/org.eclipse.update.ui_* %{_libdir}/gcj/%{name}/org.eclipse.core.runtime.compatibility_* %{_libdir}/gcj/%{name}/org.eclipse.ui.views_* %{_libdir}/gcj/%{name}/org.eclipse.update.core_* %{_libdir}/gcj/%{name}/org.eclipse.core.resources.compatibility_* %{_libdir}/gcj/%{name}/org.eclipse.team.cvs.ssh2_* %{_libdir}/gcj/%{name}/org.eclipse.ui.externaltools_* %{_libdir}/gcj/%{name}/org.eclipse.team.cvs.ssh_* %{_libdir}/gcj/%{name}/org.eclipse.update.scheduler_* %{_libdir}/gcj/%{name}/org.eclipse.debug.core_* %{_libdir}/gcj/%{name}/org.eclipse.help.ui_* %{_libdir}/gcj/%{name}/org.eclipse.ui.editors_* %{_libdir}/gcj/%{name}/org.eclipse.core.filesystem_* %{_libdir}/gcj/%{name}/org.eclipse.core.filebuffers_* %{_libdir}/gcj/%{name}/org.eclipse.ltk.ui.refactoring_* %{_libdir}/gcj/%{name}/org.eclipse.ui.workbench.texteditor_* %{_libdir}/gcj/%{name}/org.eclipse.text_* %{_libdir}/gcj/%{name}/org.eclipse.search_* %{_libdir}/gcj/%{name}/universal.jar* %{_libdir}/gcj/%{name}/webapp.jar* %{_libdir}/gcj/%{name}/tomcatwrapper.jar* %{_libdir}/gcj/%{name}/compatibility.jar* %{_libdir}/gcj/%{name}/platform.jar* %{_libdir}/gcj/%{name}/runtime_registry_compatibility.jar* %{_libdir}/gcj/%{name}/servlets.jar* # FIXME: we need to symlink these %{_libdir}/gcj/%{name}/ant-apache-bsf.jar* %{_libdir}/gcj/%{name}/jsp.jar* %{_libdir}/gcj/%{name}/parser.jar* %endif %files platform-sdk %defattr(-,root,root) %{_datadir}/%{name}/features/org.eclipse.platform.source_* %{_libdir}/%{name}/plugins/org.eclipse.platform.source.linux.gtk.%{eclipse_arch}_* %{_libdir}/%{name}/plugins/org.eclipse.platform.doc.isv_* %{_libdir}/%{name}/plugins/org.eclipse.platform.source_* %if %{gcj_support} %{_libdir}/gcj/%{name}/org.eclipse.platform.doc.isv_* %endif %files jdt %defattr(-,root,root) %{_bindir}/efj %{_datadir}/%{name}/features/org.eclipse.jdt_* %{_datadir}/%{name}/plugins/org.eclipse.ant.ui_* %{_datadir}/%{name}/plugins/org.junit_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.junit_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.doc.user_* #%{_datadir}/%{name}/plugins/org.eclipse.jdt.apt.core_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.ui_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.debug_* #%{_datadir}/%{name}/plugins/org.eclipse.jdt.junit4.runtime_* #%{_datadir}/%{name}/plugins/org.junit4_* %{_datadir}/%{name}/plugins/org.eclipse.jdt_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.launching_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.core.manipulation_* #%{_datadir}/%{name}/plugins/org.eclipse.jdt.apt.ui_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.junit.runtime_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.debug.ui_* %if %{gcj_support} %{_libdir}/gcj/%{name}/org.eclipse.ant.ui_* #%{_libdir}/gcj/%{name}/org.eclipse.jdt.apt.core_* %{_libdir}/gcj/%{name}/org.eclipse.jdt.ui_* #%{_libdir}/gcj/%{name}/org.eclipse.jdt.junit4.runtime_* #%{_libdir}/gcj/%{name}/org.junit4_* %{_libdir}/gcj/%{name}/org.eclipse.jdt.launching_* %{_libdir}/gcj/%{name}/org.eclipse.jdt.core.manipulation_* #%{_libdir}/gcj/%{name}/org.eclipse.jdt.apt.ui_* %{_libdir}/gcj/%{name}/org.eclipse.jdt.debug.ui_* %{_libdir}/gcj/%{name}/junitruntime.jar.* %{_libdir}/gcj/%{name}/junitsupport.jar.* %{_libdir}/gcj/%{name}/jdimodel.jar.* %{_libdir}/gcj/%{name}/jdi.jar.* %endif %files jdt-sdk %defattr(-,root,root) %{_datadir}/%{name}/features/org.eclipse.jdt.source_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.doc.isv_* %{_datadir}/%{name}/plugins/org.eclipse.jdt.source_* %files pde %defattr(-,root,root) %{_datadir}/%{name}/features/org.eclipse.pde_* %{_datadir}/%{name}/plugins/org.eclipse.pde.doc.user_* %{_datadir}/%{name}/plugins/org.eclipse.pde.build_* %{_datadir}/%{name}/plugins/org.eclipse.pde.build %{_datadir}/%{name}/plugins/org.eclipse.pde_* %{_datadir}/%{name}/plugins/org.eclipse.pde.core_* %{_datadir}/%{name}/plugins/org.eclipse.pde.junit.runtime_* %{_datadir}/%{name}/plugins/org.eclipse.pde.ui_* %{_datadir}/%{name}/buildscripts %if %{gcj_support} %{_libdir}/gcj/%{name}/org.eclipse.pde_* %{_libdir}/gcj/%{name}/org.eclipse.pde.core_* %{_libdir}/gcj/%{name}/org.eclipse.pde.junit.runtime_* %{_libdir}/gcj/%{name}/org.eclipse.pde.ui_* %{_libdir}/gcj/%{name}/pdebuild.jar* %{_libdir}/gcj/%{name}/pdebuild-ant.jar* %endif %files pde-runtime %defattr(-,root,root) %{_datadir}/%{name}/plugins/org.eclipse.pde.runtime_* %if %{gcj_support} %{_libdir}/gcj/%{name}/org.eclipse.pde.runtime_* %endif %files pde-sdk %defattr(-,root,root) %{_datadir}/%{name}/features/org.eclipse.pde.source_* %{_datadir}/%{name}/plugins/org.eclipse.pde.source_* %files sdk %defattr(-,root,root) %{_libdir}/%{name}/features/org.eclipse.sdk_* %{_libdir}/%{name}/plugins/org.eclipse.sdk_* %changelog * Fri Nov 17 2006 Ben Konrath 3.2.1-21 - Add patch to workaround an xml parsing bug in libgcj (gcc bug #29853). - Resolves: #209393. * Fri Nov 17 2006 Andrew Overholt 3.2.1-20 - Revise gre64 patch to just do ppc64 addition and not ordering change. * Thu Nov 16 2006 Andrew Overholt 3.2.1-19 - Add patch to look at gre64.conf on ppc64. * Fri Nov 10 2006 Ben Konrath 3.2.1-18 - Remove SWT ON_TOP patch as it is fixed in 3.2.1. * Thu Nov 09 2006 Ben Konrath 3.2.1-17 - Add file level requirement for swt fragment to rcp and platform packages. This is needed so that the rcp and platform packages pull in the swt package of the correct word size. * Mon Nov 06 2006 Ben Konrath 3.2.1-16 - Move copy-platform back to %%{_datadir}/eclipse. - Require gjdoc >= 0.7.7-14 as it generates consistent html across archs. - Move most of the doc plugins back to %%{_datatdir}/eclipse now that gjdoc is fixed. * Fri Nov 03 2006 Andrew Overholt 3.2.1-15 - Make sdk require config.ini itself rather than the package to deal with the bi-arch installation situation. - Move sdk feature and plugin to %%{_libdir} so we can check for its existence in the post scripts. * Thu Nov 02 2006 Andrew Overholt 3.2.1-14 - Remove post sections that munge eclipse.product; always set it to org.eclipse.platform.ide or org.eclipse.sdk.ide. - Remove changelogs prior to 3.2.0. * Thu Nov 02 2006 Ben Konrath 3.2.1-12 - Move doc plugins to %%{_libdir}/eclipse/plugins because of html is being generated differently on different arches. - Fix multilib problem when there are two or more jars within a jar. - BR dos2unix always (for mac2unix). * Wed Nov 01 2006 Ben Konrath 3.2.1-11 - Move copy-platform to %%{_libdir}/eclipse - Move the platform.source, icu4j, icu4j.source, help.webapp and update.core.linux plugins to %%{_libdir}/eclipse/plugins because these plugins have platform specific content. Some of the platform specific content may be a result of bugs in libgcj. These need to be investigated. - Disable building the help indexes on all archs so that we have the same doc plugins on all archs. - Remove org.apache.ant_1.6.5/bin/runant.py to avoid multilib conflicts. - Repack all the jars and the jars within those jars. This is needed to make this package multilib compatible. - Put SWT symlinks in %%{_libdir}/eclipse instead of %%{_libdir}/eclipse/plugins. * Wed Nov 01 2006 Andrew Overholt 3.2.1-11 - Use equinox initializer instead of old patch to core.runtime. - Run initializer *after* splitting install into arch-specific and arch-independent locations. - Move copy-platform to arch-specific location. - Get rid of broken symlinks in tomcat plugin. * Tue Oct 31 2006 Andrew Overholt 3.2.1-11 - Fix copy-platform to work with split install. * Tue Oct 31 2006 Ben Konrath 3.2.1-10 - Add 3.2.1 splash screen. - Sort the java source files before building (#209249). - Remove Fedora ifdefs. - Resolves: #209249. * Tue Oct 31 2006 Ben Konrath 3.2.1-9 - Re-enable building of the icu4j plugins. * Mon Oct 30 2006 Ben Konrath 3.2.1-8 - Temporarily disable building of icu4j plugin. * Mon Oct 30 2006 Andrew Overholt 3.2.1-8 - Fix eclipse-ecj symlink to point to correct location. - Put SWT symlinks in %%{_libdir} instead of %%{_datadir} as they're target-dependent. * Sat Oct 28 2006 Ben Konrath 3.2.1-7 - Add patch for ecj [] classpath problem. - Remove configuration files from rcp files list. - Add patch set bindir and shared config patch to allow the eclipse binary to sit in %%{_bindir} and remove the symlinks. This patch also allows us to set osgi.sharedConfiguration.area config on a per build basis so that the configuration directory can be arch dependant. - Remove launcher link patch as the bindir patch removes the requirement for this patch. - Don't aot-compile org.eclipse.ui.ide to work around rh bug # 175547. - Add Requies(post,postun) to all packages to ensure that no files are left behind when eclipse is un-installed. - Many spec file clean ups. - Resolves: #199961, #202585, #210764, #207016. - Related: #175547. * Mon Oct 16 2006 Andrew Overholt 3.2.1-6 - Remove unneeded tomcat symlinks. * Mon Oct 16 2006 Andrew Overholt 3.2.1-6 - Remove unnecessary bits of configuration. - Resolves: #210764, #202585. * Tue Oct 10 2006 Ben Konrath 3.2.1-5 - Remove perl dependancy. - Fix offsets in libswt-enableallandO2 patch. - Add Requires(post,postun) java-gcj-compat to sdk to avoid errors when uninstalling the java stack. - Move jface and jface.databinding from libswt3-gtk2 to rcp because these plugins have dependancies on some plugins in rcp. * Sun Oct 01 2006 Andrew Overholt 3.2.1-4 - Fix triggerpostun to include epoch of previous releases. * Fri Sep 29 2006 Ben Konrath 3.2.1-3 - Add Requires(post,postun) to platform and sdk sub-packages so that post and postun scripts work correctly. * Fri Sep 29 2006 Andrew Overholt 3.2.1-3 - Add triggerpostun to deal with old rebuild-sdk-features postun crap (rh#207442, rh#207013). * Fri Sep 29 2006 Andrew Overholt 3.2.1-2 - Fix swt-firefox patch to not create DSOs with undefined symbols (rh#201778). * Thu Sep 28 2006 Ben Konrath 3.2.1-1 - 3.2.1 final. * Thu Sep 28 2006 Andrew Overholt 3.2.1-1 - Use new swt-firefox patch and consolidate others into one. * Wed Sep 27 2006 Ben Konrath 3.2.1-0.RC.3 - Fix typo in %postun of -sdk and -platform. - Disable help index generation on ia64. * Tue Sep 26 2006 Ben Konrath 3.2.1-0.RC.2 - Don't set eclipse.product incorrectly in %postun of -sdk and -platform. * Mon Sep 25 2006 Ben Konrath 3.2.1-0.RC.1 - M20060921-0945 (3.2.1 pre-release). - Upadate patches to 3.2.1. - Add icu4j 3.4.5 sources. - Add Fedora version to platform about.mappings as well as sdk. * Mon Sep 25 2006 Andrew Overholt 3.2.0-8 - Remove unused eclipse.conf. - Remove unused gre64.conf patch (applied upstream). * Thu Sep 21 2006 Ben Konrath 3.2.0-7 - Use real SWT version on ia64, ppc64, s390 and s390x. - Remove the swt native libs from the rcp sub-package because they are already in the libswt-gtk2 sub-package and rcp requires libswt-gtk2. - Set correct eclipse.product in post and postun of sdk and platform sub-packages (rh bug # 207442) - Don't set the .eclipseproduct twice. - Add Conflicts: mozilla to libswt3-gtk2 (rh bug # 207626). - Move Requires: firefox to libswt3-gtk2. * Thu Sep 21 2006 Andrew Overholt 3.2.0-7 - Add workaround for gjdoc Mac-encoded bug (gcc#29167) to make javadocs build. - Fix tomcat symlinking in %%install to make help work (rh#199453). * Mon Sep 11 2006 Ben Konrath 3.2.0-6 - Update swt-firefox patch and remove libswt-xpcom patch (rh bug # 200929). - Re-work files list to match upstream and remove rebuild-sdk-features (rh bug # 205933). * Thu Sep 07 2006 Ben Konrath 3.2.0-5 - Add swt-firefox patch; moves SWT to NS_InitXPCOM3() from NS_InitEmbedding(). - Add sparc support (Dennis Gilmore ). - Disable help index generation on s390. * Wed Sep 06 2006 Ben Konrath 3.2.0-4 - Re-add customBuildCallbacks.xml-add-pre.gather.bin.parts.patch because it has not been applied upstream. - Minor spec file clean ups. - Add %{name} to the -devel package Provides so that upgrading from FC-5 to FC-6 works. - Re-enable natively compiling the ant.ui plugin. - Re-enable natively compiling the team.cvs.core plugin on ia64. * Fri Sep 01 2006 Ben Konrath 3.2.0-3 - Use the system tomcat on ppc64 and s390x. * Wed Aug 30 2006 Andrew Overholt 3.2.0-3 - Don't use pkg_summary. * Tue Aug 29 2006 Ben Konrath 3.2.0-2 - Remove double Manifest file in com.jcraft.jsch_0.1.28.jar. - Require java-gcj-compat >= 1.0.64. * Thu Aug 17 2006 Andrew Overholt 3.2.0-1jpp_12fc - Fix tomcat55 patch to not conflict with wst.ws (commons-logging visibility). * Thu Aug 10 2006 Andrew Overholt 3.2.0-1jpp_11fc - Fix eclipse-tomcat55.patch and eclipse-tomcat55-build.patch to not reference jars that don't exist. - Fix rebuild-sdk-features to work with 3.2.x feature versions. * Tue Aug 01 2006 Andrew Overholt 3.2.0-1jpp_10fc - Use firefox-devel instead of mozilla-devel. - Add patch for rh#200929 (include embed_base in xpcom's pkgconfig -I flags). * Tue Jul 25 2006 Ben Konrath 3.2.0-1jpp_9fc - Use sed instead of patches for tomcat version numbers. * Sun Jul 23 2006 Ben Konrath 3.2.0-1jpp_8fc - Disable build.index doc generation on i386. * Sun Jul 23 2006 Andrew Overholt 3.2.0-1jpp_7fc - Remove org.eclipse.ant.ui* from %%files. * Sun Jul 23 2006 Ben Konrath 3.2.0-1jpp_7fc - Exclude org.eclipse.ant.ui_3.2.0.v20060531.jar from aot-compile-rpm. * Sat Jul 22 2006 Jakub Jelinek 3.2.0-1jpp_6fc - Rebuilt * Thu Jul 20 2006 Andrew Overholt 3.2.0-1jpp_5fc - New splash screen from Diana Fong (rh#199456). * Tue Jul 18 2006 Andrew Overholt 3.2.0-1jpp_4fc - Add patch from Tom Tromey for ecj-gcj branch of gcj. - Fix SWT symlinks. * Tue Jul 18 2006 Igor Foox 3.2.0-1jpp_3fc - Rebuild. * Mon Jul 17 2006 Ben Konrath 3.2.0-1jpp_2fc - Rebuild. * Thu Jul 06 2006 Andrew Overholt 3.2.0-1jpp_1fc - Temporarily add webapp patch for ppc64 and s390x. - Bump tomcat5 to 5.5.17 both in BR/R and in patches. * Wed Jul 05 2006 Andrew Overholt 3.2.0-1jpp_1fc - Don't require tomcat on ppc64, s390, or s390x until we've got it there. - org.eclipse.tomcat -> org.eclipse.tomcat/lib. - Update webapp build patch. - Use commons-* instead of jakarta-commons-*. - Don't delete jars in %%install. - Don't apply tomcat and webapp patches on ppc64, s390, and s390x (for now). - Don't include tomcat jars in %%files for ix86, ppc, x86_64, ia64. - Use tomcat plugin version instead of org.eclipse.tomcat_*. * Tue Jul 04 2006 Ben Konrath 3.2.0-1jpp_1fc - Fix tomcat symlinks. * Tue Jul 04 2006 Andrew Overholt 3.2.0-1jpp_1fc - 3.2.0. - Remove Provides: eclipse-sdk from eclipse-platform. - Use build-jar-repository where appropriate. * Tue Jun 13 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC7.7 - Rename -devel packages to -sdk to match upstream names. - Add Provides eclipse-sdk to platform-sdk. - Remove zip re-pack code. * Mon Jun 12 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC7.6 - Bump release again. * Mon Jun 12 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC7.5 - Bump release. * Mon Jun 12 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC7.4 - Require java-gcj-compat 1.0.52. - Don't use '*' to set the quatifier name in the eclipse-ecj symlink. - Really fix swt symlinks rh #194500. * Wed Jun 07 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC7.3 - Enable ppc64, s390 and s390x. - Add check for jars at the end of prep. - Fix patch for rh #162177 (square brackets patch). - Fix swt symlinks rh #194500. - Add versionless pde.build symlink. - Rename efj-wrapper.sh to efj.sh.in. - Re-pack all zips after the build to ensure that zips have the same md5sum across arch re-builds. This is needed to avoid multilib conflicts. * Wed Jun 07 2006 Andrew Overholt 3.2.0-0jpp_0fc.3.2RC7.2 - Fix eclipse-ecj.jar symlink to include qualifier. * Tue Jun 06 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC7.1 - 3.2RC7. - Remove com.jcraft.jsch_0.1.28.jar and repackage with classes from the system jsch.jar. - Work around ia64 compile problem in aot-compile-rpm. * Wed May 31 2006 Ben Konrath 3.2.0-0jpp_0fc.3.2RC6 - 3.2RC6.