gnucash/packaging
Geert Janssens b1f9f80110 Add CMakeLists.txt files to dist tarball generated by autotools
This is half of the work to align the cmake and autotools generated dist tarballs.
What's missing in the cmake dist tarball on my system are all the files generated
or installed by running autogen.sh. I can't test this because cmake can't run
my version of automake (1.15), or at least our CMake configuration prevents this from happening.
2017-07-10 20:06:31 +02:00
..
CMakeLists.txt Implement 'dist', 'distcheck' and 'uninstall' targets for CMake 2017-07-03 16:15:17 -07:00
gnucash.spec.in Bug #603334: Updates to RPM spec file to allow 2.3.7 to build on Fedora Core 12 2011-01-11 20:45:40 +00:00
Makefile.am Add CMakeLists.txt files to dist tarball generated by autotools 2017-07-10 20:06:31 +02:00
README.RPM Bug #603334: Updates to RPM spec file to allow 2.3.7 to build on Fedora Core 12 2011-01-11 20:45:40 +00:00

This directory contains spec files for building an RPM

  REALLY WATCH OUT: The files in this directory are historical
  examples.  They may be out of date and not maintained.  Please
  contact your local distro supplier for updates.

  WATCH OUT: These spec file(s) might be heavily out of date and/or
  absolutely NOT SUITED to your distribution! They are particularly
  matched for the Fedora Core 4 distribution, but DO NOT USE THEM if
  you don't have exactly that distribution! Your own distribution
  probably has its own source RPM of gnucash, and this source RPM
  includes a spec file that is much better suited to your
  distribution.

  I repeat: DO NOT USE THIS SPEC file unless you either have Fedora
  Core 4 or you really know how you can modify it to suit your
  distribution.

  For German-speaking users, there are German build instructions for
  RPMs on http://linuxwiki.de/GnuCash/RpmInstallieren . 

------------------------------
Original file content:


Short instructions:

> I've never built an rpm; given a spec file, how do I do this?
> I understand the theory, just not clear on what to type up.

You'll need to be root in many distributions.  (It is possible to
avoid this requirement, but I haven't done the work to the RPM.) 
However, in some distributions (e.g. SuSE) these instructions will
work even as a normal user.

cd /usr/src/redhat/SOURCES
tar -zxvf xacc-1.x.tar.gz
cp xacc-1.x/rpm/xacc.spec ../SPECS
cp xacc-1.x/rpm/xacc.wmconfig .

cd /usr/src/redhat/SPECS
rpm -ba xacc.spec

wait a bit, and a new binary rpm will be in
/usr/src/redhat/RPMS/<arch> and a new src.rpm will be in
/usr/src/redhat/SRPMS.


================================

JPL version:

1) Obtain a GnuCash distribution (source code .tar.gz file), 
   either by downloading from an ftp site somewhere, or building
   from CVS using "make dist".  The file should have the nomenclature
   gnucash-X.Y.Z.tar.gz where X.Y.Z are the release numbers.

2) Copy and uncompress/tar the distribution in your 
   /usr/src/redhat/SOURCES directory.  You will need to do this as the 
   root user.  Note, use your distribution-specific path here, only 
   redhat uses "/usr/src/redhat".

   cd /usr/src/redhat/SOURCES
   cp /SOMEPATH/gnucash-X.Y.Z.tar.gz
   tar xvzf gnucash-X.Y.Z.tar.gz

3) Copy the rpm spec file to /usr/src/redhat/SPEC.

   cp gnucash-X.Y.Z/rpm/gnucash.spec /usr/src/redhat/SPECS/.
   
4) Edit the spec file, you probably will only need to modify the 
   following 3 lines, depending on what features you want to include 
   in the rpm:

   %define _with_postgres 0      (use postgres backend?)
   %define _with_ofx 0           (use openofx package?)
   %define _with_hbci 0          (use hbci package?)

5) Build the binary and source RPMs
   cd /usr/src/redhat/SPECS
   rpmbuild -ba gnucash.spec

   (note: older versions of rpm use "rpm -ba FILE.spec" to build) 
   
6) Wait a bit, and a new binary rpm will be in
   /usr/src/redhat/RPMS/<arch> and a new src.rpm will be in
   /usr/src/redhat/SRPMS.