#!/bin/sh
+if test -f build.sh; then
+ MAKE="`cat build.sh`"
+ eval echo "$MAKE" > buildtest.sh
+ MAKETEST="`cat buildtest.sh`'"
+ rm -f buildtest.sh
+else
+ MAKE="make GSOAPDIR=\$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT $1"
+ MAKETEST="make GSOAPDIR=$GSOAPDIR STDSOAP2=$STDSOAP2 $1"
+fi
+
# test to see if fuse-devel (or fuse.h and libfuse) is installed
#
cat <<EOF >fuse-test.c
int main() { struct fuse_context ctx;
return fuse_main(0, (char **) 0, (struct fuse_operations *) 0); }
EOF
-make fuse-test
+$MAKETEST fuse-test
if [ $? = 0 ] ; then have_fuse=1 ; fi
# test to see if gsoap-devel (or stdsoap2.h and libgsoapssl) is installed
main() { return; }
#endif
EOF
-make GSOAPDIR=$GSOAPDIR STDSOAP2=$STDSOAP2 gridsite-delegation.cgi
+$MAKETEST gridsite-delegation.cgi
if [ $? = 0 ] ; then have_gsoap=1 ; fi
+rm -f a.out
+if [ "$have_fuse" = "1" ]; then
+ fusedep=',fuse-devel'
+fi
+if [ "$have_gsoap" = "1" ]; then
+ gsoapdep=',gsoap-devel'
+fi
cat <<EOF >gridsite.spec
#
# Autogenerated by make-gridsite-spec
License: Modified BSD
Group: System Environment/Daemons
Source: %{name}-%{version}.src.tar.gz
-Prefix: ${MYPREFIX:-/usr}
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
URL: http://www.gridsite.org/
Vendor: GridPP
Requires: libxml2
Buildrequires: libxml2-devel,curl-devel,httpd-devel,openssl-devel
+Buildrequires: doxygen${gsoapdep}${fusedep}
Packager: Andrew McNab <Andrew.McNab@manchester.ac.uk>
%description
%build
cd src
-make prefix=\$RPM_BUILD_ROOT/%{prefix} \
- GSOAPDIR=\$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS \
- OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT
+$MAKE prefix=\$RPM_BUILD_ROOT/%{_prefix}
EOF
if [ $have_fuse ] ; then
cat <<EOF >>gridsite.spec
-make prefix=\$RPM_BUILD_ROOT/%{prefix} \
- GSOAPDIR=\$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS \
- OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT \
- slashgrid
+$MAKE prefix=\$RPM_BUILD_ROOT/%{_prefix} slashgrid
EOF
fi
if [ $have_gsoap ] ; then
cat <<EOF >>gridsite.spec
-make prefix=\$RPM_BUILD_ROOT/%{prefix} \
- GSOAPDIR=\$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS \
- OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT \
- gridsite-delegation.cgi htproxyput
+$MAKE prefix=\$RPM_BUILD_ROOT/%{_prefix} gridsite-delegation.cgi htproxyput
EOF
fi
%install
cd src
-make install prefix=\$RPM_BUILD_ROOT/%{prefix} libdir=%{_lib} \
-GSOAPDIR=\$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS \
-OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT
+
+$MAKE install prefix=\$RPM_BUILD_ROOT/%{_prefix} libdir=%{_lib}
EOF
if [ $have_fuse ] ; then
cat <<EOF >>gridsite.spec
mkdir -p \$RPM_BUILD_ROOT/etc/rc.d/init.d
-make install-slashgrid prefix=\$RPM_BUILD_ROOT/%{prefix} \
- GSOAPDIR=\$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS \
- OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT
+$MAKE install-slashgrid prefix=\$RPM_BUILD_ROOT/%{_prefix}
EOF
fi
cat <<EOF >>gridsite.spec
-make install-ws prefix=\$RPM_BUILD_ROOT/%{prefix} \
- GSOAPDIR=$GSOAPDIR OPENSSL_FLAGS=\$OPENSSL_FLAGS \
- OPENSSL_LIBS=\$OPENSSL_LIBS FLAVOR_EXT=\$FLAVOR_EXT
+$MAKE install-ws prefix=\$RPM_BUILD_ROOT/%{_prefix}
EOF
fi
fi
%files shared
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite.so.%{version}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite.so.${MINOR_VERSION:-1.x}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite.so.${MAJOR_VERSION:-1}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite.so
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_globus.so.%{version}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_globus.so.${MINOR_VERSION:-1.x}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_globus.so.${MAJOR_VERSION:-1}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_globus.so
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_nossl.so.%{version}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_nossl.so.${MINOR_VERSION:-1.x}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_nossl.so.${MAJOR_VERSION:-1}
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_nossl.so
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite.so.%{version}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite.so.${MINOR_VERSION:-1.x}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite.so.${MAJOR_VERSION:-1}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite.so
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_globus.so.%{version}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_globus.so.${MINOR_VERSION:-1.x}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_globus.so.${MAJOR_VERSION:-1}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_globus.so
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_nossl.so.%{version}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_nossl.so.${MINOR_VERSION:-1.x}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_nossl.so.${MAJOR_VERSION:-1}
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_nossl.so
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}
%files devel
-%attr(-, root, root) %{prefix}/include/gridsite.h
-%attr(-, root, root) %{prefix}/include/gridsite-gacl.h
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite.a
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_globus.a
-%attr(-, root, root) %{prefix}/%{_lib}/libgridsite_nossl.a
+%attr(-, root, root) %{_prefix}/include/gridsite.h
+%attr(-, root, root) %{_prefix}/include/gridsite-gacl.h
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite.a
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_globus.a
+%attr(-, root, root) %{_prefix}/%{_lib}/libgridsite_nossl.a
%files apache
-%attr(-, root, root) %{prefix}/share/man/man8/mod_gridsite.8.gz
-%attr(-, root, root) %{prefix}/%{_lib}/httpd/modules/mod_gridsite.so
-%attr(-, root, root) %{prefix}/sbin/real-gridsite-admin.cgi
-%attr(-, root, root) %{prefix}/sbin/gridsite-copy.cgi
-%attr(-, root, root) %{prefix}/sbin/gridsite-storage.cgi
+%attr(-, root, root) %{_prefix}/share/man/man8/mod_gridsite.8.gz
+%attr(-, root, root) %{_prefix}/%{_lib}/httpd/modules/mod_gridsite.so
+%attr(-, root, root) %{_prefix}/sbin/real-gridsite-admin.cgi
+%attr(-, root, root) %{_prefix}/sbin/gridsite-copy.cgi
+%attr(-, root, root) %{_prefix}/sbin/gridsite-storage.cgi
%files commands
-%attr(-, root, root) %{prefix}/bin/htcp
-%attr(-, root, root) %{prefix}/bin/htls
-%attr(-, root, root) %{prefix}/bin/htll
-%attr(-, root, root) %{prefix}/bin/htrm
-%attr(-, root, root) %{prefix}/bin/htmkdir
-%attr(-, root, root) %{prefix}/bin/htmv
-%attr(-, root, root) %{prefix}/bin/htping
-%attr(-, root, root) %{prefix}/bin/htfind
-%attr(-, root, root) %{prefix}/bin/urlencode
-%attr(-, root, root) %{prefix}/bin/findproxyfile
-%attr(-, root, root) %{prefix}/share/man/man1/htcp.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htrm.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htls.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htll.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htmkdir.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htmv.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htping.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htfind.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/urlencode.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/findproxyfile.1.gz
+%attr(-, root, root) %{_prefix}/bin/htcp
+%attr(-, root, root) %{_prefix}/bin/htls
+%attr(-, root, root) %{_prefix}/bin/htll
+%attr(-, root, root) %{_prefix}/bin/htrm
+%attr(-, root, root) %{_prefix}/bin/htmkdir
+%attr(-, root, root) %{_prefix}/bin/htmv
+%attr(-, root, root) %{_prefix}/bin/htping
+%attr(-, root, root) %{_prefix}/bin/htfind
+%attr(-, root, root) %{_prefix}/bin/urlencode
+%attr(-, root, root) %{_prefix}/bin/findproxyfile
+%attr(-, root, root) %{_prefix}/share/man/man1/htcp.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htrm.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htls.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htll.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htmkdir.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htmv.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htping.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htfind.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/urlencode.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/findproxyfile.1.gz
%files gsexec
-%attr(4510, root, apache) %{prefix}/sbin/gsexec
-%attr(-, root, root) %{prefix}/share/man/man8/gsexec.8.gz
+%attr(4510, root, apache) %{_prefix}/sbin/gsexec
+%attr(-, root, root) %{_prefix}/share/man/man8/gsexec.8.gz
EOF
if [ $have_fuse ] ; then
/sbin/service slashgrid stop ; :
%files slashgrid
-%attr(0744, root, root) %{prefix}/sbin/slashgrid
+%attr(0744, root, root) %{_prefix}/sbin/slashgrid
%attr(0744, root, root) /etc/rc.d/init.d/slashgrid
%attr(0700, root, root) /var/spool/slashgrid
-%attr(-, root, root) %{prefix}/share/man/man8/slashgrid.8.gz
+%attr(-, root, root) %{_prefix}/share/man/man8/slashgrid.8.gz
EOF
fi
GridSite WS delegation service, gridsite-delegation.cgi
%files services
-%attr(-, root, root) %{prefix}/sbin/gridsite-delegation.cgi
-%attr(-, root, root) %{prefix}/share/man/man8/gridsite-delegation.8.gz
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/delegation-1.1.0.wsdl
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/gridsite-delegation.8
+%attr(-, root, root) %{_prefix}/sbin/gridsite-delegation.cgi
+%attr(-, root, root) %{_prefix}/share/man/man8/gridsite-delegation.8.gz
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/delegation-1.1.0.wsdl
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/gridsite-delegation.8
%package service-clients
Group: Applications/Internet
See http://www.gridsite.org/ for details.
%files service-clients
-%attr(-, root, root) %{prefix}/bin/htproxyput
-%attr(-, root, root) %{prefix}/bin/htproxydestroy
-%attr(-, root, root) %{prefix}/bin/htproxytime
-%attr(-, root, root) %{prefix}/bin/htproxyunixtime
-%attr(-, root, root) %{prefix}/bin/htproxyrenew
-%attr(-, root, root) %{prefix}/bin/htproxyinfo
-%attr(-, root, root) %{prefix}/share/man/man1/htproxyput.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htproxydestroy.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htproxytime.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htproxyunixtime.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htproxyrenew.1.gz
-%attr(-, root, root) %{prefix}/share/man/man1/htproxyinfo.1.gz
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyput.1
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxydestroy.1
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxytime.1
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyunixtime.1
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyrenew.1
-%attr(-, root, root) %{prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyinfo.1
+%attr(-, root, root) %{_prefix}/bin/htproxyput
+%attr(-, root, root) %{_prefix}/bin/htproxydestroy
+%attr(-, root, root) %{_prefix}/bin/htproxytime
+%attr(-, root, root) %{_prefix}/bin/htproxyunixtime
+%attr(-, root, root) %{_prefix}/bin/htproxyrenew
+%attr(-, root, root) %{_prefix}/bin/htproxyinfo
+%attr(-, root, root) %{_prefix}/share/man/man1/htproxyput.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htproxydestroy.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htproxytime.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htproxyunixtime.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htproxyrenew.1.gz
+%attr(-, root, root) %{_prefix}/share/man/man1/htproxyinfo.1.gz
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyput.1
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxydestroy.1
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxytime.1
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyunixtime.1
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyrenew.1
+%attr(-, root, root) %{_prefix}/share/doc/gridsite-${MINOR_VERSION:-1.x}/htproxyinfo.1
EOF
fi