# HG changeset patch # User John W. Eaton # Date 1261803488 18000 # Node ID 52a248732bb611f1f04ad859b34c8230dbcf403d # Parent 0f312e11957e0fb81182a38c3f5713f685dcc9a6 use mkfifo module from gnulib diff --git a/configure.ac b/configure.ac --- a/configure.ac +++ b/configure.ac @@ -1435,7 +1435,7 @@ getegid geteuid getgid getgrent getgrgid getgrnam getpgrp getpid \ getppid getpwent getpwuid gettimeofday getuid getwd _kbhit kill \ lgamma lgammaf lgamma_r lgammaf_r link localtime_r log1p log1pf lstat \ - memmove mkfifo mkstemp on_exit pipe poll putenv raise readlink \ + memmove mkstemp on_exit pipe poll putenv raise readlink \ realpath rename resolvepath rindex rmdir roundl select setgrent setlocale \ setpwent setvbuf sigaction siglongjmp sigpending sigprocmask sigsuspend \ snprintf stat strcasecmp strdup strerror stricmp strncasecmp \ diff --git a/liboctave/file-ops.cc b/liboctave/file-ops.cc --- a/liboctave/file-ops.cc +++ b/liboctave/file-ops.cc @@ -135,7 +135,10 @@ int status = -1; -#if defined (HAVE_MKFIFO) + // With gnulib we will always have mkfifo, but some systems like MinGW + // don't have working mkfifo functions. On those systems, mkfifo will + // always return -1 and set errno. + status = ::mkfifo (name.c_str (), mode); if (status < 0) @@ -143,9 +146,6 @@ using namespace std; msg = ::strerror (errno); } -#else - msg = NOT_SUPPORTED ("mkfifo"); -#endif return status; }