diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ae08c20..6e51f37 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,132 +1,214 @@ -name: Basic SeDuMi tests - -# Controls when the action will run. +name: CI on: - # Triggers the workflow on push or pull request events but only for the main branch push: - branches: [ master ] + branches: + - master + tags: + - '*' pull_request: - branches: [ master ] - - workflow_dispatch: - + branches: + - master jobs: - - matlab: - name: Matlab (latest) on Ubuntu (latest) - runs-on: ubuntu-latest - + build-mex: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-20.04,windows-2019,macos-12,macos-14] + steps: + - name: Retrieve the source code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install MATLAB + uses: matlab-actions/setup-matlab@v2 + with: + release: ${{ matrix.os == 'macos-14' && 'R2023b' || ( matrix.os == 'windows-2019' && 'R2021b' || 'R2021a' ) }} + - name: Build and test + uses: matlab-actions/run-command@v2 + with: + command: "install_sedumi -rebuild; cd examples; test_sedumi(0, 1)" + - name: Upload MATLAB MEX files + uses: actions/upload-artifact@v4 + with: + name: mex-${{ matrix.os }} + path: "*.mex*" + build-oct: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-20.04,windows-2019,macos-12,macos-14] steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install MATLAB - uses: matlab-actions/setup-matlab@v1 - - - name: Run basic SeDuMi tests - uses: matlab-actions/run-command@v1 - with: - command: cd examples; test_sedumi(1, 1); - - - macos-octave: - name: Octave (latest) on macOS (latest) - runs-on: macos-latest - + - name: Retrieve the source code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install Octave + shell: bash + run: | + if [ "${{ matrix.os }}" = ubuntu-20.04 ]; then + sudo apt update + sudo snap install octave + sudo apt install --no-install-recommends libopenblas-dev + echo "OCTAVE=snap run octave" >>$GITHUB_ENV + elif [ "${{ matrix.os }}" = windows-2019 ]; then + choco install octave.portable + else + brew install octave + echo "OCTAVE=octave" >>$GITHUB_ENV + fi + - name: Build and test (Unix) + if: matrix.os != 'windows-2019' + run: $OCTAVE --eval "install_sedumi -rebuild; test_sedumi(0, 1)" + - name: Build and test (Windows) + if: matrix.os == 'windows-2019' + shell: cmd + run: | + set PATH=C:\ProgramData\chocolatey\bin;%PATH% + octave-cli.exe --no-gui --eval "install_sedumi -rebuild; test_sedumi(0, 1)" + if %errorlevel% neq 0 exit /b %errorlevel% + - name: Upload Octave MEX files + uses: actions/upload-artifact@v4 + with: + name: oct-${{ matrix.os }} + path: "*.mex" + package: + needs: [build-mex,build-oct] + runs-on: ubuntu-latest steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install Octave by homebrew - run: brew install octave - - - name: Run basic SeDuMi tests - run: octave --eval "cd examples; test_sedumi(1, 1);" - - - windows-octave: - name: Octave (latest) on MS Windows (latest) - runs-on: windows-latest - + - name: Retrieve the source code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Retrieve artifacts + uses: actions/download-artifact@v4 + - name: Move artifacts into place + run: | + mkdir -p o_lin && mv oct-ubuntu-*/* o_lin/ + mkdir -p o_win && mv oct-windows-*/* o_win/ + mkdir -p o_maci && mv oct-macos-12/* o_maci/ + mkdir -p o_maca && mv oct-macos-14/* o_maca/ + mv mex-*/* . + rmdir mex-* oct-* + - name: Show files, build archives + run: | + cd .. + zip -r sedumi.zip sedumi -x 'sedumi/.git/*' -x 'sedumi/.github/*' + tar cfz sedumi.tgz --exclude "sedumi/.git" --exclude "sedumi/.github" sedumi + echo "--------" + tar tfz sedumi.tgz + echo "--------" + zipinfo sedumi.zip + echo "--------" + mv sedumi.tgz sedumi.zip sedumi + - name: Upload bundles + uses: actions/upload-artifact@v4 + with: + name: bundles + path: | + sedumi.zip + sedumi.tgz + matlab-tests: + needs: package + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest,macos-latest,windows-latest,macos-14] steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install Octave by Chocolatey - run: choco install octave.portable - - - name: Run basic SeDuMi tests - run: octave-cli.exe --eval "cd examples; test_sedumi(1, 1);" - - - ubuntu-20_04-octave: - name: Octave 5.2.0 on Ubuntu 20.04 - runs-on: ubuntu-20.04 - + - name: Retrieve artifact + uses: actions/download-artifact@v4 + with: + name: bundles + - name: Unpack artifact + run: tar xfz sedumi.tgz --strip-components=1 + - name: Install latest MATLAB + uses: matlab-actions/setup-matlab@v2 + - name: Run test + uses: matlab-actions/run-command@v2 + with: + command: "install_sedumi; cd examples; test_sedumi(0, 1)" + octave-tests: + needs: package + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest,windows-latest,macos-latest,macos-14] steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install Octave - run: | - sudo apt-get -y update - sudo apt-get -y install octave liboctave-dev libopenblas-dev - - - name: Run basic SeDuMi tests - run: octave --eval "cd examples; test_sedumi(1, 1);" - - - ubuntu-18_04-octave: - name: Octave 4.2.2 on Ubuntu 18.04 - runs-on: ubuntu-18.04 - + - name: Retrieve artifact + uses: actions/download-artifact@v4 + with: + name: bundles + - name: Unpack artifact + run: tar xfz sedumi.tgz --strip-components=1 + - name: Install Octave, Snap, Flatpak + shell: bash + run: | + if [ "${{ matrix.os }}" = ubuntu-latest ]; then + sudo apt update + sudo apt install --no-install-recommends octave + elif [ "${{ matrix.os }}" = windows-latest ]; then + choco install octave.portable + else + brew install octave + fi + - name: Run test (Unix) + shell: bash + run: octave --eval "install_sedumi; cd examples; test_sedumi(0, 1)" + - name: Run test (Windows) + if: matrix.os == 'windows-latest' + shell: cmd + run: | + set PATH=C:\ProgramData\chocolatey\bin;%PATH% + octave-cli.exe --no-gui --eval "install_sedumi; cd examples; test_sedumi(0, 1)" + flatpak-test: + needs: package + runs-on: ubuntu-latest steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install Octave - run: | - sudo apt-get -y update - sudo apt-get -y install octave liboctave-dev libopenblas-dev - - - name: Run basic SeDuMi tests - run: octave --eval "cd examples; test_sedumi(1, 1);" - - - flatpak-octave: - name: Octave (latest) on Flatpak (latest) + - name: Retrieve artifact + uses: actions/download-artifact@v4 + with: + name: bundles + - name: Unpack artifact + run: tar xfz sedumi.tgz --strip-components=1 + - name: Install Flatpak octave + run: | + sudo apt update + sudo apt install flatpak + flatpak remote-add --user --if-not-exists \ + flathub https://flathub.org/repo/flathub.flatpakrepo + flatpak install --user -y flathub org.octave.Octave + - name: Run test + shell: bash + run: flatpak run org.octave.Octave --eval "install_sedumi; cd examples; test_sedumi(0, 1)" + snap-test: + needs: package runs-on: ubuntu-latest - steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install Octave - run: | - sudo apt-get -y update - sudo apt-get -y install flatpak - flatpak remote-add --user --if-not-exists \ - flathub https://flathub.org/repo/flathub.flatpakrepo - flatpak install --user -y flathub org.octave.Octave - - - name: Run basic SeDuMi tests - run: | - flatpak run org.octave.Octave --eval "cd examples; test_sedumi(1, 1);" - - - snap-octave: - name: Octave (latest) on Snap (latest) + - name: Retrieve artifact + uses: actions/download-artifact@v4 + with: + name: bundles + - name: Unpack artifact + run: tar xfz sedumi.tgz --strip-components=1 + - name: Install Flatpak octave + run: | + sudo snap install octave + - name: Run test + shell: bash + run: snap run octave --eval "install_sedumi; cd examples; test_sedumi(0, 1)" + publish: + needs: [matlab-tests,octave-tests,flatpak-test,snap-test] + if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-latest - steps: - - name: Check out repository - uses: actions/checkout@v3 - - - name: Install Octave - run: | - sudo apt-get -y update - sudo apt-get -y install snapd - sudo snap install octave - - - name: Run basic SeDuMi tests - run: snap run octave --eval "cd examples; test_sedumi(1, 1);" + - name: Retrieve artifacts + uses: actions/download-artifact@v4 + with: + name: bundles + - uses: softprops/action-gh-release@v2 + with: + files: | + sedumi.tgz + sedumi.zip \ No newline at end of file diff --git a/README.md b/README.md index 4b1a5b8..4c11c41 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # SeDuMi: Optimization over symmetric cones +#### [Click here](https://github.com/sqlp/sedumi/releases/latest) to download the latest SeDuMi bundle. These bundles now include pre-compiled MATLAB and Octave MEX files files for Windows, Linux, and macOS (Intel and Apple Silicon). + **SeDuMi (Self-Dual-Minimization)** is a Matlab/GNU Octave package for solving convex optimization problems involving linear equations and inequalities, second-order cone constraints, and semidefinite constraints (linear matrix @@ -89,3 +91,17 @@ You are welcome to submit bug reports or request for help on the [GitHub issue page](https://github.com/sqlp/sedumi/issues). We cannot guarantee that they will be addressed in a timely fashion, we will do our best. + +### Development notes + +As of April 2024, this repository uses +[GitHub Actions](https://github.com/features/actions) to compile +MEX files for Linux, Windows, and macOS (both Intel and Apple +Silicon variants). Whenever a new Git tag is pushed to the +repository, these actions automatically create `.zip` and `.tgz` +bundles of that version of the code, including those compiled +MEX files, and publishes those bundles to the +[Releases](https://github.com/sqlp/sedumi/releases) page. + +If you wish to contribute fixes or improvements to this repository, please feel free to submit a +[pull request](https://github.com/sqlp/sedumi/pulls). diff --git a/adendotd.mexa64 b/adendotd.mexa64 deleted file mode 100755 index d0e777e..0000000 Binary files a/adendotd.mexa64 and /dev/null differ diff --git a/adendotd.mexglx b/adendotd.mexglx deleted file mode 100755 index 824965c..0000000 Binary files a/adendotd.mexglx and /dev/null differ diff --git a/adendotd.mexmaci64 b/adendotd.mexmaci64 deleted file mode 100755 index 90ab0b2..0000000 Binary files a/adendotd.mexmaci64 and /dev/null differ diff --git a/adendotd.mexw32 b/adendotd.mexw32 deleted file mode 100644 index 02a0b6a..0000000 Binary files a/adendotd.mexw32 and /dev/null differ diff --git a/adendotd.mexw64 b/adendotd.mexw64 deleted file mode 100644 index ba5244f..0000000 Binary files a/adendotd.mexw64 and /dev/null differ diff --git a/adenscale.mexa64 b/adenscale.mexa64 deleted file mode 100755 index f272de5..0000000 Binary files a/adenscale.mexa64 and /dev/null differ diff --git a/adenscale.mexglx b/adenscale.mexglx deleted file mode 100755 index 971f688..0000000 Binary files a/adenscale.mexglx and /dev/null differ diff --git a/adenscale.mexmaci64 b/adenscale.mexmaci64 deleted file mode 100755 index 7bc514a..0000000 Binary files a/adenscale.mexmaci64 and /dev/null differ diff --git a/adenscale.mexw32 b/adenscale.mexw32 deleted file mode 100644 index 07feb09..0000000 Binary files a/adenscale.mexw32 and /dev/null differ diff --git a/adenscale.mexw64 b/adenscale.mexw64 deleted file mode 100644 index 42b6278..0000000 Binary files a/adenscale.mexw64 and /dev/null differ diff --git a/blkchol.mexa64 b/blkchol.mexa64 deleted file mode 100755 index 42d0943..0000000 Binary files a/blkchol.mexa64 and /dev/null differ diff --git a/blkchol.mexglx b/blkchol.mexglx deleted file mode 100755 index 4fe4c1c..0000000 Binary files a/blkchol.mexglx and /dev/null differ diff --git a/blkchol.mexmaci64 b/blkchol.mexmaci64 deleted file mode 100755 index 7667074..0000000 Binary files a/blkchol.mexmaci64 and /dev/null differ diff --git a/blkchol.mexw32 b/blkchol.mexw32 deleted file mode 100644 index 64bdb60..0000000 Binary files a/blkchol.mexw32 and /dev/null differ diff --git a/blkchol.mexw64 b/blkchol.mexw64 deleted file mode 100644 index e899e29..0000000 Binary files a/blkchol.mexw64 and /dev/null differ diff --git a/bwblkslv.mexa64 b/bwblkslv.mexa64 deleted file mode 100755 index d82e75c..0000000 Binary files a/bwblkslv.mexa64 and /dev/null differ diff --git a/bwblkslv.mexglx b/bwblkslv.mexglx deleted file mode 100755 index 7cb57c1..0000000 Binary files a/bwblkslv.mexglx and /dev/null differ diff --git a/bwblkslv.mexmaci64 b/bwblkslv.mexmaci64 deleted file mode 100755 index 903be2f..0000000 Binary files a/bwblkslv.mexmaci64 and /dev/null differ diff --git a/bwblkslv.mexw32 b/bwblkslv.mexw32 deleted file mode 100644 index f90e095..0000000 Binary files a/bwblkslv.mexw32 and /dev/null differ diff --git a/bwblkslv.mexw64 b/bwblkslv.mexw64 deleted file mode 100644 index ec9e241..0000000 Binary files a/bwblkslv.mexw64 and /dev/null differ diff --git a/bwdpr1.mexa64 b/bwdpr1.mexa64 deleted file mode 100755 index 8c464d7..0000000 Binary files a/bwdpr1.mexa64 and /dev/null differ diff --git a/bwdpr1.mexglx b/bwdpr1.mexglx deleted file mode 100755 index 1b22839..0000000 Binary files a/bwdpr1.mexglx and /dev/null differ diff --git a/bwdpr1.mexmaci64 b/bwdpr1.mexmaci64 deleted file mode 100755 index 03a3773..0000000 Binary files a/bwdpr1.mexmaci64 and /dev/null differ diff --git a/bwdpr1.mexw32 b/bwdpr1.mexw32 deleted file mode 100644 index 7779904..0000000 Binary files a/bwdpr1.mexw32 and /dev/null differ diff --git a/bwdpr1.mexw64 b/bwdpr1.mexw64 deleted file mode 100644 index 5809c67..0000000 Binary files a/bwdpr1.mexw64 and /dev/null differ diff --git a/cholsplit.mexa64 b/cholsplit.mexa64 deleted file mode 100755 index 3a5a64d..0000000 Binary files a/cholsplit.mexa64 and /dev/null differ diff --git a/cholsplit.mexglx b/cholsplit.mexglx deleted file mode 100755 index 8163054..0000000 Binary files a/cholsplit.mexglx and /dev/null differ diff --git a/cholsplit.mexmaci64 b/cholsplit.mexmaci64 deleted file mode 100755 index 25aea6d..0000000 Binary files a/cholsplit.mexmaci64 and /dev/null differ diff --git a/cholsplit.mexw32 b/cholsplit.mexw32 deleted file mode 100644 index 1eddb04..0000000 Binary files a/cholsplit.mexw32 and /dev/null differ diff --git a/cholsplit.mexw64 b/cholsplit.mexw64 deleted file mode 100644 index 5eec1b0..0000000 Binary files a/cholsplit.mexw64 and /dev/null differ diff --git a/choltmpsiz.mexa64 b/choltmpsiz.mexa64 deleted file mode 100755 index c216905..0000000 Binary files a/choltmpsiz.mexa64 and /dev/null differ diff --git a/choltmpsiz.mexglx b/choltmpsiz.mexglx deleted file mode 100755 index 459d1bc..0000000 Binary files a/choltmpsiz.mexglx and /dev/null differ diff --git a/choltmpsiz.mexmaci64 b/choltmpsiz.mexmaci64 deleted file mode 100755 index 03419fb..0000000 Binary files a/choltmpsiz.mexmaci64 and /dev/null differ diff --git a/choltmpsiz.mexw32 b/choltmpsiz.mexw32 deleted file mode 100644 index 7abacc5..0000000 Binary files a/choltmpsiz.mexw32 and /dev/null differ diff --git a/choltmpsiz.mexw64 b/choltmpsiz.mexw64 deleted file mode 100644 index 9d7a16a..0000000 Binary files a/choltmpsiz.mexw64 and /dev/null differ diff --git a/ddot.mexa64 b/ddot.mexa64 deleted file mode 100755 index aee7be7..0000000 Binary files a/ddot.mexa64 and /dev/null differ diff --git a/ddot.mexglx b/ddot.mexglx deleted file mode 100755 index f6ff8df..0000000 Binary files a/ddot.mexglx and /dev/null differ diff --git a/ddot.mexmaci64 b/ddot.mexmaci64 deleted file mode 100755 index 370f3dc..0000000 Binary files a/ddot.mexmaci64 and /dev/null differ diff --git a/ddot.mexw32 b/ddot.mexw32 deleted file mode 100644 index fea5a06..0000000 Binary files a/ddot.mexw32 and /dev/null differ diff --git a/ddot.mexw64 b/ddot.mexw64 deleted file mode 100644 index ff5c312..0000000 Binary files a/ddot.mexw64 and /dev/null differ diff --git a/dpr1fact.mexa64 b/dpr1fact.mexa64 deleted file mode 100755 index 7aa5321..0000000 Binary files a/dpr1fact.mexa64 and /dev/null differ diff --git a/dpr1fact.mexglx b/dpr1fact.mexglx deleted file mode 100755 index 12db145..0000000 Binary files a/dpr1fact.mexglx and /dev/null differ diff --git a/dpr1fact.mexmaci64 b/dpr1fact.mexmaci64 deleted file mode 100755 index 5f40192..0000000 Binary files a/dpr1fact.mexmaci64 and /dev/null differ diff --git a/dpr1fact.mexw32 b/dpr1fact.mexw32 deleted file mode 100644 index 3fcc75e..0000000 Binary files a/dpr1fact.mexw32 and /dev/null differ diff --git a/dpr1fact.mexw64 b/dpr1fact.mexw64 deleted file mode 100644 index c927315..0000000 Binary files a/dpr1fact.mexw64 and /dev/null differ diff --git a/extractA.mexa64 b/extractA.mexa64 deleted file mode 100755 index 0624445..0000000 Binary files a/extractA.mexa64 and /dev/null differ diff --git a/extractA.mexglx b/extractA.mexglx deleted file mode 100755 index 440666c..0000000 Binary files a/extractA.mexglx and /dev/null differ diff --git a/extractA.mexmaci64 b/extractA.mexmaci64 deleted file mode 100755 index a6f9513..0000000 Binary files a/extractA.mexmaci64 and /dev/null differ diff --git a/extractA.mexw32 b/extractA.mexw32 deleted file mode 100644 index 63e8a19..0000000 Binary files a/extractA.mexw32 and /dev/null differ diff --git a/extractA.mexw64 b/extractA.mexw64 deleted file mode 100644 index a4f386c..0000000 Binary files a/extractA.mexw64 and /dev/null differ diff --git a/findblks.mexa64 b/findblks.mexa64 deleted file mode 100755 index 93354c7..0000000 Binary files a/findblks.mexa64 and /dev/null differ diff --git a/findblks.mexglx b/findblks.mexglx deleted file mode 100755 index a484077..0000000 Binary files a/findblks.mexglx and /dev/null differ diff --git a/findblks.mexmaci64 b/findblks.mexmaci64 deleted file mode 100755 index c9cb0f8..0000000 Binary files a/findblks.mexmaci64 and /dev/null differ diff --git a/findblks.mexw32 b/findblks.mexw32 deleted file mode 100644 index f4392a5..0000000 Binary files a/findblks.mexw32 and /dev/null differ diff --git a/findblks.mexw64 b/findblks.mexw64 deleted file mode 100644 index 73a4283..0000000 Binary files a/findblks.mexw64 and /dev/null differ diff --git a/finsymbden.mexa64 b/finsymbden.mexa64 deleted file mode 100755 index 4ee61fe..0000000 Binary files a/finsymbden.mexa64 and /dev/null differ diff --git a/finsymbden.mexglx b/finsymbden.mexglx deleted file mode 100755 index 384c5f6..0000000 Binary files a/finsymbden.mexglx and /dev/null differ diff --git a/finsymbden.mexmaci64 b/finsymbden.mexmaci64 deleted file mode 100755 index d7e2864..0000000 Binary files a/finsymbden.mexmaci64 and /dev/null differ diff --git a/finsymbden.mexw32 b/finsymbden.mexw32 deleted file mode 100644 index 57a6e1f..0000000 Binary files a/finsymbden.mexw32 and /dev/null differ diff --git a/finsymbden.mexw64 b/finsymbden.mexw64 deleted file mode 100644 index 75cb587..0000000 Binary files a/finsymbden.mexw64 and /dev/null differ diff --git a/fwblkslv.mexa64 b/fwblkslv.mexa64 deleted file mode 100755 index 085055c..0000000 Binary files a/fwblkslv.mexa64 and /dev/null differ diff --git a/fwblkslv.mexglx b/fwblkslv.mexglx deleted file mode 100755 index b71eecf..0000000 Binary files a/fwblkslv.mexglx and /dev/null differ diff --git a/fwblkslv.mexmaci64 b/fwblkslv.mexmaci64 deleted file mode 100755 index 31265fc..0000000 Binary files a/fwblkslv.mexmaci64 and /dev/null differ diff --git a/fwblkslv.mexw32 b/fwblkslv.mexw32 deleted file mode 100644 index b276346..0000000 Binary files a/fwblkslv.mexw32 and /dev/null differ diff --git a/fwblkslv.mexw64 b/fwblkslv.mexw64 deleted file mode 100644 index cdd4529..0000000 Binary files a/fwblkslv.mexw64 and /dev/null differ diff --git a/fwdpr1.mexa64 b/fwdpr1.mexa64 deleted file mode 100755 index 7f55371..0000000 Binary files a/fwdpr1.mexa64 and /dev/null differ diff --git a/fwdpr1.mexglx b/fwdpr1.mexglx deleted file mode 100755 index d62d357..0000000 Binary files a/fwdpr1.mexglx and /dev/null differ diff --git a/fwdpr1.mexmaci64 b/fwdpr1.mexmaci64 deleted file mode 100755 index 5bc1b0c..0000000 Binary files a/fwdpr1.mexmaci64 and /dev/null differ diff --git a/fwdpr1.mexw32 b/fwdpr1.mexw32 deleted file mode 100644 index 3b5afd6..0000000 Binary files a/fwdpr1.mexw32 and /dev/null differ diff --git a/fwdpr1.mexw64 b/fwdpr1.mexw64 deleted file mode 100644 index acae9c6..0000000 Binary files a/fwdpr1.mexw64 and /dev/null differ diff --git a/getada1.mexa64 b/getada1.mexa64 deleted file mode 100755 index bf58465..0000000 Binary files a/getada1.mexa64 and /dev/null differ diff --git a/getada1.mexglx b/getada1.mexglx deleted file mode 100755 index df0b9cf..0000000 Binary files a/getada1.mexglx and /dev/null differ diff --git a/getada1.mexmaci64 b/getada1.mexmaci64 deleted file mode 100755 index 9e65688..0000000 Binary files a/getada1.mexmaci64 and /dev/null differ diff --git a/getada1.mexw32 b/getada1.mexw32 deleted file mode 100644 index 6dcccb9..0000000 Binary files a/getada1.mexw32 and /dev/null differ diff --git a/getada1.mexw64 b/getada1.mexw64 deleted file mode 100644 index 5853412..0000000 Binary files a/getada1.mexw64 and /dev/null differ diff --git a/getada2.mexa64 b/getada2.mexa64 deleted file mode 100755 index e0b2b8f..0000000 Binary files a/getada2.mexa64 and /dev/null differ diff --git a/getada2.mexglx b/getada2.mexglx deleted file mode 100755 index 7504dbd..0000000 Binary files a/getada2.mexglx and /dev/null differ diff --git a/getada2.mexmaci64 b/getada2.mexmaci64 deleted file mode 100755 index 03d4c0b..0000000 Binary files a/getada2.mexmaci64 and /dev/null differ diff --git a/getada2.mexw32 b/getada2.mexw32 deleted file mode 100644 index 34b8eb4..0000000 Binary files a/getada2.mexw32 and /dev/null differ diff --git a/getada2.mexw64 b/getada2.mexw64 deleted file mode 100644 index c857867..0000000 Binary files a/getada2.mexw64 and /dev/null differ diff --git a/getada3.mexa64 b/getada3.mexa64 deleted file mode 100755 index 760e5fc..0000000 Binary files a/getada3.mexa64 and /dev/null differ diff --git a/getada3.mexglx b/getada3.mexglx deleted file mode 100755 index 5256048..0000000 Binary files a/getada3.mexglx and /dev/null differ diff --git a/getada3.mexmaci64 b/getada3.mexmaci64 deleted file mode 100755 index e1d646f..0000000 Binary files a/getada3.mexmaci64 and /dev/null differ diff --git a/getada3.mexw32 b/getada3.mexw32 deleted file mode 100644 index 98dfd90..0000000 Binary files a/getada3.mexw32 and /dev/null differ diff --git a/getada3.mexw64 b/getada3.mexw64 deleted file mode 100644 index 3078594..0000000 Binary files a/getada3.mexw64 and /dev/null differ diff --git a/givensrot.mexa64 b/givensrot.mexa64 deleted file mode 100755 index b4932f2..0000000 Binary files a/givensrot.mexa64 and /dev/null differ diff --git a/givensrot.mexglx b/givensrot.mexglx deleted file mode 100755 index a261148..0000000 Binary files a/givensrot.mexglx and /dev/null differ diff --git a/givensrot.mexmaci64 b/givensrot.mexmaci64 deleted file mode 100755 index 67aac42..0000000 Binary files a/givensrot.mexmaci64 and /dev/null differ diff --git a/givensrot.mexw32 b/givensrot.mexw32 deleted file mode 100644 index b666edc..0000000 Binary files a/givensrot.mexw32 and /dev/null differ diff --git a/givensrot.mexw64 b/givensrot.mexw64 deleted file mode 100644 index 9531367..0000000 Binary files a/givensrot.mexw64 and /dev/null differ diff --git a/incorder.mexa64 b/incorder.mexa64 deleted file mode 100755 index ebad6e0..0000000 Binary files a/incorder.mexa64 and /dev/null differ diff --git a/incorder.mexglx b/incorder.mexglx deleted file mode 100755 index ceb472d..0000000 Binary files a/incorder.mexglx and /dev/null differ diff --git a/incorder.mexmaci64 b/incorder.mexmaci64 deleted file mode 100755 index 6a944f1..0000000 Binary files a/incorder.mexmaci64 and /dev/null differ diff --git a/incorder.mexw32 b/incorder.mexw32 deleted file mode 100644 index 89e5ec4..0000000 Binary files a/incorder.mexw32 and /dev/null differ diff --git a/incorder.mexw64 b/incorder.mexw64 deleted file mode 100644 index 0477567..0000000 Binary files a/incorder.mexw64 and /dev/null differ diff --git a/install_sedumi.m b/install_sedumi.m index 5ce5b60..cd1ed9a 100644 --- a/install_sedumi.m +++ b/install_sedumi.m @@ -111,25 +111,42 @@ function install_sedumi( varargin ) % Get first file of "targets64" and replace ".c" with mex-extension. % Keep order of "targets64". +mext = mexext; mex_binaries = cellfun (@strtok, targets64, 'UniformOutput', false); -mex_binaries = cellfun (@(x) strrep (x, '.c', ['.', mexext()]), ... +mex_binaries = cellfun (@(x) strrep (x, '.c', ['.', mext]), ... mex_binaries, 'UniformOutput', false); +fs = filesep(); sedumi_path = mfilename ('fullpath'); -sedumi_path = sedumi_path(1:max ([1, strfind(sedumi_path, filesep ())]) - 1); +sedumi_path = sedumi_path(1:max ([1, strfind(sedumi_path, fs)]) - 1); +% Note the use of 0.01 here. That's because version 7 had more than 10 +% minor releases, so 7.10-7.14 need to be ordered after 7.01-7.09. +VERSION = [1, 0.01] * sscanf (version (), '%d.%d'); +COMPUTER = computer (); ISOCTAVE = (exist ('OCTAVE_VERSION', 'builtin') == 5); +mdir = ''; if (ISOCTAVE) prog = 'Octave'; page_output_immediately (true, 'local'); + switch COMPUTER + case 'x86_64-pc-linux-gnu' + mdir = 'o_lin'; + case 'x86_64-apple-darwin21.6.0' + mdir = 'o_maci'; + case 'aarch64-apple-darwin23.4.0' + mdir = 'o_maca'; + case 'i686-w64-mingw32' + mdir = 'o_win'; + case 'x86_64-w64-mingw32' + mdir = 'o_win'; + otherwise + error(sprintf('Unexpected computer type: %s', COMPUTER)); + end else prog = 'Matlab'; end -% Helper function to lookup existing mex binaries. -count_mex_binaries = @() sum (cellfun (@(x) (exist (x, 'file') == 3), ... - fullfile (sedumi_path, mex_binaries))); - line_sep = repmat ('-', 1, 75); fprintf ('\n%s\nSeDuMi installation script\n', line_sep); fprintf (' Directory: %s\n', sedumi_path); @@ -141,11 +158,19 @@ function install_sedumi( varargin ) % guarantee that rebuilding will work. if (~need_rebuild) fprintf ('Looking for existing binaries...'); - nfound = count_mex_binaries (); - if (nfound == 0) + nfound = [0, 0]; + for k = 1 : length(targets64) + targ = mex_binaries{k}; + if exist( [ sedumi_path, fs, targ ], 'file' ) + nfound(1) = nfound(1) + 1; + elseif ~isempty(mdir) && exist( [ sedumi_path, fs, mdir, fs, targ ], 'file' ) + nfound(2) = nfound(2) + 1; + end + end + if sum(nfound) == 0 fprintf ('none found; building...\n'); need_rebuild = true; - elseif (nfound < length(targets64)) + elseif sum(nfound) < length(targets64) fprintf ('incomplete set found.\n'); disp (line_sep); error (['%s\n', ... @@ -163,95 +188,121 @@ function install_sedumi( varargin ) end if (need_rebuild) + mdir = ''; disp ('Attempting to recompile the SeDuMi binaries:'); % Customization by providing a mex template. - if (isempty (mex_template)) - flags = {}; - libs = {}; - - if (ISOCTAVE) - % Matlab mex optimization '-O' corresponds to gcc '-O2', - % whereas calling '-O' would result in gcc '-O1'. - flags{end+1} = '-O2'; - flags{end+1} = '-DOCTAVE'; - flags{end+1} = '-Wall'; - if (ismac ()) - % Assume Homebrew (https://brew.sh/) installation. - % https://stackoverflow.com/questions/50634727/dyld-library-not-loaded-usr-local-opt-openblas-lib-libopenblasp-r0-2-20-dylib - flags{end+1} = '-I/usr/local/opt/openblas/include'; - libs{end+1} = '-L/usr/local/opt/openblas/lib -lopenblas'; - elseif (ispc ()) - libs{end+1} = '-lopenblas'; + flags = {}; + libs = {}; + if ~isempty(mex_template) + found = false; + [cmd, remain] = strtok(mex_template); + while ~isempty(remain) + [tok, remain] = strtok(remain); + if found + libs{end+1} = tok; + elseif tok == '%s' + found = true; else - % Including the default OpenBLAS path works for most Octave - % installations and does not harm if not present. - flags{end+1} = '-I/usr/include/openblas'; + flags{end+1} = tok; end - else % Matlab - % Note the use of 0.01 here. That's because version 7 had more than 10 - % minor releases, so 7.10-7.14 need to be ordered after 7.01-7.09. - VERSION = [1, 0.01] * sscanf (version (), '%d.%d'); - COMPUTER = computer (); - % The last Matlab release with a 32 bit version was R2015b. - IS64BIT = strcmp (COMPUTER(end-1:end), '64'); - flags{end+1} = '-O'; % optimize - if (IS64BIT && (VERSION >= 7.03)) % R2006b - flags{end+1} = '-largeArrayDims'; - elseif (VERSION < 7.03) % R2006b - flags{end+1} = '-DmwIndex=int'; - flags{end+1} = '-DmwSize=int'; - flags{end+1} = '-DmwSignedIndex=int'; - flags{end+1} = '-DFWRAPPER'; + end + elseif (ISOCTAVE) + % Matlab mex optimization '-O' corresponds to gcc '-O2', + % whereas calling '-O' would result in gcc '-O1'. + cmd = 'mkoctfile'; + flags{end+1} = '--mex'; + flags{end+1} = '-O2'; + flags{end+1} = '-DOCTAVE'; + flags{end+1} = '-Wall'; + if (ismac ()) + % Assume Homebrew (https://brew.sh/) installation. + % https://stackoverflow.com/questions/50634727/dyld-library-not-loaded-usr-local-opt-openblas-lib-libopenblasp-r0-2-20-dylib + % this glob covers /opt/homebrew and /usr/local installations + homebrew = glob('/*/*/Cellar/openblas/*/include'); + flags{end+1} = ['-I', homebrew{1}]; + libs{end+1} = ['-L', strrep(homebrew{1}, '/include', '/lib'), ' -lopenblas']; + elseif (ispc ()) + libs{end+1} = '-lopenblas'; + else + % Including the default OpenBLAS path works for most Octave + % installations and does not harm if not present. + flags{end+1} = '-I/usr/include/openblas'; + end + else % Matlab + cmd = 'mex'; + % The last Matlab release with a 32 bit version was R2015b. + IS64BIT = strcmp (COMPUTER(end-1:end), '64'); + flags{end+1} = '-O'; % optimize + if (IS64BIT && (VERSION >= 7.03)) % R2006b + flags{end+1} = '-largeArrayDims'; + elseif (VERSION < 7.03) % R2006b + flags{end+1} = '-DmwIndex=int'; + flags{end+1} = '-DmwSize=int'; + flags{end+1} = '-DmwSignedIndex=int'; + flags{end+1} = '-DFWRAPPER'; + end + if ((VERSION >= 7) && ispc ()) % R14 (2004) + if IS64BIT + dirval = 'win64'; + else + dirval = 'win32'; end - if ((VERSION >= 7) && ispc ()) % R14 (2004) - if IS64BIT - dirval = 'win64'; - else - dirval = 'win32'; - end - libdir = fullfile (matlabroot (), 'extern', 'lib', dirval); - if exist (fullfile (libdir, 'microsoft'), 'dir') - libdir = fullfile (libdir, 'microsoft'); - found = true; - elseif exist (fullfile (libdir, 'msvc60'), 'dir') - libdir = fullfile (libdir, 'msvc60'); - found = true; - elseif exist (fullfile (libdir, 'lcc'), 'dir') - libdir = fullfile (libdir, 'lcc'); - found = true; - end - if found - libs{end+1} = ['-L''', strrep(libdir, '\', '\\'), '''']; - end + libdir = fullfile (matlabroot (), 'extern', 'lib', dirval); + if exist (fullfile (libdir, 'microsoft'), 'dir') + libdir = fullfile (libdir, 'microsoft'); + found = true; + elseif exist (fullfile (libdir, 'msvc60'), 'dir') + libdir = fullfile (libdir, 'msvc60'); + found = true; + elseif exist (fullfile (libdir, 'lcc'), 'dir') + libdir = fullfile (libdir, 'lcc'); + found = true; end - if (VERSION >= 7.05) % R2007b - libs{end+1} = '-lmwblas'; - else - libs{end+1} = '-lmwlapack'; + if found + libs{end+1} = ['-L''', strrep(libdir, '\', '\\'), '''']; end end - mex_template = ['mex', sprintf(' %s', flags{:}), ' %s', ... - sprintf(' %s', libs{:})]; + if (VERSION >= 7.05) % R2007b + libs{end+1} = '-lmwblas'; + else + libs{end+1} = '-lmwlapack'; + end end - fprintf ('Template: %s\n', mex_template); + mex_template = sprintf(' %s', cmd, flags{:}, '%s', libs{:}); + fprintf ('Template:%s\n', mex_template); % Move to SeDuMi root directory and compile. + failed = false; olddir = cd (sedumi_path); for i = 1:length(targets64) - fprintf (' %-16s%s\n', [mex_binaries{i}, ':'], targets64{i}); - eval (sprintf (mex_template, targets64{i})); + files = {}; + remain = targets64{i}; + while ~isempty(remain), + [fname, remain] = strtok(remain); + files{end+1} = fname; + end + fprintf(' %s: %s\n', mex_binaries{i}, targets64{i}); + try + if ISOCTAVE + mkoctfile(flags{:}, files{:}, libs{:}); + else + mex(flags{:}, files{:}, libs{:}) + end + catch + failed = true; + end end cd (olddir); -end - -% Final check if all mex binaries are present. -if (count_mex_binaries () < length (targets64)) - error (['%s\nSeDuMi was not successfully installed.\n', ... - 'Please attempt to correct the errors and try again.\n\n', ... - 'For example, try setting the compilation command:\n\n', ... - ' install_sedumi -rebuild ''%s'''], line_sep, mex_template); + if failed + error (['%s\nSeDuMi was not successfully installed.\n', ... + 'Please attempt to correct the errors and try again.\n\n', ... + 'For example, try setting the compilation command:\n\n', ... + ' install_sedumi -rebuild ''%s'''], line_sep, mex_template); + end +elseif (~isempty(mdir) && ~exist(fullfile(sedumi_path, mdir))) + mdir = ''; end % Add SeDuMi to search path, if not forbidden by "-nopath". @@ -273,6 +324,18 @@ function install_sedumi( varargin ) else fprintf ('already there.\n'); end + if (~isempty(mdir)) + fprintf (' MEX directory... '); + spath = fullfile(sedumi_path, mdir); + if (~exist(spath, 'dir')) + fprintf('not present.\n'); + elseif (~is_on_search_path (spath)) + addpath (spath); + fprintf ('added.\n'); + else + fprintf ('already there.\n'); + end + end fprintf (' Conversion directory... '); if (~is_on_search_path (fullfile (sedumi_path, 'conversion'))) addpath (fullfile (sedumi_path, 'conversion')); @@ -293,5 +356,5 @@ function install_sedumi( varargin ) disp ('SeDuMi has been successfully installed.'); disp ('For more information, type "help sedumi" or see the user guide.'); disp (line_sep); -fprintf ('\n\n'); +disp (''); end diff --git a/invcholfac.mexa64 b/invcholfac.mexa64 deleted file mode 100755 index fa4258f..0000000 Binary files a/invcholfac.mexa64 and /dev/null differ diff --git a/invcholfac.mexglx b/invcholfac.mexglx deleted file mode 100755 index 93fc95d..0000000 Binary files a/invcholfac.mexglx and /dev/null differ diff --git a/invcholfac.mexmaci64 b/invcholfac.mexmaci64 deleted file mode 100755 index 9cb0548..0000000 Binary files a/invcholfac.mexmaci64 and /dev/null differ diff --git a/invcholfac.mexw32 b/invcholfac.mexw32 deleted file mode 100644 index 99ed75b..0000000 Binary files a/invcholfac.mexw32 and /dev/null differ diff --git a/invcholfac.mexw64 b/invcholfac.mexw64 deleted file mode 100644 index ba31e21..0000000 Binary files a/invcholfac.mexw64 and /dev/null differ diff --git a/iswnbr.mexa64 b/iswnbr.mexa64 deleted file mode 100755 index c7090c0..0000000 Binary files a/iswnbr.mexa64 and /dev/null differ diff --git a/iswnbr.mexglx b/iswnbr.mexglx deleted file mode 100755 index 6e0ccff..0000000 Binary files a/iswnbr.mexglx and /dev/null differ diff --git a/iswnbr.mexmaci64 b/iswnbr.mexmaci64 deleted file mode 100755 index 62406b9..0000000 Binary files a/iswnbr.mexmaci64 and /dev/null differ diff --git a/iswnbr.mexw32 b/iswnbr.mexw32 deleted file mode 100644 index f6af224..0000000 Binary files a/iswnbr.mexw32 and /dev/null differ diff --git a/iswnbr.mexw64 b/iswnbr.mexw64 deleted file mode 100644 index ce27d3a..0000000 Binary files a/iswnbr.mexw64 and /dev/null differ diff --git a/ordmmdmex.mexa64 b/ordmmdmex.mexa64 deleted file mode 100755 index 107a7f4..0000000 Binary files a/ordmmdmex.mexa64 and /dev/null differ diff --git a/ordmmdmex.mexglx b/ordmmdmex.mexglx deleted file mode 100755 index 4231d1b..0000000 Binary files a/ordmmdmex.mexglx and /dev/null differ diff --git a/ordmmdmex.mexmaci64 b/ordmmdmex.mexmaci64 deleted file mode 100755 index 80a26c1..0000000 Binary files a/ordmmdmex.mexmaci64 and /dev/null differ diff --git a/ordmmdmex.mexw32 b/ordmmdmex.mexw32 deleted file mode 100644 index 5cea437..0000000 Binary files a/ordmmdmex.mexw32 and /dev/null differ diff --git a/ordmmdmex.mexw64 b/ordmmdmex.mexw64 deleted file mode 100644 index 2089b0c..0000000 Binary files a/ordmmdmex.mexw64 and /dev/null differ diff --git a/partitA.mexa64 b/partitA.mexa64 deleted file mode 100755 index 901816e..0000000 Binary files a/partitA.mexa64 and /dev/null differ diff --git a/partitA.mexglx b/partitA.mexglx deleted file mode 100755 index 1552053..0000000 Binary files a/partitA.mexglx and /dev/null differ diff --git a/partitA.mexmaci64 b/partitA.mexmaci64 deleted file mode 100755 index 9ee2f2e..0000000 Binary files a/partitA.mexmaci64 and /dev/null differ diff --git a/partitA.mexw32 b/partitA.mexw32 deleted file mode 100644 index 25ab584..0000000 Binary files a/partitA.mexw32 and /dev/null differ diff --git a/partitA.mexw64 b/partitA.mexw64 deleted file mode 100644 index 307b8d0..0000000 Binary files a/partitA.mexw64 and /dev/null differ diff --git a/psdframeit.mexa64 b/psdframeit.mexa64 deleted file mode 100755 index 9b30034..0000000 Binary files a/psdframeit.mexa64 and /dev/null differ diff --git a/psdframeit.mexglx b/psdframeit.mexglx deleted file mode 100755 index fffbbad..0000000 Binary files a/psdframeit.mexglx and /dev/null differ diff --git a/psdframeit.mexmaci64 b/psdframeit.mexmaci64 deleted file mode 100755 index fcb1c86..0000000 Binary files a/psdframeit.mexmaci64 and /dev/null differ diff --git a/psdframeit.mexw32 b/psdframeit.mexw32 deleted file mode 100644 index c6f33ab..0000000 Binary files a/psdframeit.mexw32 and /dev/null differ diff --git a/psdframeit.mexw64 b/psdframeit.mexw64 deleted file mode 100644 index d53c2e2..0000000 Binary files a/psdframeit.mexw64 and /dev/null differ diff --git a/psdinvjmul.mexa64 b/psdinvjmul.mexa64 deleted file mode 100755 index 58780df..0000000 Binary files a/psdinvjmul.mexa64 and /dev/null differ diff --git a/psdinvjmul.mexglx b/psdinvjmul.mexglx deleted file mode 100755 index d9f15a2..0000000 Binary files a/psdinvjmul.mexglx and /dev/null differ diff --git a/psdinvjmul.mexmaci64 b/psdinvjmul.mexmaci64 deleted file mode 100755 index 5e96f06..0000000 Binary files a/psdinvjmul.mexmaci64 and /dev/null differ diff --git a/psdinvjmul.mexw32 b/psdinvjmul.mexw32 deleted file mode 100644 index 57c682e..0000000 Binary files a/psdinvjmul.mexw32 and /dev/null differ diff --git a/psdinvjmul.mexw64 b/psdinvjmul.mexw64 deleted file mode 100644 index 9d3a22b..0000000 Binary files a/psdinvjmul.mexw64 and /dev/null differ diff --git a/qblkmul.mexa64 b/qblkmul.mexa64 deleted file mode 100755 index b80ccb2..0000000 Binary files a/qblkmul.mexa64 and /dev/null differ diff --git a/qblkmul.mexglx b/qblkmul.mexglx deleted file mode 100755 index 51cabdb..0000000 Binary files a/qblkmul.mexglx and /dev/null differ diff --git a/qblkmul.mexmaci64 b/qblkmul.mexmaci64 deleted file mode 100755 index 9122c26..0000000 Binary files a/qblkmul.mexmaci64 and /dev/null differ diff --git a/qblkmul.mexw32 b/qblkmul.mexw32 deleted file mode 100644 index 11248a7..0000000 Binary files a/qblkmul.mexw32 and /dev/null differ diff --git a/qblkmul.mexw64 b/qblkmul.mexw64 deleted file mode 100644 index c9f3e25..0000000 Binary files a/qblkmul.mexw64 and /dev/null differ diff --git a/qrK.mexa64 b/qrK.mexa64 deleted file mode 100755 index b7cda55..0000000 Binary files a/qrK.mexa64 and /dev/null differ diff --git a/qrK.mexglx b/qrK.mexglx deleted file mode 100755 index 1cc5985..0000000 Binary files a/qrK.mexglx and /dev/null differ diff --git a/qrK.mexmaci64 b/qrK.mexmaci64 deleted file mode 100755 index 3538426..0000000 Binary files a/qrK.mexmaci64 and /dev/null differ diff --git a/qrK.mexw32 b/qrK.mexw32 deleted file mode 100644 index c901b86..0000000 Binary files a/qrK.mexw32 and /dev/null differ diff --git a/qrK.mexw64 b/qrK.mexw64 deleted file mode 100644 index 39e6901..0000000 Binary files a/qrK.mexw64 and /dev/null differ diff --git a/quadadd.mexa64 b/quadadd.mexa64 deleted file mode 100755 index 8443085..0000000 Binary files a/quadadd.mexa64 and /dev/null differ diff --git a/quadadd.mexglx b/quadadd.mexglx deleted file mode 100755 index ac15e1c..0000000 Binary files a/quadadd.mexglx and /dev/null differ diff --git a/quadadd.mexmaci64 b/quadadd.mexmaci64 deleted file mode 100755 index 1b4780f..0000000 Binary files a/quadadd.mexmaci64 and /dev/null differ diff --git a/quadadd.mexw32 b/quadadd.mexw32 deleted file mode 100644 index 44679bc..0000000 Binary files a/quadadd.mexw32 and /dev/null differ diff --git a/quadadd.mexw64 b/quadadd.mexw64 deleted file mode 100644 index 672d028..0000000 Binary files a/quadadd.mexw64 and /dev/null differ diff --git a/sortnnz.mexa64 b/sortnnz.mexa64 deleted file mode 100755 index 4ec7b0b..0000000 Binary files a/sortnnz.mexa64 and /dev/null differ diff --git a/sortnnz.mexglx b/sortnnz.mexglx deleted file mode 100755 index 430568f..0000000 Binary files a/sortnnz.mexglx and /dev/null differ diff --git a/sortnnz.mexmaci64 b/sortnnz.mexmaci64 deleted file mode 100755 index 1fcf10d..0000000 Binary files a/sortnnz.mexmaci64 and /dev/null differ diff --git a/sortnnz.mexw32 b/sortnnz.mexw32 deleted file mode 100644 index b2704e1..0000000 Binary files a/sortnnz.mexw32 and /dev/null differ diff --git a/sortnnz.mexw64 b/sortnnz.mexw64 deleted file mode 100644 index dbd8a9b..0000000 Binary files a/sortnnz.mexw64 and /dev/null differ diff --git a/sqrtinv.mexa64 b/sqrtinv.mexa64 deleted file mode 100755 index ab49ee0..0000000 Binary files a/sqrtinv.mexa64 and /dev/null differ diff --git a/sqrtinv.mexglx b/sqrtinv.mexglx deleted file mode 100755 index ad916fd..0000000 Binary files a/sqrtinv.mexglx and /dev/null differ diff --git a/sqrtinv.mexmaci64 b/sqrtinv.mexmaci64 deleted file mode 100755 index cdeb0d8..0000000 Binary files a/sqrtinv.mexmaci64 and /dev/null differ diff --git a/sqrtinv.mexw32 b/sqrtinv.mexw32 deleted file mode 100644 index 516e83b..0000000 Binary files a/sqrtinv.mexw32 and /dev/null differ diff --git a/sqrtinv.mexw64 b/sqrtinv.mexw64 deleted file mode 100644 index d4e08ee..0000000 Binary files a/sqrtinv.mexw64 and /dev/null differ diff --git a/symbfwblk.mexa64 b/symbfwblk.mexa64 deleted file mode 100755 index d250462..0000000 Binary files a/symbfwblk.mexa64 and /dev/null differ diff --git a/symbfwblk.mexglx b/symbfwblk.mexglx deleted file mode 100755 index 1b65d82..0000000 Binary files a/symbfwblk.mexglx and /dev/null differ diff --git a/symbfwblk.mexmaci64 b/symbfwblk.mexmaci64 deleted file mode 100755 index e69317b..0000000 Binary files a/symbfwblk.mexmaci64 and /dev/null differ diff --git a/symbfwblk.mexw32 b/symbfwblk.mexw32 deleted file mode 100644 index da24975..0000000 Binary files a/symbfwblk.mexw32 and /dev/null differ diff --git a/symbfwblk.mexw64 b/symbfwblk.mexw64 deleted file mode 100644 index da1a8da..0000000 Binary files a/symbfwblk.mexw64 and /dev/null differ diff --git a/symfctmex.mexa64 b/symfctmex.mexa64 deleted file mode 100755 index bec93cc..0000000 Binary files a/symfctmex.mexa64 and /dev/null differ diff --git a/symfctmex.mexglx b/symfctmex.mexglx deleted file mode 100755 index 7964e36..0000000 Binary files a/symfctmex.mexglx and /dev/null differ diff --git a/symfctmex.mexmaci64 b/symfctmex.mexmaci64 deleted file mode 100755 index 9e164cb..0000000 Binary files a/symfctmex.mexmaci64 and /dev/null differ diff --git a/symfctmex.mexw32 b/symfctmex.mexw32 deleted file mode 100644 index 58a69e2..0000000 Binary files a/symfctmex.mexw32 and /dev/null differ diff --git a/symfctmex.mexw64 b/symfctmex.mexw64 deleted file mode 100644 index 624939f..0000000 Binary files a/symfctmex.mexw64 and /dev/null differ diff --git a/urotorder.mexa64 b/urotorder.mexa64 deleted file mode 100755 index 08e2229..0000000 Binary files a/urotorder.mexa64 and /dev/null differ diff --git a/urotorder.mexglx b/urotorder.mexglx deleted file mode 100755 index 47faee0..0000000 Binary files a/urotorder.mexglx and /dev/null differ diff --git a/urotorder.mexmaci64 b/urotorder.mexmaci64 deleted file mode 100755 index 422e49c..0000000 Binary files a/urotorder.mexmaci64 and /dev/null differ diff --git a/urotorder.mexw32 b/urotorder.mexw32 deleted file mode 100644 index 0f26b3a..0000000 Binary files a/urotorder.mexw32 and /dev/null differ diff --git a/urotorder.mexw64 b/urotorder.mexw64 deleted file mode 100644 index 2612e21..0000000 Binary files a/urotorder.mexw64 and /dev/null differ diff --git a/vecsym.mexa64 b/vecsym.mexa64 deleted file mode 100755 index e617a48..0000000 Binary files a/vecsym.mexa64 and /dev/null differ diff --git a/vecsym.mexglx b/vecsym.mexglx deleted file mode 100755 index c3024f2..0000000 Binary files a/vecsym.mexglx and /dev/null differ diff --git a/vecsym.mexmaci64 b/vecsym.mexmaci64 deleted file mode 100755 index a267a4b..0000000 Binary files a/vecsym.mexmaci64 and /dev/null differ diff --git a/vecsym.mexw32 b/vecsym.mexw32 deleted file mode 100644 index d3ea8b3..0000000 Binary files a/vecsym.mexw32 and /dev/null differ diff --git a/vecsym.mexw64 b/vecsym.mexw64 deleted file mode 100644 index d860bb6..0000000 Binary files a/vecsym.mexw64 and /dev/null differ