[csw-maintainers] SUNWspro cc Libtool and "fast install" information.

Mike Watters mwatters at opencsw.org
Fri Feb 20 00:37:50 CET 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

- --enable-fast-install is enabled by default on most packages.  This is
not necessarily a problem.  when using Sun's compiler.  the system will
change the libraries shared objects link against to a more "optimized"
library.  There are only a handful of cases this is not desirable.
here is the information I have come across that may be useful to the
other maintainers.


This is the macro libtool uses:

- -- Macro: AC_DISABLE_FAST_INSTALL
     Change the default behaviour for `AC_PROG_LIBTOOL' to disable
     optimization for fast installation.  The user may still override
   this default, depending on platform support, by specifying
     `--enable-fast-install'.

and
Below is an excerpt from  the man page for SUNWspro "cc"

- -fast
          This option is a macro that you can effectively use as
          a starting point for tuning an executable for maximum
          run-time performance. The expansion of -fast can change
          from one release of the compiler to the next and
          includes options that are target platform specific. Use
          the -# or the -xdryrun options to examine the expansion
          of -fast, and incorporate the appropriate options of
          -fast into the ongoing process of tuning the execut-
          able.

          The expansion of -fast now includes the new -xlibmopt
          option. This option enables the compiler to use a
          library of optimized math routines. For more informa-
          tion, see the description of -xlibmopt in this man
          page.

          The -fast option impacts the value of errno. See the
          NOTES section at the end of this man page for more
          information.

          Modules that are compiled with -fast must also be
          linked with -fast. For a complete list of compiler
          options that must be specified at both compile time and
          at link time, see the C User's Guide.

          The -fast option is unsuitable for programs that are
          intended to run on a different target than the compila-
          tion machine. In such cases, follow -fast with the
          appropriate -xtarget option. For example:

                % cc -fast -xtarget=ultra

          For C modules depending on exception handling specified
          by SUID, follow -fast by -xnolibmil

                % cc -fast -xnolibmil

          The -fast option acts like a macro expansion on the
          command line. Therefore, you can override any of the
          expanded options by following -fast with the desired
          option.

          If you combine -fast with other options, the last
          specification applies.

          These options are turned on for -fast:

          -fns (SPARC, x86)
          -fsimple=2 (SPARC, x86)
          -fsingle (SPARC, x86)
          -nofstore (x86)
          -xalias_level=basic (SPARC, x86)
          -xbuiltin=%all (SPARC, x86)
          -xdepend (SPARC, x86)
          -xlibmil (SPARC, x86)
          -xlibmopt (SPARC)
          -xmemalign=8s (SPARC)
          -xO5 (SPARC, x86)
          -xprefetch=auto,explicit (SPARC)
          -xregs=frameptr (x86)
          -xtarget=native (SPARC, x86)

          Note that this selection of component option flags is
          subject to change with each release of the compiler.
          For details on the options set by -fast, see the C
          User's Guide.

          To determine the expansion of -fast on a running sys-
          tem, execute the command cc -fast -xdryrun |& grep ###

          Note: Some optimizations make certain assumptions about
          program behavior. If the program does not conform to
          these assumptions, the application may crash or produce
          incorrect results. Please refer to the description of
          the individual options to determine if your program is
          suitable for compilation with -fast.

          Do not use this option for programs that depend on IEEE
          standard exception handling; you can get different
          numerical results, premature program termination, or
          unexpected SIGFPE signals.



- --

Thanks,
Mike

"Any intelligent fool can make things bigger, more complex,
and more violent.  It takes a touch of genius -- and a lot of courage --
to move in the opposite direction."

* Albert Einstein 1879 - 1955
    US German-born Theoretical Physicist
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (SunOS)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkmd7U0ACgkQLrhmsXMSLxcsbQCgt/oJgSJ+WT+vsI0igWQlt/SI
n+AAniUfqhAhpp5hlk8ikVY/v911MRxa
=Z+7M
-----END PGP SIGNATURE-----



More information about the maintainers mailing list