From 89841b844667fe4f37c82f233a5c7f823391601e Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Thu, 1 Feb 2024 15:14:51 +0100 Subject: [PATCH] update to 3.7.10 source renamed from Ice to zeroc-ice [release 3.7.10-1mamba;Wed Jan 31 2024] --- README.md | 4 + zeroc-ice.spec | 462 +++++++++++++++++++++++++++++++++++++++++++++ zeroc-ice.sysusers | 1 + 3 files changed, 467 insertions(+) create mode 100644 zeroc-ice.spec create mode 100644 zeroc-ice.sysusers diff --git a/README.md b/README.md index 1e91f5d..66190c5 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,6 @@ # zeroc-ice +The Internet Communications Engine (Ice) is a modern object-oriented middleware with support for C++, .NET, Java, Python, Objective-C, Ruby, and PHP. Ice is used in many mission-critical projects by companies all over the world. +Ice is easy to learn, yet provides a powerful network infrastructure and vast array of features for demanding technical applications. +Ice is free software, available with full source, and released under the terms of GNU General Public License (GPL). Commercial licenses are available for customers who wish to use Ice for closed-source software. + diff --git a/zeroc-ice.spec b/zeroc-ice.spec new file mode 100644 index 0000000..ac20fd4 --- /dev/null +++ b/zeroc-ice.spec @@ -0,0 +1,462 @@ +%define majversion %(echo %version | cut -d. -f 1-2) +%define php_extensiondir %(php-config --extension-dir) + +Name: zeroc-ice +Version: 3.7.10 +Release: 1mamba +Summary: The Internet Communications Engine (Ice) +Group: System/Libraries +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: https://www.zeroc.com/ +Source0: https://github.com/zeroc-ice/ice.git/v%{version}/ice-%{version}.tar.bz2 +Source1: https://github.com/zeroc-ice/ice-packaging.git/v%{version}/ice-packaging-%{version}.tar.bz2 +Source2: zeroc-ice.sysusers +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libbzip2-devel +BuildRequires: libedit-devel +BuildRequires: libexpat-devel +BuildRequires: libgcc +BuildRequires: liblmdb-devel +BuildRequires: libmcpp-devel +BuildRequires: libopenssl-devel +BuildRequires: libpython311-devel +BuildRequires: libruby-devel +BuildRequires: libstdc++6-devel +BuildRequires: libsystemd-devel +BuildRequires: libxcrypt-devel +## AUTOBUILDREQ-END +BuildRequires: openssl +BuildRequires: php-devel +BuildRequires: ruby-devel +BuildRequires: apache-ant +BuildRequires: apache-ant-nodeps +BuildRequires: ImageMagick +BuildRequires: javapackages +#BuildRequires: java-bdb48 +BuildRequires: java-openjdk +#BuildRequires: java-proguard +#BuildRequires: jgoodies-common +BuildRequires: mono-devel +Provides: Ice +Obsoletes: ice < 3.7.10 +Obsoletes: mono-Ice < 3.7.10 +Obsoletes: mono-Ice-devel < 3.7.10 + +%description +The Internet Communications Engine (Ice) is a modern object-oriented middleware with support for C++, .NET, Java, Python, Objective-C, Ruby, and PHP. Ice is used in many mission-critical projects by companies all over the world. +Ice is easy to learn, yet provides a powerful network infrastructure and vast array of features for demanding technical applications. +Ice is free software, available with full source, and released under the terms of GNU General Public License (GPL). Commercial licenses are available for customers who wish to use Ice for closed-source software. + +%package devel +Summary: Tools for developing Ice applications in C++ +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Provides: Ice-devel +Obsoletes: ice-devel < 3.7.10 + +%description devel +The Internet Communications Engine (Ice). +This package contains tools for developing Ice applications in C++. + +%package -n mono-Ice +Summary: The Ice runtime for C# +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Requires: mono-core + +%description -n mono-Ice +The Internet Communications Engine (Ice). +This package contains the Ice runtime for C#. + +%package -n mono-Ice-devel +Summary: Tools for developing Ice applications in C# +Group: Development/Tools +Requires: mono-Ice = %{?epoch:%epoch:}%{version}-%{release} + +%description -n mono-Ice-devel +The Internet Communications Engine (Ice). +This package contains tools for developing Ice applications in C#+. + +%package -n icegrid-gui +Summary: IceGrid Admin Tool +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Requires: java-Ice = %{?epoch:%epoch:}%{version}-%{release} +Requires: jgoodies-forms13 +Requires: jgoodies-looks +Requires: jpackage-utils + +%description -n icegrid-gui +The Internet Communications Engine (Ice). +This package contains graphical administration tool for IceGrid. + +%package -n java-Ice +Summary: The Ice runtime for Java +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description -n java-Ice +The Internet Communications Engine (Ice). +This package contains the Ice runtime for Java. + +%package -n php-Ice +Summary: The Ice runtime for Java +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Requires: php + +%description -n php-Ice +The Internet Communications Engine (Ice). + +This package contains the Ice runtime for PHP applications. + +%package -n python-Ice +Summary: The Ice runtime for Python applications +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Requires: python + +%description -n python-Ice +The Internet Communications Engine (Ice). +This package contains the Ice runtime for Python applications. + +%package -n ruby-Ice +Summary: The Ice runtime for Ruby applications +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Requires: ruby + +%description -n ruby-Ice +The Internet Communications Engine (Ice). +This package contains the Ice runtime for Ruby applications. + +%package servers +Summary: Ice services to run through systmed +Group: Development/Tools +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Provides: Ice-servers +Obsoletes: ice-servers < 3.7.10 + +%description servers +The Internet Communications Engine (Ice). +This package contains Ice services to run through systemd. + +%debug_package + +%prep +%setup -q -n ice-%{version} -a1 +#-D -T +#:<< _EOF + +sed -i "s|icegridguiProguard = true|icegridguiProguard = false|" java/gradle.properties + +#sed -i "s| test$||" csharp/Makefile + +%build +#:<< _EOF +#export CFLAGS="%{optflags} -fPIC -Wno-error -lpthread" + +%make \ + OPTIMIZE="yes" \ + USR_DIR_INSTALL="yes" \ + prefix=%{_prefix} \ + CONFIGS="shared cpp11-shared" \ + CXXFLAGS="%{optflags} -fPIC -fvisibility=hidden -Wall -Wno-error -pthread" \ + PYTHON="python3" \ + LANGUAGES="cpp java python ruby php" \ + srcs + +#% make -C csharp + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +%makeinstall \ + OPTIMIZE="yes" \ + USR_DIR_INSTALL="yes" \ + prefix=%{_prefix} \ + CONFIGS="shared cpp11-shared" \ + PYTHON="python3" \ + LANGUAGES="cpp java python ruby php" \ + install_rubydir=%{ruby_sitelib} \ + install_rubylibdir=%{ruby_sitearch} + + +#% makeinstall -C csharp \ +# OPTIMIZE="yes" USR_DIR_INSTALL="yes" \ +# prefix=%{_prefix} \ +# install_assembliesdir=%{_prefix}/lib/mono/Ice + +#cp -a csharp/lib/pkgconfig %{buildroot}%{_libdir}/ +#make prefix=%{buildroot} GACINSTALL=yes GAC_ROOT=%{buildroot}%{_libdir} embedded_runpath_prefix="" install + +install -Dm644 ice-packaging-%{version}/ice/rpm/glacier2router.conf \ + %{buildroot}%{_sysconfdir}/glacier2router.conf +install -Dm644 ice-packaging-%{version}/ice/rpm/icegridnode.conf \ + %{buildroot}%{_sysconfdir}/icegridnode.conf +install -Dm644 ice-packaging-%{version}/ice/rpm/icegridregistry.conf \ + %{buildroot}%{_sysconfdir}/icegridregistry.conf +install -Dm644 ice-packaging-%{version}/ice/rpm/glacier2router.service \ + %{buildroot}%{_unitdir}/glacier2router.service +install -Dm644 ice-packaging-%{version}/ice/rpm/icegridnode.service \ + %{buildroot}%{_unitdir}/icegridnode.service +install -Dm644 ice-packaging-%{version}/ice/rpm/icegridregistry.service \ + %{buildroot}%{_unitdir}/icegridregistry.service + +install -D -m0644 %{SOURCE2} %{buildroot}%{_sysusersdir}/zeroc-ice.conf +mkdir -p %{buildroot}/var/lib/ice/icegrid/{node1,registry} + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%post -n icegrid-gui +touch --no-create %{_datadir}/icons/hicolor +if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache -q %{_datadir}/icons/hicolor +fi +: + +%postun -n icegrid-gui +touch --no-create %{_datadir}/icons/hicolor +if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache -q %{_datadir}/icons/hicolor +fi +: + +%pre servers +%sysusers_create_package zeroc-ice %{SOURCE2} +: + +%post servers +%systemd_post icegridregistry +%systemd_post icegridnode +%systemd_post glacier2router +: + +%preun servers +%systemd_preun icegridregistry +%systemd_preun icegridnode +%systemd_preun glacier2router +: + +%postun servers +%systemd_postun_with_restart icegridregistry +%systemd_postun_with_restart icegridnode +%systemd_postun_with_restart glacier2router +: + +%files +%defattr(-,root,root) +%{_bindir}/glacier2router +%{_bindir}/icebox +%{_bindir}/iceboxadmin +%{_bindir}/icegridadmin +%{_bindir}/icegridnode +%{_bindir}/icegridregistry +%{_bindir}/icepatch2calc +%{_bindir}/icepatch2client +%{_bindir}/icepatch2server +%{_bindir}/icestormadmin +%{_bindir}/icebox++11 +%{_bindir}/icebridge +%{_bindir}/icegriddb +%{_bindir}/icestormdb +%{_bindir}/slice2confluence +%{_bindir}/slice2cs +%{_bindir}/slice2js +%{_bindir}/slice2matlab +%{_bindir}/slice2objc +%{_bindir}/slice2rb +%{_bindir}/slice2swift +%{_bindir}/slice2html +%{_datadir}/ice/ICE_LICENSE +%{_datadir}/ice/LICENSE +%dir %{_datadir}/ice/slice/Glacier2 +%{_datadir}/ice/slice/Glacier2/*.ice +%dir %{_datadir}/ice/slice/Ice* +%{_datadir}/ice/slice/Ice*/*.ice +%{_datadir}/ice/templates.xml +%{_libdir}/libGlacier2.so.* +%{_libdir}/libIce.so.* +%{_libdir}/libIceBox.so.* +%{_libdir}/libIceGrid.so.* +%{_libdir}/libIcePatch2.so.* +%{_libdir}/libIceSSL.so.* +%{_libdir}/libIceStorm.so.* +%{_libdir}/libIceStormService.so.* +%{_libdir}/libIceXML.so.* +%{_libdir}/libGlacier2++11.so.* +%{_libdir}/libIce++11.so.* +%{_libdir}/libGlacier2CryptPermissionsVerifier.so.* +%{_libdir}/libIceBox++11.so.* +%{_libdir}/libIceDB.so.* +%{_libdir}/libIceDiscovery++11.so.* +%{_libdir}/libIceDiscovery.so.* +%{_libdir}/libIceGrid++11.so.* +%{_libdir}/libIceLocatorDiscovery++11.so.* +%{_libdir}/libIceLocatorDiscovery.so.* +%{_libdir}/libIceSSL++11.so.* +%{_libdir}/libIceStorm++11.so.* +%{_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/slice2html.1* +%{_mandir}/man1/icebridge.1* +%{_mandir}/man1/icegriddb.1* +%{_mandir}/man1/icestormdb.1* +%{_mandir}/man1/slice2cs.1* +%{_mandir}/man1/slice2js.1* +%{_mandir}/man1/slice2matlab.1* +%{_mandir}/man1/slice2objc.1* +%{_mandir}/man1/slice2php.1* +%{_mandir}/man1/slice2rb.1* +%{_mandir}/man1/slice2swift.1* + +%files devel +%defattr(-,root,root) +%{_bindir}/slice2cpp +%{_includedir}/Glacier2 +%{_includedir}/Ice +%{_includedir}/IceBox +%{_includedir}/IceGrid +%{_includedir}/IcePatch2 +%{_includedir}/IceSSL +%{_includedir}/IceStorm +%{_includedir}/IceUtil +%{_libdir}/libGlacier2.so +%{_libdir}/libIce.so +%{_libdir}/libIceBox.so +%{_libdir}/libIceGrid.so +%{_libdir}/libIcePatch2.so +%{_libdir}/libIceSSL.so +%{_libdir}/libIceStorm.so +%{_libdir}/libGlacier2++11.so +%{_libdir}/libIce++11.so +%{_libdir}/libIceBox++11.so +%{_libdir}/libIceDiscovery++11.so +%{_libdir}/libIceDiscovery.so +%{_libdir}/libIceGrid++11.so +%{_libdir}/libIceLocatorDiscovery++11.so +%{_libdir}/libIceLocatorDiscovery.so +%{_libdir}/libIceSSL++11.so +%{_libdir}/libIceStorm++11.so +%{_mandir}/man1/slice2cpp.1* + +#%files -n mono-Ice +#%defattr(-,root,root) +#%dir %{_prefix}/lib/mono/Ice +#%{_prefix}/lib/mono/Ice/* +#%{_bindir}/iceboxnet.exe +#%{_mandir}/man1/iceboxnet.1* + +#%files -n mono-Ice-devel +#%defattr(-,root,root) +#%{_bindir}/slice2cs +#%{_libdir}/pkgconfig/Glacier2.pc +#%{_libdir}/pkgconfig/Ice.pc +#%{_libdir}/pkgconfig/IceBox.pc +#%{_libdir}/pkgconfig/IceGrid.pc +#%{_libdir}/pkgconfig/IcePatch2.pc +#%{_libdir}/pkgconfig/IceStorm.pc +#%{_mandir}/man1/slice2cs.1* + +#%files -n icegrid-gui +#%defattr(-,root,root) +#%{_datadir}/Ice-%{version}/IceGridGUI.jar +#%attr(755,root,root) %{_bindir}/icegridgui +#%{_datadir}/applications/* +#%{_datadir}/icons/hicolor/48x48/apps/icegrid.png +#%{_datadir}/pixmaps/icegrid.png +#%doc %{_defaultdocdir}/Ice-%{version}/IceGridAdmin +#%{_mandir}/man1/icegridgui.1* + +%files -n java-Ice +%defattr(-,root,root) +%{_bindir}/slice2java +%{_javadir}/*.jar +%{_javadir}/*.pom +%{_mandir}/man1/slice2java.1* + +%files -n php-Ice +%defattr(-,root,root) +%{_bindir}/slice2php +%{php_extensiondir}/ice.so +%{_datadir}/php/Glacier2.php +%{_datadir}/php/Ice.php +%{_datadir}/php/IceBox.php +%{_datadir}/php/IceGrid.php +%{_datadir}/php/IcePatch2.php +%{_datadir}/php/IceStorm.php +%dir %{_datadir}/php/Glacier2 +%{_datadir}/php/Glacier2/*.php +%dir %{_datadir}/php/Ice +%{_datadir}/php/Ice/*.php +%dir %{_datadir}/php/IceBox +%{_datadir}/php/IceBox/*.php +%dir %{_datadir}/php/IceGrid +%{_datadir}/php/IceGrid/*.php +%dir %{_datadir}/php/IcePatch2 +%{_datadir}/php/IcePatch2/*.php +%dir %{_datadir}/php/IceStorm +%{_datadir}/php/IceStorm/*.php + +%files -n python-Ice +%defattr(-,root,root) +%{_bindir}/slice2py +%{python3_sitelib}/* +%{_mandir}/man1/slice2py.1* + +%files -n ruby-Ice +%defattr(-,root,root) +%{ruby_sitearch}/IceRuby.so +%{ruby_sitelib}/* + +%files servers +%defattr(-,root,root) +%config(noreplace) %{_sysconfdir}/icegridregistry.conf +%config(noreplace) %{_sysconfdir}/icegridnode.conf +%config(noreplace) %{_sysconfdir}/glacier2router.conf +%{_sysusersdir}/zeroc-ice.conf +%{_unitdir}/glacier2router.service +%{_unitdir}/icegridnode.service +%{_unitdir}/icegridregistry.service +%attr(0775,root,iceuser) %dir %{_localstatedir}/lib/ice +%attr(0775,root,iceuser) %dir %{_localstatedir}/lib/ice/icegrid +%attr(0775,root,iceuser) %dir %{_localstatedir}/lib/ice/icegrid/node1 +%attr(0775,root,iceuser) %dir %{_localstatedir}/lib/ice/icegrid/registry + +%changelog +* Wed Jan 31 2024 Silvan Calarco 3.7.10-1mamba +- update to 3.7.10 +- source renamed from Ice to zeroc-ice + +* Sun Aug 04 2019 Silvan Calarco 3.6.5-1mamba +- update to 3.6.5 + +* Wed Jun 12 2013 Automatic Build System 3.5.0-1mamba +- update to 3.5.0 + +* Tue Aug 07 2012 Automatic Build System 3.4.2-1mamba +- update to 3.4.2 + +* Sun Aug 14 2011 Silvan Calarco 3.4.0-3mamba +- replace java-bdb requirement with java-bdb48 and add make include flag + +* Mon Jan 17 2011 gil 3.4.0-2mamba +- rebuilt devel + +* Sun Jun 20 2010 gil 3.4.0-1mamba +- First build diff --git a/zeroc-ice.sysusers b/zeroc-ice.sysusers new file mode 100644 index 0000000..63ebafd --- /dev/null +++ b/zeroc-ice.sysusers @@ -0,0 +1 @@ +u iceuser - "Ice User" /var/lib/ice