changeset 1833:acb51ab8fb26 plugin-path-config

Merge from default branch
author Chris Cannam
date Fri, 25 May 2018 09:25:38 +0100 (2018-05-25)
parents b03652cd338f (current diff) da678ff18fb0 (diff)
children 4551f634cd09
files deploy/win32/build.cmd deploy/win64/build.cmd repoint-lock.json
diffstat 17 files changed, 215 insertions(+), 110 deletions(-) [+]
line wrap: on
line diff
--- a/.appveyor.yml	Wed May 23 16:25:15 2018 +0100
+++ b/.appveyor.yml	Fri May 25 09:25:38 2018 +0100
@@ -1,3 +1,6 @@
+
+image:
+  - Visual Studio 2017
 
 configuration:
   - Release
@@ -9,13 +12,7 @@
   - ps: '"[hostsecurity]" | Out-File -Encoding "ASCII" -Append $env:USERPROFILE\mercurial.ini'
   - ps: '"code.soundsoftware.ac.uk = code.soundsoftware.ac.uk:fingerprints=sha256:64:75:f6:47:15:de:b4:51:ea:96:e2:f4:8a:f5:53:a5:11:c8:dd:82:73:5d:bd:54:18:cb:c8:9d:10:37:28:85" | Out-File -Encoding "ASCII" -Append $env:USERPROFILE\mercurial.ini'
 
-before_build:
-  - set QTDIR=C:\Qt\5.8\msvc2015_64
-  - set PATH=%PATH%;%QTDIR%\bin;C:\Program Files (x86)\SMLNJ\bin
-  - repoint install
-  - qmake -r -tp vc sonic-visualiser.pro
-  - sv-dependency-builds\win64-msvc\bin\capnp -Isv-dependency-builds/win64-msvc/include compile --src-prefix=piper/capnp -osv-dependency-builds/win64-msvc/bin/capnpc-c++:piper-cpp/vamp-capnp piper/capnp/piper.capnp
+build_script:
+  - deploy\win64\complete-build.bat
 
-build:
-  project: sonic-visualiser.sln
   
--- a/.hgignore	Wed May 23 16:25:15 2018 +0100
+++ b/.hgignore	Fri May 25 09:25:38 2018 +0100
@@ -50,3 +50,5 @@
 *.msi
 *.user
 glob:.repoint-*.bin
+build_win32
+build_win64
--- a/.travis.yml	Wed May 23 16:25:15 2018 +0100
+++ b/.travis.yml	Fri May 25 09:25:38 2018 +0100
@@ -12,7 +12,7 @@
 addons:
   apt:
     packages:
-     - libbz2-dev libfftw3-dev libfishsound1-dev libid3tag0-dev liblo-dev liblrdf0-dev libmad0-dev liboggz2-dev libpulse-dev libsamplerate-dev libsndfile-dev libsord-dev libxml2-utils portaudio19-dev qt5-default libqt5svg5-dev raptor-utils librubberband-dev mlton
+     - libbz2-dev libfftw3-dev libfishsound1-dev libid3tag0-dev liblo-dev liblrdf0-dev libmad0-dev liboggz2-dev libpulse-dev libsamplerate-dev libsndfile-dev libsord-dev libxml2-utils portaudio19-dev qt5-default libqt5svg5-dev raptor-utils librubberband-dev autoconf libtool git mlton
 
 before_install:
   - if [[ "$TRAVIS_OS_NAME" = "osx" ]] ; then brew update ; fi
--- a/base.pri	Wed May 23 16:25:15 2018 +0100
+++ b/base.pri	Fri May 25 09:25:38 2018 +0100
@@ -33,37 +33,3 @@
 
 CONFIG += qt thread warn_on stl rtti exceptions c++11
 
-include(bq-files.pri)
-include(vamp-plugin-sdk-files.pri)
-include(svcore/files.pri)
-include(capnp-regen.pri)
-
-DATAQUAY_SOURCES=$$fromfile(dataquay/lib.pro, SOURCES)
-DATAQUAY_HEADERS=$$fromfile(dataquay/lib.pro, HEADERS)
-
-CHECKER_SOURCES=$$fromfile(checker/checker.pri, SOURCES)
-CHECKER_HEADERS=$$fromfile(checker/checker.pri, HEADERS)
-                 
-CLIENT_HEADERS=$$fromfile(piper-cpp/vamp-client/qt/test.pro, HEADERS)
-
-for (file, BQ_SOURCES)       { SOURCES += $$file }
-for (file, BQ_HEADERS)       { HEADERS += $$file }
-
-for (file, VAMP_SOURCES)     { SOURCES += $$file }
-for (file, VAMP_HEADERS)     { HEADERS += $$file }
-
-for (file, DATAQUAY_SOURCES) { SOURCES += $$sprintf("dataquay/%1", $$file) }
-for (file, DATAQUAY_HEADERS) { HEADERS += $$sprintf("dataquay/%1", $$file) }
-
-for (file, CHECKER_SOURCES)  { SOURCES += $$sprintf("checker/%1",  $$file) }
-for (file, CHECKER_HEADERS)  { HEADERS += $$sprintf("checker/%1",  $$file) }
-
-for (file, SVCORE_SOURCES)   { SOURCES += $$sprintf("svcore/%1", $$file) }
-for (file, SVCORE_HEADERS)   { HEADERS += $$sprintf("svcore/%1", $$file) }
-             
-for (file, CLIENT_HEADERS) {
-    HEADERS += $$sprintf("piper-cpp/vamp-client/qt/%1",  $$file)
-}
-
-SOURCES += piper-cpp/vamp-capnp/piper-capnp.cpp
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/base.pro	Fri May 25 09:25:38 2018 +0100
@@ -0,0 +1,56 @@
+
+TEMPLATE = lib
+
+exists(config.pri) {
+    include(config.pri)
+}
+
+!exists(config.pri) {
+    include(noconfig.pri)
+}
+
+include(base.pri)
+
+CONFIG += staticlib
+QT += network xml
+QT -= gui
+
+TARGET = base
+
+OBJECTS_DIR = o
+MOC_DIR = o
+
+include(bq-files.pri)
+include(vamp-plugin-sdk-files.pri)
+include(svcore/files.pri)
+include(capnp-regen.pri)
+
+DATAQUAY_SOURCES=$$fromfile(dataquay/lib.pro, SOURCES)
+DATAQUAY_HEADERS=$$fromfile(dataquay/lib.pro, HEADERS)
+
+CHECKER_SOURCES=$$fromfile(checker/checker.pri, SOURCES)
+CHECKER_HEADERS=$$fromfile(checker/checker.pri, HEADERS)
+                 
+CLIENT_HEADERS=$$fromfile(piper-cpp/vamp-client/qt/test.pro, HEADERS)
+
+for (file, BQ_SOURCES)       { SOURCES += $$file }
+for (file, BQ_HEADERS)       { HEADERS += $$file }
+
+for (file, VAMP_SOURCES)     { SOURCES += $$file }
+for (file, VAMP_HEADERS)     { HEADERS += $$file }
+
+for (file, DATAQUAY_SOURCES) { SOURCES += $$sprintf("dataquay/%1", $$file) }
+for (file, DATAQUAY_HEADERS) { HEADERS += $$sprintf("dataquay/%1", $$file) }
+
+for (file, CHECKER_SOURCES)  { SOURCES += $$sprintf("checker/%1",  $$file) }
+for (file, CHECKER_HEADERS)  { HEADERS += $$sprintf("checker/%1",  $$file) }
+
+for (file, SVCORE_SOURCES)   { SOURCES += $$sprintf("svcore/%1", $$file) }
+for (file, SVCORE_HEADERS)   { HEADERS += $$sprintf("svcore/%1", $$file) }
+             
+for (file, CLIENT_HEADERS) {
+    HEADERS += $$sprintf("piper-cpp/vamp-client/qt/%1",  $$file)
+}
+
+SOURCES += piper-cpp/vamp-capnp/piper-capnp.cpp
+
--- a/config.pri.in	Wed May 23 16:25:15 2018 +0100
+++ b/config.pri.in	Fri May 25 09:25:38 2018 +0100
@@ -13,7 +13,7 @@
 QMAKE_CXXFLAGS += @CXXFLAGS@
 QMAKE_LFLAGS += @LDFLAGS@
 
-linux*:LIBS += -lasound -ldl
+linux*:LIBS += -L$$PWD -lbase -lasound -ldl 
 
 macx*:DEFINES += HAVE_COREAUDIO
 macx*:LIBS += -framework CoreAudio -framework CoreMidi -framework AudioUnit -framework AudioToolbox -framework CoreFoundation -framework CoreServices
--- a/deploy/osx/copy-qt.sh	Wed May 23 16:25:15 2018 +0100
+++ b/deploy/osx/copy-qt.sh	Fri May 25 09:25:38 2018 +0100
@@ -11,7 +11,7 @@
 
 frameworks="QtCore QtNetwork QtGui QtXml QtSvg QtWidgets QtPrintSupport QtDBus"
 
-plugins="gif icns ico jpeg tga tiff wbmp webp cocoa macstyle minimal offscreen"
+plugins="gif icns ico jpeg tga tiff wbmp webp cocoa minimal offscreen"
 
 qtdir=$(grep "Command:" Makefile | head -1 | awk '{ print $3; }' | sed s,/bin/.*,,)
 
--- a/deploy/win32/build.cmd	Wed May 23 16:25:15 2018 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-@ECHO OFF
-SET WIXPATH="C:\Program Files (x86)\WiX Toolset v3.11\bin"
-IF NOT EXIST %WIXPATH% (
-    SET WIXPATH="C:\Program Files\WiX Toolset v3.11\bin"
-)
-DEL sonic-visualiser.msi
-%WIXPATH%\candle.exe -v sonic-visualiser.wxs
-%WIXPATH%\light.exe -b ..\..\..\build-sonic-visualiser-Desktop_Qt_5_10_1_MinGW_32bit-Release -ext WixUIExtension -ext WixUtilExtension -v sonic-visualiser.wixobj
-PAUSE
-DEL sonic-visualiser.wixobj
-DEL sonic-visualiser.wixpdb
--- a/deploy/win32/sonic-visualiser.wxs	Wed May 23 16:25:15 2018 +0100
+++ b/deploy/win32/sonic-visualiser.wxs	Fri May 25 09:25:38 2018 +0100
@@ -35,7 +35,7 @@
             <File
                 Id="VampREADME"
                 Name="README.txt"
-                Source="..\sonic-visualiser\deploy\win32\README-Vamp.txt"/>
+                Source="..\deploy\win32\README-Vamp.txt"/>
           </Component>
         </Directory>
         <Directory Id="APPLICATIONFOLDER" Name="Sonic Visualiser">
@@ -72,20 +72,20 @@
             <File
                 Id="COPYING"
                 Name="COPYING.txt"
-                Source="..\sonic-visualiser\COPYING"/>
+                Source="..\COPYING"/>
             <File
                 Id="README"
                 Name="README.txt"
-                Source="..\sonic-visualiser\README.md"/>
+                Source="..\README.md"/>
             <File
                 Id="CHANGELOG"
                 Name="CHANGELOG.txt"
-                Source="..\sonic-visualiser\CHANGELOG"/>
+                Source="..\CHANGELOG"/>
 
             <File
                 Id="winicon.ico"
                 Name="sv-winicon.ico"
-                Source="..\sonic-visualiser\icons/sv-winicon.ico"/>
+                Source="..\icons/sv-winicon.ico"/>
           </Component>
           
           <Component
@@ -241,17 +241,13 @@
     <Property Id="WIXUI_DONTVALIDATEPATH" Value="1" />
     <Property Id="ApplicationFolderName" Value="Sonic Visualiser" />
     <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
-    <WixVariable Id="WixUILicenseRtf" Value="License.rtf" />
+    <WixVariable Id="WixUILicenseRtf" Value="..\deploy\win32\License.rtf" />
     
-    <Icon Id="winicon.ico" SourceFile="..\sonic-visualiser\icons\sv-winicon.ico"/>
+    <Icon Id="winicon.ico" SourceFile="..\icons\sv-winicon.ico"/>
     <Property Id="ARPPRODUCTICON" Value="winicon.ico" />
-<!--
-    <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch Sonic Visualiser now"/>
-    <Property Id="WixShellExecTarget" Value="[#SVExecutable]"/>
-    <CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes"/>
--->
-    <WixVariable Id="WixUIBannerBmp" Value="..\sonic-visualiser\deploy\win32\top.bmp"/>
-    <WixVariable Id="WixUIDialogBmp" Value="..\sonic-visualiser\deploy\win32\main.bmp"/>
+
+    <WixVariable Id="WixUIBannerBmp" Value="..\deploy\win32\top.bmp"/>
+    <WixVariable Id="WixUIDialogBmp" Value="..\deploy\win32\main.bmp"/>
 
   </Product>
 </Wix>
--- a/deploy/win64/build.cmd	Wed May 23 16:25:15 2018 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-@ECHO OFF
-SET WIXPATH="C:\Program Files (x86)\WiX Toolset v3.11\bin"
-IF NOT EXIST %WIXPATH% (
-    SET WIXPATH="C:\Program Files\WiX Toolset v3.11\bin"
-)
-DEL sonic-visualiser.msi
-%WIXPATH%\candle.exe -v sonic-visualiser.wxs
-%WIXPATH%\light.exe -b ..\..\..\build-sonic-visualiser-Desktop_Qt_5_10_1_MSVC2017_64bit-Release -ext WixUIExtension -v sonic-visualiser.wixobj
-PAUSE
-DEL sonic-visualiser.wixobj
-DEL sonic-visualiser.wixpdb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/deploy/win64/complete-build.bat	Fri May 25 09:25:38 2018 +0100
@@ -0,0 +1,102 @@
+rem  Run this from within the top-level SV dir: deploy\win64\complete-build.bat
+rem  To build from clean, delete the folders build_win32 and build_win64 first
+
+set STARTPWD=%CD%
+
+if not exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" (
+@   echo "Could not find MSVC vars batch file"
+@   exit /b
+)
+
+set QTDIR32=C:\Qt\5.10.1\mingw53_32
+set QTDIR64=C:\Qt\5.10.1\msvc2017_64
+if not exist %QTDIR32% (
+@   echo Could not find 32-bit Qt
+@   exit /b
+)
+if not exist %QTDIR64% (
+@   echo Could not find 64-bit Qt
+@   exit /b
+)
+
+if not exist "C:\Program Files (x86)\SMLNJ\bin" (
+@   echo Could not find SML/NJ, required for Repoint
+@   exit /b
+)
+
+if not exist "C:\Program Files (x86)\WiX Toolset v3.11\bin" (
+@   echo Could not find WiX Toolset
+@   exit /b
+)
+
+call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
+
+set NONQTPATH=%PATH%;"C:\Program Files (x86)\SMLNJ\bin";"C:\Program Files (x86)\WiX Toolset v3.11\bin"
+
+cd %STARTPWD%
+
+call .\repoint install
+
+set QTDIR=%QTDIR32%
+set PATH=%NONQTPATH%;%QTDIR%\bin;C:\Qt\Tools\QtCreator\bin;C:\Qt\Tools\mingw530_32\bin
+
+sv-dependency-builds\win32-mingw\bin\capnp -Isv-dependency-builds/win32-mingw/include compile --src-prefix=piper/capnp -osv-dependency-builds/win32-mingw/bin/capnpc-c++:piper-cpp/vamp-capnp piper/capnp/piper.capnp
+
+mkdir build_win32
+cd build_win32
+
+qmake -r ..\sonic-visualiser.pro
+
+jom
+
+copy .\checker\release\vamp-plugin-load-checker.exe .\release
+
+copy %QTDIR%\bin\Qt5Core.dll .\release
+copy %QTDIR%\bin\Qt5Gui.dll .\release
+copy %QTDIR%\bin\Qt5Widgets.dll .\release
+copy %QTDIR%\bin\Qt5Network.dll .\release
+copy %QTDIR%\bin\Qt5Xml.dll .\release
+copy %QTDIR%\bin\Qt5Svg.dll .\release
+copy %QTDIR%\bin\libgcc_s_dw2-1.dll .\release
+copy %QTDIR%\bin\"libstdc++-6.dll" .\release
+copy %QTDIR%\bin\libwinpthread-1.dll .\release
+copy %QTDIR%\plugins\platforms\qminimal.dll .\release
+copy %QTDIR%\plugins\platforms\qwindows.dll .\release
+
+del sonic-visualiser.msi
+candle -v ..\deploy\win32\sonic-visualiser.wxs
+light -b . -ext WixUIExtension -ext WixUtilExtension -v sonic-visualiser.wixobj
+del sonic-visualiser.wixobj
+del sonic-visualiser.wixpdb
+
+cd %STARTPWD%
+
+set QTDIR=%QTDIR64%
+set PATH=%NONQTPATH%;%QTDIR%\bin
+
+sv-dependency-builds\win64-msvc\bin\capnp -Isv-dependency-builds/win64-msvc/include compile --src-prefix=piper/capnp -osv-dependency-builds/win64-msvc/bin/capnpc-c++:piper-cpp/vamp-capnp piper/capnp/piper.capnp
+
+mkdir build_win64
+cd build_win64
+
+qmake -r -tp vc ..\sonic-visualiser.pro
+
+msbuild sonic-visualiser.sln /t:Build /p:Configuration=Release
+
+copy .\checker\release\vamp-plugin-load-checker.exe .\release
+
+copy %QTDIR%\bin\Qt5Core.dll .\release
+copy %QTDIR%\bin\Qt5Gui.dll .\release
+copy %QTDIR%\bin\Qt5Widgets.dll .\release
+copy %QTDIR%\bin\Qt5Network.dll .\release
+copy %QTDIR%\bin\Qt5Xml.dll .\release
+copy %QTDIR%\bin\Qt5Svg.dll .\release
+copy %QTDIR%\plugins\platforms\qminimal.dll .\release
+copy %QTDIR%\plugins\platforms\qwindows.dll .\release
+copy ..\sv-dependency-builds\win64-msvc\lib\libsndfile-1.dll .\release
+
+del sonic-visualiser.msi
+candle -v ..\deploy\win64\sonic-visualiser.wxs
+light -b . -ext WixUIExtension -ext WixUtilExtension -v sonic-visualiser.wixobj
+del sonic-visualiser.wixobj
+del sonic-visualiser.wixpdb
--- a/deploy/win64/sonic-visualiser.wxs	Wed May 23 16:25:15 2018 +0100
+++ b/deploy/win64/sonic-visualiser.wxs	Fri May 25 09:25:38 2018 +0100
@@ -40,7 +40,7 @@
             <File
                 Id="VampREADME"
                 Name="README.txt"
-                Source="..\sonic-visualiser\deploy\win64\README-Vamp.txt"/>
+                Source="..\deploy\win64\README-Vamp.txt"/>
           </Component>
         </Directory>
 
@@ -77,20 +77,20 @@
             <File
                 Id="COPYING"
                 Name="COPYING.txt"
-                Source="..\sonic-visualiser\COPYING"/>
+                Source="..\COPYING"/>
             <File
                 Id="README"
                 Name="README.txt"
-                Source="..\sonic-visualiser\README.md"/>
+                Source="..\README.md"/>
             <File
                 Id="CHANGELOG"
                 Name="CHANGELOG.txt"
-                Source="..\sonic-visualiser\CHANGELOG"/>
+                Source="..\CHANGELOG"/>
 
             <File
                 Id="winicon.ico"
                 Name="sv-winicon.ico"
-                Source="..\sonic-visualiser\icons\sv-winicon.ico"/>
+                Source="..\icons\sv-winicon.ico"/>
           </Component>
           
           <Component Win64="yes"
@@ -150,7 +150,7 @@
             <File
                 Id="libsndfile"
                 Name="libsndfile-1.dll"
-                Source="..\sonic-visualiser\sv-dependency-builds\win64-msvc\lib\libsndfile-1.dll"
+                Source="..\sv-dependency-builds\win64-msvc\lib\libsndfile-1.dll"
                 KeyPath="yes"/>
           </Component>
 
@@ -210,19 +210,19 @@
 	      <File
 		  Id="piper32"
 		  Name="piper-vamp-simple-server-32.exe"
-		  Source="release\piper-vamp-simple-server-32.exe"/>
+		  Source="..\build_win32\release\piper-vamp-simple-server.exe"/>
 	      <File
                   Id="libgcc32"
                   Name="libgcc_s_dw2-1.dll"
-                  Source="release\libgcc_s_dw2-1.dll"/>
+                  Source="..\build_win32\release\libgcc_s_dw2-1.dll"/>
 	      <File
                   Id="libstdcplusplus32"
                   Name="libstdc++-6.dll"
-                  Source="release\libstdc++-6.dll"/>
+                  Source="..\build_win32\release\libstdc++-6.dll"/>
 	      <File
                   Id="libwinpthread32"
                   Name="libwinpthread-1.dll"
-                  Source="release\libwinpthread-1.dll"/>
+                  Source="..\build_win32\release\libwinpthread-1.dll"/>
 	    </Component>
             <Component Win64="yes"
                 Id="Checker64"
@@ -238,7 +238,7 @@
 	      <File
 		  Id="checker32"
 		  Name="vamp-plugin-load-checker-32.exe"
-		  Source="release\vamp-plugin-load-checker-32.exe"/>
+		  Source="..\build_win32\release\vamp-plugin-load-checker.exe"/>
 	    </Component>
 	    
 	  </Directory> <!-- helpers -->
@@ -253,7 +253,7 @@
             <File
                 Id="Vamp32README"
                 Name="README.txt"
-                Source="..\sonic-visualiser\deploy\win64\README-Vamp32.txt"/>
+                Source="..\deploy\win64\README-Vamp32.txt"/>
           </Component>
         </Directory>
       </Directory>
@@ -303,13 +303,13 @@
     <Property Id="WIXUI_DONTVALIDATEPATH" Value="1" />
     <Property Id="ApplicationFolderName" Value="Sonic Visualiser" />
     <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
-    <WixVariable Id="WixUILicenseRtf" Value="License.rtf" />
+    <WixVariable Id="WixUILicenseRtf" Value="..\deploy\win64\License.rtf" />
     
-    <Icon Id="winicon.ico" SourceFile="..\sonic-visualiser\icons\sv-winicon.ico"/>
+    <Icon Id="winicon.ico" SourceFile="..\icons\sv-winicon.ico"/>
     <Property Id="ARPPRODUCTICON" Value="winicon.ico" />
 
-    <WixVariable Id="WixUIBannerBmp" Value="..\sonic-visualiser\deploy\win32\top.bmp"/>
-    <WixVariable Id="WixUIDialogBmp" Value="..\sonic-visualiser\deploy\win32\main.bmp"/>
+    <WixVariable Id="WixUIBannerBmp" Value="..\deploy\win32\top.bmp"/>
+    <WixVariable Id="WixUIDialogBmp" Value="..\deploy\win32\main.bmp"/>
 
   </Product>
 </Wix>
--- a/noconfig.pri	Wed May 23 16:25:15 2018 +0100
+++ b/noconfig.pri	Fri May 25 09:25:38 2018 +0100
@@ -30,6 +30,7 @@
 # these.
 
 LIBS += \
+        -lbase \
         -lbz2 \
 	-lrubberband \
 	-lfftw3 \
@@ -56,9 +57,9 @@
 
     # This config is currently used for 32-bit Windows builds.
 
-    INCLUDEPATH += sv-dependency-builds/win32-mingw/include
+    INCLUDEPATH += $$PWD/sv-dependency-builds/win32-mingw/include
 
-    LIBS += -Lrelease -Lsv-dependency-builds/win32-mingw/lib -L../sonic-visualiser/sv-dependency-builds/win32-mingw/lib
+    LIBS += -Lrelease -L$$PWD/sv-dependency-builds/win32-mingw/lib
 
     DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE
 
@@ -78,7 +79,7 @@
     # we want to do 32-bit builds with MSVC as well, then we'll
     # need to add a way to distinguish the two.
     
-    INCLUDEPATH += sv-dependency-builds/win64-msvc/include
+    INCLUDEPATH += $$PWD/sv-dependency-builds/win64-msvc/include
 
 ## This seems to be intruding even when we're supposed to be release
 #    CONFIG(debug) {
@@ -88,7 +89,7 @@
 #    }
     CONFIG(release) {
         LIBS += -Lrelease \
-            -L../sonic-visualiser/sv-dependency-builds/win64-msvc/lib
+            -L$$PWD/sv-dependency-builds/win64-msvc/lib
     }
 
     DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE
@@ -113,8 +114,8 @@
 
     # All Mac builds are 64-bit these days.
 
-    INCLUDEPATH += sv-dependency-builds/osx/include
-    LIBS += -Lsv-dependency-builds/osx/lib
+    INCLUDEPATH += $$PWD/sv-dependency-builds/osx/include
+    LIBS += -L$$PWD/sv-dependency-builds/osx/lib -L$$PWD
 
     QMAKE_CXXFLAGS_RELEASE += -O3 -ffast-math
 
--- a/repoint	Wed May 23 16:25:15 2018 +0100
+++ b/repoint	Fri May 25 09:25:38 2018 +0100
@@ -58,7 +58,7 @@
     # That is fixed in v5.7.1, so we could promote it up the order
     # again at some point in future
     elif echo | poly -v 2>/dev/null | grep -q 'Poly/ML'; then
-	sml="poly"
+	sml="polyml"
     elif mlton 2>&1 | grep -q 'MLton'; then
 	sml="mlton"
     # MLKit is at the bottom because it leaves compiled files around
@@ -109,7 +109,7 @@
 done
 
 case "$sml" in
-    poly)
+    polyml)
         if [ -n "$local_install" ] && polyc --help >/dev/null 2>&1 ; then
             if [ ! -x "$gen_out" ]; then
                 polyc -o "$gen_out" "$program"
--- a/repoint.sml	Wed May 23 16:25:15 2018 +0100
+++ b/repoint.sml	Fri May 25 09:25:38 2018 +0100
@@ -38,7 +38,7 @@
     authorization.
 *)
 
-val repoint_version = "0.9.98"
+val repoint_version = "1.0"
 
 
 datatype vcs =
@@ -2625,7 +2625,8 @@
 fun usage () =
     (print "\nRepoint ";
      version ();
-     print ("\nA simple manager for third-party source code dependencies.\n\n"
+     print ("\n  A simple manager for third-party source code dependencies.\n"
+            ^ "  http://all-day-breakfast.com/repoint/\n\n"
             ^ "Usage:\n\n"
             ^ "  repoint <command>\n\n"
             ^ "where <command> is one of:\n\n"
@@ -2633,9 +2634,9 @@
             ^ "  review   check configured libraries against their providers, and report\n"
             ^ "  install  update configured libraries according to project specs and lock file\n"
             ^ "  update   update configured libraries and lock file according to project specs\n"
-            ^ "  lock     update lock file to match local library status\n"
-            ^ "  archive  pack up project and all libraries into an archive file\n"
-            ^ "           (invoke as 'repoint archive target-file.tar.gz')\n"
+            ^ "  lock     rewrite lock file to match local library status\n"
+            ^ "  archive  pack up project and all libraries into an archive file:\n"
+            ^ "           invoke as 'repoint archive targetfile.tar.gz --exclude unwanted.txt'\n"
             ^ "  version  print the Repoint version number and exit\n\n");
     OS.Process.failure)
 
--- a/sonic-visualiser.pro	Wed May 23 16:25:15 2018 +0100
+++ b/sonic-visualiser.pro	Fri May 25 09:25:38 2018 +0100
@@ -1,6 +1,9 @@
 
 TEMPLATE = subdirs
 
+SUBDIRS += \
+        sub_base
+
 # We build the tests on every platform, though at the time of
 # writing they are only automatically run on non-Windows platforms
 # (because of the difficulty of getting them running nicely in the
@@ -16,6 +19,8 @@
         sub_convert \
 	sub_sv
 
+sub_base.file = base.pro
+        
 sub_test_svcore_base.file = test-svcore-base.pro
 sub_test_svcore_data_fileio.file = test-svcore-data-fileio.pro
 sub_test_svcore_data_model.file = test-svcore-data-model.pro
--- a/sv.pro	Wed May 23 16:25:15 2018 +0100
+++ b/sv.pro	Fri May 25 09:25:38 2018 +0100
@@ -18,6 +18,7 @@
 solaris*:TARGET = sonic-visualiser
 
 !win32 {
+    PRE_TARGETDEPS += $$PWD/libbase.a
     QMAKE_POST_LINK += cp checker/vamp-plugin-load-checker .
 }