]> git.pld-linux.org Git - packages/eclipse.git/blobdiff - eclipse.spec
R: ant in R, too
[packages/eclipse.git] / eclipse.spec
index cbfd0d0f17141b30f1ca1ea3b918c730617e976a..5d6b37d46c69f3550509adaaee51648a1ae1ecaf 100644 (file)
@@ -1,36 +1,43 @@
+#
 # TODO:
-#      - conditional build with motif
-#      - .so binaries should be removed and linked with PLD one...
-#        (we really need them here?)
-
-%define                _buildid        200307181617
-%define                _ver            3.0
-%define                _milestone      M2
-%define                _buildname      %{_ver}%{_milestone}
-
-Summary:       eclipse - an open extensible IDE
-Summary(pl):   eclipse - otwarte, rozszerzalne ¶rodowisko programistyczne
+#                      - separate SWT (there are separate tarballs at http://www.eclipse.org/swt/)
+#                        and add proper provides, obsoletes, conflicts etc. where needed.
+#                        This will make building such things like Azureus possible without having
+#                        whole Eclipse suite installed.
+#
+%define                _ver_major      3.2
+%define                _ver_minor      1
+%define                _ver_rc         RC4
+%define                _buildid        200605121600
+#
+Summary:       Eclipse - an open extensible IDE
+Summary(pl):   Eclipse - otwarte, rozszerzalne ¶rodowisko programistyczne
 Name:          eclipse
-Version:       %{_ver}
-Release:       0.%{_milestone}.1
-License:       Common Public Licence
+Version:       %{_ver_major}
+Release:       0.%{_ver_rc}_%{_buildid}.1
+#Release:      1
+License:       EPL v1.0
 Group:         Development/Tools
-Source0:       http://www.eclipse.ps.pl/downloads/drops/S-%{_buildname}-%{_buildid}/eclipse-sourceBuild-srcIncluded-%{_buildname}.zip
-# Source0-md5: 12c9b31cf8605e58cf857715ac6ff5c3
+Source0:       http://download.eclipse.org/eclipse/downloads/drops/S-%{_ver_major}%{_ver_rc}-%{_buildid}/%{name}-sourceBuild-srcIncluded-%{_ver_major}%{_ver_rc}.zip
+# Source0-md5: c0a82a20347c0de3f956fdb6826e1d04
 Source1:       %{name}.desktop
+Patch0:                %{name}-core_resources-makefile.patch
+Patch1:                %{name}-build.patch
 URL:           http://www.eclipse.org/
-BuildRequires: jdk
+BuildRequires: ant >= 1.6.1
+BuildRequires: jdk >= 1.4
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.213
 BuildRequires: unzip
-BuildRequires: jakarta-ant >= 1.4
-BuildRequires: gtk+2-devel
-Requires:      jdk
-Requires:      jakarta-ant
+BuildRequires: zip
+Requires:      ant
+Requires:      jdk >= 1.4
 Obsoletes:     eclipse-SDK
-#BuildArch:    noarch
-ExclusiveArch: %{ix86}
+ExclusiveArch: %{ix86} %{x8664} ppc
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _javalibdir     /usr/share/java
+%define                _eclipse_arch   %(echo %{_target_cpu} | sed 's/i.86\\|athlon\\|pentium/x86/;s/amd64/x86_64/')
+%define                no_install_post_chrpath         1
 
 %description
 Eclipse is a kind of universal tool platform - an open extensible IDE
@@ -43,36 +50,198 @@ wszystkiego i niczego w szczeg
 
 %prep
 %setup -q -c
+%patch0 -p0
+%patch1 -p0
 
 %build
-JAVA_HOME=/usr/lib/java
-export JAVA_HOME
-./build -os linux -ws gtk -arch x86 -target compile
+export JAVA_HOME=%{_libdir}/java
+
+./build -os linux -ws gtk -arch %{_eclipse_arch} -target compile -java5home %{_libdir}/java
+
+export JAVA_INC="-I$JAVA_HOME/include -I$JAVA_HOME/include/linux"
+
+%{__make} -C plugins/org.eclipse.core.filesystem/natives/unix/linux/ \
+    CFLAGS="%{rpmcflags} $JAVA_INC" \
+    LDFLAGS="%{rpmldflags}"
+
+cd plugins/org.eclipse.update.core.linux/src
+%{__cc} %{rpmcflags} -fPIC %{rpmldflags} -I. $JAVA_INC update.c -o libupdate.so -shared
+cd -
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_bindir},%{_datadir}/%{name}}
+install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_bindir},%{_libdir}/%{name}}
+# place for arch independent plugins
+install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/{features,plugins}
 
-./build -os linux -ws gtk -arch x86 -target install
+export JAVA_HOME=%{_libdir}/java
+./build -os linux -ws gtk -arch %{_eclipse_arch} -target install -java5home %{_libdir}/java
 
-unzip result/linux-gtk-x86-sdk.zip -d $RPM_BUILD_ROOT%{_datadir}
+tar xfz result/linux-gtk-%{_eclipse_arch}-sdk.tar.gz -C $RPM_BUILD_ROOT%{_libdir}
 install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
 
+install plugins/org.eclipse.core.filesystem/natives/unix/linux/lib*.so $RPM_BUILD_ROOT%{_libdir}/%{name}
+install plugins/org.eclipse.update.core.linux/src/lib*.so $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+cp -a baseLocation/plugins/* $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+
 #wrapper
 install -d $RPM_BUILD_ROOT%{_bindir}
-cat > $RPM_BUILD_ROOT%{_bindir}/eclipse << EOF
+cat > $RPM_BUILD_ROOT%{_bindir}/eclipse << 'EOF'
 #!/bin/sh
-exec %{_datadir}/%{name}/eclipse \$*
+exec %{_libdir}/%{name}/eclipse $*
 EOF
 
+:> $RPM_BUILD_ROOT%{_datadir}/%{name}/.eclipseextension
+
+if [ ! -f "$RPM_BUILD_ROOT%{_libdir}/%{name}/icon.xpm" ]; then
+       install features/org.eclipse.platform.launchers/bin/gtk/linux/x86/icon.xpm $RPM_BUILD_ROOT%{_libdir}/%{name}/icon.xpm
+fi
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/eclipse
-%attr(755,root,root) %{_datadir}/%{name}/eclipse
+%attr(755,root,root) %{_libdir}/%{name}/eclipse
+%attr(755,root,root) %{_libdir}/%{name}/lib*.so
 %{_desktopdir}/eclipse.desktop
+%dir %{_libdir}/%{name}
+%{_libdir}/%{name}/.eclipseproduct
+%{_libdir}/%{name}/configuration
+%{_libdir}/%{name}/eclipse.ini
+%{_libdir}/%{name}/epl-v10.html
+%{_libdir}/%{name}/icon.xpm
+%{_libdir}/%{name}/notice.html
+%{_libdir}/%{name}/readme
+%{_libdir}/%{name}/startup.jar
+%{_libdir}/%{name}/about.html
+#%{_libdir}/%{name}/about_files
+%dir %{_libdir}/%{name}/features
+%{_libdir}/%{name}/features/org.eclipse.jdt_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.jdt.source_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.pde_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.pde.source_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.platform_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.platform.source_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.rcp_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.rcp.source_*.*.*
+%{_libdir}/%{name}/features/org.eclipse.sdk_*.*.*
+%dir %{_libdir}/%{name}/plugins
+%{_libdir}/%{name}/plugins/com.ibm.icu_*.*.*
+%{_libdir}/%{name}/plugins/com.ibm.icu.source_*.*.*
+%{_libdir}/%{name}/plugins/com.ibm.icu.base_*.*.*
+%{_libdir}/%{name}/plugins/com.ibm.icu.base.source_*.*.*
+%{_libdir}/%{name}/plugins/com.jcraft.jsch_*.*.*
+%{_libdir}/%{name}/plugins/org.apache.ant_*.*.*
+%{_libdir}/%{name}/plugins/org.apache.lucene_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ant.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ant.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.compare_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.boot_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.commands_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.contenttype_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.expressions_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.filebuffers_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.filesystem_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.filesystem.linux.*_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.jobs_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.resources_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.resources.compatibility_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.runtime_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.runtime.compatibility_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.runtime.compatibility.auth_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.runtime.compatibility.registry_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.core.variables_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.debug.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.debug.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.common_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.preferences_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.registry_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.help_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.help.appserver_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.help.base_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.help.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.help.webapp_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.apt.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.apt.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.core.manipulation*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.debug_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.debug.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.doc.isv_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.doc.user_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.junit_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.junit.runtime_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.junit4.runtime_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.launching_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.source_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jdt.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jface_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jface.databinding_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.jface.text_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ltk.core.refactoring_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ltk.ui.refactoring_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.osgi_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.osgi.services_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.osgi.util_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.build_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.doc.user_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.junit.runtime_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.runtime_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.source_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.pde.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.platform_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.platform.doc.isv_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.platform.doc.user_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.platform.source_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.platform.source.linux.gtk.%{_eclipse_arch}_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.rcp_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.rcp.source_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.rcp.source.linux.gtk.%{_eclipse_arch}_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.sdk_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{_eclipse_arch}_*.*.*.jar
+%{_libdir}/%{name}/plugins/org.eclipse.search_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.swt_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.browser_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.navigator_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.navigator.resources_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.team.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.team.cvs.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.team.cvs.ssh2_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.team.cvs.ssh_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.team.cvs.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.team.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.text_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.tomcat_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.cheatsheets_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.console_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.editors_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.externaltools_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.forms_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.ide_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.intro_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.intro.universal_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.presentations.r21_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.views_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.views.properties.tabbed_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.workbench_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.workbench.compatibility_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.workbench.texteditor_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.update.configurator_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.update.core_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.update.core.linux_*.*.*.jar
+%{_libdir}/%{name}/plugins/org.eclipse.update.scheduler_*.*.*
+%{_libdir}/%{name}/plugins/org.eclipse.update.ui_*.*.*
+%{_libdir}/%{name}/plugins/org.junit_*.*.*
+%{_libdir}/%{name}/plugins/org.junit4_*.*.*
+
 %dir %{_datadir}/%{name}
-%{_datadir}/%{name}/.[!.]*
-%{_datadir}/%{name}/[!e]*
+%dir %{_datadir}/%{name}/features
+%dir %{_datadir}/%{name}/plugins
+%{_datadir}/%{name}/.eclipseextension
This page took 0.068592 seconds and 4 git commands to generate.