Mercurial > mxe-octave
changeset 3471:6a97f4d1dedb
installer: Add ref BLAS/OpenBLAS install option
* Makefile.in: Add rule for ALL blas libraries
* binary-dist-rules.mk: add blas packages to installed dependancies and copy libblas to refblas.
* makeinst-script.sh: Add dropdown list to options page to select BLAS and set selected to libblas.dll.
* installer-files/README.html: Add information on the BLAS libs.
author | John Donoghue <john.donoghue@ieee.org> |
---|---|
date | Tue, 28 Jan 2014 22:52:05 -0500 |
parents | 22cf662c5584 |
children | 3f500a3bf813 |
files | Makefile.in binary-dist-rules.mk installer-files/README.html makeinst-script.sh |
diffstat | 4 files changed, 45 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile.in Tue Jan 28 18:23:35 2014 -0500 +++ b/Makefile.in Tue Jan 28 22:52:05 2014 -0500 @@ -372,6 +372,8 @@ OCTAVE_FORGE_BASE_URL := 'http://sourceforge.net/projects/octave/files/Octave Forge Packages/Individual Package Releases' OCTAVE_FORGE_PACKAGES := $(addprefix of-,miscellaneous struct optim specfun general signal communications image io statistics control geometry windows odepkg linear-algebra sockets zenity actuarial data-smoothing fuzzy-logic-toolkit quaternion fits fl-core tsa dicom) +BLAS_PACKAGES := blas openblas + MAKE_SHARED_FROM_STATIC := \ $(TOP_DIR)/tools/make-shared-from-static $(MAKE_SHARED_FROM_STATIC_OPTIONS) @@ -445,6 +447,9 @@ .PHONY: octave-forge-packages octave-forge-packages: $(OCTAVE_FORGE_PACKAGES) +.PHONY: blas-packages +blas-packages: $(BLAS_PACKAGES) + configure: configure.ac autoconf
--- a/binary-dist-rules.mk Tue Jan 28 18:23:35 2014 -0500 +++ b/binary-dist-rules.mk Tue Jan 28 22:52:05 2014 -0500 @@ -20,6 +20,7 @@ BINARY_DIST_DEPS := \ $(OCTAVE_TARGET) \ + blas-packages \ octave-forge-packages \ units \ transfig \ @@ -88,6 +89,8 @@ && tar -c $(TAR_H_OPTION) -f - notepad++ | ( cd $(OCTAVE_DIST_DIR) ; tar xpf - ) echo " README.html..." cp $(TOP_DIR)/installer-files/README.html $(OCTAVE_DIST_DIR)/ + echo " refblas..." + cp $(OCTAVE_DIST_DIR)/bin/libblas.dll $(OCTAVE_DIST_DIR)/bin/librefblas.dll endef endif
--- a/installer-files/README.html Tue Jan 28 18:23:35 2014 -0500 +++ b/installer-files/README.html Tue Jan 28 22:52:05 2014 -0500 @@ -24,6 +24,16 @@ for more information about the release and how you can help us with GUI development and speed up the 4.0 release. </p> +<h2>BLAS Library selection</h2> +<p> +During the install, a BLAS library was selected. The installer contains 2 BLAS implementations, +the <a href="http://www.netlib.org/blas/">NetLib reference BLAS</a> and +<a href="http://www.openblas.net/">OpenBLAS</a>. +</p> +<p> +Either can be selected after the install by copying librefblas.dll or libopenblas.dll +to libblas.dll in the bin folder of the Octave installation. +</p> <h2>Included Octave Forge Packages</h2> <p> A number of Octave-forge packages have been included with this install Octave,
--- a/makeinst-script.sh Tue Jan 28 18:23:35 2014 -0500 +++ b/makeinst-script.sh Tue Jan 28 22:52:05 2014 -0500 @@ -71,6 +71,12 @@ ; custom dialogs !include nsDialogs.nsh +!macro __DropList_GetCurSel CONTROL VAR + SendMessage \${CONTROL} \${CB_GETCURSEL} 0 0 \${VAR} +!macroend + +!define DropList_GetCurSel \`!insertmacro __DropList_GetCurSel\` + ; additional logic !include LogicLib.nsh @@ -123,6 +129,8 @@ Var InstallShortcutsCtrl Var RegisterOctaveFileType Var RegisterOctaveFileTypeCtrl +Var InstallBlasLibCtrl +Var InstallBlasLib Function octaveOptionsPage Push \$0 @@ -145,6 +153,15 @@ Pop \$RegisterOctaveFileTypeCtrl \${NSD_SetState} \$RegisterOctaveFileTypeCtrl \${BST_CHECKED} + \${NSD_CreateLabel} 0 70 110u 12u "BLAS library implementation:" + Pop \$0 + + \${NSD_CreateDropList} 120u 70 100u 80u "" + Pop \$InstallBlasLibCtrl + \${NSD_CB_AddString} \$InstallBlasLibCtrl "Reference BLAS" + \${NSD_CB_AddString} \$InstallBlasLibCtrl "OpenBLAS" + \${NSD_CB_SelectString} \$InstallBlasLibCtrl "Reference BLAS" + !insertmacro MUI_HEADER_TEXT "Install Options" "Choose options for installing" nsDialogs::Show Pop \$0 @@ -154,6 +171,7 @@ \${NSD_GetState} \$InstallAllUsersCtrl \$InstallAllUsers \${NSD_GetState} \$InstallShortcutsCtrl \$InstallShortcuts \${NSD_GetState} \$RegisterOctaveFileTypeCtrl \$RegisterOctaveFileType + \${DropList_GetCurSel} \$InstallBlasLibCtrl \$InstallBlasLib FunctionEnd ###################################################################### @@ -244,6 +262,15 @@ CreateShortCut "\$desktop\\Octave-$VERSION (Experimental GUI).lnk" "\$INSTDIR\\bin\\octave-gui.exe" "" "\$INSTDIR\\$ICON" 0 \${Endif} + ; BLAS set up + \${If} \$InstallBlasLib == 1 + ; OpenBLAS + CopyFiles /SILENT "\$INSTDIR\\bin\\libopenblas.dll" "\$INSTDIR\\bin\\libblas.dll" + \${Else} + ; Reference BLAS + CopyFiles /SILENT "\$INSTDIR\\bin\\librefblas.dll" "\$INSTDIR\\bin\\libblas.dll" + \${EndIf} + SectionEnd Section "FileTypeRego"