octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: finally actually using gnulib


From: John W. Eaton
Subject: Re: finally actually using gnulib
Date: Sat, 21 Nov 2009 11:14:21 -0500

On 21-Nov-2009, Benjamin Lindner wrote:

| I used sha1sum from
| http://lists.gnupg.org/pipermail/gnupg-announce/2004q4/000184.html
| but apparently this one does not work.
| Then I saw that msys distributes coreutils in two parts, and sha1sum
| is in the second part, which I did not have installed.
| Now it works.
| 
| > Also, if you see a message about no libgnu/gnulib.mk file, you will
| > need to create a file called libgnu/Makefile.am with the contents
| > 
| >   include gnulib.mk
| > 
| > before running autogen.sh.  I think that filewas accidentally left out
| > of my previous patch.
| 
| thanks for this info.
| bootstrap, autoconf-ing and configure complete fine.

That's good news.  Thanks for working on this.

| During building I get the following two errors
| 
| ../../run-octave -f -q -H 
| /octmgw32/octave/octave-tip-automake/doc/interpreter/mk_doc_cache.m 
| doc-cache ../../src/DOCSTRINGS ../../scripts/DOCSTRINGS || rm -f doc-cache
| error: : mkstemp: not supported on this sytem

I think we can fix this problem by using the mkstemp function that
gnulib provides.  Or, you can try modifying this code in
src/file-io.cc:

  #if defined (HAVE_MKSTEMPS)
  // Prototype for mkstemps in libiberty
  extern "C" int mkstemps (char *pattern, int suffix_len);
  #endif

  #if ! defined (HAVE_MKSTEMP) && ! defined (HAVE_MKSTEMPS) && defined 
(_MSC_VER)
  # if defined (HAVE_FCNTL_H)
  #  include <fcntl.h>
  # endif
  # if defined (HAVE_SYS_STAT_H)
  #  include <sys/stat.h>
  # endif
  int mkstemp (char *tmpl)
  {
    int ret=-1;
    mktemp (tmpl);
    ret = open (tmpl, O_RDWR | O_BINARY | O_CREAT | O_EXCL | _O_SHORT_LIVED,
                _S_IREAD | _S_IWRITE);
    return ret;
  }
  #define HAVE_MKSTEMP 1
  #endif

I don't see why it should be restricted to just _MSC_VER.  It looks to
me like it should work on any system that has the open system call and
all the needed O_x, _O_x, and _S_x macros defined.

| make[2]: Entering directory 
| `/octmgw32/octave/.build_mingw32_octave-tip-automake-4_gcc-4.4.0-dw2'
| make[2]: *** No rule to make target `mkoctfile.exe', needed by `all-am'. 
|   Stop.

At what point in the build process did this error occur?

jwe


reply via email to

[Prev in Thread] Current Thread [Next in Thread]