# HG changeset patch # User John W. Eaton # Date 1483131738 18000 # Node ID 0db33a326eec9fc78c834793a7075b8837617e6e # Parent eac52a8a7822dceec3c41b7e0ec92b271dc6128d make --enable-64 the default new configure option --enable-fortran-int64 diff -r eac52a8a7822 -r 0db33a326eec Makefile.in --- a/Makefile.in Fri Dec 30 22:26:22 2016 -0500 +++ b/Makefile.in Fri Dec 30 16:02:18 2016 -0500 @@ -47,14 +47,15 @@ # binaries that require a 64-bit Windows system. ENABLE_WINDOWS_64 := @ENABLE_WINDOWS_64@ -# Attempt to build Octave and dependencies with 64-bit indexing -# enabled (experimental; requires 64-bit system and compiler). -# Note that 64-bit indexing is NOT required simply because you have -# 64-bit operating system. Building Octave with 64-bit indexing is -# still experimental, so enabling this option is discouraged unless -# you know what you are doing. +# Build Octave with 64-bit indexing enabled (This is the default). ENABLE_64 := @ENABLE_64@ +# Build Fortran (and other) numerical library dependencies with +# 64-bit indexing enabled (experimental; requires 64-bit system and +# compiler). The usual configuration is to build with ENABLE_64 but +# not ENABLE_FORTRAN_INT64. +ENABLE_FORTRAN_INT64 := @ENABLE_FORTRAN_INT64@ + # create binary octave forge tools. # if cross, compiling, this also means we will attempt to create cross mkoctfile ENABLE_BINARY_PACKAGES := @ENABLE_BINARY_PACKAGES@ diff -r eac52a8a7822 -r 0db33a326eec configure.ac --- a/configure.ac Fri Dec 30 22:26:22 2016 -0500 +++ b/configure.ac Fri Dec 30 16:02:18 2016 -0500 @@ -86,18 +86,27 @@ [build a Windows 64 cross compiler; resulting build will work only on 64-bit Windows systems])], [if test "$enableval" = yes; then ENABLE_WINDOWS_64=yes; fi], []) -ENABLE_64=no +ENABLE_64=yes AC_ARG_ENABLE(64, - [AS_HELP_STRING([--enable-64], - [(EXPERIMENTAL) use 64-bit integers for array dimensions and indexing])], - [if test "$enableval" = yes; then ENABLE_64=yes; fi], []) + [AS_HELP_STRING([--disable-64], + [don't use 64-bit integers for array dimensions and indexing])], + [if test "$enableval" = no; then ENABLE_64=no; fi], []) -if test "$ENABLE_64" = yes && test "$ENABLE_WINDOWS_64" = no; then - AC_MSG_WARN([--enable-64 implies --enable-windows-64]) - ENABLE_WINDOWS_64=yes +ENABLE_FORTRAN_INT64=no +AC_ARG_ENABLE(FORTRAN_INT64, + [AS_HELP_STRING([--enable-fortran-int64], + [use 64-bit integers for fortran (and other) numerical library code])], + [if test "$enableval" = yes; then ENABLE_FORTRAN_INT64=yes; fi], []) + +if test "$ENABLE_64" = yes || test "$ENABLE_FORTRAN_INT64" = yes; then + if test "$ENABLE_WINDOWS_64" = no; then + AC_MSG_WARN([--enable-64 or --enable-fortran-int64 implies --enable-windows-64]) + ENABLE_WINDOWS_64=yes + fi fi AC_SUBST(ENABLE_64) +AC_SUBST(ENABLE_FORTRAN_INT64) AC_SUBST(ENABLE_WINDOWS_64) BUILD_SHARED=yes diff -r eac52a8a7822 -r 0db33a326eec src/arpack.mk --- a/src/arpack.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/arpack.mk Fri Dec 30 16:02:18 2016 -0500 @@ -23,7 +23,7 @@ $(PKG)_CONFIGURE_PIC_OPTION := --with-pic endif -ifeq ($(ENABLE_64),yes) +ifeq ($(ENABLE_FORTRAN_INT64),yes) $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := FFLAGS="-g -O2 -fdefault-integer-8" endif diff -r eac52a8a7822 -r 0db33a326eec src/blas.mk --- a/src/blas.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/blas.mk Fri Dec 30 16:02:18 2016 -0500 @@ -11,7 +11,7 @@ $(PKG)_URL_2 := ftp://ftp.eq.uc.pt/pub/software/math/netlib/$(PKG)/$($(PKG)_FILE) $(PKG)_DEPS := -ifeq ($(ENABLE_64),yes) +ifeq ($(ENABLE_FORTRAN_INT64),yes) $(PKG)_DEFAULT_INTEGER_8_FLAG := -fdefault-integer-8 endif diff -r eac52a8a7822 -r 0db33a326eec src/default-octave.mk --- a/src/default-octave.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/default-octave.mk Fri Dec 30 16:02:18 2016 -0500 @@ -80,7 +80,10 @@ 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 --without-qhull F77_INTEGER_8_FLAG=-fdefault-integer-8 + $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 --without-qhull + endif + ifeq ($(ENABLE_FORTRAN_INT64),yes) + F77_INTEGER_8_FLAG=-fdefault-integer-8 endif else ifeq ($(MXE_SYSTEM),mingw) @@ -88,7 +91,10 @@ 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 --without-qhull F77_INTEGER_8_FLAG=-fdefault-integer-8 ax_blas_f77_func_ok=yes + $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := --enable-64 --without-qhull + endif + ifeq ($(ENABLE_FORTRAN_INT64),yes) + $(PKG)_ENABLE_FORTRAN_INT64_CONFIGURE_OPTIONS := F77_INTEGER_8_FLAG=-fdefault-integer-8 ax_blas_f77_func_ok=yes ax_blas_integer_size=8 octave_cv_sizeof_fortran_integer=8" endif endif endif @@ -157,6 +163,7 @@ --enable-install-build-logs \ $($(PKG)_CROSS_CONFIG_OPTIONS) \ $($(PKG)_ENABLE_64_CONFIGURE_OPTIONS) \ + $($(PKG)_ENABLE_FORTRAN_INT64_CONFIGURE_OPTIONS) \ $($(PKG)_ENABLE_JAVA_CONFIGURE_OPTIONS) \ $($(PKG)_ENABLE_JIT_CONFIGURE_OPTIONS) \ $($(PKG)_ENABLE_DOCS_CONFIGURE_OPTIONS) \ diff -r eac52a8a7822 -r 0db33a326eec src/itsol.mk --- a/src/itsol.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/itsol.mk Fri Dec 30 16:02:18 2016 -0500 @@ -10,7 +10,7 @@ $(PKG)_URL := http://www-users.cs.umn.edu/~saad/software/ITSOL/itsol.php $(PKG)_DEPS := blas -ifeq ($(ENABLE_64),yes) +ifeq ($(ENABLE_FORTRAN_INT64),yes) $(PKG)_DEFAULT_INTEGER_8_FLAG := -fdefault-integer-8 endif diff -r eac52a8a7822 -r 0db33a326eec src/lapack.mk --- a/src/lapack.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/lapack.mk Fri Dec 30 16:02:18 2016 -0500 @@ -16,7 +16,7 @@ $(PKG)_BLAS_CONFIG_OPTS := -DBLAS_LIBRARIES="-L$(HOST_PREFIX)/lib -lblas" endif -ifeq ($(ENABLE_64),yes) +ifeq ($(ENABLE_FORTRAN_INT64),yes) $(PKG)_DEFAULT_INTEGER_8_FLAG := -fdefault-integer-8 endif diff -r eac52a8a7822 -r 0db33a326eec src/openblas.mk --- a/src/openblas.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/openblas.mk Fri Dec 30 16:02:18 2016 -0500 @@ -19,7 +19,7 @@ $(PKG)_MAKE_OPTS += NO_CBLAS=1 USE_THREAD=1 CC=$(MXE_CC) FC=$(MXE_F77) HOSTCC=gcc HOSTFC=gfortran CROSS=1 CROSS_SUFFIX=$(MXE_TOOL_PREFIX) endif -ifeq ($(ENABLE_64),yes) +ifeq ($(ENABLE_FORTRAN_INT64),yes) $(PKG)_MAKE_OPTS += BINARY=64 INTERFACE64=1 endif diff -r eac52a8a7822 -r 0db33a326eec src/qrupdate.mk --- a/src/qrupdate.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/qrupdate.mk Fri Dec 30 16:02:18 2016 -0500 @@ -10,8 +10,8 @@ $(PKG)_URL := http://sourceforge.net/projects/qrupdate/files/$($(PKG)_FILE) $(PKG)_DEPS := blas lapack -ifeq ($(ENABLE_64),yes) - $(PKG)_ENABLE_64_CONFIGURE_OPTIONS := FFLAGS="-g -O2 -fdefault-integer-8" +ifeq ($(ENABLE_FORTRAN_INT64),yes) + $(PKG)_ENABLE_FORTRAN_INT64_CONFIGURE_OPTIONS := FFLAGS="-g -O2 -fdefault-integer-8" endif define $(PKG)_UPDATE @@ -30,7 +30,8 @@ $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \ $(ENABLE_SHARED_OR_STATIC) \ --prefix='$(HOST_PREFIX)' \ - $($(PKG)_ENABLE_64_CONFIGURE_OPTIONS) && $(CONFIGURE_POST_HOOK) + $($(PKG)_ENABLE_FORTRAN_INT64_CONFIGURE_OPTIONS) \ + && $(CONFIGURE_POST_HOOK) $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install DESTDIR='$(3)' endef diff -r eac52a8a7822 -r 0db33a326eec src/suitesparse.mk --- a/src/suitesparse.mk Fri Dec 30 22:26:22 2016 -0500 +++ b/src/suitesparse.mk Fri Dec 30 16:02:18 2016 -0500 @@ -41,7 +41,7 @@ $(PKG)_CPPFLAGS := -DNTIMER -ifeq ($(ENABLE_64),yes) +ifeq ($(ENABLE_FORTRAN_INT64),yes) ifeq ($(MXE_WINDOWS_BUILD),yes) $(PKG)_CPPFLAGS += -DLONGBLAS='long long' else