# HG changeset patch # User John Donoghue # Date 1388616130 18000 # Node ID 6dfbea9a9646deb41dd222ced497ca218ecf4090 # Parent d86edd4ec1d605c53b65e589aacd96f58157202e 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. diff -r d86edd4ec1d6 -r 6dfbea9a9646 index.html --- a/index.html Wed Jan 01 00:05:04 2014 -0500 +++ b/index.html Wed Jan 01 17:42:10 2014 -0500 @@ -2029,7 +2029,7 @@ stable-octave - 3.6.4 + 3.8.0 Octave diff -r d86edd4ec1d6 -r 6dfbea9a9646 src/octave.mk --- a/src/octave.mk Wed Jan 01 00:05:04 2014 -0500 +++ b/src/octave.mk Wed Jan 01 17:42:10 2014 -0500 @@ -121,5 +121,8 @@ if [ $(MXE_SYSTEM) != msvc ]; then \ $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(TOP_DIR)/octave install; \ fi + + # create a file with latest installed octave rev in it + echo "$($(PKG)_VERSION)" > $(TOP_DIR)/octave/octave-version endef diff -r d86edd4ec1d6 -r 6dfbea9a9646 src/stable-octave.mk --- a/src/stable-octave.mk Wed Jan 01 00:05:04 2014 -0500 +++ b/src/stable-octave.mk Wed Jan 01 17:42:10 2014 -0500 @@ -3,11 +3,78 @@ PKG := stable-octave $(PKG)_IGNORE := -$(PKG)_CHECKSUM := 4563c3fdb15ac76419f78b8ad8a9b1ba3484a7aa +$(PKG)_CHECKSUM := 7dc2736d05fef50e4f7b3e1b9ab83c8287e8f267 $(PKG)_SUBDIR := octave-$($(PKG)_VERSION) $(PKG)_FILE := octave-$($(PKG)_VERSION).tar.gz $(PKG)_URL := ftp://ftp.gnu.org/gnu/octave/$($(PKG)_FILE) -$(PKG)_DEPS := arpack blas curl fftw fltk fontconfig glpk gnuplot graphicsmagick hdf5 lapack pcre pstoedit qhull qrupdate readline suitesparse texinfo zlib +ifeq ($(USE_SYSTEM_FONTCONFIG),no) + $(PKG)_FONTCONFIG := fontconfig +endif +$(PKG)_DEPS := arpack curl fftw fltk $($(PKG)_FONTCONFIG) gl2ps glpk gnuplot graphicsmagick hdf5 lapack pcre pstoedit qhull qrupdate qscintilla qt readline suitesparse texinfo zlib +ifeq ($(ENABLE_JIT),yes) + $(PKG)_DEPS += llvm + $(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS := --enable-jit +else + $(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS := --disable-jit +endif + +ifeq ($(ENABLE_JAVA),no) + $(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS := --disable-java +else + ifeq ($(MXE_SYSTEM),mingw) + ifeq ($(MXE_NATIVE_BUILD),no) + $(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS := \ + --with-java-homedir="$(HOST_INCDIR)/java" \ + --with-java-includedir="$(HOST_INCDIR)/java" + endif + endif +endif + +ifeq ($(ENABLE_DOCS),yes) + $(PKG)_ENABLE_DOCS_CONFIGURE_OPTIONS := --enable-docs +endif + +ifeq ($(ENABLE_OPENBLAS),yes) + $(PKG)_DEPS += openblas + $(PKG)_BLAS_OPTION := --with-blas=openblas +else + $(PKG)_DEPS += blas +endif + +ifeq ($(MXE_NATIVE_BUILD),yes) + $(PKG)_CONFIGURE_ENV := LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) + ifeq ($(ENABLE_64),yes) + $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 + endif +else + ifeq ($(MXE_SYSTEM),mingw) + $(PKG)_CROSS_CONFIG_OPTIONS := \ + FLTK_CONFIG='$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)fltk-config' \ + gl_cv_func_gettimeofday_clobber=no + ifeq ($(ENABLE_64),yes) + $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 ax_blas_f77_func_ok=yes + endif + endif +endif + +ifeq ($(MXE_SYSTEM),msvc) + $(PKG)_PREFIX := '$(HOST_PREFIX)/local/$($(PKG)_SUBDIR)' + # - Enable atomic refcount (required for QtHandles) + # - Skip configure test for pow and sqrt, MSVC fails to compile them + # because it uses intrinsics (with -O2 flag) and bump on the fake + # "char FUNC()" forward declaration. + # - Override CFLAGS and CXXFLAGS to disable some warnings. + $(PKG)_EXTRA_CONFIGURE_OPTIONS := \ + --enable-atomic-refcount \ + ac_cv_func_pow=yes ac_cv_func_sqrt=yes \ + CFLAGS='-O2 -wd4244 -wd4003 -wd4005 -wd4068' \ + CXXFLAGS='-O2 -wd4244 -wd4003 -wd4005 -wd4068' +else + $(PKG)_PREFIX := '$(HOST_PREFIX)' + $(PKG)_EXTRA_CONFIGURE_OPTIONS := \ + LDFLAGS='-Wl,-rpath-link,$(HOST_LIBDIR) -L$(HOST_LIBDIR)' +endif + define $(PKG)_UPDATE echo 'Warning: Updates are temporarily disabled for package octave.' >&2; @@ -15,16 +82,47 @@ endef define $(PKG)_BUILD + # jni install + if [[ "$(MXE_SYSTEM)" == "mingw" && "$(MXE_NATIVE_BUILD)" == "no" ]]; then \ + mkdir -p '$(HOST_INCDIR)/java/include'; \ + $(WGET) -N http://hg.openjdk.java.net/jdk7u/jdk7u/jdk/raw-file/tip/src/share/javavm/export/jni.h \ + -O $(HOST_INCDIR)/java/include/jni.h; \ + mkdir -p '$(HOST_INCDIR)/java/include/win32'; \ + $(WGET) -N http://hg.openjdk.java.net/jdk7u/jdk7u/jdk/raw-file/tip/src/windows/javavm/export/jni_md.h \ + -O $(HOST_INCDIR)/java/include/win32/jni_md.h; \ + fi + mkdir '$(1)/.build' - cd '$(1)/.build' && '$(1)/configure' \ + cd '$(1)' && autoreconf -W none + cd '$(1)/.build' && $($(PKG)_CONFIGURE_ENV) '$(1)/configure' \ + $(CONFIGURE_CPPFLAGS) $(CONFIGURE_LDFLAGS) \ $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \ - --prefix='$(HOST_PREFIX)' \ - FLTK_CONFIG="$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)fltk-config" \ - gl_cv_func_gettimeofday_clobber=no + --prefix='$($(PKG)_PREFIX)' \ + $($(PKG)_BLAS_OPTION) \ + $($(PKG)_CROSS_CONFIG_OPTIONS) \ + $($(PKG)_ENABLE_64_CONFIGURE_OPTIONS) \ + $($(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS) \ + $($(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS) \ + $($(PKG)_ENABLE_DOCS_CONFIGURE_OPTIONS) \ + $($(PKG)_EXTRA_CONFIGURE_OPTIONS) \ + PKG_CONFIG='$(MXE_PKG_CONFIG)' \ + PKG_CONFIG_PATH='$(HOST_LIBDIR)/pkgconfig' \ + && $(CONFIGURE_POST_HOOK) ## We want both of these install steps so that we install in the ## location set by the configure --prefix option, and the other ## in a directory tree that will have just Octave files. - $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install - $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(TOP_DIR)/octave-stable install + $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install DESTDIR='$(3)' + + if [ "x$(ENABLE_DOCS)" == "xyes" ]; then \ + $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(3) install-pdf install-html; \ + fi + + if [ $(MXE_SYSTEM) != msvc ]; then \ + $(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(TOP_DIR)/octave install; \ + fi + + # create a file with latest installed octave rev in it + echo "$($(PKG)_VERSION)" > $(TOP_DIR)/octave/octave-version + endef