Macro: ac_very_nice

Back to the Main Page. | Download the M4 Source.

# ac_very_nice

## Synopsis

`AC_VERY_NICE`

## Version

1.1.1.1 (2001/07/26) Miscellaneous @ ac-archive-0.5.32

## Author

Stephane Bortzmeyer <bortzmeyer@pasteur.fr>

## Description

A macro to check the options of nice, in order to have a VERY_NICE variable which runs a program at the lowest priority VERY_NICE is undefined if we don't find the proper options, so you can safely use:

`@VERY_NICE@ mycommand`

in a shell script.

The VERY_NICE variable includes the placeholder NICE_VALUE that you have to instantiate at run-time. If you give a argument to AC_VERY_NICE, it will be used as an argument of nice for testing and included in VERY_NICE instead of the above placeholder.

## M4 Source Code

    AC_DEFUN([AC_VERY_NICE],[
    if test "x$1" != "x"; then
      NICE_VALUE=$1
    else
      NICE_VALUE=20
    fi
    AC_CHECK_PROGS(TEST_NICE, date)
    AC_CHECK_PROGS(NICE, nice, )
    AC_MSG_CHECKING(syntax of nice)
    if test "x$NICE" != "x"; then
         if  ( $NICE -n $NICE_VALUE $TEST_NICE > /dev/null 2>&1 ) ;  then
            VERY_NICE="$NICE -n $NICE_VALUE"
         else
          if  ( $NICE -$NICE_VALUE $TEST_NICE > /dev/null 2>&1 ) ;  then
            VERY_NICE="$NICE -$NICE_VALUE"
          fi
         fi
    fi
    if test "x$1" = "x"; then
      VERY_NICE=`echo $VERY_NICE | sed "s/$NICE_VALUE/NICE_VALUE/"`
    fi
    AC_MSG_RESULT($VERY_NICE)
    AC_SUBST(VERY_NICE)
    ])