comparison src/stable-octave.mk @ 3383:6dfbea9a9646

Update stable-octave to 3.8.0 * src/octave.mk: add creation of version file on octave install * src/stable-octave.mk: Merge changes of octave.mk into stable-octave.mk. * index.html: update stable-octave-version to 3.8.0.
author John Donoghue <john.donoghue@ieee.org>
date Wed, 01 Jan 2014 17:42:10 -0500
parents 5ef49fb3299d
children 0182ffc974a1
comparison
equal deleted inserted replaced
3382:d86edd4ec1d6 3383:6dfbea9a9646
1 # This file is part of MXE. 1 # This file is part of MXE.
2 # See index.html for further information. 2 # See index.html for further information.
3 3
4 PKG := stable-octave 4 PKG := stable-octave
5 $(PKG)_IGNORE := 5 $(PKG)_IGNORE :=
6 $(PKG)_CHECKSUM := 4563c3fdb15ac76419f78b8ad8a9b1ba3484a7aa 6 $(PKG)_CHECKSUM := 7dc2736d05fef50e4f7b3e1b9ab83c8287e8f267
7 $(PKG)_SUBDIR := octave-$($(PKG)_VERSION) 7 $(PKG)_SUBDIR := octave-$($(PKG)_VERSION)
8 $(PKG)_FILE := octave-$($(PKG)_VERSION).tar.gz 8 $(PKG)_FILE := octave-$($(PKG)_VERSION).tar.gz
9 $(PKG)_URL := ftp://ftp.gnu.org/gnu/octave/$($(PKG)_FILE) 9 $(PKG)_URL := ftp://ftp.gnu.org/gnu/octave/$($(PKG)_FILE)
10 $(PKG)_DEPS := arpack blas curl fftw fltk fontconfig glpk gnuplot graphicsmagick hdf5 lapack pcre pstoedit qhull qrupdate readline suitesparse texinfo zlib 10 ifeq ($(USE_SYSTEM_FONTCONFIG),no)
11 $(PKG)_FONTCONFIG := fontconfig
12 endif
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
14 ifeq ($(ENABLE_JIT),yes)
15 $(PKG)_DEPS += llvm
16 $(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS := --enable-jit
17 else
18 $(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS := --disable-jit
19 endif
20
21 ifeq ($(ENABLE_JAVA),no)
22 $(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS := --disable-java
23 else
24 ifeq ($(MXE_SYSTEM),mingw)
25 ifeq ($(MXE_NATIVE_BUILD),no)
26 $(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS := \
27 --with-java-homedir="$(HOST_INCDIR)/java" \
28 --with-java-includedir="$(HOST_INCDIR)/java"
29 endif
30 endif
31 endif
32
33 ifeq ($(ENABLE_DOCS),yes)
34 $(PKG)_ENABLE_DOCS_CONFIGURE_OPTIONS := --enable-docs
35 endif
36
37 ifeq ($(ENABLE_OPENBLAS),yes)
38 $(PKG)_DEPS += openblas
39 $(PKG)_BLAS_OPTION := --with-blas=openblas
40 else
41 $(PKG)_DEPS += blas
42 endif
43
44 ifeq ($(MXE_NATIVE_BUILD),yes)
45 $(PKG)_CONFIGURE_ENV := LD_LIBRARY_PATH=$(LD_LIBRARY_PATH)
46 ifeq ($(ENABLE_64),yes)
47 $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64
48 endif
49 else
50 ifeq ($(MXE_SYSTEM),mingw)
51 $(PKG)_CROSS_CONFIG_OPTIONS := \
52 FLTK_CONFIG='$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)fltk-config' \
53 gl_cv_func_gettimeofday_clobber=no
54 ifeq ($(ENABLE_64),yes)
55 $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 ax_blas_f77_func_ok=yes
56 endif
57 endif
58 endif
59
60 ifeq ($(MXE_SYSTEM),msvc)
61 $(PKG)_PREFIX := '$(HOST_PREFIX)/local/$($(PKG)_SUBDIR)'
62 # - Enable atomic refcount (required for QtHandles)
63 # - Skip configure test for pow and sqrt, MSVC fails to compile them
64 # because it uses intrinsics (with -O2 flag) and bump on the fake
65 # "char FUNC()" forward declaration.
66 # - Override CFLAGS and CXXFLAGS to disable some warnings.
67 $(PKG)_EXTRA_CONFIGURE_OPTIONS := \
68 --enable-atomic-refcount \
69 ac_cv_func_pow=yes ac_cv_func_sqrt=yes \
70 CFLAGS='-O2 -wd4244 -wd4003 -wd4005 -wd4068' \
71 CXXFLAGS='-O2 -wd4244 -wd4003 -wd4005 -wd4068'
72 else
73 $(PKG)_PREFIX := '$(HOST_PREFIX)'
74 $(PKG)_EXTRA_CONFIGURE_OPTIONS := \
75 LDFLAGS='-Wl,-rpath-link,$(HOST_LIBDIR) -L$(HOST_LIBDIR)'
76 endif
77
11 78
12 define $(PKG)_UPDATE 79 define $(PKG)_UPDATE
13 echo 'Warning: Updates are temporarily disabled for package octave.' >&2; 80 echo 'Warning: Updates are temporarily disabled for package octave.' >&2;
14 echo $($(PKG)_VERSION) 81 echo $($(PKG)_VERSION)
15 endef 82 endef
16 83
17 define $(PKG)_BUILD 84 define $(PKG)_BUILD
85 # jni install
86 if [[ "$(MXE_SYSTEM)" == "mingw" && "$(MXE_NATIVE_BUILD)" == "no" ]]; then \
87 mkdir -p '$(HOST_INCDIR)/java/include'; \
88 $(WGET) -N http://hg.openjdk.java.net/jdk7u/jdk7u/jdk/raw-file/tip/src/share/javavm/export/jni.h \
89 -O $(HOST_INCDIR)/java/include/jni.h; \
90 mkdir -p '$(HOST_INCDIR)/java/include/win32'; \
91 $(WGET) -N http://hg.openjdk.java.net/jdk7u/jdk7u/jdk/raw-file/tip/src/windows/javavm/export/jni_md.h \
92 -O $(HOST_INCDIR)/java/include/win32/jni_md.h; \
93 fi
94
18 mkdir '$(1)/.build' 95 mkdir '$(1)/.build'
19 cd '$(1)/.build' && '$(1)/configure' \ 96 cd '$(1)' && autoreconf -W none
97 cd '$(1)/.build' && $($(PKG)_CONFIGURE_ENV) '$(1)/configure' \
98 $(CONFIGURE_CPPFLAGS) $(CONFIGURE_LDFLAGS) \
20 $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \ 99 $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \
21 --prefix='$(HOST_PREFIX)' \ 100 --prefix='$($(PKG)_PREFIX)' \
22 FLTK_CONFIG="$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)fltk-config" \ 101 $($(PKG)_BLAS_OPTION) \
23 gl_cv_func_gettimeofday_clobber=no 102 $($(PKG)_CROSS_CONFIG_OPTIONS) \
103 $($(PKG)_ENABLE_64_CONFIGURE_OPTIONS) \
104 $($(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS) \
105 $($(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS) \
106 $($(PKG)_ENABLE_DOCS_CONFIGURE_OPTIONS) \
107 $($(PKG)_EXTRA_CONFIGURE_OPTIONS) \
108 PKG_CONFIG='$(MXE_PKG_CONFIG)' \
109 PKG_CONFIG_PATH='$(HOST_LIBDIR)/pkgconfig' \
110 && $(CONFIGURE_POST_HOOK)
24 111
25 ## We want both of these install steps so that we install in the 112 ## We want both of these install steps so that we install in the
26 ## location set by the configure --prefix option, and the other 113 ## location set by the configure --prefix option, and the other
27 ## in a directory tree that will have just Octave files. 114 ## in a directory tree that will have just Octave files.
28 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install 115 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install DESTDIR='$(3)'
29 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(TOP_DIR)/octave-stable install 116
117 if [ "x$(ENABLE_DOCS)" == "xyes" ]; then \
118 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(3) install-pdf install-html; \
119 fi
120
121 if [ $(MXE_SYSTEM) != msvc ]; then \
122 $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(TOP_DIR)/octave install; \
123 fi
124
125 # create a file with latest installed octave rev in it
126 echo "$($(PKG)_VERSION)" > $(TOP_DIR)/octave/octave-version
127
30 endef 128 endef