[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gnulib and automake
From: |
David Grundberg |
Subject: |
Re: gnulib and automake |
Date: |
Mon, 09 Nov 2009 15:25:22 +0100 |
User-agent: |
Thunderbird 2.0.0.21 (X11/20090302) |
John W. Eaton wrote:
On 6-Nov-2009, Benjamin Lindner wrote:
| Ok, now make is stopping at the following error:
|
| ln -s .libs/`sed -n -e "s/dlname='\([^']*\)'/\1/p" <
| DLD-FUNCTIONS/__convn__.la` DLD-FUNCTIONS/__convn__.oct
| ln: creating symbolic link `DLD-FUNCTIONS/__convn__.oct' to
| `.libs/__convn__-0.dll': No such file or directory
| make[3]: *** [DLD-FUNCTIONS/__convn__.oct] Error 1
| make[3]: Leaving directory
| `/octmgw32/octave/.build_mingw32_octave-tip-automake-4_gcc-4.4.0-dw2/src'
|
| In my build directrory I have
| .build/src/.libs/
| and
| .build/src/DLD-FUNCTION/.libs/
|
| and the dld-function shared libs are located in the latter (while
| liboctinterp.dll is found in the former diretctory)
| So in my case, since the makefile is executed in the src/ directory
| the ln command should probably read
|
| ln -s DLD-FUNCTIONS/.libs/`sed -n -e "s/dlname='\([^']*\)'/\1/p" <
| DLD-FUNCTIONS/__convn__.la` DLD-FUNCTIONS/__convn__.oct
|
| I don't know if this is now a mingw speciality of libtool to put the
| libraries there.
On my system, running the command
$(LN_S) .libs/foo.dll DLD-FUNCTIONS/foo.oct
in the parent of the DLD-FUNCTIONS directory creates a symbolic link
in the DLD-FUNCTIONS directory with the name __convn__.oct that points
to the file .libs/foo.dll.
Ah, but Windows doesn't have symbolic links and $(LN_S) is just cp, so
I guess this fails. OK, I think what we need to do is
cd DLD-FUNCTIONS && $(LN_S) .libs/foo.dll foo.oct
so that it will work correctly with either cp or "ln -s". I've made a
change that should do this correctly now. The updated versinon of my
patch is now on http://jweaton.org/automake-diffs.gz. This version of
the patch includes all the other changes I made on Friday.
Thanks,
jwe
Hi jwe,
I made some changes on top of automake-diffs in order to build
liboctave/ and src/.
amd.patch is just a rewrite of an earlier changeset that fixes a
configure test on my setup.
lt-flags.patch are some changes I made while compiling against ARPACK,
SparseSuite, qrupdate and FFTW for liboctave/. It fixes the convhulln
typo in src/.
Best regards,
David
diff --git a/liboctave/Makefile.am b/liboctave/Makefile.am
--- a/liboctave/Makefile.am
+++ b/liboctave/Makefile.am
@@ -494,10 +494,10 @@
LINK_DEPS = \
$(RLD_FLAG) \
../libcruft/libcruft.la \
- $(SPARSE_LDFLAGS) $(SPARSE_XLIBS) \
+ $(SPARSE_XLIBS) \
$(ARPACK_LIBS) \
$(QRUPDATE_LIBS) \
- $(FFTW_LDFLAGS) $(FFTW_XLIBS) \
+ $(FFTW_XLIBS) \
$(LAPACK_LIBS) $(BLAS_LIBS) \
$(READLINE_LIBS) $(TERM_LIBS) \
$(LIBGLOB) $(REGEX_LIBS) $(DL_LIBS) \
@@ -511,7 +511,17 @@
liboctave_la_LIBADD = $(LINK_DEPS)
-liboctave_la_LDFLAGS = -release $(version)
+liboctave_la_LDFLAGS = -release $(version) \
+ $(SPARSE_XLDFLAGS) \
+ $(ARPACK_LDFLAGS) \
+ $(QRUPDATE_LDFLAGS) \
+ $(FFTW_XLDFLAGS)
+
+liboctave_la_CPPFLAGS = \
+ $(SPARSE_XCPPFLAGS) \
+ $(FFTW_XCPPFLAGS) \
+ $(ARPACK_CPPFLAGS) \
+ $(AM_CPPFLAGS)
octinclude_HEADERS = \
$(INCS) \
@@ -538,46 +548,6 @@
$(AWK) -f $(srcdir)/mk-ops.awk prefix=mx make_inclusive_header=mx-ops.h
$(srcdir)/mx-ops > address@hidden
$(simple_move_if_change_rule)
-CSparse.d CSparse.df pic/CSparse.o CSparse.o: CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-dSparse.d dSparse.df pic/dSparse.o dSparse.o: CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-SparseCmplxLU.d SparseCmplxLU.df pic/SparseCmplxLU.o SparseCmplxLU.o: \
- CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-SparsedbleLU.d SparsedbleLU.df pic/SparsedbleLU.o SparsedbleLU.o: \
- CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-SparseCmplxQR.d SparseCmplxQR.df pic/SparseCmplxQR.o SparseCmplxQR.o: \
- CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-SparsedbleQR.d SparsedbleQR.df pic/SparsedbleQR.o SparsedbleQR.o: \
- CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-SparseCmplxCHOL.d SparseCmplxCHOL.df pic/SparseCmplxCHOL.o SparseCmplxCHOL.o: \
- CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-SparsedbleCHOL.d SparsedbleCHOL.df pic/SparsedbleCHOL.o SparsedbleCHOL.o: \
- CPPFLAGS += $(SPARSE_CPPFLAGS)
-
-CMatrix.d CMatrix.df pic/CMatrix.o CMatrix.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-CNDArray.d CNDArray.df pic/CNDArray.o CNDArray.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-dMatrix.d dMatrix.df pic/dMatrix.o dMatrix.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-dNDArray.d dNDArray.df pic/dNDArray.o dNDArray.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-fCMatrix.d fCMatrix.df pic/fCMatrix.o fCMatrix.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-fCNDArray.d fCNDArray.df pic/fCNDArray.o fCNDArray.o: CPPFLAGS +=
$(FFTW_CPPFLAGS)
-
-fMatrix.d fMatrix.df pic/fMatrix.o fMatrix.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-fNDArray.d fNDArray.df pic/fNDArray.o fNDArray.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
-oct-fftw.d oct-fftw.df pic/oct-fftw.o oct-fftw.o: CPPFLAGS += $(FFTW_CPPFLAGS)
-
distclean-local maintainer-clean-local:
rm -f $(BUILT_INCS) $(BUILT_LIBOCTAVE_CXX_SOURCES)
.PHONY: distclean-local maintainer-clean-local
diff --git a/src/Makefile.am b/src/Makefile.am
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -724,7 +724,7 @@
DLD_FUNCTIONS_lib__magick_read___la_LIBADD = $(OCT_LINK_DEPS)
$(MAGICK_LDFLAGS) $(MAGICK_LIBS)
DLD-FUNCTIONS/convhull.df: CPPFLAGS += $(QHULL_CPPFLAGS)
-DLD_FUNCTIONS_libconvhull_la_CPPFLAGS = $(AM_CPPFLAGS) $(QHULL_CPPFLAGS)
+DLD_FUNCTIONS_libconvhulln_la_CPPFLAGS = $(AM_CPPFLAGS) $(QHULL_CPPFLAGS)
DLD_FUNCTIONS_libconvhulln_la_LIBADD = $(OCT_LINK_DEPS) $(QHULL_LDFLAGS)
$(QHULL_LIBS)
DLD-FUNCTIONS/__delaunayn__.df: CPPFLAGS += $(QHULL_CPPFLAGS)
Miscellaneous build fixes
diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,10 @@
2009-10-29 Thomas Treichl <address@hidden>
* configure.in: Add support for dlopen on Mac systems.
+
+2009-10-21 David Grundberg <address@hidden>
+
+ * configure.ac: Use AMD_CPPFLAGS while checking for UMFPACK.
2009-10-20 Jaroslav Hajek <address@hidden>
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -990,12 +990,15 @@
# Check for UMFPACK library.
save_LIBS="$LIBS"
+save_CPPFLAGS="$CPPFLAGS"
LIBS="$AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS"
+CPPFLAGS="$AMD_CPPFLAGS $CPPFLAGS"
OCTAVE_CHECK_LIBRARY(umfpack, UMFPACK,
[UMFPACK not found. This will result in some lack of functionality for
sparse matrices.],
[suitesparse/umfpack.h ufsparse/umfpack.h umfpack/umfpack.h umfpack.h],
[umfpack_zi_get_determinant],
[], [don't use UMFPACK, disable some sparse functionality])
+CPPFLAGS="$save_CPPFLAGS"
LIBS="$save_LIBS"
if test -z "$UMFPACK_LIBS"; then
- Re: gnulib and automake, (continued)
- Re: gnulib and automake, John W. Eaton, 2009/11/06
- Re: gnulib and automake, Benjamin Lindner, 2009/11/06
- Re: gnulib and automake, John W. Eaton, 2009/11/06
- Re: gnulib and automake, Benjamin Lindner, 2009/11/06
- Re: gnulib and automake, Benjamin Lindner, 2009/11/06
- Re: gnulib and automake, John W. Eaton, 2009/11/07
- Re: gnulib and automake,
David Grundberg <=
- Re: gnulib and automake, John W. Eaton, 2009/11/09
- Re: gnulib and automake, John W. Eaton, 2009/11/09
- Re: gnulib and automake, Benjamin Lindner, 2009/11/09
- Re: gnulib and automake, Thomas Treichl, 2009/11/10
- Re: gnulib and automake, David Grundberg, 2009/11/10
- Re: gnulib and automake, Michael Godfrey, 2009/11/10
- Re: gnulib and automake, Benjamin Lindner, 2009/11/09
- Re: gnulib and automake, John W. Eaton, 2009/11/10
- Re: gnulib and automake, Benjamin Lindner, 2009/11/10
- Re: gnulib and automake, John W. Eaton, 2009/11/10