Ok! Got past the above.
You need to copy the openal package from your ming cross environment into a temporary area:
/home/stu/Projects/warzone/warzone2100/mingw-cross-env/mxe/pkg/openal-soft-1.15.1.tar.bz2 ->
/home/stu/Projects/warzone/warzone2100/mingw-cross-env/mxe/tmp/openal-soft-1.15.1.tar.bz2
Unzip/Untar
Using the mxe/src/openal.mk file as reference I created a build directory:
stu@desktop:~/Projects/warzone/warzone2100/mingw-cross-env/mxe/tmp/openal-soft-1.15.1/build
Edited the file:
/home/stu/Projects/warzone/warzone2100/mingw-cross-env/mxe/tmp/openal-soft-1.15.1/CMakeLists.txt
to turn dsound off:
OPTION(DSOUND "Check for DirectSound backend" On) -> OPTION(DSOUND "Check for DirectSound backend" OFF)
Remove the offending line from source:
stu@desktop:~/Projects/warzone/warzone2100/mingw-cross-env/mxe/tmp/openal-soft-1.15.1$ grep -Hinr "DirectSoundNotify" *
Alc/backends/dsound.c:66: IDirectSoundNotify *Notifies;
Alc/backends/dsound.c:401: IDirectSoundNotify_Release(data->Notifies);
Alc/backends/dsound.c:427: IDirectSoundNotify_Release(data->Notifies);
Alc/backends/dsound.c:592: hr = IDirectSoundBuffer_QueryInterface(data->Buffer, &IID_IDirectSoundNotify, (LPVOID *)&data->Notifies);
Alc/backends/dsound.c:604: if(IDirectSoundNotify_SetNotificationPositions(data->Notifies, device->NumUpdates, notifies) != DS_OK)
Alc/backends/dsound.c:612: IDirectSoundNotify_Release(data->Notifies);
Alc/helpers.c:43:DEFINE_GUID(IID_IDirectSoundNotify, 0xb0210783, 0x89cd, 0x11d0, 0xaf,0x08, 0x00,0xa0,0xc9,0x25,0xcd,0x16);
Binary file build/CMakeFiles/OpenAL32.dir/Alc/helpers.obj matches
Binary file build/openal-info.exe matches
Binary file build/libOpenAL32.a matches
stu@desktop:~/Projects/warzone/warzone2100/mingw-cross-env/mxe/tmp/openal-soft-1.15.1$ vim Alc/helpers.c
(comment out:
//DEFINE_GUID(IID_IDirectSoundNotify, 0xb0210783, 0x89cd, 0x11d0, 0xaf,0x08, 0x00,0xa0,0xc9,0x25,0xcd,0x16);
)
Build warzone..
Now it gets past assembling the main warzone object, and fails when packaging the installer:
SetOutPath: "$INSTDIR\fonts"
File: "/home/stu/Projects/warzone/warzone2100/mingw-cross-env/mxe\etc\fonts\fonts.conf.wd_disable" -> no files found.
Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
/oname=outfile one_file_only)
The above seems like another buggy part of the build that needs some hacks.
I have the above file it's looking for:
stu@desktop:~/Projects/warzone/warzone2100$ locate fonts.conf.wd_disable
/home/stu/Projects/warzone/warzone2100/pkg/nsis/fonts.conf.wd_disable
But the path it's looking in is not only wrong conceptually (in the wrong place), it has the wrong path separators

!
I'll keep digging.. but getting closer..