# TODO # - finish (pldize) -servers package # # Conditional build: %bcond_without gui # IceGrid GUI %bcond_without dotnet # .NET bindings %bcond_with java # Java bindings (build requires X11 DISPLAY) %bcond_without php # PHP bindings %bcond_without python # Python bindings %bcond_without ruby # Ruby bindings %if %{without java} %undefine with_gui %endif %ifarch x32 %undefine with_dotnet %endif %if "%{?php_suffix}" == "" %define php_suffix 55 %endif %define php_name php%{?php_suffix} %{?with_java:%include /usr/lib/rpm/macros.java} Summary: The Ice base runtime and services Name: ice Version: 3.6.0 Release: 3 License: GPL v2 with exceptions (see ICE_LICENSE) Group: Applications Source0: https://github.com/zeroc-ice/ice/archive/v%{version}/%{name}-%{version}.tar.gz # Source0-md5: ced45c83fb892a0b392b78af3dbb4af4 # Extracted from http://zeroc.com/download/Ice/3.6/ice-3.6.0.src.rpm Source1: Ice-rpmbuild-%{version}.tar.gz # Source1-md5: b999b2ef7c2decf601b128e5bba50d17 # Man pages courtesy of Francisco Moya's Debian packages Source3: %{name}gridgui Source4: IceGridAdmin.desktop Patch0: no-arch-opts.patch Patch1: csharp-build.patch URL: http://www.zeroc.com/ BuildRequires: bzip2-devel BuildRequires: db-cxx-devel BuildRequires: expat-devel BuildRequires: mcpp-devel BuildRequires: openssl-devel BuildRequires: rpmbuild(macros) >= 1.665 %if %{with gui} BuildRequires: ImageMagick BuildRequires: ImageMagick-coder-png %endif %if %{with dotnet} BuildRequires: mono-csharp %endif %if %{with java} BuildRequires: ant BuildRequires: db-java-devel BuildRequires: java-jgoodies-common BuildRequires: java-jgoodies-forms BuildRequires: java-jgoodies-looks BuildRequires: jdk BuildRequires: jpackage-utils BuildRequires: rpm-javaprov %endif %if %{with php} BuildRequires: %{php_name}-devel >= 3:5.0.0 %endif %if %{with python} BuildRequires: python-devel BuildRequires: rpm-pythonprov %endif %if %{with ruby} BuildRequires: rpm-rubyprov BuildRequires: ruby >= 1:1.8.6 BuildRequires: ruby-devel %endif # Ice doesn't officially support ppc64 at all; sparc64 doesnt have mono ExcludeArch: ppc64 sparc64 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # Some file suffixes we need to grab the right stuff for the file lists %define soversion 36 %description Ice is a modern alternative to object middleware such as CORBA or COM/DCOM/COM+. It is easy to learn, yet provides a powerful network infrastructure for demanding technical applications. It features an object-oriented specification language, easy to use C++, C#, Java, Python, Ruby, PHP, and Visual Basic mappings, a highly efficient protocol, asynchronous method invocation and dispatch, dynamic transport plug-ins, TCP/IP and UDP/IP support, SSL-based security, a firewall solution, and much more. %package devel Summary: Tools for developing Ice applications in C++ Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel Tools for developing Ice applications in C++. %package servers Summary: Ice services to run through /etc/rc.d/init.d Group: Development/Tools Requires(post,preun): /sbin/chkconfig Requires: %{name} = %{version}-%{release} Requires: rc-scripts %description servers Ice services to run through /etc/rc.d/init.d %package -n icegrid-gui Summary: IceGrid Admin Tool Group: Development/Tools Requires: %{name} = %{version}-%{release} Requires: java-%{name} = %{version}-%{release} Requires: java-jgoodies-forms Requires: java-jgoodies-looks Requires: jpackage-utils %description -n icegrid-gui Graphical administration tool for IceGrid %package -n java-%{name} Summary: The Ice runtime for Java Group: Libraries/Java Requires: %{name} = %{version}-%{release} Requires: db-java Requires: jpackage-utils %description -n java-%{name} The Ice runtime for Java %package -n csharp-%{name} Summary: The Ice runtime for C# Group: Libraries Requires: %{name} = %{version}-%{release} Requires: mono >= 1.2.2 %description -n csharp-%{name} The Ice runtime for C# %package -n ruby-%{name} Summary: The Ice runtime for Ruby applications Group: Development/Languages Requires: %{name} = %{version}-%{release} %description -n ruby-%{name} The Ice runtime for Ruby applications. %package -n python-%{name} Summary: The Ice runtime for Python applications Group: Development/Languages/Python Requires: %{name} = %{version}-%{release} Requires: python >= 1:2.3.4 %description -n python-%{name} The Ice runtime for Python applications. %package -n %{php_name}-%{name} Summary: The Ice runtime for PHP applications Group: Development/Languages/PHP Requires: %{name} = %{version}-%{release} %{?requires_php_extension} %description -n %{php_name}-%{name} The Ice runtime for PHP applications. %prep %setup -q -a1 %patch0 -p1 %patch1 -p1 %if %{with java} # we nuke it only when we build new class later, as ice build system expects the file being around %{__rm} cpp/src/ca/ImportKey.class %endif # update path to our install sed -i -e 's,/usr/share/Ice-%{version},%{_datadir}/Ice,' Ice-rpmbuild-*/icegridregistry.conf # force our CC/CXX as build system compares for exactly "c++" to setup other rules sed -i -e 's,c++,%{__cxx},g' cpp/config/Make.rules.Linux %build %if %{with java} # Rebuild the Java ImportKey class - need it early for main cpp build javac cpp/src/ca/ImportKey.java %endif %{__make} -C cpp \ CFLAGS="%{rpmcflags} -fPIC" \ CXXFLAGS="%{rpmcxxflags} -fPIC -pthread" \ %ifarch x32 lp64suffix=x32 \ %endif embedded_runpath=no %if %{with gui} # Create the IceGrid icon convert java/resources/icons/icegrid.ico temp.png mv temp-8.png java/resources/icons/icegrid.png rm temp*.png %endif %if %{with java} # Set the CLASSPATH correctly for the Java compile export CLASSPATH=$(build-classpath db jgoodies-forms jgoodies-looks) %{__make} -C java \ CFLAGS="%{rpmcflags} -fPIC" \ CXXFLAGS="%{rpmcxxflags} -fPIC -pthread" \ %ifarch x32 lp64suffix=x32 \ %endif embedded_runpath=no %endif %if %{with dotnet} %{__make} -C csharp \ CFLAGS="%{rpmcflags} -fPIC" \ CXXFLAGS="%{rpmcxxflags} -fPIC -pthread" \ %ifarch x32 lp64suffix=x32 \ %endif embedded_runpath=no %endif %if %{with python} %{__make} -C python \ CFLAGS="%{rpmcflags} -fPIC" \ CXXFLAGS="%{rpmcxxflags} -fPIC -pthread" \ %ifarch x32 lp64suffix=x32 \ %endif embedded_runpath=no %endif %if %{with ruby} %{__make} -C ruby \ CFLAGS="%{rpmcflags} -fPIC" \ CXXFLAGS="%{rpmcxxflags} -fPIC -pthread" \ %ifarch x32 lp64suffix=x32 \ %endif embedded_runpath=no %endif %if %{with php} %{__make} -C php \ PHP_HOME=%{_prefix} \ CFLAGS="%{rpmcflags} -fPIC" \ CXXFLAGS="%{rpmcxxflags} -fPIC -pthread" \ %ifarch x32 lp64suffix=x32 \ %endif embedded_runpath=no %endif %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir},%{_docdir}/Ice-%{version},%{_datadir}/Ice} %{__make} -C cpp install \ %ifarch x32 lp64suffix=x32 \ %endif prefix=$RPM_BUILD_ROOT mv $RPM_BUILD_ROOT/bin/* $RPM_BUILD_ROOT%{_bindir} mv $RPM_BUILD_ROOT/include/* $RPM_BUILD_ROOT%{_includedir} mv $RPM_BUILD_ROOT/%{_lib}/* $RPM_BUILD_ROOT%{_libdir} mv $RPM_BUILD_ROOT/config/* $RPM_BUILD_ROOT%{_datadir}/Ice %if %{with java} %{__make} -C java install \ %ifarch x32 lp64suffix=x32 \ %endif prefix=$RPM_BUILD_ROOT # Move Java stuff where it should be install -d $RPM_BUILD_ROOT%{_javadir} mv $RPM_BUILD_ROOT/lib/Ice.jar $RPM_BUILD_ROOT%{_javadir}/Ice-%{version}.jar ln -s Ice-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/Ice.jar mv $RPM_BUILD_ROOT/lib/Freeze.jar $RPM_BUILD_ROOT%{_javadir}/Freeze-%{version}.jar ln -s Freeze-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/Freeze.jar # Register ant target install -d $RPM_BUILD_ROOT{%{_sysconfdir}/ant.d,%{_javadir}/ant} mv $RPM_BUILD_ROOT/lib/ant-ice.jar $RPM_BUILD_ROOT%{_javadir}/ant/ant-ice-%{version}.jar ln -s ant-ice-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/ant/ant-ice.jar echo 'ice ant/ant-ice' > $RPM_BUILD_ROOT%{_sysconfdir}/ant.d/ice %endif %if %{with gui} # Install the IceGrid GUI install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} mv $RPM_BUILD_ROOT/lib/IceGridGUI.jar $RPM_BUILD_ROOT%{_datadir}/Ice cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir} install -p %{SOURCE3} $RPM_BUILD_ROOT%{_bindir} cp -a java/resources/icons/icegrid.png $RPM_BUILD_ROOT%{_pixmapsdir} mv $RPM_BUILD_ROOT/help/IceGridAdmin $RPM_BUILD_ROOT%{_docdir}/Ice-%{version} %endif %if %{with dotnet} install -d $RPM_BUILD_ROOT%{_pkgconfigdir} %{__make} -C csharp install \ %ifarch x32 lp64suffix=x32 \ %endif prefix=$RPM_BUILD_ROOT \ GACINSTALL=yes \ GAC_ROOT=$RPM_BUILD_ROOT%{_prefix}/lib \ mv $RPM_BUILD_ROOT/bin/* $RPM_BUILD_ROOT%{_bindir} # .NET spec files (for csharp-devel) -- convert the paths for f in Glacier2 Ice IceBox IceDiscovery IceGrid IceLocatorDiscovery IcePatch2 IceSSL IceStorm; do sed -i -e "s#/lib/#%{_prefix}/lib/#" $RPM_BUILD_ROOT/lib/pkgconfig/$f.pc sed -i -e "s#mono_root}/usr#mono_root}#" $RPM_BUILD_ROOT/lib/pkgconfig/$f.pc mv $RPM_BUILD_ROOT/lib/pkgconfig/$f.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/$f.pc done %endif %if %{with python} %{__make} -C python install \ %ifarch x32 lp64suffix=x32 \ %endif prefix=$RPM_BUILD_ROOT %{__sed} -i -e '1s,/usr/bin/env python,%{__python},' $RPM_BUILD_ROOT/python/Ice.py install -d $RPM_BUILD_ROOT%{py_sitedir}/Ice mv $RPM_BUILD_ROOT/python/IcePy.so.*.*.* $RPM_BUILD_ROOT%{py_sitedir}/Ice/IcePy.so rm -f $RPM_BUILD_ROOT/python/IcePy.so* mv $RPM_BUILD_ROOT/python/* $RPM_BUILD_ROOT%{py_sitedir}/Ice %py_ocomp $RPM_BUILD_ROOT%{py_sitedir} %py_comp $RPM_BUILD_ROOT%{py_sitedir} %py_postclean %endif %if %{with ruby} %{__make} -C ruby install \ %ifarch x32 lp64suffix=x32 \ %endif prefix=$RPM_BUILD_ROOT %{__sed} -i -e '1s,/usr/bin/env ruby,%{__ruby},' $RPM_BUILD_ROOT/ruby/*.rb install -d $RPM_BUILD_ROOT%{ruby_vendorarchdir} mv $RPM_BUILD_ROOT/ruby/IceRuby.so.*.*.* $RPM_BUILD_ROOT%{ruby_vendorarchdir}/IceRuby.so rm -f $RPM_BUILD_ROOT/ruby/IceRuby.so* mv $RPM_BUILD_ROOT/ruby/* $RPM_BUILD_ROOT%{ruby_vendorarchdir} %endif %if %{with php} %{__make} -C php install \ %ifarch x32 lp64suffix=x32 \ %endif prefix=$RPM_BUILD_ROOT # Put the PHP stuff into the right place install -d $RPM_BUILD_ROOT{%{php_sysconfdir}/conf.d,%{php_extensiondir},%{php_data_dir}} cp -a Ice-rpmbuild-*/ice.ini $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d mv $RPM_BUILD_ROOT/php/IcePHP.so $RPM_BUILD_ROOT%{php_extensiondir} mv $RPM_BUILD_ROOT/php/* $RPM_BUILD_ROOT%{php_data_dir} %endif # move as last, bindings reinstall these if missing mv $RPM_BUILD_ROOT/slice $RPM_BUILD_ROOT%{_datadir}/Ice # Move the license files into the documentation directory mv $RPM_BUILD_ROOT/ICE_LICENSE $RPM_BUILD_ROOT%{_docdir}/Ice-%{version}/ICE_LICENSE mv $RPM_BUILD_ROOT/LICENSE $RPM_BUILD_ROOT%{_docdir}/Ice-%{version}/LICENSE # Copy in the other files too cp CHANGELOG*.md CONTRIBUTING.md README.md $RPM_BUILD_ROOT%{_docdir}/Ice-%{version} # Install the servers install -d $RPM_BUILD_ROOT%{_sysconfdir} cp -a Ice-rpmbuild-*/*.conf $RPM_BUILD_ROOT%{_sysconfdir} install -d $RPM_BUILD_ROOT%{_initrddir} for i in icegridregistry icegridnode glacier2router; do cp -a Ice-rpmbuild-*/$i.redhat $RPM_BUILD_ROOT%{_initrddir}/$i done install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/icegrid ## Copy the man pages into the correct directory install -d $RPM_BUILD_ROOT%{_mandir}/man1 cp -a man/man1/*.1 $RPM_BUILD_ROOT%{_mandir}/man1 %{__rm} -r $RPM_BUILD_ROOT/man %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post -n %{php_name}-%{name} %php_webserver_restart %postun -n %{php_name}-%{name} if [ "$1" = 0 ]; then %php_webserver_restart fi %files %defattr(644,root,root,755) %doc %{_docdir}/Ice-%{version} %attr(755,root,root) %{_bindir}/dumpdb %attr(755,root,root) %{_bindir}/glacier2router %attr(755,root,root) %{_bindir}/icebox %attr(755,root,root) %{_bindir}/iceboxadmin %attr(755,root,root) %{_bindir}/icegridadmin %attr(755,root,root) %{_bindir}/icegridnode %attr(755,root,root) %{_bindir}/icegridregistry %attr(755,root,root) %{_bindir}/icepatch2calc %attr(755,root,root) %{_bindir}/icepatch2client %attr(755,root,root) %{_bindir}/icepatch2server %attr(755,root,root) %{_bindir}/icestormadmin %attr(755,root,root) %{_bindir}/icestormmigrate %attr(755,root,root) %{_bindir}/slice2html %attr(755,root,root) %{_bindir}/transformdb %{_mandir}/man1/dumpdb.1* %{_mandir}/man1/glacier2router.1* %{_mandir}/man1/icebox.1* %{_mandir}/man1/iceboxadmin.1* %{_mandir}/man1/icegridadmin.1* %{_mandir}/man1/icegridnode.1* %{_mandir}/man1/icegridregistry.1* %{_mandir}/man1/icepatch2calc.1* %{_mandir}/man1/icepatch2client.1* %{_mandir}/man1/icepatch2server.1* %{_mandir}/man1/icestormadmin.1* %{_mandir}/man1/icestormmigrate.1* %{_mandir}/man1/slice2html.1* %{_mandir}/man1/transformdb.1* %attr(755,root,root) %{_libdir}/libFreeze.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libFreeze.so.%{soversion} %attr(755,root,root) %{_libdir}/libGlacier2.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libGlacier2.so.%{soversion} %attr(755,root,root) %{_libdir}/libGlacier2CryptPermissionsVerifier.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libGlacier2CryptPermissionsVerifier.so.%{soversion} %attr(755,root,root) %{_libdir}/libIce.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIce.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceBox.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceBox.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceDiscovery.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceDiscovery.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceGrid.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceGrid.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceLocatorDiscovery.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceLocatorDiscovery.so.%{soversion} %attr(755,root,root) %{_libdir}/libIcePatch2.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIcePatch2.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceSSL.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceSSL.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceStorm.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceStorm.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceStormService.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceStormService.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceUtil.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceUtil.so.%{soversion} %attr(755,root,root) %{_libdir}/libIceXML.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libIceXML.so.%{soversion} %attr(755,root,root) %{_libdir}/libSlice.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libSlice.so.%{soversion} %{_datadir}/Ice %if %{with gui} # Exclude the stuff that's in IceGrid %exclude %{_docdir}/Ice-%{version}/IceGridAdmin %exclude %{_datadir}/Ice/IceGridGUI.jar %files -n icegrid-gui %defattr(644,root,root,755) %doc %{_docdir}/Ice-%{version}/IceGridAdmin %attr(755,root,root) %{_bindir}/icegridgui %{_datadir}/Ice/IceGridGUI.jar %{_mandir}/man1/icegridgui.1* %{_desktopdir}/IceGridAdmin.desktop %{_pixmapsdir}/icegrid.png %endif %files devel %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/slice2cpp %attr(755,root,root) %{_bindir}/slice2freeze %attr(755,root,root) %{_libdir}/libFreeze.so %attr(755,root,root) %{_libdir}/libGlacier2CryptPermissionsVerifier.so %attr(755,root,root) %{_libdir}/libGlacier2.so %attr(755,root,root) %{_libdir}/libIceBox.so %attr(755,root,root) %{_libdir}/libIceDiscovery.so %attr(755,root,root) %{_libdir}/libIceGrid.so %attr(755,root,root) %{_libdir}/libIceLocatorDiscovery.so %attr(755,root,root) %{_libdir}/libIcePatch2.so %attr(755,root,root) %{_libdir}/libIce.so %attr(755,root,root) %{_libdir}/libIceSSL.so %attr(755,root,root) %{_libdir}/libIceStormService.so %attr(755,root,root) %{_libdir}/libIceStorm.so %attr(755,root,root) %{_libdir}/libIceUtil.so %attr(755,root,root) %{_libdir}/libIceXML.so %attr(755,root,root) %{_libdir}/libSlice.so %{_includedir}/Freeze %{_includedir}/Glacier2 %{_includedir}/Ice %{_includedir}/IceBox %{_includedir}/IceGrid %{_includedir}/IcePatch2 %{_includedir}/IceSSL %{_includedir}/IceStorm %{_includedir}/IceUtil %{_includedir}/Slice %{_mandir}/man1/slice2cpp.1* %{_mandir}/man1/slice2freeze.1* %if %{with java} %{_sysconfdir}/ant.d/ice %{_javadir}/ant/ant-ice-%{version}.jar %{_javadir}/ant/ant-ice.jar %endif %if %{with dotnet} %{_pkgconfigdir}/Glacier2.pc %{_pkgconfigdir}/Ice.pc %{_pkgconfigdir}/IceBox.pc %{_pkgconfigdir}/IceDiscovery.pc %{_pkgconfigdir}/IceGrid.pc %{_pkgconfigdir}/IceLocatorDiscovery.pc %{_pkgconfigdir}/IcePatch2.pc %{_pkgconfigdir}/IceSSL.pc %{_pkgconfigdir}/IceStorm.pc %endif # as we do not have -devel for each binding, these are in main -devel # -csharp %attr(755,root,root) %{_bindir}/slice2cs %{_mandir}/man1/slice2cs.1* # -java %attr(755,root,root) %{_bindir}/slice2freezej %attr(755,root,root) %{_bindir}/slice2java %{_mandir}/man1/slice2freezej.1* %{_mandir}/man1/slice2java.1* # -js %attr(755,root,root) %{_bindir}/slice2js %{_mandir}/man1/slice2js.1* # -php %attr(755,root,root) %{_bindir}/slice2php %{_mandir}/man1/slice2php.1* # -python #%attr(755,root,root) %{_bindir}/slice2py %{_mandir}/man1/slice2py.1* # -ruby #%attr(755,root,root) %{_bindir}/slice2rb %{_mandir}/man1/slice2rb.1* %files servers %defattr(644,root,root,755) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/glacier2router.conf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/icegridnode.conf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/icegridregistry.conf %attr(754,root,root) /etc/rc.d/init.d/glacier2router %attr(754,root,root) /etc/rc.d/init.d/icegridnode %attr(754,root,root) /etc/rc.d/init.d/icegridregistry %if %{with dotnet} %files -n csharp-%{name} %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/iceboxnet.exe %{_mandir}/man1/iceboxnet.1* %{_prefix}/lib/mono/Glacier2 %{_prefix}/lib/mono/Ice %{_prefix}/lib/mono/IceBox %{_prefix}/lib/mono/IceDiscovery %{_prefix}/lib/mono/IceGrid %{_prefix}/lib/mono/IceLocatorDiscovery %{_prefix}/lib/mono/IcePatch2 %{_prefix}/lib/mono/IceSSL %{_prefix}/lib/mono/IceStorm %{_prefix}/lib/mono/gac/Glacier2 %{_prefix}/lib/mono/gac/Ice %{_prefix}/lib/mono/gac/IceBox %{_prefix}/lib/mono/gac/IceDiscovery %{_prefix}/lib/mono/gac/IceGrid %{_prefix}/lib/mono/gac/IceLocatorDiscovery %{_prefix}/lib/mono/gac/IcePatch2 %{_prefix}/lib/mono/gac/IceSSL %{_prefix}/lib/mono/gac/IceStorm %endif %if %{with python} %files -n python-%{name} %defattr(644,root,root,755) %dir %{py_sitedir}/Ice %dir %{py_sitedir}/Ice/IceBox %dir %{py_sitedir}/Ice/IceGrid %dir %{py_sitedir}/Ice/IceMX %dir %{py_sitedir}/Ice/IcePatch2 %dir %{py_sitedir}/Ice/IceStorm %{py_sitedir}/Ice/*.py[co] %{py_sitedir}/Ice/IceBox/*.py[co] %{py_sitedir}/Ice/IceGrid/*.py[co] %{py_sitedir}/Ice/IceMX/*.py[co] %{py_sitedir}/Ice/IcePatch2/*.py[co] %{py_sitedir}/Ice/IceStorm/*.py[co] %attr(755,root,root) %{py_sitedir}/Ice/IcePy.so %endif %if %{with ruby} %files -n ruby-%{name} %defattr(644,root,root,755) %{ruby_vendorarchdir}/Glacier2.rb %{ruby_vendorarchdir}/Glacier2 %{ruby_vendorarchdir}/Ice.rb %{ruby_vendorarchdir}/Ice %{ruby_vendorarchdir}/IceBox.rb %{ruby_vendorarchdir}/IceBox %{ruby_vendorarchdir}/IceGrid.rb %{ruby_vendorarchdir}/IceGrid %{ruby_vendorarchdir}/IcePatch2.rb %{ruby_vendorarchdir}/IcePatch2 %{ruby_vendorarchdir}/IceStorm.rb %dir %{ruby_vendorarchdir}/IceStorm %{ruby_vendorarchdir}/IceStorm/IceStorm.rb %{ruby_vendorarchdir}/IceStorm/Metrics.rb %attr(755,root,root) %{ruby_vendorarchdir}/IceRuby.so %endif %if %{with java} %files -n java-%{name} %defattr(644,root,root,755) %{_javadir}/Freeze-%{version}.jar %{_javadir}/Freeze.jar %{_javadir}/Ice-%{version}.jar %{_javadir}/Ice.jar %endif %if %{with php} %files -n %{php_name}-%{name} %defattr(644,root,root,755) %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/ice.ini %attr(755,root,root) %{php_extensiondir}/IcePHP.so %{php_data_dir}/Glacier2.php %{php_data_dir}/Glacier2 %{php_data_dir}/Ice.php %{php_data_dir}/Ice %{php_data_dir}/IceBox.php %{php_data_dir}/IceBox %{php_data_dir}/IceGrid.php %{php_data_dir}/IceGrid %{php_data_dir}/IcePatch2.php %{php_data_dir}/IcePatch2 %{php_data_dir}/IceStorm.php %{php_data_dir}/IceStorm %endif