octave-maintainers
[Top][All Lists]
Advanced

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

Re: Problem with recent octave cvs snapshots


From: John W. Eaton
Subject: Re: Problem with recent octave cvs snapshots
Date: Thu, 12 May 2005 14:06:51 -0400

On 12-May-2005, Dmitri A. Sergatskov wrote:

| John W. Eaton wrote:
| 
| > If all these things are undeclared, then it looks like you don't have
| > gperf, or it did not generate a valid src/oct-gerf.h file from
| > src/octave.gperf.
| > 
| 
| Yes. I forgot that I need gperf to compile cvs snapshots. What also confused
| me was that the snapshot did have some oct-gperf.h in it. That file contained
| some declarations (was not empty).  Deleting and rebuilding it solved the 
problem.
| Thank you.

I made the following change to try to avoid this problem in the
future.  Now Make should quit after printing the following message if
gperf is missing and it is needed to create src/oct-gperf.h.  Before,
it would print the message but keep going.

  ...
  making oct-gperf.h from /home/jwe/src/octave/src/octave.gperf
  WARNING: `gperf' is missing on your system.  You should only need it if
           you modified a `.gperf' file.  You may need the `gperf' package
           in order for those modifications to take effect.  You can get
           `gperf' from any GNU archive site.

           You may also need `gperf' if you obtained this package from the CVS
           archive because files that can be automatically generated are not
           considered source files and are not checked in to the CVS archive.

           You may also need `gperf' if you ran make maintainer-clean and
           removed files that can be automatically generated but that are
           normally distributed as part of the package for convenience.
  make: *** [oct-gperf.h] Error 1

Thanks,

jwe


src/ChangeLog:

2005-05-12  John W. Eaton  <address@hidden>

        * Makefile.in (oct-gperf.h): Try harder to cause Make to exit here
        if gperf is missing or fails to create a valid file.


Index: src/Makefile.in
===================================================================
RCS file: /cvs/octave/src/Makefile.in,v
retrieving revision 1.378
diff -u -r1.378 Makefile.in
--- src/Makefile.in     2 May 2005 18:16:51 -0000       1.378
+++ src/Makefile.in     12 May 2005 18:05:04 -0000
@@ -545,9 +545,14 @@
 
 oct-gperf.h: octave.gperf
        @echo "making $@ from $<"
-       @$(GPERF) -t -C -D -G -L C++ -Z octave_kw_hash \
-         $< | $(SED) 's,lookup\[,gperf_lookup[,' > address@hidden
-       @$(top_srcdir)/move-if-change address@hidden $@
+       @$(GPERF) -t -C -D -G -L C++ -Z octave_kw_hash $< > address@hidden \
+         || (rm -f address@hidden; exit 1)
+       @$(SED) 's,lookup\[,gperf_lookup[,' address@hidden > address@hidden || 
rm -f address@hidden
+       @if [ -s address@hidden ]; then \
+         $(top_srcdir)/move-if-change address@hidden $@; \
+       else \
+         exit 1; \
+       fi
 
 # How to make a .oct file from a .o file:
 



reply via email to

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