The %package Directive

The %package directive is used to control the creation of subpackages. The subpackage name is derived from the first name tag in the spec file, followed by the name specified after the %package directive. Therefore, if the first name tag is:
Name: foo
      

and a subpackage is defined with the following %package directive:
%package bar
      

the subpackage name will be foo-bar.

See also: the section called The Lone Directive: %package in Chapter 13.

The %package -n Option

The -n option is used to change how RPM derives the subpackage name. When the -n option is used, the name following the %package directive becomes the complete subpackage name. Therefore, if a subpackage is defined with the following %package directive:
%package -n bar
        

the subpackage name will be bar.

See also: the section called -n <string> — Use <string> As the Entire Subpackage Name in Chapter 13.