]> err.no Git - sope/blob - maintenance/mod_ngobjweb_fedora.spec
fix for OGo Bug #1254
[sope] / maintenance / mod_ngobjweb_fedora.spec
1 %define apache_modules_dir %{_usr}/lib/httpd/modules
2 %define apache_conf_dir    %{_sysconfdir}/httpd/conf.d
3 %define ngobjweb_requires  httpd
4
5 Summary:      mod_ngobjweb apache module
6 Name:         mod_ngobjweb
7 Version:      %{mod_ngobjweb_version}
8 Release:      %{mod_ngobjweb_release}.%{mod_ngobjweb_buildcount}%{dist_suffix}
9 Vendor:       OpenGroupware.org
10 Packager:     Frank Reppin <frank@opengroupware.org>  
11 License:      LGPL
12 URL:          http://sope.opengroupware.org/
13 Group:        Development/Libraries
14 AutoReqProv:  off
15 Requires:     %{ngobjweb_requires} ogo-environment
16 Source:       %{mod_ngobjweb_source}
17 Prefix:       %{mod_ngobjweb_prefix}
18 BuildRoot:    %{_tmppath}/%{name}-%{version}-%{release}-root
19
20 %description
21 Enables apache to handle HTTP requests for the
22 OpenGroupware.org application server.
23
24 %prep
25 rm -fr ${RPM_BUILD_ROOT}
26 %setup -n sope-mod_ngobjweb
27
28 # ****************************** build ********************************
29 %build
30 export PATH=$PATH:/usr/sbin
31 make %{mod_ngobjweb_makeflags} APXS_INCLUDE_DIRS="-I/usr/include/httpd -I/usr/include/apr-0"
32
33 # ****************************** install ******************************
34 %install
35 export PATH=$PATH:/usr/sbin
36 mkdir -p ${RPM_BUILD_ROOT}%{apache_modules_dir}
37 cp mod_ngobjweb.so ${RPM_BUILD_ROOT}%{apache_modules_dir}/
38
39 mkdir -p ${RPM_BUILD_ROOT}%{apache_conf_dir}
40 echo "#Here we load the 'mod_ngobjweb.so' module
41 #
42 LoadModule ngobjweb_module %{apache_modules_dir}/mod_ngobjweb.so
43 " > ${RPM_BUILD_ROOT}%{apache_conf_dir}/ngobjweb.conf
44
45 # touch ghosts
46 touch ${RPM_BUILD_ROOT}%{apache_conf_dir}/ogo-webui.conf
47 touch ${RPM_BUILD_ROOT}%{apache_conf_dir}/ogo-xmlrpcd.conf
48 touch ${RPM_BUILD_ROOT}%{apache_conf_dir}/ogo-zidestore.conf
49
50 # ****************************** post *********************************
51 %preun
52 if [ $1 = 0 ]; then
53   if [ -f %{apache_conf_dir}/ogo-webui.conf ]; then
54     rm -f %{apache_conf_dir}/ogo-webui.conf
55   fi
56   if [ -f %{apache_conf_dir}/ogo-xmlrpcd.conf ]; then
57     rm -f %{apache_conf_dir}/ogo-xmlrpcd.conf
58   fi
59   if [ -f %{apache_conf_dir}/ogo-zidestore.conf ]; then
60     rm -f %{apache_conf_dir}/ogo-zidestore.conf
61   fi
62 fi
63
64 # ****************************** trigger ******************************
65 %triggerin -- ogo-webui-app
66 if [ $2 = 1 ]; then
67 echo "# configuration needed to access the OGo webui
68 #
69 # explicitly allow access
70 <Directory %{prefix}/share/opengroupware.org-1.0a/www> 
71   Order allow,deny 
72   Allow from all 
73 </Directory>
74 # required aliases
75 Alias /OpenGroupware10a.woa/WebServerResources/ %{prefix}/share/opengroupware.org-1.0a/www/
76 Alias /ArticleImages %{_var}/lib/opengroupware.org/news
77 #
78 # hook up
79 <IfModule ngobjweb_module.c>
80   <LocationMatch "^/OpenGroupware*">
81     SetAppPort 20000
82     SetHandler ngobjweb-adaptor
83   </LocationMatch>
84 </IfModule>
85 " >%{apache_conf_dir}/ogo-webui.conf
86 fi
87
88 %triggerin -- ogo-xmlrpcd
89 if [ $2 = 1 ]; then
90 echo "# configuration needed to access the OGo XMLRPCd via http
91 #
92 # hook up
93 <IfModule ngobjweb_module.c>
94   <LocationMatch "^/RPC2*">
95     SetAppPort 22000
96     SetHandler ngobjweb-adaptor
97   </LocationMatch>
98 </IfModule>
99 " >%{apache_conf_dir}/ogo-xmlrpcd.conf
100 fi
101
102 %triggerin -- ogo-zidestore
103 if [ $2 = 1 ]; then
104 echo "# configuration needed to access the OGo ZideStore via http
105 #
106 # hook up
107 <IfModule ngobjweb_module.c>
108   <LocationMatch "^/zidestore/*">
109     SetAppPort 21000
110     SetHandler ngobjweb-adaptor
111   </LocationMatch>
112 </IfModule>
113 " >%{apache_conf_dir}/ogo-zidestore.conf
114 fi
115
116 %triggerun -- ogo-webui-app
117 if [ $2 = 0 ]; then
118   if [ -f %{apache_conf_dir}/ogo-webui.conf ]; then
119     rm -f %{apache_conf_dir}/ogo-webui.conf
120   fi
121 fi
122
123 %triggerun -- ogo-xmlrpcd
124 if [ $2 = 0 ]; then
125   if [ -f %{apache_conf_dir}/ogo-xmlrpcd.conf ]; then
126     rm -f %{apache_conf_dir}/ogo-xmlrpcd.conf
127   fi
128 fi
129
130 %triggerun -- ogo-zidestore
131 if [ $2 = 0 ]; then
132   if [ -f %{apache_conf_dir}/ogo-zidestore.conf ]; then
133     rm -f %{apache_conf_dir}/ogo-zidestore.conf
134   fi
135 fi
136
137 # ****************************** clean ********************************
138 %clean
139 rm -fr ${RPM_BUILD_ROOT}
140
141 # ****************************** files ********************************
142 %files
143 %defattr(-,root,root,-)
144 %{apache_modules_dir}/mod_ngobjweb.so
145 %config %{apache_conf_dir}/ngobjweb.conf
146 %ghost %{apache_conf_dir}/ogo-webui.conf
147 %ghost %{apache_conf_dir}/ogo-xmlrpcd.conf
148 %ghost %{apache_conf_dir}/ogo-zidestore.conf
149
150 # ********************************* changelog *************************
151 %changelog
152 * Sat Feb 19 2005 Frank Reppin <frank@opengroupware.org>
153 - replaced common vars with 2 new macros (will make editing safer)
154 - revisited last commit regarding OGo Bug #1254 and decided
155   to use triggers instead (and thus nothing moved into the application RPMS)
156 - application specific config files get installed/removed based on whether
157   the application itself is installed/removed and/or mod_ngobjweb itself gets
158   removed or installed
159 * Fri Feb 18 2005 Frank Reppin <frank@opengroupware.org>
160 - moved parts to the application RPMS
161 * Thu Dec 23 2004 Frank Reppin <frank@opengroupware.org>
162 - requires httpd -obviously-
163 - mod_ngobjweb.so lives in /usr/lib/httpd/modules now
164 - OGo.conf lives in /etc/httpd/conf.d now...
165 * Wed Sep 09 2004 Frank Reppin <frank@opengroupware.org>
166 - initial build