%define apache_ctl %_sbindir/apachectl
%define apache_libdir %(%apache_apxs -q LIBEXECDIR)
%define apache_modconfdir %apache_confdir/addon-modules
%define apache_moddocdir %apache_htdocsdir/addon-modules
%define apache_addonconfdir_d %apache_addonconfdir.d
Name: sope
Version: 4.7.1619
Release: alt1
Summary: SOPE is a framework for developing web applications and services. The name "SOPE" (SKYRiX Object Publishing Environment) is inspired by ZOPE.
License: LGPL
Group: System/Libraries
Url: http://www.opengroupware.org
BuildRequires(pre): gnustep-make gcc4.1-objc libstdc++4.1 libapr-devel apache-devel gnustep-make-devel
Source0: %name-%version.tar.bz2
Patch0: sope-gsmake2.diff
Patch1: sope-patchset-r1619.diff
Patch2: sope-ngobjweb-fix.diff
Patch3: sope-4.7.1619-configure.patch
%description
The SOPE package is an extensive set of frameworks (16 frameworks, ~1500 classes) 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 (SAX2, DOM, XML-RPC), MIME/IMAP4 processing, LDAP connectivity, RDBMS connectivity, and iCalendar parsing.
%package xml
Summary: SOPE libraries for XML processing
Group: Development/Libraries/Objective C
%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)
%package xml-devel
Summary: Development files for the SOPE XML libraries
Group: Development/Libraries/Objective C
Requires: %name = %version-%release libxml2-devel
%description xml-devel
This package contains the development files of the SOPE XML libraries.
%package xml-tools
Summary: Tools (domxml/saxxml/xmln)
Group: Development/Libraries/Objective C
Requires: %name = %version-%release
%description xml-tools
This package contains some tools:
* saxxml - parse a file using SAX and print out the XML
* xmln - convert a given file to PYX using a SAX handler
* domxml - parse a file into a DOM and print out the XML
%package core
Summary: Core libraries of the SOPE application server
Group: Development/Libraries/Objective C
Requires: %name-xml
%description core
The SOPE core libraries contain:
* various Foundation extensions
* a java.io like stream and socket library
%package core-devel
Summary: Development files for the SOPE core libraries
Group: Development/Libraries/Objective C
Requires: %name-core
%description core-devel
This package contains the header files for the SOPE core
libraries, which are part of the SOPE application server framework.
%package mime
Summary: SOPE libraries for MIME processing
Group: Development/Libraries/Objective C
Requires: %name-core %name-xml
%description mime
The SOPE libraries for MIME processing contain:
* classes for processing MIME entities
* a full IMAP4 implementation
* prototypical POP3 and SMTP processor
%package mime-devel
Summary: Development files for the SOPE MIME libraries
Group: Development/Libraries/Objective C
Requires: %name-mime
%description mime-devel
This package contains the development files of the SOPE
MIME libraries.
%package appserver
Summary: SOPE application server libraries
Group: Development/Libraries/Objective C
Requires: %name-xml %name-core %name-mime
%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
%package appserver-devel
Summary: Development files for the SOPE application server libraries
Group: Development/Libraries/Objective C
Requires: %name-appserver
%description appserver-devel
This package contains the development files for the SOPE application server
libraries.
%package appserver-tools
Summary: Tools shipped with the SOPE application server
Group: Development/Libraries/Objective C
Requires: %name-appserver
%description appserver-tools
This package contains some tools shipped with the SOPE application
server framework, which are mostly useful for development and debugging
of SOPE applications.
%package ldap
Summary: SOPE libraries for LDAP access
Group: Development/Libraries/Objective C
Requires: %name-core %name-xml
%description ldap
The SOPE libraries for LDAP access contain an Objective-C wrapper for
LDAP directory services.
%package ldap-devel
Summary: Development files for the SOPE LDAP libraries
Group: Development/Libraries/Objective C
Requires: %name-ldap
%description ldap-devel
This package contains the development files of the SOPE
LDAP libraries.
%package ldap-tools
Summary: Tools (ldap2dsml/ldapchkpwd/ldapls)
Group: Development/Libraries/Objective C
Requires: %name-ldap
AutoReqProv: off
%description ldap-tools
This package contains some tools:
* ldap2dsml - return the output of an LDAP server as DSML
(directory service markup language)
* ldapchkpwd - checks whether a login/password combo would be authenticated
* ldapls - an 'ls' for LDAP directories
%package ical
Summary: SOPE libraries for iCal handling
Group: Development/Libraries/Objective C
Requires: %name-xml %name-core
%description ical
The SOPE libraries for iCal handling contain classes for iCalendar and
vCard objects.
%package ical-devel
Summary: Development files for the SOPE iCal libraries
Group: Development/Libraries/Objective C
Requires:%name-ical
%description ical-devel
This package contains the development files of the SOPE iCal libraries.
%package gdl1
Summary: GNUstep database libraries for SOPE
Group: Development/Libraries/Objective C
Requires: %name-core %name-xml
%description gdl1
This package contains a fork of the GNUstep database libraries used
by the SOPE application server (excluding GDLContentStore).
%package gdl1-postgresql
Summary: PostgreSQL connector for SOPE's fork of the GNUstep database environment
Group: Development/Libraries/Objective C
BuildRequires(pre):postgresql8.3-devel
Requires: %name-gdl1 libecpg6.0
%description gdl1-postgresql
This package contains the PostgreSQL connector for SOPE's fork of the
GNUstep database libraries.
#%package gdl1-oracle
#Summary: Oracle connector for SOPE's fork of the GNUstep database environment
#Group: Development/Libraries/Objective C
#Requires: %name-gdl1
#%description gdl1-oracle
#This package contains the Oracle connector for SOPE's fork of the
#GNUstep database libraries.
%package gdl1-mysql
Summary: MySQL connector for SOPE's fork of the GNUstep database environment
Group: Development/Libraries/Objective C
BuildRequires(pre):libMySQL-devel
Requires: %name-gdl1 libMySQL
%description gdl1-mysql
This package contains the MySQL connector for SOPE's fork of the
GNUstep database libraries.
%package gdl1-devel
Summary: Development files for the GNUstep database libraries
Group: Development/Libraries/Objective C
Requires: %name-gdl1
%description gdl1-devel
This package contains the header files for SOPE's fork of the GNUstep
database libraries.
%package -n mod_ngobjweb
Summary: mod_ngobjweb apache module
Group: System/Servers
BuildRequires(pre): apache-devel
Requires: apache >= %apache_version
%description -n mod_ngobjweb
Enables apache to handle HTTP requests for the
OpenGroupware.org application server.
%prep
%setup
%patch0 -p0
%patch1 -p0
%patch2 -p0
%patch3 -p1
%build
. /usr/lib/GNUstep/System/Library/Makefiles/GNUstep.sh
./configure --disable-debug --enable-strip --gsmake=/usr/lib/GNUstep/System/Library/Makefiles --with-gnustep
%make_build
%install
%makeinstall
%post -p %post_ldconfig
%postun -p %postun_ldconfig
%files xml
%prefix/Library/Libraries/libDOM*.so.%{version}*
%prefix/Library/Libraries/libSaxObjC*.so.%{version}*
%prefix/Library/Libraries/libXmlRpc*.so.%{version}*
%prefix/Library/SaxDrivers-%version/libxmlSAXDriver.sax
%prefix/Library/SaxDrivers-%version/STXSaxDriver.sax
%files xml-tools
%prefix/Tools/domxml
%prefix/Tools/saxxml
%prefix/Tools/xmln
%files xml-devel
%prefix/Library/Headers/DOM
%prefix/Library/Headers/SaxObjC
%prefix/Library/Headers/XmlRpc
%prefix/Library/Libraries/libDOM*.so
%prefix/Library/Libraries/libSaxObjC*.so
%prefix/Library/Libraries/libXmlRpc*.so
%files core
%prefix/Library/Libraries/libEOControl*.so.%{version}*
%prefix/Library/Libraries/libNGExtensions*.so.%{version}*
%prefix/Library/Libraries/libNGStreams*.so.%{version}*
%files core-devel
%prefix/Library/Headers/EOControl
%prefix/Library/Headers/NGExtensions
%prefix/Library/Headers/NGStreams
%prefix/Library/Libraries/libEOControl*.so
%prefix/Library/Libraries/libNGExtensions*.so
%prefix/Library/Libraries/libNGStreams*.so
%files mime
%prefix/Library/Libraries/libNGMime*.so.%{version}*
%files mime-devel
%prefix/Library/Headers/NGImap4
%prefix/Library/Headers/NGMail
%prefix/Library/Headers/NGMime
%prefix/Library/Libraries/libNGMime*.so
%files appserver
%prefix/Library/Libraries/libNGObjWeb*.so.%{version}*
%prefix/Library/Libraries/libNGXmlRpc*.so.%{version}*
%prefix/Library/Libraries/libSoOFS*.so.%{version}*
%prefix/Library/Libraries/libWEExtensions*.so.%{version}*
%prefix/Library/Libraries/libWEPrototype*.so.%{version}*
%prefix/Library/Libraries/libWOExtensions*.so.%{version}*
%prefix/Library/Libraries/libWOXML*.so.%{version}*
%prefix/Library/Libraries/Resources/NGObjWeb/DAVPropMap.plist
%prefix/Library/Libraries/Resources/NGObjWeb/Defaults.plist
%prefix/Library/Libraries/Resources/NGObjWeb/Languages.plist
%prefix/Library/SoProducts-%version/SoCore.sxp
%prefix/Library/SoProducts-%version/SoOFS.sxp
%prefix/Library/WOxElemBuilders-%version/WEExtensions.wox
%prefix/Library/WOxElemBuilders-%version/WEPrototype.wox
%prefix/Library/WOxElemBuilders-%version/WOExtensions.wox
%files appserver-tools
%prefix/Tools/Admin/sope-%version
%prefix/Tools/xmlrpc_call
%files appserver-devel
%prefix/Tools/wod
%prefix/Library/Headers/NGHttp
%prefix/Library/Headers/NGObjWeb
%prefix/Library/Headers/NGXmlRpc
%prefix/Library/Headers/SoOFS
%prefix/Library/Headers/WEExtensions
%prefix/Library/Headers/WOExtensions
%prefix/Library/Headers/WOXML
%prefix/Library/Libraries/libNGObjWeb*.so
%prefix/Library/Libraries/libNGXmlRpc*.so
%prefix/Library/Libraries/libSoOFS*.so
%prefix/Library/Libraries/libWEExtensions*.so
%prefix/Library/Libraries/libWEPrototype*.so
%prefix/Library/Libraries/libWOExtensions*.so
%prefix/Library/Libraries/libWOXML*.so
%prefix/Library/Makefiles/Additional/ngobjweb.make
%prefix/Library/Makefiles/woapp.make
%prefix/Library/Makefiles/wobundle.make
%files ldap
%prefix/Library/Libraries/libNGLdap*.so.%{version}*
%files ldap-tools
%prefix/Tools/ldap2dsml
%prefix/Tools/ldapchkpwd
%prefix/Tools/ldapls
%files ldap-devel
%prefix/Library/Headers/NGLdap
%prefix/Library/Libraries/libNGLdap*.so
%files ical
%prefix/Library/Libraries/libNGiCal*.so.%{version}*
%prefix/Library/SaxMappings/NGiCal.xmap
%prefix/Library/SaxDrivers-%version/versitSaxDriver.sax
%files ical-devel
%prefix/Library/Headers/NGiCal
%prefix/Library/Libraries/libNGiCal*.so
%files gdl1
%prefix/Tools/connect-EOAdaptor
%prefix/Tools/load-EOAdaptor
%prefix/Library/Libraries/libGDLAccess*.so.%{version}*
%files gdl1-postgresql
%prefix/Library/GDLAdaptors-%version/PostgreSQL.gdladaptor
%files gdl1-mysql
%prefix/Library/GDLAdaptors-%version/MySQL.gdladaptor
%files gdl1-devel
%prefix/Library/Headers/GDLAccess
%prefix/Library/Libraries/libGDLAccess*.so
%files -n mod_ngobjweb
%apache_libdir/mod_ngobjweb.so
%config %apache_modconfdir/ngobjweb.conf
%changelog
* Sun May 04 2008 Mikhail Pluzhnikov <amike@altlinux.ru> 4.7.1619-alt1
- initial build