octave-maintainers
[Top][All Lists]
Advanced

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

Re: gnulib and automake


From: John W. Eaton
Subject: Re: gnulib and automake
Date: Fri, 13 Nov 2009 13:33:36 -0500

On 13-Nov-2009, John W. Eaton wrote:

| On 13-Nov-2009, Michael Goffioul wrote:
| 
| | I'll test that asap. It should rebuild cruft.def properly. But I think
| | I'll still miss the addition of XTRA_CRUFT_SH_LDFLAGS to the link flags.
| 
| Does this additional change fix that problem for you?
| 
| diff --git a/libcruft/Makefile.am b/libcruft/Makefile.am
| --- a/libcruft/Makefile.am
| +++ b/libcruft/Makefile.am
| @@ -29,7 +29,8 @@
|  
|  libcruft_la_SOURCES =
|  
| -libcruft_la_LDFLAGS = -release $(version) $(NO_UNDEFINED_LDFLAG)
| +libcruft_la_LDFLAGS = \
| +  -release $(version) $(NO_UNDEFINED_LDFLAG) @XTRA_CRUFT_SH_LDFLAGS@
|  
|  libcruft_la_LIBADD = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)

One more try.  Here is the current complete patch.  Please let me know
if this works for you.

Thanks,

jwe

# HG changeset patch
# User John W. Eaton <address@hidden>
# Date 1258137155 18000
# Node ID 2fc0d63f4c5d963d868b734f2c2fe9b8d5af35ce
# Parent  7c211d0091d923e74f684ac82bf09d0ec02bd55c
restore rules to create libcruft/cruft.def

diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-12  John W. Eaton  <address@hidden>
+
+       * configure.ac (AC_CONFIG_FILES): Also generate libcruft/mkf77def.
+
 2009-11-11  John W. Eaton  <address@hidden>
 
        * acinclude.m4 (OCTAVE_IEEE754_DATA_FORMAT): Fail if IEEE 754
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -2149,6 +2149,7 @@
   doc/refcard/Makefile
   examples/Makefile
   libcruft/Makefile
+  libcruft/mkf77def
   liboctave/Makefile
   scripts/Makefile
   src/Makefile
diff --git a/libcruft/ChangeLog b/libcruft/ChangeLog
--- a/libcruft/ChangeLog
+++ b/libcruft/ChangeLog
@@ -1,3 +1,11 @@
+2009-11-13  John W. Eaton  <address@hidden>
+
+       * Makefile.am: Restore rules for building cruft.def.
+       (libcruft_la_LDFLAGS): Also append @address@hidden
+       (libcruft_la_DEPENDENCIES): New variable.
+       * mkf77def.in: Use @VAR@ instead of %VAR% substitutions.
+       Process srcdir plus list of files instead of working as a filter.
+
 2009-11-10  John W. Eaton  <address@hidden>
 
        * blas, lapack: Remove directories and all files.
diff --git a/libcruft/Makefile.am b/libcruft/Makefile.am
--- a/libcruft/Makefile.am
+++ b/libcruft/Makefile.am
@@ -29,10 +29,13 @@
 
 libcruft_la_SOURCES =
 
-libcruft_la_LDFLAGS = -release $(version) $(NO_UNDEFINED_LDFLAG)
+libcruft_la_LDFLAGS = \
+  -release $(version) $(NO_UNDEFINED_LDFLAG) @XTRA_CRUFT_SH_LDFLAGS@
 
 libcruft_la_LIBADD = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
 
+libcruft_la_DEPENDENCIES = cruft.def
+
 octinclude_HEADERS =
 
 EXTRA_DIST = ChangeLog STOP.patch mkf77def.in
@@ -52,3 +55,8 @@
 include slatec-err/module.mk
 include slatec-fn/module.mk
 include villad/module.mk
+
+cruft.def: $(libcruft_la_SOURCES) $(TOPDIR)/libcruft/mkf77def
+       chmod a+rx mkf77def
+       ./mkf77def $(srcdir) $(libcruft_la_SOURCES) > address@hidden
+       mv address@hidden $@
diff --git a/libcruft/mkf77def.in b/libcruft/mkf77def.in
old mode 100644
new mode 100755
--- a/libcruft/mkf77def.in
+++ b/libcruft/mkf77def.in
@@ -21,9 +21,9 @@
 SED=${SED:-'sed'}
 AWK=${AWK:-'awk'}
 
-F77_TOLOWER=%F77_APPEND_UNDERSCORE%
-F77_APPEND_UNDERSCORE=%F77_APPEND_UNDERSCORE%
-F77_APPEND_EXTRA_UNDERSCORE=%F77_APPEND_EXTRA_UNDERSCORE%
+F77_TOLOWER="@F77_APPEND_UNDERSCORE@"
+F77_APPEND_UNDERSCORE="@F77_APPEND_UNDERSCORE@"
+F77_APPEND_EXTRA_UNDERSCORE="@F77_APPEND_EXTRA_UNDERSCORE@"
 
 if $F77_TOLOWER; then
   case_cmd="tolower";
@@ -43,4 +43,13 @@
   awkcmd="$AWK '{ printf (\"%s%s\n\", tolower (\$0), \"$uscore\"); }'"
 fi
 
-$SED -n -e 'y/ABCDEFGHIJLKMNOPQRSTUVWXYZ/abcdefghijlkmnopqrstuvwxyz/; s/^\(    
  \|    \)[     ]*\(.*function\|subroutine\|entry\)[    ]*\([^  (]*\).*$/\3/p' 
| eval $awkcmd
+if [ $# -gt 1 ]; then
+  srcdir="$1"
+  shift
+fi
+
+echo EXPORTS
+for arg
+do
+  $SED -n -e 'y/ABCDEFGHIJLKMNOPQRSTUVWXYZ/abcdefghijlkmnopqrstuvwxyz/; s/^\(  
    \|  \)[     ]*\(.*function\|subroutine\|entry\)[    ]*\([^  (]*\).*$/\3/p' 
"$srcdir/$arg" | eval $awkcmd
+done

reply via email to

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