2 # - build instructions: http://www.eclipse.org/swt/faq.php#howbuilddll
5 # - check if any patches are needed
8 %bcond_without gnome # build without GNOME
9 %bcond_without xulrunner # build without xulrunner
10 %bcond_without glx # build without GLX
11 %bcond_without cairo # build without cairo
13 %define buildid 201102101200
16 %define swtsrcdir src/plugins/org.eclipse.swt.gtk.linux.x86_64
17 %define swtgtkdir plugins/org.eclipse.swt.gtk.linux.x86_64
21 %define swtsrcdir src/plugins/org.eclipse.swt.gtk.linux.ppc
22 %define swtgtkdir plugins/org.eclipse.swt.gtk.linux.ppc
26 %define swtsrcdir src/plugins/org.eclipse.swt.gtk.linux.x86
27 %define swtgtkdir plugins/org.eclipse.swt.gtk.linux.x86
30 %define eclipse_arch %(echo %{_target_cpu} | sed 's/i.86/x86/;s/athlon/x86/;s/pentium./x86/')
32 Summary: SWT - a widget toolkit for Java
33 Summary(pl.UTF-8): SWT - zestaw widgetów dla Javy
39 Source0: http://download.eclipse.org/eclipse/downloads/drops/R-%{version}-%{buildid}/eclipse-sourceBuild-srcIncluded-%{version}.zip
40 # Source0-md5: 33a298ea33c6f24462aa0a02b9cda3d4
41 Patch0: eclipse-xpcom-h.patch
42 URL: http://www.eclipse.org/swt/
43 %{?with_glx:BuildRequires: OpenGL-devel}
44 BuildRequires: ant >= 1.6.1
45 BuildRequires: atk-devel
46 %{?with_cairo:BuildRequires: cairo-devel}
47 BuildRequires: gtk+2-devel >= 2.0.0
48 BuildRequires: jdk >= 1.4
49 %{?with_gnome:BuildRequires: libgnomeui-devel}
50 %{?with_xulrunner:BuildRequires: libstdc++-devel}
51 BuildRequires: pkgconfig
52 BuildRequires: rpm-javaprov
53 BuildRequires: rpmbuild(macros) >= 1.300
55 BuildRequires: xorg-lib-libXtst-devel
56 %{?with_xulrunner:BuildRequires: xulrunner-devel >= 1.9}
59 Requires: jpackage-utils
60 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
63 SWT is a widget toolkit for Java designed to provide efficient,
64 portable access to the user-interface facilities of the operating
65 systems on which it is implemented.
67 %description -l pl.UTF-8
68 SWT to zestaw widgetów dla Javy zaprojektowany aby dostarczyć wydajny,
69 przenośny dostęp do udogodnień interfejsu użytkownika na tych
70 systemach operacyjnych, na których został zaimplementowany.
74 %ant -f %{swtsrcdir}/build.xml src.zip
77 %{__unzip} -qq -o ../%{swtsrcdir}/src.zip
81 %{__make} -f make_linux.mak -C swt \
83 %{?with_glx:make_glx} \
84 %{?with_gnome:make_gnome} \
85 %{?with_cairo:make_cairo} \
86 %{?with_xulrunner:make_xulrunner XULRUNNER_INCLUDES="$(pkg-config --cflags libxul-embedding)"} \
87 JAVA_HOME="%{java_home}" \
90 XTEST_LIB_PATH=%{_prefix}/X11R6/%{_lib} \
93 %ant -f %{swtsrcdir}/build.xml build.jars
96 rm -rf $RPM_BUILD_ROOT
97 install -d $RPM_BUILD_ROOT%{_javadir}
98 install %{swtsrcdir}/swt.jar $RPM_BUILD_ROOT%{_javadir}
100 dir=%{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}
101 install -d $RPM_BUILD_ROOT$dir
102 for a in swt/libswt-*.so; do
103 install $a $RPM_BUILD_ROOT$dir
105 ln -sf ${dir#%{_libdir}/swt/}/$lib $RPM_BUILD_ROOT%{_libdir}/swt
108 install swt/*.html $RPM_BUILD_ROOT%{_libdir}/swt
109 cp -a swt/about_files $RPM_BUILD_ROOT%{_libdir}/swt
112 rm -rf $RPM_BUILD_ROOT
115 %defattr(644,root,root,755)
117 %dir %{_libdir}/swt/plugins
118 %dir %{_libdir}/swt/%{swtgtkdir}_%{version}
119 %dir %{_libdir}/swt/%{swtgtkdir}_%{version}/os
120 %dir %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux
121 %dir %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}
123 %{_libdir}/swt/about_files
124 %{_libdir}/swt/about.html
125 %{_libdir}/swt/libswt-*-*.so
126 %attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-atk-gtk-*.so
127 %{?with_cairo:%attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-cairo-gtk-*.so}
128 %{?with_glx:%attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-glx-gtk-*.so}
129 %{?with_gnome:%attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-gnome-gtk-*.so}
130 %attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-gtk-*.so
131 %attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-pi-gtk-*.so
132 %{?with_xulrunner:%attr(755,root,root) %{_libdir}/swt/%{swtgtkdir}_%{version}/os/linux/%{eclipse_arch}/libswt-xulrunner-gtk-*.so}