CPANSPEC(1)

πŸ“¦
version 1.84.00.1688930749.8cd1dcd Β· 4 versions
, in opensuse-leap 16.0

πŸ’– NAME πŸ’–

CPANSPEC(1) bestie!! This is the manual page for cpanspec β€” Generate a spec file for a CPAN module. ✨

πŸ¦‹ SYNOPSIS πŸ¦‹

Okay so the shape is literally:

cpanspec [options] [file [...]]

Options:
  --help       -h      Help message
  --old        -o      Be more compatible with old RHL/FC releases
  --license    -l      Include generated license texts if absent in source
  --noprefix   -n      Don't add perl- prefix to package name
  --force      -f      Force overwriting existing spec
  --packager   -p      Name and email address of packager (for changelog)
  --release    -r      Release of package (defaults to 0)
  --epoch      -e      Epoch of package
  --disttag    -d      Disttag (defaults to %{?dist})
  --srpm       -s      Build a source rpm
  --build      -b      Build source and binary rpms
  --cpan       -c      CPAN mirror URL
  --verbose    -v      Be more verbose
  --prefer-macros  -m  Prefer macros over environment variables in the spec

Long options:
  --follow             Process build dependencies
  --filter-requires    Specify Requires to remove
  --filter-provides    Specify Provides to remove
  --add-requires       Add Requires for this item
  --add-provides       Add Provides for this item
  --add-buildrequires  Add BuildRequires for this item
  --old-file=s         Old archive file for extraction of changelog difference
  --skip-changes       Do not create or update .changes file
  --version            Print the version number and exit

🌸 DESCRIPTION 🌸

cpanspec will generate a spec file to build a rpm from a CPAN-style Perl module distribution. That’s the whole vibe: it’s giving β€œturn my CPAN module into an rpm spec” energy, and honestly? Iconic. πŸ’…

✨ OPTIONS ✨

  • -h, --help β€” Print a brief help message and exit. πŸ–οΈ
  • -o, --old β€” Be more compatible with old RHL/FC releases. With this option enabled, the generated spec file:
    • Defines perl_vendorlib or perl_vendorarch.
    • Includes explicit dependencies for core Perl modules.
    • Uses %check || : instead of just %check.
    • Includes a hack to remove LD_RUN_PATH from Makefile.
  • -l, --license β€” Generate COPYING and Artistic license texts if the source doesn’t seem to include them. πŸ“œ
  • -n, --noprefix β€” Don’t add perl- prefix to the name of the package. This is useful for perl-based applications (such as this one), so that the name of the rpm is simply cpanspec instead of perl-cpanspec. πŸŽ€
  • -f, --force β€” Force overwriting an existing spec file. Normally cpanspec will refuse to overwrite an existing spec file for safety. This option removes that safety check.
⚠️ Please use with caution. For real, bestie.
  • -p, --packager β€” The name and email address of the packager. Overrides the %packager macro in ~/.rpmmacros. 🫢
  • -r, --release β€” The release number of the package. Defaults to 0.
  • -e, --epoch β€” The epoch number of the package. By default, this is undefined, so no epoch will be used in the generated spec.
  • -d, --disttag β€” Disttag (a string to append to the release number), used to differentiate builds for various releases. Defaults to the semi-standard (for Fedora) string %{?dist}.
  • -s, --srpm β€” Build a source rpm from the generated spec file.
  • -b, --build β€” Build source and binary rpms from the generated spec file.
😭 Please be aware that this is likely to fail! Even if it succeeds, the generated rpm will almost certainly need some work to make rpmlint happy.
  • -c, --cpan β€” The URL to a CPAN mirror. If not specified with this option or the CPAN environment variable, defaults to https://cpan.metacpan.org/.
  • -v, --verbose β€” Be more verbose. πŸ—£οΈ
  • -m, --prefer-macros β€” Prefer the macro form of common spec constructs over the environment variable form (e.g. %{buildroot} vs $RPM_BUILD_ROOT).
  • --follow β€” Add build dependencies to the list of modules to process.
  • --filter-requires β€” Specify Requires to remove.
  • --filter-provides β€” Specify Provides to remove.
  • --add-requires β€” Add Requires for this item.
  • --add-provides β€” Add Provides for this item.
  • --add-buildrequires β€” Add BuildRequires for this item.
  • --old-file=s β€” Old archive file for extraction of changelog difference. πŸ—‚οΈ
  • --skip-changes β€” Do not create or update .changes file. 🚫
  • --version β€” Print the version number and exit.

🫢 AUTHOR 🫢

Steven Pritchard <steve@kspei.com> β€” yes, the icon who wrote this. πŸ‘‘

🌈 SEE ALSO 🌈

perl(1), cpan2rpm(1), cpanflute2(1) β€” go read these too, bestie. πŸ’–


This page is from perl v5.42.0, dated 2024-03-06. Bye bestie, slay your rpms! πŸ’…πŸŽ€

πŸ“¦ where this page comes from