Patch to the lis-1.4.11 autotools build system. * use autoconf macros to propagate fortran/c link flags instead of custom build ones * propagate properly CPPFLAGS instead of CFLAGS * remove custom built linking commands * use the target check for testing and * default install only installs the library, not the tests bicatali@gentoo.org diff -Nur lis-1.4.11.orig/configure.in lis-1.4.11/configure.in --- lis-1.4.11.orig/configure.in 2013-07-22 09:38:36.726745408 -0700 +++ lis-1.4.11/configure.in 2013-07-22 13:20:55.976919675 -0700 @@ -526,6 +526,8 @@ fi AC_LANG_PUSH(Fortran 77) AC_PROG_F77([ifort ifc efc xlf95_r xlf90_r xlf_r xlf95 xlf90 xlf ftn frt pgf95 pgf90 pathf95 pathf90 epcf90 f95 fort lf95 gfortran f90 g77]) + AC_F77_LIBRARY_LDFLAGS + AC_F77_DUMMY_MAIN if test "$TARGET" = ""; then if test "$enable_mpi" = "yes"; then AC_CHECK_PROGS(MPIF77, mpxlf95_r mpxlf90_r mpxlf95 mpxlf90 mpifrt cmpifc cmpif90c mpf90 mpif90 hf77 mpxlf_r mpxlf mpf77 mpif77, $F77) diff -Nur lis-1.4.11.orig/src/esolver/Makefile.am lis-1.4.11/src/esolver/Makefile.am --- lis-1.4.11.orig/src/esolver/Makefile.am 2013-07-22 09:38:36.738745738 -0700 +++ lis-1.4.11/src/esolver/Makefile.am 2013-07-22 10:12:47.008883688 -0700 @@ -8,16 +8,5 @@ lis_esolver_si.c \ lis_esolver_rqi.c -AM_CFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/fortran/amg/Makefile.am lis-1.4.11/src/fortran/amg/Makefile.am --- lis-1.4.11.orig/src/fortran/amg/Makefile.am 2013-07-22 09:38:36.736745697 -0700 +++ lis-1.4.11/src/fortran/amg/Makefile.am 2013-07-22 10:13:24.842091465 -0700 @@ -25,25 +25,6 @@ CLEANFILES = *.mod AM_CPPFLAGS = -I$(top_srcdir)/include -FCCOMPILE = $(FC) $(AMDEFS) $(AM_FCFLAGS) $(FCFLAGS) -LTFCCOMPILE = $(LIBTOOL) --mode=compile $(FC) $(AMDEFS) $(AM_FCFLAGS) $(FCFLAGS) -FCLD = $(FC) -FCLINK = $(LIBTOOL) --mode=link $(FCLD) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -PPFCCOMPILE = $(FC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS) -LTPPFCCOMPILE = $(LIBTOOL) --mode=compile $(FC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FCFLAGS) $(FCFLAGS) -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) .NOTPARALLEL: .NO_PARALLEL: diff -Nur lis-1.4.11.orig/src/fortran/Makefile.am lis-1.4.11/src/fortran/Makefile.am --- lis-1.4.11.orig/src/fortran/Makefile.am 2013-07-22 09:38:36.737745719 -0700 +++ lis-1.4.11/src/fortran/Makefile.am 2013-07-22 10:13:42.419187912 -0700 @@ -9,14 +9,3 @@ AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/Makefile.am lis-1.4.11/src/Makefile.am --- lis-1.4.11.orig/src/Makefile.am 2013-07-22 09:38:36.738745738 -0700 +++ lis-1.4.11/src/Makefile.am 2013-07-22 13:29:41.603990154 -0700 @@ -22,7 +22,7 @@ liblis@LIBSUFFIX@_la_LIBADD += fortran/amg/libsaamg.la else if ENABLE_FORTRAN - liblis@LIBSUFFIX@_la_LIBADD += fortran/libfortran.la + liblis@LIBSUFFIX@_la_LIBADD += fortran/libfortran.la $(FLIBS) endif endif liblis@LIBSUFFIX@_la_SOURCES = diff -Nur lis-1.4.11.orig/src/matrix/Makefile.am lis-1.4.11/src/matrix/Makefile.am --- lis-1.4.11.orig/src/matrix/Makefile.am 2013-07-22 09:38:36.739745755 -0700 +++ lis-1.4.11/src/matrix/Makefile.am 2013-07-22 10:14:14.321363119 -0700 @@ -18,16 +18,5 @@ lis_matrix_rco.c \ lis_matrix_vbr.c -AM_CFLAGS = -I$(top_srcdir)/include $(ILIBS) +AM_CPPFLAGS = -I$(top_srcdir)/include $(ILIBS) CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/matvec/Makefile.am lis-1.4.11/src/matvec/Makefile.am --- lis-1.4.11.orig/src/matvec/Makefile.am 2013-07-22 09:38:36.735745673 -0700 +++ lis-1.4.11/src/matvec/Makefile.am 2013-07-22 10:14:33.697469686 -0700 @@ -13,16 +13,5 @@ lis_matvec_vbr.c -AM_CFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/precision/Makefile.am lis-1.4.11/src/precision/Makefile.am --- lis-1.4.11.orig/src/precision/Makefile.am 2013-07-22 09:38:36.735745673 -0700 +++ lis-1.4.11/src/precision/Makefile.am 2013-07-22 10:14:57.337599884 -0700 @@ -4,16 +4,5 @@ lis_precision_matvec.c -AM_CFLAGS = -I$(top_srcdir)/include $(MPFLAG) +AM_CPPFLAGS = -I$(top_srcdir)/include $(MPFLAG) CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/precon/Makefile.am lis-1.4.11/src/precon/Makefile.am --- lis-1.4.11.orig/src/precon/Makefile.am 2013-07-22 09:38:36.735745673 -0700 +++ lis-1.4.11/src/precon/Makefile.am 2013-07-22 10:15:16.666706135 -0700 @@ -12,16 +12,5 @@ lis_precon_ssor.c -AM_CFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/solver/Makefile.am lis-1.4.11/src/solver/Makefile.am --- lis-1.4.11.orig/src/solver/Makefile.am 2013-07-22 09:38:36.737745719 -0700 +++ lis-1.4.11/src/solver/Makefile.am 2013-07-22 10:16:22.575071068 -0700 @@ -17,16 +17,5 @@ lis_solver_sor.c -AM_CFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/system/Makefile.am lis-1.4.11/src/system/Makefile.am --- lis-1.4.11.orig/src/system/Makefile.am 2013-07-22 09:38:36.734745646 -0700 +++ lis-1.4.11/src/system/Makefile.am 2013-07-22 10:16:39.329163621 -0700 @@ -13,16 +13,5 @@ mt19937ar.c -AM_CFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/src/vector/Makefile.am lis-1.4.11/src/vector/Makefile.am --- lis-1.4.11.orig/src/vector/Makefile.am 2013-07-22 09:38:36.737745719 -0700 +++ lis-1.4.11/src/vector/Makefile.am 2013-07-22 10:17:03.722298537 -0700 @@ -4,16 +4,5 @@ lis_vector_opv.c -AM_CFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include CLEANFILES = *.il - -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) diff -Nur lis-1.4.11.orig/test/Makefile.am lis-1.4.11/test/Makefile.am --- lis-1.4.11.orig/test/Makefile.am 2013-07-22 09:38:36.727745436 -0700 +++ lis-1.4.11/test/Makefile.am 2013-07-22 13:31:44.602704495 -0700 @@ -5,15 +5,16 @@ EXTRA_DIST = defs test.sh testmat.mtx testmat2.mtx -testdir = ${prefix}/share/examples/lis +testdir = $(libdir)/lis/examples test_DATA = testmat.mtx testmat2.mtx test_SCRIPTS = defs test.sh -test_PROGRAMS = test1 test2 test3 test4 test5 test6 etest1 etest2 etest3 etest4 etest5 etest6 spmvtest1 spmvtest2 spmvtest3 spmvtest4 spmvtest5 +check_PROGRAMS = test1 test2 test3 test4 test5 test6 etest1 etest2 etest3 etest4 etest5 etest6 spmvtest1 spmvtest2 spmvtest3 spmvtest4 spmvtest5 if ENABLE_FORTRAN - test_PROGRAMS += test1f test4f etest1f etest4f + check_PROGRAMS += test1f test4f etest1f etest4f + LDADD += $(FLIBS) endif test1_SOURCES = test1.c @@ -40,38 +41,11 @@ etest4f_SOURCES = etest4f.F endif -bin_PROGRAMS = lsolve esolve spmvtest1 spmvtest2 spmvtest3 spmvtest4 spmvtest5 +noinst_PROGRAMS = lsolve esolve spmvtest1 spmvtest2 spmvtest3 spmvtest4 spmvtest5 lsolve_SOURCES = test1.c esolve_SOURCES = etest5.c -PPF77COMPILE = $(F77) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FFLAGS) $(FFLAGS) -LTPPF77COMPILE = $(LIBTOOL) --mode=compile --tag=F77 $(F77) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_FFLAGS) $(FFLAGS) -COMPILE = $(CC) $(AMDEFS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(AMDEFS) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) - -if ENABLE_SAAMG - LINK = $(LIBTOOL) --mode=link $(FC) \ - $(AM_LDFLAGS) $(LDFLAGS) $(FCLDFLAGS) -o $@ $(LIBS) $(CLIBS) - F77LINK = $(LIBTOOL) --mode=link $(FC) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ $(LIBS) $(CLIBS) -else -if ENABLE_FORTRAN - LINK = $(LIBTOOL) --mode=link $(FC) \ - $(AM_LDFLAGS) $(LDFLAGS) $(FCLDFLAGS) -o $@ $(LIBS) $(CLIBS) - F77LINK = $(LIBTOOL) --mode=link $(F77) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ $(LIBS) $(CLIBS) -else - LINK = $(LIBTOOL) --mode=link $(CC) $(AM_LDFLAGS) $(LDFLAGS) -o $@ $(LIBS) -endif -endif - CLEANFILES = *.il