1 %define apache_modules_dir %{_usr}/lib/httpd/modules
2 %define apache_conf_dir %{_sysconfdir}/httpd/conf.d
3 %define apache_initscript %{_sysconfdir}/init.d/httpd
4 %define ngobjweb_requires httpd
6 Summary: mod_ngobjweb apache module
8 Version: %{mod_ngobjweb_version}
9 Release: %{mod_ngobjweb_release}.%{mod_ngobjweb_buildcount}%{dist_suffix}
10 Vendor: OpenGroupware.org
11 Packager: Frank Reppin <frank@opengroupware.org>
13 URL: http://sope.opengroupware.org/
14 Group: Development/Libraries
16 Requires: %{ngobjweb_requires}
17 Source: %{mod_ngobjweb_source}
18 Prefix: %{mod_ngobjweb_prefix}
19 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
22 Enables apache to handle HTTP requests for the
23 OpenGroupware.org application server.
26 rm -fr ${RPM_BUILD_ROOT}
27 %setup -q -n sope-mod_ngobjweb
29 # ****************************** build ********************************
31 export PATH=$PATH:/usr/sbin
32 make %{mod_ngobjweb_makeflags} APXS_INCLUDE_DIRS="-I/usr/include/httpd"
34 # ****************************** install ******************************
36 export PATH=$PATH:/usr/sbin
37 mkdir -p ${RPM_BUILD_ROOT}%{apache_modules_dir}
38 cp mod_ngobjweb.so ${RPM_BUILD_ROOT}%{apache_modules_dir}/
40 mkdir -p ${RPM_BUILD_ROOT}%{apache_conf_dir}
41 echo "#Here we load the 'mod_ngobjweb.so' module
43 LoadModule ngobjweb_module %{apache_modules_dir}/mod_ngobjweb.so
44 " > ${RPM_BUILD_ROOT}%{apache_conf_dir}/ngobjweb.conf
47 touch ${RPM_BUILD_ROOT}%{apache_conf_dir}/ogo-webui.conf
48 touch ${RPM_BUILD_ROOT}%{apache_conf_dir}/ogo-xmlrpcd.conf
49 touch ${RPM_BUILD_ROOT}%{apache_conf_dir}/ogo-zidestore.conf
51 # ****************************** post *********************************
54 if [ -f %{apache_conf_dir}/ogo-webui.conf ]; then
55 rm -f %{apache_conf_dir}/ogo-webui.conf
57 if [ -f %{apache_conf_dir}/ogo-xmlrpcd.conf ]; then
58 rm -f %{apache_conf_dir}/ogo-xmlrpcd.conf
60 if [ -f %{apache_conf_dir}/ogo-zidestore.conf ]; then
61 rm -f %{apache_conf_dir}/ogo-zidestore.conf
65 # ****************************** trigger ******************************
66 %triggerin -- ogo-webui-app
68 echo "# configuration needed to access the OGo webui
70 # explicitly allow access
71 <DirectoryMatch %{prefix}/share/opengroupware.org-([0-9a-zA-Z]{1}).([0-9a-zA-Z]{1,})/www>
76 AliasMatch ^/OpenGroupware([0-9a-zA-Z]{1})([0-9a-zA-Z]{1,})\.woa/WebServerResources/(.*) \
77 %{prefix}/share/opengroupware.org-\$1.\$2/www/\$3
78 Alias /ArticleImages %{_var}/lib/opengroupware.org/news
81 <IfModule ngobjweb_module.c>
82 <LocationMatch "^/OpenGroupware*">
84 SetHandler ngobjweb-adaptor
87 " >%{apache_conf_dir}/ogo-webui.conf
89 %{apache_initscript} restart >/dev/null 2>&1
92 %triggerin -- ogo-xmlrpcd
94 echo "# configuration needed to access the OGo XMLRPCd via http
97 <IfModule ngobjweb_module.c>
98 <LocationMatch "^/RPC2*">
100 SetHandler ngobjweb-adaptor
103 " >%{apache_conf_dir}/ogo-xmlrpcd.conf
105 %{apache_initscript} restart >/dev/null 2>&1
108 %triggerin -- ogo-zidestore
110 echo "# configuration needed to access the OGo ZideStore via http
113 <IfModule ngobjweb_module.c>
114 <LocationMatch "^/zidestore/*">
116 SetHandler ngobjweb-adaptor
119 " >%{apache_conf_dir}/ogo-zidestore.conf
121 %{apache_initscript} restart >/dev/null 2>&1
126 echo "# configuration needed to access the OGo webui
128 # explicitly allow access
129 <DirectoryMatch %{prefix}/share/opengroupware.org-([0-9a-zA-Z]{1}).([0-9a-zA-Z]{1,})/www>
134 AliasMatch ^/OpenGroupware([0-9a-zA-Z]{1})([0-9a-zA-Z]{1,})\.woa/WebServerResources/(.*) \
135 %{prefix}/share/opengroupware.org-\$1.\$2/www/\$3
136 Alias /ArticleImages %{_var}/lib/opengroupware.org/news
139 <IfModule ngobjweb_module.c>
140 <LocationMatch "^/OpenGroupware*">
142 SetHandler ngobjweb-adaptor
145 " >%{apache_conf_dir}/ogo-webui.conf
146 echo "# configuration needed to access the OGo XMLRPCd via http
149 <IfModule ngobjweb_module.c>
150 <LocationMatch "^/RPC2*">
152 SetHandler ngobjweb-adaptor
155 " >%{apache_conf_dir}/ogo-xmlrpcd.conf
156 echo "# configuration needed to access the OGo ZideStore via http
159 <IfModule ngobjweb_module.c>
160 <LocationMatch "^/zidestore/*">
162 SetHandler ngobjweb-adaptor
165 " >%{apache_conf_dir}/ogo-zidestore.conf
167 %{apache_initscript} restart >/dev/null 2>&1
172 if [ -f %{apache_conf_dir}/ogo-webui.conf ]; then
173 rm -f %{apache_conf_dir}/ogo-webui.conf
175 if [ -f %{apache_conf_dir}/ogo-xmlrpcd.conf ]; then
176 rm -f %{apache_conf_dir}/ogo-xmlrpcd.conf
178 if [ -f %{apache_conf_dir}/ogo-zidestore.conf ]; then
179 rm -f %{apache_conf_dir}/ogo-zidestore.conf
181 %{apache_initscript} restart >/dev/null 2>&1
184 %triggerun -- ogo-webui-app
186 if [ -f %{apache_conf_dir}/ogo-webui.conf ]; then
187 rm -f %{apache_conf_dir}/ogo-webui.conf
189 %{apache_initscript} restart >/dev/null 2>&1
192 %triggerun -- ogo-xmlrpcd
194 if [ -f %{apache_conf_dir}/ogo-xmlrpcd.conf ]; then
195 rm -f %{apache_conf_dir}/ogo-xmlrpcd.conf
197 %{apache_initscript} restart >/dev/null 2>&1
200 %triggerun -- ogo-zidestore
202 if [ -f %{apache_conf_dir}/ogo-zidestore.conf ]; then
203 rm -f %{apache_conf_dir}/ogo-zidestore.conf
205 %{apache_initscript} restart >/dev/null 2>&1
208 # ****************************** clean ********************************
210 rm -fr ${RPM_BUILD_ROOT}
212 # ****************************** files ********************************
214 %defattr(-,root,root,-)
215 %{apache_modules_dir}/mod_ngobjweb.so
216 %config %{apache_conf_dir}/ngobjweb.conf
217 %ghost %{apache_conf_dir}/ogo-webui.conf
218 %ghost %{apache_conf_dir}/ogo-xmlrpcd.conf
219 %ghost %{apache_conf_dir}/ogo-zidestore.conf
221 # ********************************* changelog *************************
223 * Fri Jul 08 2005 Frank Reppin <frank@opengroupware.org>
224 - updated ogo-webui.conf to 1.1
225 * Tue Mar 01 2005 Frank Reppin <frank@opengroupware.org>
226 - drop dependency on ogo-environment
227 - allow triggers on ogoall package
228 * Sat Feb 19 2005 Frank Reppin <frank@opengroupware.org>
229 - replaced common vars with 2 new macros (will make editing safer)
230 - revisited last commit regarding OGo Bug #1254 and decided
231 to use triggers instead (and thus nothing moved into the application RPMS)
232 - application specific config files get installed/removed based on whether
233 the application itself is installed/removed and/or mod_ngobjweb itself gets
235 * Fri Feb 18 2005 Frank Reppin <frank@opengroupware.org>
236 - moved parts to application RPMS
237 * Thu Dec 23 2004 Frank Reppin <frank@opengroupware.org>
238 - requires httpd -obviously-
239 - mod_ngobjweb.so lives in /usr/lib/httpd/modules now
240 - OGo.conf lives in /etc/httpd/conf.d now...
241 * Wed Sep 09 2004 Frank Reppin <frank@opengroupware.org>