sa-compile.1p

Langue: en

Autres versions - même langue

Version: 2010-03-29 (ubuntu - 24/10/10)

Section: 1 (Commandes utilisateur)

NAME

sa-compile - compile SpamAssassin ruleset into native code

SYNOPSIS

sa-compile [options]

Options:

   --list                        Output base string list to STDOUT
   --sudo                        Use 'sudo' for privilege escalation
   --keep-tmps                   Keep temporary files instead of deleting
   -C path, --configpath=path, --config-file=path
                                 Path to standard configuration dir
   -p prefs, --prefspath=file, --prefs-file=file
                                 Set user preferences file
   --siteconfigpath=path         Path for site configs
                                 (default: /etc/spamassassin)
   --updatedir=path              Directory to place updates
           (default: /var/lib/spamassassin/compiled/<perlversion>/3.003001)
   --cf='config line'            Additional line of configuration
   -D, --debug [area=n,...]      Print debugging messages
   -V, --version                 Print version
   -h, --help                    Print usage message
 
 

DESCRIPTION

sa-compile uses "re2c" to compile the site-wide parts of the SpamAssassin ruleset. No part of user_prefs or any files included from user_prefs can be built into the compiled set.

This compiled set is then used by the "Mail::SpamAssassin::Plugin::Rule2XSBody" plugin to speed up SpamAssassin's operation, where possible, and when that plugin is loaded.

"re2c" can match strings much faster than perl code, by constructing a DFA to match many simple strings in parallel, and compiling that to native object code. Not all SpamAssassin rules are amenable to this conversion, however.

This requires "re2c" (see "http://re2c.org/"), and the C compiler used to build Perl XS modules, be installed.

Note that running this, and creating a compiled ruleset, will have no effect on SpamAssassin scanning speeds unless you also edit your "v320.pre" file and ensure this line is uncommented:

   loadplugin Mail::SpamAssassin::Plugin::Rule2XSBody
 
 

OPTIONS

--list
Output the extracted base strings to STDOUT, instead of generating the C extension code.
--sudo
Use sudo(8) to run code as 'root' when writing files to the compiled-rules storage area (which is "/var/lib/spamassassin/compiled/5.010/3.003001" by default).
--quiet
Produce less diagnostic output. Errors will still be displayed.
--keep-tmps
Keep temporary files after the script completes, instead of deleting them.
-C path, --configpath=path, --config-file=path
Use the specified path for locating the distributed configuration files. Ignore the default directories (usually "/usr/share/spamassassin" or similar).
--siteconfigpath=path
Use the specified path for locating site-specific configuration files. Ignore the default directories (usually "/etc/spamassassin" or similar).
--updatedir
By default, "sa-compile" will use the system-wide rules update directory:
         /var/lib/spamassassin/compiled/5.010/3.003001
 
 

If the updates should be stored in another location, specify it here.

Note that use of this option is not recommended; if sa-compile is placing the compiled rules the wrong directory, you probably need to rebuild SpamAssassin with different "Makefile.PL" arguments, instead of overriding sa-compile's runtime behaviour.

--cf='config line'
Add additional lines of configuration directly from the command-line, parsed after the configuration files are read. Multiple --cf arguments can be used, and each will be considered a separate line of configuration.
-p prefs, --prefspath=prefs, --prefs-file=prefs
Read user score preferences from prefs (usually "$HOME/.spamassassin/user_prefs") .
-D [area,...], --debug [area,...]
Produce debugging output. If no areas are listed, all debugging information is printed. Diagnostic output can also be enabled for each area individually; area is the area of the code to instrument.

For more information about which areas (also known as channels) are available, please see the documentation at <http://wiki.apache.org/spamassassin/DebugChannels>.

-h, --help
Print help message and exit.
-V, --version
Print sa-compile version and exit.

SEE ALSO

Mail::SpamAssassin(3) spamassassin(1) spamd(1)

PREREQUESITES

"Mail::SpamAssassin" "re2c" "Mail::SpamAssassin::Plugin::Rule2XSBody"

BUGS

See <http://issues.apache.org/SpamAssassin/>

AUTHORS

The Apache SpamAssassin(tm) Project <http://spamassassin.apache.org/> SpamAssassin is distributed under the Apache License, Version 2.0, as described in the file "LICENSE" included with the distribution.