mirror of
https://github.com/gentoo-mirror/guru.git
synced 2025-04-21 07:52:21 -04:00
81 lines
2.5 KiB
Diff
81 lines
2.5 KiB
Diff
Description: Use external SLICOT instead of embedded copy
|
|
Author: Sébastien Villemot <sebastien.villemot@ens.fr>
|
|
Forwarded: not-needed
|
|
Reviewed-By: Rafael Laboissière <rafael@debian.org>
|
|
Last-Update: 2021-06-29
|
|
--- a/src/Makefile
|
|
+++ b/src/Makefile
|
|
@@ -22,47 +22,33 @@
|
|
|
|
# TODO: Private oct-files for control package.
|
|
|
|
-# unpack and compile SLICOT library
|
|
-# Note that TG04BX is a custom routine.
|
|
-# It has the extension .fortran such that
|
|
-# it is not deleted by rm *.f when using
|
|
-# the developer makefile makefile_control.m
|
|
-# The other rotuines *.fortan are modified versions
|
|
-# of the original slicot routines.
|
|
-#
|
|
-# MA02ID.f use in its original version is compiled by an
|
|
-# extra command suppressing warnings on indexing errors
|
|
-#
|
|
-slicotlibrary.a: slicot.tar.gz
|
|
- tar -xzf slicot.tar.gz
|
|
- mkdir sltmp
|
|
- mv slicot/src/*.f ./sltmp
|
|
- mv slicot/src_aux/*.f ./sltmp
|
|
- if [ "$(HAVE_DGGES)" = "1" ]; then \
|
|
- echo "copy routines using DGGES"; \
|
|
- cp SB04OD.fortran ./sltmp/SB04OD.f; \
|
|
- cp SG03AD.fortran ./sltmp/SG03AD.f; \
|
|
- cp SG03BD.fortran ./sltmp/SG03BD.f; \
|
|
- fi;
|
|
- cp AB08NX.fortran ./sltmp/AB08NX.f
|
|
- cp AG08BY.fortran ./sltmp/AG08BY.f
|
|
- cp SB01BY.fortran ./sltmp/SB01BY.f
|
|
- cp SB01FY.fortran ./sltmp/SB01FY.f
|
|
- cp SB06ND.fortran ./sltmp/SB06ND.f
|
|
- cp TB01MD.fortran ./sltmp/TB01MD.f
|
|
- cp TB01ND.fortran ./sltmp/TB01ND.f
|
|
- cp TB01ZD.fortran ./sltmp/TB01ZD.f
|
|
- cp TG04BX.fortran ./sltmp/TG04BX.f
|
|
- cp ODLTZM.fortran ./sltmp/ODLTZM.f
|
|
- cp makefile.slicot ./sltmp/makefile
|
|
- cd sltmp; $(MKOCTFILE) -w -c MA02ID.f; rm MA02ID.f; $(MKOCTFILE) -c *.f;
|
|
- $(AR) -rc slicotlibrary.a ./sltmp/*.o
|
|
- rm -rf sltmp slicot
|
|
+sltmp/%.f: %.fortran
|
|
+ mkdir -p sltmp
|
|
+ cp $< $@
|
|
+
|
|
+FORTRAN_SOURCES = \
|
|
+ sltmp/AB08NX.f \
|
|
+ sltmp/AG08BY.f \
|
|
+ sltmp/SB01BY.f \
|
|
+ sltmp/SB01FY.f \
|
|
+ sltmp/SB06ND.f \
|
|
+ sltmp/TB01MD.f \
|
|
+ sltmp/TB01ND.f \
|
|
+ sltmp/TB01ZD.f \
|
|
+ sltmp/TG04BX.f \
|
|
+ sltmp/ODLTZM.f
|
|
+
|
|
+ifeq ($(HAVE_DGGES), 1)
|
|
+FORTRAN_SOURCES += \
|
|
+ sltmp/SB04OD.f \
|
|
+ sltmp/SG03AD.f \
|
|
+ sltmp/SG03BD.f
|
|
+endif
|
|
|
|
# slicot functions
|
|
-__control_slicot_functions__.oct: __control_slicot_functions__.cc common.cc slicotlibrary.a
|
|
- LDFLAGS="$(LDFLAGS)" \
|
|
- $(MKOCTFILE) $(PKG_CXXFLAGS) __control_slicot_functions__.cc common.cc slicotlibrary.a
|
|
+__control_slicot_functions__.oct: __control_slicot_functions__.cc common.cc $(FORTRAN_SOURCES)
|
|
+ LDFLAGS="$(LDFLAGS)" \
|
|
+ $(MKOCTFILE) $(PKG_CXXFLAGS) __control_slicot_functions__.cc common.cc $(FORTRAN_SOURCES) -lslicot
|
|
|
|
# helper functions
|
|
__control_helper_functions__.oct: __control_helper_functions__.cc
|