Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
server:SOGo
SOPE
SOPE.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File SOPE.spec of Package SOPE
# # spec file for package SOPE # # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define sope_name sope49 %define sope_soname 4_9 %define sope_soversion 4.9 %define sope_version 5.8.4 %define sbjson_version 2.3.1 %define sbjson_major_version 2 %define sope_makeflags -b CXXFLAGS+=-O2 %define apache_modules_dir %{_usr}/lib/httpd/modules %define apache_conf_dir %{_sysconfdir}/httpd/conf.d %define oracle_support 0 %if 0%{?suse_version} > 1500 %define _lto_cflags %{nil} %endif Name: %{sope_name} Version: %{sope_version} Release: 0 Summary: SOPE is an extensive set of frameworks License: GPL-1.0-or-later Group: Development/Libraries/Other URL: https://github.com/inverse-inc/sope #Source: http://packages.inverse.ca/SOGo/sources/SOPE-%%{sope_version}.tar.gz Source: https://packages.sogo.nu/sources/SOPE-%{sope_version}.tar.gz Patch1: SOPE-Fix_StringEncoding.patch BuildRequires: gnustep-base-devel BuildRequires: gnustep-make BuildRequires: libxml2-devel BuildRequires: mysql-devel BuildRequires: openldap2-devel BuildRequires: postgresql-devel %if 0%{?suse_version} > 1500 BuildRequires: pkgconfig(openssl) %else BuildRequires: pkgconfig(openssl) < 2.0.0 %endif %if 0%{?sle_version} == 150200 && 0%{?is_opensuse} BuildConflicts: postgresql14-devel-mini %endif %if ( 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150200 ) BuildRequires: postgresql-server-devel %endif BuildRequires: gcc-objc %if 0%{?sle_version} == 120200 && 0%{?is_opensuse} BuildRequires: libffi6 %endif %if 0%{?sle_version} == 120100 && 0%{?is_opensuse} BuildRequires: libffi6 %endif %description SOPE is an extensive set of frameworks which form a complete Web application server environment. Besides the Apple WebObjects compatible appserver extended with Zope concepts, it contains a large set of reusable classes: XML processing (SAX, DOM, XML-RPC), MIME/IMAP4 processing, LDAP connectivity, RDBMS connectivity, and iCalendar parsing. ######################################### %package xml Summary: SOPE libraries for XML processing Group: Development/Libraries/Other #AutoReqProv: off Provides: SOPE-xml = %{sope_version} Obsoletes: SOPE-xml < %{sope_version} %description xml The SOPE libraries for XML processing contain: * a SAX2 Implementation for Objective-C * an attempt to implement DOM on top of SaxObjC * an XML-RPC implementation (without a transport layer) SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package xml-devel Summary: Development files for the SOPE XML libraries Group: Development/Libraries/Other Requires: libxml2-devel Requires: %{sope_name}-xml = %{version} #AutoReqProv: off %description xml-devel This package contains the development files of the SOPE XML libraries. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. ######################################### %package -n libSBJson%{sbjson_major_version} Version: %{sbjson_version} Summary: JSON framework Group: Development/Libraries/Other %description -n libSBJson%{sbjson_major_version} The SBJson library is a high performance JSON library in Objective-C. Project homepage is: http://code.google.com/p/json-framework/ %package -n libSBJson%{sbjson_major_version}-devel Version: %{sbjson_version} Summary: JSON framework (devel) Group: Development/Libraries/Other Requires: libSBJson%{sbjson_major_version} = %{version} %description -n libSBJson%{sbjson_major_version}-devel The SBJson library is a high performance JSON library in Objective-C. Those are the files required for development. Project homepage is: http://code.google.com/p/json-framework/ ######################################### %package core Summary: Core libraries of the SOPE application server Group: Development/Libraries/Other Requires: %{sope_name}-xml #AutoReqProv: off Provides: SOPE-core = %{sope_version} Obsoletes: SOPE-core < %{sope_version} %description core The SOPE core libraries contain: * various Foundation extensions * a java.io like stream and socket library SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package core-devel Summary: Development files for the SOPE core libraries Group: Development/Libraries/Other Requires: %{sope_name}-core = %{sope_version} #AutoReqProv: off %description core-devel This package contains the header files for the SOPE core libraries, which are part of the SOPE application server framework. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. ######################################### %package -n libNGMime%{sope_soname} Summary: SOPE libraries for MIME processing Group: Development/Libraries/Other Requires: %{sope_name}-core Requires: %{sope_name}-xml #AutoReqProv: off %description -n libNGMime%{sope_soname} The SOPE libraries for MIME processing contain: * classes for processing MIME entities * a full IMAP4 implementation * prototypical POP3 and SMTP processor SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package -n libNGMime%{sope_soname}-devel Summary: Development files for the SOPE MIME libraries Group: Development/Libraries/Other Requires: libNGMime%{sope_soname} = %{sope_version} #AutoReqProv: off %description -n libNGMime%{sope_soname}-devel This package contains the development files of the SOPE MIME libraries. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. ######################################### %package appserver Summary: SOPE application server libraries Group: Development/Libraries/Other Requires: libNGMime%{sope_soname} Requires: %{sope_name}-core Requires: %{sope_name}-xml #AutoReqProv: off Provides: SOPE-appserver = %{sope_version} Obsoletes: SOPE-appserver < %{sope_version} %description appserver The SOPE application server libraries provide: * template rendering engine, lots of dynamic elements * HTTP client/server * XML-RPC client * WebDAV server framework * session management * scripting extensions for Foundation, JavaScript bridge * DOM tree rendering library SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package appserver-devel Summary: Development files for the SOPE application server libraries Group: Development/Libraries/Other Requires: %{sope_name}-appserver = %{sope_version} #AutoReqProv: off %description appserver-devel This package contains the development files for the SOPE application server libraries. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. ######################################### %package -n libNGLdap%{sope_soname} Summary: SOPE libraries for LDAP access Group: Development/Libraries/Other Requires: %{sope_name}-core Requires: %{sope_name}-xml #AutoReqProv: off %description -n libNGLdap%{sope_soname} The SOPE libraries for LDAP access contain an Objective-C wrapper for LDAP directory services. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package -n libNGLdap%{sope_soname}-devel Summary: Development files for the SOPE LDAP libraries Group: Development/Libraries/Other Requires: libNGLdap%{sope_soname} = %{sope_version} #AutoReqProv: off %description -n libNGLdap%{sope_soname}-devel This package contains the development files of the SOPE LDAP libraries. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. ######################################### %package -n libGDLAccess%{sope_soname} Summary: GNUstep database libraries for SOPE Group: Development/Libraries/Other Requires: %{sope_name}-core Requires: %{sope_name}-xml #AutoReqProv: off %description -n libGDLAccess%{sope_soname} This package contains a fork of the GNUstep database libraries used by the SOPE application server (excluding GDLContentStore). SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package gdl1-postgresql Summary: PostgreSQL connector for SOPE's fork of the GNUstep database environment Group: Development/Libraries/Other Requires: libGDLAccess%{sope_soname} Provides: SOPE-gdl1-any-database #AutoReqProv: off %description gdl1-postgresql This package contains the PostgreSQL connector for SOPE's fork of the GNUstep database libraries. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %if %{oracle_support} %package gdl1-oracle Summary: Oracle connector for SOPE's fork of the GNUstep database environment Group: Development/Libraries/Other Requires: libGDLAccess%{sope_soname} Provides: SOPE-gdl1-any-database #Requires: oracle-instantclient-basic #AutoReqProv: off %description gdl1-oracle This package contains the Oracle connector for SOPE's fork of the GNUstep database libraries. %endif %package gdl1-mysql Summary: MySQL connector for SOPE's fork of the GNUstep database environment Group: Development/Libraries/Other Requires: libGDLAccess%{sope_soname} Provides: SOPE-gdl1-any-database #AutoReqProv: off %description gdl1-mysql This package contains the MySQL connector for SOPE's fork of the GNUstep database libraries. #%%package gdl1-sqlite3 #Summary: SQLite3 connector for SOPE's fork of the GNUstep database environment #Group: Development/Libraries/Objective C #Requires: %%{sope_name}-gdl1 #AutoReqProv: off # #%%description gdl1-sqlite3 #This package contains the SQLite3 connector for SOPE's fork of the #GNUstep database libraries. # #SOPE is a framework for developing web applications and services. The #name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. %package -n libGDLAccess%{sope_soname}-devel Summary: Development files for the GNUstep database libraries Group: Development/Libraries/Other Requires: libGDLAccess%{sope_soname} = %{sope_version} #AutoReqProv: off %description -n libGDLAccess%{sope_soname}-devel This package contains the header files for SOPE's fork of the GNUstep database libraries. SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE. #%%package -n mod_ngobjweb #Summary: mod_ngobjweb apache module #Group: Development/Libraries #AutoReqProv: off #Requires: %%{ngobjweb_requires} # #%%description -n mod_ngobjweb #Enables apache to handle HTTP requests for the #OpenGroupware.org application server. ######################################## %prep %setup -q -n SOPE %if 0%{?suse_version} > 1500 %patch1 -p1 %endif # ****************************** build ******************************** %build case %{_target_platform} in ppc64-*) export CC="gcc -m64";; *) export CC="gcc";; esac %ifarch x86_64 ORACLELIB_PATH="%{_libdir}/oracle/11.2/client64/lib/" %else ORACLELIB_PATH="%{_libdir}/oracle/11.2/client/lib/" %endif if [ -f %{_prefix}/lib/rpm/redhat/config.sub ] then cp %{_prefix}/lib/rpm/redhat/{config.sub,config.guess} sope-core/NGStreams/ elif [ -f %{_prefix}/lib/rpm/config.sub ] then cp %{_prefix}/lib/rpm/{config.sub,config.guess} sope-core/NGStreams/ fi # FIXME: you should use the %%configure macro ./configure \ --enable-debug \ --disable-strip \ --with-gnustep make %{?_smp_mflags} CC="$CC" %{sope_makeflags} cd sope-gdl1/MySQL make %{?_smp_mflags} CC="$CC" LDFLAGS="-L/usr/%{_lib}/mysql" %{sope_makeflags} %if %{oracle_support} cd ../Oracle8 make %{?_smp_mflags} CC="$CC" LDFLAGS="-L$ORACLELIB_PATH" %{sope_makeflags} %endif #export PATH=$PATH:/usr/sbin #cd ../../sope-appserver/mod_ngobjweb/ #if [ -x /usr/bin/apr-1-config ] #then # aprconfig=/usr/bin/apr-1-config #else # aprconfig=/usr/bin/apr-config #fi #make apr=$aprconfig apxs=/usr/sbin/apxs # ****************************** install ****************************** %install make %{sope_makeflags} DESTDIR=%{buildroot} \ GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ install cd sope-gdl1/MySQL make %{sope_makeflags} DESTDIR=%{buildroot} \ GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ install %if %{oracle_support} cd ../Oracle8 make %{sope_makeflags} DESTDIR=%{buildroot} \ GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ install %endif rm -f %{buildroot}%{_bindir}/otest rm -fr %{buildroot}%{_libdir}/GNUstep/GDLAdaptors-%{sope_version}/SQLite3.gdladaptor # rm -f ${RPM_BUILD_ROOT}/usr/GNUstep/System/Tools/Admin/sope-4.9 # export PATH=$PATH:/usr/sbin #mkdir -p ${RPM_BUILD_ROOT}%%{apache_modules_dir} #cp sope-appserver/mod_ngobjweb/mod_ngobjweb.so ${RPM_BUILD_ROOT}%%{apache_modules_dir}/ # #mkdir -p ${RPM_BUILD_ROOT}%%{apache_conf_dir} #echo "#Here we load the 'mod_ngobjweb.so' module # #LoadModule ngobjweb_module %%{apache_modules_dir}/mod_ngobjweb.so #" > ${RPM_BUILD_ROOT}%%{apache_conf_dir}/ngobjweb.conf # rm -f ${RPM_BUILD_ROOT}%%{prefix}/Tools/rss2plist1 # rm -f ${RPM_BUILD_ROOT}%%{prefix}/Tools/rss2plist2 # rm -f ${RPM_BUILD_ROOT}%%{prefix}/Tools/rssparse # rm -f ${RPM_BUILD_ROOT}%%{prefix}/Tools/testqp # rm -fr ${RPM_BUILD_ROOT}%%{prefix}/man/ # ****************************** post/-un ***************************** %post appserver /sbin/ldconfig %postun appserver /sbin/ldconfig %post core /sbin/ldconfig %postun core /sbin/ldconfig %post xml /sbin/ldconfig %postun xml /sbin/ldconfig %post -n libGDLAccess%{sope_soname} /sbin/ldconfig %postun -n libGDLAccess%{sope_soname} /sbin/ldconfig %post -n libNGLdap%{sope_soname} /sbin/ldconfig %postun -n libNGLdap%{sope_soname} /sbin/ldconfig %post -n libNGMime%{sope_soname} /sbin/ldconfig %postun -n libNGMime%{sope_soname} /sbin/ldconfig %post -n libSBJson%{sbjson_major_version} /sbin/ldconfig %postun -n libSBJson%{sbjson_major_version} /sbin/ldconfig # ****************************** clean ******************************** # ****************************** files ******************************** %files xml %{_libdir}/libDOM*.so.%{sope_soversion}* %{_libdir}/libSaxObjC*.so.%{sope_soversion}* %{_libdir}/libXmlRpc*.so.%{sope_soversion}* %{_libdir}/GNUstep/SaxDrivers-%{sope_soversion} %files xml-devel %{_includedir}/DOM %{_includedir}/SaxObjC %{_includedir}/XmlRpc %{_libdir}/libDOM*.so %{_libdir}/libSaxObjC*.so %{_libdir}/libXmlRpc*.so %files -n libSBJson%{sbjson_major_version} %{_libdir}/libSBJson.so.%{sbjson_major_version}* %files -n libSBJson%{sbjson_major_version}-devel %{_includedir}/SBJson %{_libdir}/libSBJson.so %files core %{_libdir}/libEOControl*.so.%{sope_soversion}* %{_libdir}/libNGExtensions*.so.%{sope_soversion}* %{_libdir}/libNGStreams*.so.%{sope_soversion}* %files core-devel %{_includedir}/EOControl %{_includedir}/NGExtensions %{_includedir}/NGStreams %{_libdir}/libEOControl*.so %{_libdir}/libNGExtensions*.so %{_libdir}/libNGStreams*.so %files -n libNGMime%{sope_soname} %{_libdir}/libNGMime*.so.%{sope_soversion}* %files -n libNGMime%{sope_soname}-devel %{_includedir}/NGImap4 %{_includedir}/NGMail %{_includedir}/NGMime %{_libdir}/libNGMime*.so %files appserver %{_libdir}/libNGObjWeb*.so.%{sope_soversion}* %{_libdir}/libWEExtensions*.so.%{sope_soversion}* %{_libdir}/libWOExtensions*.so.%{sope_soversion}* %dir %{_libdir}/GNUstep/Libraries/Resources %dir %{_libdir}/GNUstep/Libraries/Resources/NGObjWeb %{_libdir}/GNUstep/Libraries/Resources/NGObjWeb/* %{_libdir}/GNUstep/SoProducts-%{sope_soversion} %{_libdir}/GNUstep/WOxElemBuilders-%{sope_soversion} %files appserver-devel %{_bindir}/wod %{_includedir}/NGHttp %{_includedir}/NGObjWeb %{_includedir}/WEExtensions %{_includedir}/WOExtensions %{_libdir}/libNGObjWeb*.so %{_libdir}/libWEExtensions*.so %{_libdir}/libWOExtensions*.so %if 0%{?el7} %{_libdir}/GNUstep/Makefiles %else %{_datadir}/GNUstep/Makefiles %endif %files -n libNGLdap%{sope_soname} %{_libdir}/libNGLdap*.so.%{sope_soversion}* %files -n libNGLdap%{sope_soname}-devel %{_includedir}/NGLdap %{_libdir}/libNGLdap*.so %files -n libGDLAccess%{sope_soname} %{_bindir}/connect-EOAdaptor %{_bindir}/load-EOAdaptor %{_libdir}/libGDLAccess*.so.%{sope_soversion}* %files gdl1-postgresql %dir %{_libdir}/GNUstep/GDLAdaptors-%{sope_soversion} %{_libdir}/GNUstep/GDLAdaptors-%{sope_soversion}/PostgreSQL.gdladaptor %if %{oracle_support} %files gdl1-oracle %dir %{_libdir}/GNUstep/GDLAdaptors-%{sope_soversion} %{_libdir}/GNUstep/GDLAdaptors-%{sope_soversion}/Oracle8.gdladaptor %endif %files gdl1-mysql %dir %{_libdir}/GNUstep/GDLAdaptors-%{sope_soversion} %{_libdir}/GNUstep/GDLAdaptors-%{sope_soversion}/MySQL.gdladaptor #%%files gdl1-sqlite3 #%%defattr(-,root,root,-) #%%{_libdir}/GNUstep/GDLAdaptors-%%{sope_soversion}/SQLite3.gdladaptor %files -n libGDLAccess%{sope_soname}-devel %{_includedir}/GDLAccess %{_libdir}/libGDLAccess*.so #%%files -n mod_ngobjweb #%%defattr(-,root,root,-) #%%{apache_modules_dir}/mod_ngobjweb.so #%%config %%{apache_conf_dir}/ngobjweb.conf %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor