Mercurial > mxe-octave
annotate src/octave.mk @ 3346:e9741f369ee4 release
octave 3.8.0-rc1
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 06 Dec 2013 23:02:15 -0500 |
parents | b251f4358147 |
children | cfcbe03c9160 |
rev | line source |
---|---|
2862
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
1 # This file is part of MXE. |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
2 # See index.html for further information. |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
3 |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
4 PKG := octave |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
5 $(PKG)_IGNORE := |
3346 | 6 $(PKG)_CHECKSUM := 030648fde42548f28a33e8bad0a281a4dd1141c8 |
2874
890aa60f7b87
Temporary Octave patch file, improve Octave config and build.
John W. Eaton <jwe@octave.org>
parents:
2873
diff
changeset
|
7 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) |
2862
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
8 $(PKG)_FILE := octave-$($(PKG)_VERSION).tar.gz |
2931
5f923fdabefe
update to octave 3.7.1 snapshot
John W. Eaton <jwe@octave.org>
parents:
2914
diff
changeset
|
9 $(PKG)_URL := ftp://alpha.gnu.org/gnu/octave/$($(PKG)_FILE) |
3208
1080856f48c4
new configure option: --enable-system-fontconfig
John W. Eaton <jwe@octave.org>
parents:
3153
diff
changeset
|
10 ifeq ($(USE_SYSTEM_FONTCONFIG),no) |
1080856f48c4
new configure option: --enable-system-fontconfig
John W. Eaton <jwe@octave.org>
parents:
3153
diff
changeset
|
11 $(PKG)_FONTCONFIG := fontconfig |
1080856f48c4
new configure option: --enable-system-fontconfig
John W. Eaton <jwe@octave.org>
parents:
3153
diff
changeset
|
12 endif |
3276 | 13 $(PKG)_DEPS := arpack curl fftw fltk $($(PKG)_FONTCONFIG) gl2ps glpk gnuplot graphicsmagick hdf5 lapack pcre pstoedit qhull qrupdate qscintilla qt readline suitesparse texinfo zlib |
3043
cbfe5d38ff2c
use configure script to generate Makefile
John W. Eaton <jwe@octave.org>
parents:
3031
diff
changeset
|
14 ifeq ($(ENABLE_JIT),yes) |
cbfe5d38ff2c
use configure script to generate Makefile
John W. Eaton <jwe@octave.org>
parents:
3031
diff
changeset
|
15 $(PKG)_DEPS += llvm |
3333
4372645ff7e3
Add --disable-java option to configure.
Rik <rik@octave.org>
parents:
3327
diff
changeset
|
16 $(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS := --enable-jit |
3302
3be843f23263
Explicitly disable jit if not jit not enabled
John Donoghue <john.donoghue@ieee.org>
parents:
3276
diff
changeset
|
17 else |
3334
324937497c32
Remove 'remove' from JIT disable option
John Donoghue <john.donoghue@ieee.org>
parents:
3333
diff
changeset
|
18 $(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS := --disable-jit |
3333
4372645ff7e3
Add --disable-java option to configure.
Rik <rik@octave.org>
parents:
3327
diff
changeset
|
19 endif |
4372645ff7e3
Add --disable-java option to configure.
Rik <rik@octave.org>
parents:
3327
diff
changeset
|
20 |
4372645ff7e3
Add --disable-java option to configure.
Rik <rik@octave.org>
parents:
3327
diff
changeset
|
21 ifeq ($(ENABLE_JAVA),no) |
4372645ff7e3
Add --disable-java option to configure.
Rik <rik@octave.org>
parents:
3327
diff
changeset
|
22 $(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS := --disable-java |
3043
cbfe5d38ff2c
use configure script to generate Makefile
John W. Eaton <jwe@octave.org>
parents:
3031
diff
changeset
|
23 endif |
2862
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
24 |
3068
fb0836e4a677
Add --enable-openblas option to configure
John Donoghue <john.donoghue@ieee.org>
parents:
3056
diff
changeset
|
25 ifeq ($(ENABLE_OPENBLAS),yes) |
fb0836e4a677
Add --enable-openblas option to configure
John Donoghue <john.donoghue@ieee.org>
parents:
3056
diff
changeset
|
26 $(PKG)_DEPS += openblas |
fb0836e4a677
Add --enable-openblas option to configure
John Donoghue <john.donoghue@ieee.org>
parents:
3056
diff
changeset
|
27 $(PKG)_BLAS_OPTION := --with-blas=openblas |
3069
076acecb9c21
Update octave dependancies that use blas to also use openblas
John Donoghue <john.donoghue@ieee.org>
parents:
3068
diff
changeset
|
28 else |
076acecb9c21
Update octave dependancies that use blas to also use openblas
John Donoghue <john.donoghue@ieee.org>
parents:
3068
diff
changeset
|
29 $(PKG)_DEPS += blas |
3068
fb0836e4a677
Add --enable-openblas option to configure
John Donoghue <john.donoghue@ieee.org>
parents:
3056
diff
changeset
|
30 endif |
fb0836e4a677
Add --enable-openblas option to configure
John Donoghue <john.donoghue@ieee.org>
parents:
3056
diff
changeset
|
31 |
2997 | 32 ifeq ($(MXE_NATIVE_BUILD),yes) |
3056
772aedf5f402
octave.mk: delete unnecessary quotes around LD_LIBRARY_PATH
John W. Eaton <jwe@octave.org>
parents:
3048
diff
changeset
|
33 $(PKG)_CONFIGURE_ENV := LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) |
3015
ec6f91539788
initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents:
3014
diff
changeset
|
34 ifeq ($(ENABLE_64),yes) |
ec6f91539788
initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents:
3014
diff
changeset
|
35 $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 |
ec6f91539788
initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents:
3014
diff
changeset
|
36 endif |
2997 | 37 else |
38 ifeq ($(MXE_SYSTEM),mingw) | |
39 $(PKG)_CROSS_CONFIG_OPTIONS := \ | |
3031
951da75fd09c
improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents:
3015
diff
changeset
|
40 FLTK_CONFIG='$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)fltk-config' \ |
2997 | 41 gl_cv_func_gettimeofday_clobber=no |
3015
ec6f91539788
initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents:
3014
diff
changeset
|
42 ifeq ($(ENABLE_64),yes) |
ec6f91539788
initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents:
3014
diff
changeset
|
43 $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 ax_blas_f77_func_ok=yes |
ec6f91539788
initial support for --enable-64
John W. Eaton <jwe@octave.org>
parents:
3014
diff
changeset
|
44 endif |
2997 | 45 endif |
46 endif | |
47 | |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
48 ifeq ($(MXE_SYSTEM),msvc) |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
49 $(PKG)_PREFIX := '$(HOST_PREFIX)/local/$($(PKG)_SUBDIR)' |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
50 # - Enable atomic refcount (required for QtHandles) |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
51 # - Skip configure test for pow and sqrt, MSVC fails to compile them |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
52 # because it uses intrinsics (with -O2 flag) and bump on the fake |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
53 # "char FUNC()" forward declaration. |
3327
5b38e99bbfe4
* src/octave.mk: Disable some warnings for MSVC build.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3323
diff
changeset
|
54 # - Override CFLAGS and CXXFLAGS to disable some warnings. |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
55 $(PKG)_EXTRA_CONFIGURE_OPTIONS := \ |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
56 --enable-atomic-refcount \ |
3327
5b38e99bbfe4
* src/octave.mk: Disable some warnings for MSVC build.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3323
diff
changeset
|
57 ac_cv_func_pow=yes ac_cv_func_sqrt=yes \ |
5b38e99bbfe4
* src/octave.mk: Disable some warnings for MSVC build.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3323
diff
changeset
|
58 CFLAGS='-O2 -wd4244 -wd4003 -wd4005 -wd4068' \ |
5b38e99bbfe4
* src/octave.mk: Disable some warnings for MSVC build.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3323
diff
changeset
|
59 CXXFLAGS='-O2 -wd4244 -wd4003 -wd4005 -wd4068' |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
60 else |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
61 $(PKG)_PREFIX := '$(HOST_PREFIX)' |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
62 $(PKG)_EXTRA_CONFIGURE_OPTIONS := \ |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
63 LDFLAGS='-Wl,-rpath-link,$(HOST_LIBDIR) -L$(HOST_LIBDIR)' |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
64 endif |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
65 |
2862
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
66 define $(PKG)_UPDATE |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
67 echo 'Warning: Updates are temporarily disabled for package octave.' >&2; |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
68 echo $(octave_VERSION) |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
69 endef |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
70 |
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
71 define $(PKG)_BUILD |
2874
890aa60f7b87
Temporary Octave patch file, improve Octave config and build.
John W. Eaton <jwe@octave.org>
parents:
2873
diff
changeset
|
72 mkdir '$(1)/.build' |
2953
9ee646095047
temporary fix for mkoctfile variables
John W. Eaton <jwe@octave.org>
parents:
2952
diff
changeset
|
73 cd '$(1)' && autoreconf -W none |
2997 | 74 cd '$(1)/.build' && $($(PKG)_CONFIGURE_ENV) '$(1)/configure' \ |
3223
94339f5a27fe
octave.mk: also pass CONFIGURE_LDFLAGS to configure
John W. Eaton <jwe@octave.org>
parents:
3208
diff
changeset
|
75 $(CONFIGURE_CPPFLAGS) $(CONFIGURE_LDFLAGS) \ |
3013
bcc26ffe9a0f
use variable for --host and --build configure arguments
John W. Eaton <jwe@octave.org>
parents:
3012
diff
changeset
|
76 $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \ |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
77 --prefix='$($(PKG)_PREFIX)' \ |
3068
fb0836e4a677
Add --enable-openblas option to configure
John Donoghue <john.donoghue@ieee.org>
parents:
3056
diff
changeset
|
78 $($(PKG)_BLAS_OPTION) \ |
3323
808b2c61eccb
octave.mk: Replace tabs with spaces for consistent alignment.
Rik <rik@octave.org>
parents:
3318
diff
changeset
|
79 $($(PKG)_CROSS_CONFIG_OPTIONS) \ |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
80 $($(PKG)_ENABLE_64_CONFIGURE_OPTIONS) \ |
3333
4372645ff7e3
Add --disable-java option to configure.
Rik <rik@octave.org>
parents:
3327
diff
changeset
|
81 $($(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS) \ |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
82 $($(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS) \ |
3323
808b2c61eccb
octave.mk: Replace tabs with spaces for consistent alignment.
Rik <rik@octave.org>
parents:
3318
diff
changeset
|
83 $($(PKG)_EXTRA_CONFIGURE_OPTIONS) \ |
808b2c61eccb
octave.mk: Replace tabs with spaces for consistent alignment.
Rik <rik@octave.org>
parents:
3318
diff
changeset
|
84 PKG_CONFIG='$(MXE_PKG_CONFIG)' \ |
808b2c61eccb
octave.mk: Replace tabs with spaces for consistent alignment.
Rik <rik@octave.org>
parents:
3318
diff
changeset
|
85 PKG_CONFIG_PATH='$(HOST_LIBDIR)/pkgconfig' \ |
3341
b251f4358147
[MSVC] auto-export gnulib symbols from liboctave.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3334
diff
changeset
|
86 && $(CONFIGURE_POST_HOOK) |
2874
890aa60f7b87
Temporary Octave patch file, improve Octave config and build.
John W. Eaton <jwe@octave.org>
parents:
2873
diff
changeset
|
87 |
2936
fc124629c527
backout changeset 0adbff7dec24
John W. Eaton <jwe@octave.org>
parents:
2935
diff
changeset
|
88 ## We want both of these install steps so that we install in the |
fc124629c527
backout changeset 0adbff7dec24
John W. Eaton <jwe@octave.org>
parents:
2935
diff
changeset
|
89 ## location set by the configure --prefix option, and the other |
fc124629c527
backout changeset 0adbff7dec24
John W. Eaton <jwe@octave.org>
parents:
2935
diff
changeset
|
90 ## in a directory tree that will have just Octave files. |
3318
2640cb06f42d
* src/octave.mk: Support file list by using DESTDIR.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3315
diff
changeset
|
91 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install DESTDIR='$(3)' |
3144
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
92 if [ $(MXE_SYSTEM) != msvc ]; then \ |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
93 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(TOP_DIR)/octave install; \ |
433d1bb3cafb
[MSVC] enable octave compilation
Michael Goffioul <michael.goffioul@gmail.com>
parents:
3069
diff
changeset
|
94 fi |
2862
e93d77b61f17
Include support for building Octave.
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
95 endef |
2980
2cf09b449d88
readline patches for windows from goffioul
John W. Eaton <jwe@octave.org>
parents:
2975
diff
changeset
|
96 |