annotate src/lapack.mk @ 5531:eae508c12529

Add build rule for build-octave (bug #49503). * src/build-octave.mk: Add new build rule for build-octave which can be used for cross-building binary packages that depend on Octave as a build tool. * dist-files.mk: Add new file to list. * index.html: Add new package to list. * src/of-communications.mk, src/of-image.mk, src/of-mapping.mk, src/of-optiminterp.mk, src/of-sparsersb.mk, src/of-statistics.mk, src/of-windows.mk: Add optional dependency on build-octave. * configure.ac: Add new configure switch "--disable-system-octave" that is needed to build the build-octave package. * Makefile.in: Add variable "USE_SYSTEM_OCTAVE". Exclude build-octave from the default build tools and build it only if a package explicitly depends on it. Display warning about missing native Octave version only if necessary.
author Markus Mützel <markus.muetzel@gmx.de>
date Tue, 08 Sep 2020 23:04:38 +0200
parents 4da893a7b0b9
children d862fd40cc42
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2333
f653602a0500 Rebrand to new project name MXE
Volker Grabsch <vog@notjusthosting.com>
parents: 2142
diff changeset
1 # This file is part of MXE.
2353
99516e73b368 Move doc/index.html -> index.html
Volker Grabsch <vog@notjusthosting.com>
parents: 2349
diff changeset
2 # See index.html for further information.
1376
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1374
diff changeset
3
1374
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
4 PKG := lapack
5245
4da893a7b0b9 * src/lapack.mk: update to v3.9.0, update download url
John Donoghue
parents: 4880
diff changeset
5 $(PKG)_VERSION := 3.9.0
4da893a7b0b9 * src/lapack.mk: update to v3.9.0, update download url
John Donoghue
parents: 4880
diff changeset
6 $(PKG)_CHECKSUM := 0451d180eed2b12b94aaae77e772d7573e87bec4
1385
08b296ec290e cleanup packages: blas cblas lapack metis suitesparse
Volker Grabsch <vog@notjusthosting.com>
parents: 1376
diff changeset
7 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
4880
d40cc91c2355 lapack: update for v3.8.0
John Donoghue
parents: 4734
diff changeset
8 $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
5245
4da893a7b0b9 * src/lapack.mk: update to v3.9.0, update download url
John Donoghue
parents: 4880
diff changeset
9 $(PKG)_URL := https://github.com/Reference-LAPACK/$(PKG)/archive/v$($(PKG)_VERSION).tar.gz
3545
c21ca79d7980 Remove ENABLE_OPEN_BLAS from .mk files and use just to add openblass to the distribution
John Donoghue
parents: 3486
diff changeset
10 $(PKG)_DEPS := blas
3246
0e705514af1b Update lapack so compile correctly with openblas library (when enabled)
John Donoghue <john.donoghue@ieee.org>
parents: 3072
diff changeset
11
3545
c21ca79d7980 Remove ENABLE_OPEN_BLAS from .mk files and use just to add openblass to the distribution
John Donoghue
parents: 3486
diff changeset
12 ifeq ($(MXE_NATIVE_MINGW_BUILD),yes)
4734
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
13 $(PKG)_BLAS_CONFIG_OPTS := -DBLAS_LIBRARIES="$(HOST_BINDIR)/libblas.dll $(HOST_BINDIR)/libxerbla.dll"
3545
c21ca79d7980 Remove ENABLE_OPEN_BLAS from .mk files and use just to add openblass to the distribution
John Donoghue
parents: 3486
diff changeset
14 else
4734
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
15 ifeq ($(MXE_WINDOWS_BUILD),yes)
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
16 $(PKG)_BLAS_CONFIG_OPTS := -DBLAS_LIBRARIES="-L$(HOST_PREFIX)/lib -lblas -lxerbla" -DBLAS_LINKER_FLAGS="-L$(HOST_PREFIX)/lib -lblas -lxerbla"
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
17 $(PKG)_BLAS_LIBS := -lblas -lxerbla
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
18 else
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
19 $(PKG)_BLAS_CONFIG_OPTS := -DBLAS_LIBRARIES="-L$(HOST_PREFIX)/lib -lblas" -DBLAS_LINKER_FLAGS="-L$(HOST_PREFIX)/lib -lblas"
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
20 $(PKG)_BLAS_LIBS := -lblas
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
21 endif
3246
0e705514af1b Update lapack so compile correctly with openblas library (when enabled)
John Donoghue <john.donoghue@ieee.org>
parents: 3072
diff changeset
22 endif
0e705514af1b Update lapack so compile correctly with openblas library (when enabled)
John Donoghue <john.donoghue@ieee.org>
parents: 3072
diff changeset
23
4304
0db33a326eec make --enable-64 the default
John W. Eaton <jwe@octave.org>
parents: 3972
diff changeset
24 ifeq ($(ENABLE_FORTRAN_INT64),yes)
3015
ec6f91539788 initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents: 2997
diff changeset
25 $(PKG)_DEFAULT_INTEGER_8_FLAG := -fdefault-integer-8
ec6f91539788 initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents: 2997
diff changeset
26 endif
ec6f91539788 initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents: 2997
diff changeset
27
1374
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
28 define $(PKG)_UPDATE
2525
4d0f3a9da57e all packages: use $(WGET) portability variable
Tony Theodore <tonyt@logyst.com>
parents: 2464
diff changeset
29 $(WGET) -q -O- 'http://www.netlib.org/lapack/' | \
1551
906b674321d5 package lapack: fix update macro
Mark Brand <mabrand@mabrand.nl>
parents: 1499
diff changeset
30 $(SED) -n 's_.*>LAPACK, version \([0-9]\.[0-9]\.[0-9]\).*_\1_ip' | \
1374
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
31 head -1
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
32 endef
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
33
3025
dea92be54fc8 Updated lapack for additional native mingw options
John Donoghue <john.donoghue@ieee.org>
parents: 3023
diff changeset
34 ifeq ($(MXE_NATIVE_MINGW_BUILD),yes)
3072
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
35 define $(PKG)_BUILD
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
36 cd '$(1)' && \
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
37 cp INSTALL/make.inc.gfortran make.inc && \
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
38 sed -i -e 's/\(FORTRAN[ ]*\)=.*/\1= $(MXE_F77)/' \
3282
0f01d4dc9644 * src/lapack.mk: replace LOADER variable for MSVC compilation.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3246
diff changeset
39 -e 's/\(LOADER[ ]*\)=.*/\1= $(MXE_F77)/' \
3072
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
40 -e 's/\(CC[ ]*\)=.*/\1= $(MXE_CC)/' \
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
41 -e 's/\(CFLAGS[ ]*\)=.*/\1= -O2/' make.inc
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
42
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
43 $(MAKE) -C '$(1)' -j '$(JOBS)' VERBOSE=1 lapacklib
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
44
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
45 if [ $(BUILD_SHARED) = yes ]; then \
4734
80461a9e516c override default xerbla with version from Octave
John W. Eaton <jwe@octave.org>
parents: 4416
diff changeset
46 $(MAKE_SHARED_FROM_STATIC) --ar '$(MXE_AR)' --ld '$(MXE_F77)' '$(1)/liblapack.a' --install '$(INSTALL)' --libdir '$(HOST_LIBDIR)' --bindir '$(HOST_BINDIR)' $($(PKG)_BLAS_LIBS); \
3072
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
47 fi
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
48
3972
40b0b14d7eef lapack: combine native mingw, msvc rules
John Donoghue
parents: 3690
diff changeset
49 $(INSTALL) -d '$(HOST_LIBDIR)/pkgconfig'
3072
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
50 $(SED) -e 's/@LAPACK_VERSION@/$($(PKG)_VERSION)/' \
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
51 -e 's,@prefix@,$(HOST_PREFIX),' \
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
52 -e 's,@libdir@,$${prefix}/lib,' '$(1)/lapack.pc.in' > '$(1)/lapack.pc'
3972
40b0b14d7eef lapack: combine native mingw, msvc rules
John Donoghue
parents: 3690
diff changeset
53 $(INSTALL) '$(1)/lapack.pc' '$(HOST_LIBDIR)/pkgconfig/'
3072
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
54
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
55 endef
050e922d4003 [MSVC] enable LAPACK compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents: 3048
diff changeset
56 else
1374
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
57 define $(PKG)_BUILD
4416
4fcca3aafbd4 lapack: update to v3.7.1
John D
parents: 4304
diff changeset
58 mkdir '$(1)/build'
4fcca3aafbd4 lapack: update to v3.7.1
John D
parents: 4304
diff changeset
59 cd '$(1)/build' && cmake \
2142
276f0c6d3cca packages cgal, eigen, lapack: use CMAKE_TOOLCHAIN_FILE
Tony Theodore <tonyt@logyst.com>
parents: 2113
diff changeset
60 -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2788
diff changeset
61 -DCMAKE_AR='$(MXE_AR)' \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2788
diff changeset
62 -DCMAKE_RANLIB='$(MXE_RANLIB)' \
3015
ec6f91539788 initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents: 2997
diff changeset
63 -DCMAKE_Fortran_FLAGS='$($(PKG)_DEFAULT_INTEGER_8_FLAG)' \
4416
4fcca3aafbd4 lapack: update to v3.7.1
John D
parents: 4304
diff changeset
64 -DBUILD_DEPRECATED=ON \
4fcca3aafbd4 lapack: update to v3.7.1
John D
parents: 4304
diff changeset
65 -DBUILD_SHARED_LIBS=$(if $(findstring yes,$(BUILD_SHARED)),ON,OFF) \
3246
0e705514af1b Update lapack so compile correctly with openblas library (when enabled)
John Donoghue <john.donoghue@ieee.org>
parents: 3072
diff changeset
66 $($(PKG)_BLAS_CONFIG_OPTS) \
4416
4fcca3aafbd4 lapack: update to v3.7.1
John D
parents: 4304
diff changeset
67 $(1)
4fcca3aafbd4 lapack: update to v3.7.1
John D
parents: 4304
diff changeset
68 $(MAKE) -C '$(1)/build/SRC' -j '$(JOBS)' VERBOSE=1 install DESTDIR='$(3)'
1374
32a1331a3faf new packages: blas cblas lapack
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
69 endef
3025
dea92be54fc8 Updated lapack for additional native mingw options
John Donoghue <john.donoghue@ieee.org>
parents: 3023
diff changeset
70 endif