iucar / rpms / freefem++

Forked from rpms/freefem++ 2 years ago
Clone
Blob Blame History Raw
From ed2ef3f297b14bd0ce1c612c258f0f62880582f3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ralf=20Cors=C3=A9pius?= <corsepiu@fedoraproject.org>
Date: Mon, 8 May 2017 08:47:31 +0200
Subject: [PATCH 1/8] Build fixes.

---
 Makefile.am           | 10 +++++-----
 configure.ac          | 15 ++++++++++++---
 download/Makefile.am  |  1 -
 src/lglib/Makefile.am |  4 ++--
 src/medit/Makefile.am | 22 ++--------------------
 5 files changed, 21 insertions(+), 31 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 352d413..bec6a76 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -41,7 +41,7 @@ examples++-load/load.link \
 examples++-load/cube.msh \
 examples++-load/fig.pgm	examples++-load/lg.pgm \
 ./examples++-mpi/regtests.sh ./examples++-other/speedtest.sh  \
-./download/fftw/Makefile ./download/fftw/Makefile.am \
+./download/fftw/Makefile \
 examples++*/*.[ie]dp  CheckAllEdp \
 examples++-load/ch.pts examples++-load/g.gmesh
 
@@ -166,11 +166,11 @@ clean-local::
 # ----------------------
 install-exec-local::
 	test `uname` != Darwin || $(MAKE) FreeFem++-CoCoa  script/PostInstall.sh 
-	$(mkinstalldirs) -m 755 $(DESTDIR)$(pkgdatadir)/$(VERSION)
+	$(mkinstalldirs) -m 755 $(DESTDIR)$(pkgdatadir)
 	test `uname` != Darwin || $(mkinstalldirs) -m 755 $(DESTDIR)/etc/paths.d/
 	test `uname` != Darwin || $(mkinstalldirs) -m 755 $(DESTDIR)/usr/local/bin
-	tar cvf - $(FF_EXAMPLES_FILES)| (cd $(DESTDIR)$(pkgdatadir)/$(VERSION); tar xvf -)
-	$(INSTALL_SCRIPT) CheckAll CheckAllEdp $(DESTDIR)$(pkgdatadir)/$(VERSION)
+	tar cvf - $(FF_EXAMPLES_FILES)| (cd $(DESTDIR)$(pkgdatadir); tar xvf -)
+	$(INSTALL_SCRIPT) CheckAll CheckAllEdp $(DESTDIR)$(pkgdatadir)
 	$(mkinstalldirs) -m 755 $(DESTDIR)${bindir}
 	test `uname` != Darwin || $(INSTALL_SCRIPT) FreeFem++-CoCoa  $(DESTDIR)${bindir}
 	test `uname` != Darwin ||  echo $(bindir) >$(DESTDIR)/etc/paths.d/FreeFem++
@@ -186,7 +186,7 @@ script/PostInstall.sh:./Makefile script/PostInstall.m4
 ListFiles-natives: .FORCE 
 	test `uname` != Darwin || $(MAKE)  FreeFem++-CoCoa
 	echo $(FF_EXAMPLES_FILES) >$@
-	echo ./download/fftw/Makefile ./download/fftw/Makefile.am  >>$@
+	echo ./download/fftw/Makefile >>$@
 	find .  -name '*.[ei]dp' -o -name '*.h*' -o -name '*.cpp' -o -name '*.pgm'  |egrep  '[.]/examples++' >>$@
 	find .   -name '*.h*' -o -name '*.cpp'  |egrep  '[.]/examples++' >>$@
 List-agl-dylib: src/nw/FreeFem++
diff --git a/configure.ac b/configure.ac
index 85ea505..4fb5779 100644
--- a/configure.ac
+++ b/configure.ac
@@ -67,7 +67,7 @@ m4_define([AC_FF_WHERELIB],
 	    echo "$1 LD $2"  >>$ff_where_lib_conf
 	    ff_WHERE_INC=`AS_DIRNAME(["$3"])`
 	    case "$ff_WHERE_INC" in 
-		/*) echo "$1 INCLUDE -I$ff_WHERE_INC"  >>$ff_where_lib_conf ;;
+		*) echo "$1 INCLUDE -I$ff_WHERE_INC"  >>$ff_where_lib_conf ;;
 	    esac
             ff_where_lib_conf_$1=1
 	fi
@@ -605,7 +605,7 @@ AC_DEFINE_UNQUOTED(VersionFreeFempp,$ff_numver,FreeFem++ version as a float)
 # date is only useful for config-version.h
 
 test "$prefix" = NONE && prefix="$ac_default_prefix"
-ff_prefix_dir="${prefix}/lib/ff++/$VERSION"
+ff_prefix_dir="${libdir}/ff++"
 AC_MSG_CHECKING(prefix dir freefem++  )
 AC_MSG_RESULT($ff_prefix_dir)
 
@@ -1133,6 +1133,14 @@ dnl AC_FF_ADDWHERELIB(tetgen,-ltet,)
 dnl    AC_DEFINE(HAVE_TETGEN,1, tetgen is compute tetrahedralize volume of an enclosed surface)
 dnl fi
 
+# Looking for GMM
+AC_CHECK_HEADERS(gmm/gmm.h,ff_gmm_h=yes,ff_gmm_h=no)
+if test "$ff_gmm_h" = yes
+then
+    AC_FF_ADDWHERELIB(gmm,-DDUMMY,)
+    AC_DEFINE(HAVE_GMM,1,generic C++ template library for sparse, dense and skyline matrices)
+fi
+
 # Looking for the BLAS
 # --------------------
 
@@ -1279,7 +1287,7 @@ then
     # Specific BLAS library location for FreeBSD
     ff_freebsd_blas="-lf2c -lf77blas -latlas -lgslcblas"
     ff_dll_blas=`which  libopenblas.dll`
-    if [ -z "$ff_dll_blas" ] ; then  ff_dll_blas="no"; fi
+    if test -z "$ff_dll_blas" ; then  ff_dll_blas="no"; fi
         #  zmach is in lapack
     # Trying  blas library
     # echo "LIBS =  $LIBS blas --- $ff_blas_ok"
@@ -1975,6 +1983,7 @@ TOOL_DISABLE(pipe,pipe.$DYLIB_SUFFIX)
 TOOL_DISABLE(scotch,scotch.$DYLIB_SUFFIX)
 TOOL_DISABLE(superlu4,SuperLu.$DYLIB_SUFFIX,superlu)
 TOOL_DISABLE(superludist,"complex_SuperLU_DIST_FreeFem.$DYLIB_SUFFIX real_SuperLU_DIST_FreeFem.$DYLIB_SUFFIX dSuperLU_DIST.$DYLIB_SUFFIX")
+TOOL_DISABLE(tetgen,tetgen.$DYLIB_SUFFIX)
 TOOL_DISABLE(umfpack,UMFPACK64.$DYLIB_SUFFIX)
 TOOL_DISABLE(yams,freeyams.$DYLIB_SUFFIX)
 TOOL_DISABLE(pipe,pipe.$DYLIB_SUFFIX)
diff --git a/download/Makefile.am b/download/Makefile.am
index 4beccb5..b5ddf46 100755
--- a/download/Makefile.am
+++ b/download/Makefile.am
@@ -3,7 +3,6 @@
 
 # $Id: Makefile.am,v 1.16 2010/05/06 21:20:38 hecht Exp $
 
-SUBDIRS=blas arpack umfpack  
 EXTRA_DIST= \
 ./nlopt/Make.inc ./nlopt/Makefile \
 ./blacs/BLACS.patch \
diff --git a/src/lglib/Makefile.am b/src/lglib/Makefile.am
index db84354..a4ec741 100644
--- a/src/lglib/Makefile.am
+++ b/src/lglib/Makefile.am
@@ -11,9 +11,9 @@ BUILT_SOURCES=lg.tab.hpp lg.tab.cpp
 # machine (the danger is to generate unnecessary version conflicts) on these automatically generated files
 
 lg.tab.hpp lg.tab.cpp:
-	-rm lg.tab.hpp  lg.tab.cpp lg.tab.cpp.h
+	rm -f lg.tab.hpp  lg.tab.cpp lg.tab.cpp.h
 	bison -dtv -p lg  lg.ypp  -o lg.tab.cpp
-	-mv lg.tab.cpp.h  lg.tab.hpp # pour un  pb entre des versions de bison 
+	mv -f lg.tab.cpp.h  lg.tab.hpp # pour un  pb entre des versions de bison 
 
 libfreefem++.dylib: lg.tab.o ../fflib/libff.a
 	g++ -bundle lg.tab.o  ../fflib/libff.a $(UMFPACKLIB) $(ARPACKLIB) $(BLASLIB) $(LIBS) -o libfreefem++.dylib
diff --git a/src/medit/Makefile.am b/src/medit/Makefile.am
index 039b8fd..e3c49a9 100644
--- a/src/medit/Makefile.am
+++ b/src/medit/Makefile.am
@@ -4,35 +4,17 @@
 CXXLD=$(STATICTOOL) $(CXX)
 
 bin_PROGRAMS=$(MEDITPROG)
-EXTRA_DIST=picking.c 
 EXTRA_PROGRAMS=ffmedit
 ffmedit_SOURCES= animat.c cube.c image.c listnum.c mouse.c persp.c stream.c zaldy2.c bbfile.c dlists.c inmsh2.c		\
 material.c normal.c tiles.c camera.c ellipse.c inout.c medit.c param.c psfile.c transform.c cenrad.c geometry.c		\
 inout_morice.c menus.c parsar.c scene.c util.c clip.c gisfil.c inout_popenbinaire.c mesh.c parsop.c scissor.c vector.c	\
 clipvol.c hash.c items.c mlists.c particle.c sftcpy.c view.c critip.c ilists.c keyboard.c morphing.c path.c status.c	\
-zaldy1.c chrono.h extern.h image.h mesh.h eigenv.h grafic.h medit.h sproto.h
+zaldy1.c chrono.h extern.h image.h mesh.h eigenv.h grafic.h medit.h sproto.h picking.c
 
 
-LDADD=picking.$(OBJEXT) ../libMesh/libMesh.a $(LIBSGLUT) -lm
+LDADD=../libMesh/libMesh.a $(LIBSGLUT) -lm
 AM_CPPFLAGS=-I$(srcdir)/../libMesh
 BUILT_SOURCES=compil.date
 compil.date: $(ffmedit_SOURCES)
 	echo "#define COMPIL " '"' `date` '(with ff++ $(VERSION))''"' > compil.date
 #.PHONY: compil.date
-
-# ALH - during a parallel make, we should make sure that picking.o is not used before being made by a different
-# thread. If I understand things correctly, picking.c should not be compiled with the regular CFLAGS options.
-
-ffmedit_DEPENDENCIES=picking.$(OBJEXT)
-picking.$(OBJEXT):picking.c
-	${CC} -c $< $(CNOFLAGS) -o $@ 
-
-###pinking.no-optffmedit$(EXEEXT):picking.c
-###	rm picking.$(OBJEXT)
-###	$(MAKE) picking.o $(MEDITPROG) CFLAGS="$(CNOFLAGS)"
-###	touch pinking.no-optffmedit$(EXEEXT)
-###pinking.no-opt:picking.c
-###	touch pinking.no-opt
-###clean-local:
-###	-rm pinking.no-opt pinking.no-optffmedit$(EXEEXT)
-
-- 
2.9.4