Next: , Previous: palette.make, Up: Project Types



1.4.13 RPMs (rpm.make)

The RPM project provides rules for automatically generating RPM spec files in order to make RPM distributions. Note that this project makefile is included automatically when you include any other project type in your GNUmakefile. It is non necessary to include rpm.make.

Except for PACKAGE_NAME, which is required, all the following variables are optional. It is recommended that you set them anyway in order to provide the standard information that is present in most RPM distributions.

— RPM: PACKAGE_NAME

PACKAGE_NAME defines the name of the RPM distribution. In most cases this will be the same as the name of your project type. For instance, if you are creating a application, and have set APP_NAME to MyApplication, Then set PACKAGE_NAME to the same thing, or just use PACKAGE_NAME=$(APP_NAME). if PACKAGE_NAME is not set, it defaults to unnamed-package

— RPM: PACKAGE_VERSION

Set PACKAGE_VERSION to the release version number of your package. If not set, it defaults to 0.0.1

— RPM: GNUSTEP_INSTALLATION_DIR

Set GNUSTEP_INSTALLATION_DIR to the installation directory. Typically this is either $(GNUSTEP_SYSTEM_ROOT)), $(GNUSTEP_LOCAL_ROOT), or $(GNUSTEP_USER_ROOT). If not set it defaults to $(GNUSTEP_LOCAL_ROOT).

— RPM: RPM_DISABLE_RELOCATABLE

Set this to YES if the package must be in $(GNUSTEP_SYSTEM_ROOT) and is not relocatable.

— RPM: PACKAGE_NEEDS_CONFIGURE

Set this to YES if a configure script needs to be run before compilation

In addition you need to provide a stub spec file named for the package name, such as this example libobjc.spec.in file:

     Release:        1
     Source:         ftp://ftp.gnustep.org/pub/gnustep/libs/%{gs_name}-%{gs_version}.
     tar.gz
     Copyright:      GPL
     Group:          Development/Libraries
     Summary:        Objective-C Runtime Library
     Packager:       Adam Fedor <fedor@gnu.org>
     Vendor:         The GNUstep Project
     URL:            http://www.gnustep.org/
     
     %description
     Library containing the Objective-C runtime.