X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Funlink-busy.m4;h=687f900da1d6bd941a227ce92d7a91623683d7c8;hb=c29717fb753f81891cb6e4274adaf11a0bcba374;hp=95c08102036b69f8c2c3c50cc2504f33a23948d6;hpb=301a3bfef8938de5abb4b738929fbcb700b05e19;p=gnulib.git diff --git a/m4/unlink-busy.m4 b/m4/unlink-busy.m4 index 95c081020..687f900da 100644 --- a/m4/unlink-busy.m4 +++ b/m4/unlink-busy.m4 @@ -1,24 +1,27 @@ -#serial 4 +#serial 11 dnl From J. David Anglin. dnl HPUX and other systems can't unlink shared text that is being executed. -AC_DEFUN(jm_FUNC_UNLINK_BUSY_TEXT, +# Copyright (C) 2000, 2001, 2004, 2007 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_FUNC_UNLINK_BUSY_TEXT], [dnl - AC_CACHE_CHECK([whether a program can unlink itself], + AC_CACHE_CHECK([whether a running program can be unlinked], jm_cv_func_unlink_busy_text, [ - AC_TRY_RUN([ - main (argc, argv) - int argc; - char **argv; - { - if (!argc) - exit (-1); - exit (unlink (argv[0])); - } - ], + AC_RUN_IFELSE( + [AC_LANG_SOURCE( + [AC_INCLUDES_DEFAULT[ + int + main (int argc, char **argv) + { + return !argc || unlink (argv[0]) != 0; + }]])], jm_cv_func_unlink_busy_text=yes, jm_cv_func_unlink_busy_text=no, jm_cv_func_unlink_busy_text=no