SMOCK - Simpler Mock
====================
+by Dan Berrange and Richard W.M. Jones.
+License: GPLv2+
Smock is a thin wrapper around mock to let you build up a whole
set of dependant RPMs against an external distro.
+ - Create directory $HOME/public_html/smock
+
- Copy smock.httpd.conf to /etc/httpd/conf.d/smock.conf, changing the
/home/[USERNAME]/ to your user
- - Start httpd
- - Add smock.mock.conf to all your repos in /etc/mock/ changing the
- arch and distro name to match
- - Create $HOME/smock
- - Edit smock.sh to set which arch(es) you want to build on
+ - Start or restart httpd
+
+ - Insert smock.mock.extra to all your repos in /etc/mock/ changing the
+ USERNAME, arch and distro name to match
+
+ - Disable SELinux (/usr/sbin/setenforce Permissive) and you may
+ need to do 'chmod 0755 ~' to allow the web server to access your
+ home directory.
Now you can run
- ./smock.sh fedora-9 /path/to/srpm
+ ./smock.pl --arch=i386 --arch=x86_64 --distro=fedora-9 list of srpms
-And it'll build the RPM against the fedora-9-XXX distro for each 'XXX'
-arch you listed.
+And it'll build the all the SRPMs listed on the command line, using
+previously built SRPMs as dependencies for later ones. You don't need
+to list them in the proper order - the build order is worked out using
+the dependencies.
The resulting src RPMs, binary RPMs and build logs wil be put into
-$HOME/smock, and a YUM repo created. Further RPMs you build using
-smock will resolve the BuildRequires against this local repo
+$HOME/public_html/smock, and a Yum repo created. Further RPMs you
+build using smock will resolve the BuildRequires against this local
+repo.